Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r62985 - in sandbox/SOC/2010/bit_masks: boost/integer/details boost/integer/details/bft boost/integer/details/bft/ext lib/integer/test
From: bbartmanboost_at_[hidden]
Date: 2010-06-15 13:14:18


Author: bbartman
Date: 2010-06-15 13:14:17 EDT (Tue, 15 Jun 2010)
New Revision: 62985
URL: http://svn.boost.org/trac/boost/changeset/62985

Log:
removed allocator as part of storage
Text files modified:
   sandbox/SOC/2010/bit_masks/boost/integer/details/bft/arg_parse_impl.hpp | 10 ++-----
   sandbox/SOC/2010/bit_masks/boost/integer/details/bft/ext/bitfield_iterator.hpp | 4 --
   sandbox/SOC/2010/bit_masks/boost/integer/details/storage.hpp | 36 +++--------------------------
   sandbox/SOC/2010/bit_masks/lib/integer/test/bitfield_tuple_test.cpp | 49 +--------------------------------------
   4 files changed, 10 insertions(+), 89 deletions(-)

Modified: sandbox/SOC/2010/bit_masks/boost/integer/details/bft/arg_parse_impl.hpp
==============================================================================
--- sandbox/SOC/2010/bit_masks/boost/integer/details/bft/arg_parse_impl.hpp (original)
+++ sandbox/SOC/2010/bit_masks/boost/integer/details/bft/arg_parse_impl.hpp 2010-06-15 13:14:17 EDT (Tue, 15 Jun 2010)
@@ -61,16 +61,13 @@
  * Do NOT set the storage type more then once!
  */
 template < typename StorageType,
- typename AllocationPolicy,
+
             typename StoragePolicy,
             typename FieldVector,
             typename Offset
>
 struct bft_arg_parse_impl_ <
- storage<
- StorageType,
- AllocationPolicy
- >,
+ storage<StorageType>,
     StoragePolicy,
     FieldVector,
     Offset >
@@ -79,8 +76,7 @@
     BOOST_STATIC_ASSERT(( is_same<StoragePolicy,mpl::void_>::value ));
 
     typedef typename storage<
- StorageType,
- AllocationPolicy
+ StorageType
>::type param;
     typedef FieldVector field_vector;
     typedef param storage_policy;

Modified: sandbox/SOC/2010/bit_masks/boost/integer/details/bft/ext/bitfield_iterator.hpp
==============================================================================
--- sandbox/SOC/2010/bit_masks/boost/integer/details/bft/ext/bitfield_iterator.hpp (original)
+++ sandbox/SOC/2010/bit_masks/boost/integer/details/bft/ext/bitfield_iterator.hpp 2010-06-15 13:14:17 EDT (Tue, 15 Jun 2010)
@@ -24,9 +24,7 @@
         bitfield_tuple_iterator<Bitfeid_Tuple, Pos>,
         random_access_traversal_tag
>
-{
-
-};
+{ };
 
 }} // end boost::fusion
 

Modified: sandbox/SOC/2010/bit_masks/boost/integer/details/storage.hpp
==============================================================================
--- sandbox/SOC/2010/bit_masks/boost/integer/details/storage.hpp (original)
+++ sandbox/SOC/2010/bit_masks/boost/integer/details/storage.hpp 2010-06-15 13:14:17 EDT (Tue, 15 Jun 2010)
@@ -12,42 +12,14 @@
 
 namespace boost {
 
-/** This forces the storage policy to allocate using the stack.
- * in stead of using an allocator.
- */
-struct storage_policy_stack { };
 
-/** This structure is used for specifying the storage type within
- * bitfield tuple and bit_mask_tuple.
- * This allos allows the user to specify their own allocator for the internal
- * internal bit data. Thinking about adding a possible specialization
- * for stack allocating the underlying type via a tag or something similar.
- * In the case of the default allocator there is no need to rebind the
- * allocator however if the user wishes to supply their own allocator
- * rebinding must be done just in case its specified incorrectly.
+/** Storage type used for moving the type to be used for interenal storage
+ * around within the template parameters of a bitfield_tuple.
  */
-template < typename StorageType,
- typename Alloc = storage_policy_stack
->
+template < typename StorageType>
 struct storage {
     typedef StorageType storage_type;
- typedef typename Alloc::template rebind<StorageType>::other alloc;
- typedef storage<StorageType, Alloc> type;
-};
-
-
-/** The storage policy specifed is to use stack allocation, which means
- * that an instance of Storage type will need to be created. The instance
- * is NOT the responsibility of this class. The responsibility of this class
- * is only to hold policies related to the underlying storage type. It is
- * the responsibility of the class which revieves this as a template parameter
- * to then deal with it accordingly.
- */
-template < typename StorageType>
-struct storage<StorageType, storage_policy_stack > {
- typedef StorageType storage_type;
- typedef storage_policy_stack alloc;
- typedef storage<StorageType, storage_policy_stack> type;
+ typedef storage<StorageType> type;
 
 };
 

Modified: sandbox/SOC/2010/bit_masks/lib/integer/test/bitfield_tuple_test.cpp
==============================================================================
--- sandbox/SOC/2010/bit_masks/lib/integer/test/bitfield_tuple_test.cpp (original)
+++ sandbox/SOC/2010/bit_masks/lib/integer/test/bitfield_tuple_test.cpp 2010-06-15 13:14:17 EDT (Tue, 15 Jun 2010)
@@ -27,53 +27,8 @@
     // bitfield_tuple < storage<int>, member<int,red,6> > temp;
     // test suite for the storage
     {
- typedef storage<int, std::allocator<int> > test1;
- test1 s;
- ignore( s );
-
- // make sure that the storage policy is the correct policy.
- BOOST_ASSERT((
- is_same<
- test1::alloc,
- std::allocator<int>
- >::value
- ));
-
- BOOST_ASSERT((
- is_same<
- test1::storage_type,
- int
- >::value
- ));
- typedef storage<int, std::allocator<char> > test2;
- BOOST_ASSERT((
- is_same<
- test2::alloc,
- std::allocator<int>
- >::value
- ));
-
- BOOST_ASSERT((
- is_same<
- int,
- test2::storage_type
- >::value
- ));
-
- typedef storage<char> test3;
- BOOST_ASSERT((
- is_same<
- test3::alloc,
- storage_policy_stack
- >::value
- ));
-
- BOOST_ASSERT((
- is_same<
- test3::storage_type,
- char
- >::value
- ));
+ typedef storage<int> storage_t;
+ BOOST_MPL_ASSERT(( is_same<storage_t::storage_type, int> ));
     }
     // testing member type
     {


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