Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r63117 - in sandbox/SOC/2010/bit_masks/boost/integer: . details details/bft/ext details/bft/ext/fusion
From: bbartmanboost_at_[hidden]
Date: 2010-06-19 16:11:53


Author: bbartman
Date: 2010-06-19 16:11:52 EDT (Sat, 19 Jun 2010)
New Revision: 63117
URL: http://svn.boost.org/trac/boost/changeset/63117

Log:
cleaning up header files and include files as well as documenting my work
Removed:
   sandbox/SOC/2010/bit_masks/boost/integer/details/bft/ext/fusion/at_key_impl.hpp
   sandbox/SOC/2010/bit_masks/boost/integer/details/bft/ext/fusion/has_key_impl.hpp
Text files modified:
   sandbox/SOC/2010/bit_masks/boost/integer/bitfield_tuple.hpp | 43 ++++++++++++++++++++++++++++++++++++++++
   sandbox/SOC/2010/bit_masks/boost/integer/details/bft/ext/bitfield_tuple_fusion_includes.hpp | 4 ---
   sandbox/SOC/2010/bit_masks/boost/integer/details/member.hpp | 3 +
   3 files changed, 45 insertions(+), 5 deletions(-)

Modified: sandbox/SOC/2010/bit_masks/boost/integer/bitfield_tuple.hpp
==============================================================================
--- sandbox/SOC/2010/bit_masks/boost/integer/bitfield_tuple.hpp (original)
+++ sandbox/SOC/2010/bit_masks/boost/integer/bitfield_tuple.hpp 2010-06-19 16:11:52 EDT (Sat, 19 Jun 2010)
@@ -18,6 +18,7 @@
 #include <boost/mpl/size.hpp>
 #include <string>
 #include <boost/integer/details/bft/ext/bitfield_tuple_fusion_includes.hpp>
+#include <boost/integer/details/fusion_ext_includes.hpp>
 
 namespace boost {
 
@@ -233,6 +234,41 @@
  *
  * 4) The width of a member can not exceed the width of its return type.
  *
+ * 5) The user must specify a storage type.
+ *
+ * 6) The storage type must be a POD type.
+ *
+ * 7) The storage type can not be an array.
+ *
+ * 8) The total width of the sum of all bit fields must not exceed the bit
+ * width of the storage type.
+ *
+ *
+ * bitfield_tuple boost.fusion extension
+ *
+ * The bitfield_tuple use boost.fusion to provide additional runtime
+ * support. bitfield_tuple acts like an associative array, in terms of
+ * boost.fusion extension support.
+ *
+ * The bitfield_tuple supports the following fusion functions and
+ * meta-functions.
+ *
+ * begin
+ * end
+ * is_sequence
+ * is_view
+ * category_of
+ * at
+ * size
+ * at_key
+ * tag_of
+ * and all intrinsic functions which are available because of their
+ * implementation.
+ *
+ *
+ * bitfield_tuple fusion iterator support
+ *
+ *
  *
  *
  *
@@ -256,6 +292,13 @@
  * 2) Switch the internal storage to an array which will allow the user
  * to store as many fields as the which to, with out the constraint of
  * being limited to an integral type.
+ * 3) Complete the two string member function.
+ * 4) the type restrictions on storage may need to be relaxed.
+ * 5) The if the storage type is a reference then possible allow for this type
+ * to behave as reference to a bitfield_tuple instead of a bitfield type.
+ * This would mean disabling the default constructor.
+ *
+ *
  */
 template < typename T0,
             typename T1 = mpl::void_,

Modified: sandbox/SOC/2010/bit_masks/boost/integer/details/bft/ext/bitfield_tuple_fusion_includes.hpp
==============================================================================
--- sandbox/SOC/2010/bit_masks/boost/integer/details/bft/ext/bitfield_tuple_fusion_includes.hpp (original)
+++ sandbox/SOC/2010/bit_masks/boost/integer/details/bft/ext/bitfield_tuple_fusion_includes.hpp 2010-06-19 16:11:52 EDT (Sat, 19 Jun 2010)
@@ -19,9 +19,5 @@
 #include "fusion/begin_impl.hpp"
 #include "fusion/size_impl.hpp"
 #include "fusion/end_impl.hpp"
-#include "fusion/at_key_impl.hpp"
-#include "fusion/has_key_impl.hpp"
-// #include "fusion/value_at_impl.hpp"
-// #include "fusion/value_at_key_impl.hpp"
 #endif
 

Deleted: sandbox/SOC/2010/bit_masks/boost/integer/details/bft/ext/fusion/at_key_impl.hpp
==============================================================================
--- sandbox/SOC/2010/bit_masks/boost/integer/details/bft/ext/fusion/at_key_impl.hpp 2010-06-19 16:11:52 EDT (Sat, 19 Jun 2010)
+++ (empty file)
@@ -1,5 +0,0 @@
-// Copyright 2010 Brian Bartman.
-// Distributed under the Boost Software License, Version 1.0.
-// (See accompanying file LICENSE_1_0.txt or copy at
-// http://www.boost.org/LICENSE_1_0.txt)
-

Deleted: sandbox/SOC/2010/bit_masks/boost/integer/details/bft/ext/fusion/has_key_impl.hpp
==============================================================================
--- sandbox/SOC/2010/bit_masks/boost/integer/details/bft/ext/fusion/has_key_impl.hpp 2010-06-19 16:11:52 EDT (Sat, 19 Jun 2010)
+++ (empty file)
@@ -1,6 +0,0 @@
-// Copyright 2010 Brian Bartman.
-// Distributed under the Boost Software License, Version 1.0.
-// (See accompanying file LICENSE_1_0.txt or copy at
-// http://www.boost.org/LICENSE_1_0.txt)
-
-// this is taken care of by intrinsic stuff from fusion.

Modified: sandbox/SOC/2010/bit_masks/boost/integer/details/member.hpp
==============================================================================
--- sandbox/SOC/2010/bit_masks/boost/integer/details/member.hpp (original)
+++ sandbox/SOC/2010/bit_masks/boost/integer/details/member.hpp 2010-06-19 16:11:52 EDT (Sat, 19 Jun 2010)
@@ -24,7 +24,8 @@
  * those parameter.
  *
  * Documented and enforced preconditions
- * The width of a field must not be 0.
+ * The Fieldwidth of a field must not be 0.
+ * The Fieldwidth must not exceed the bit_width of the ReturnType.
  */
 template <typename ReturnType, typename Name, std::size_t FieldWidth>
 struct member {


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk