$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r53965 - sandbox/monotonic/boost/monotonic
From: christian.schladetsch_at_[hidden]
Date: 2009-06-16 00:12:51
Author: cschladetsch
Date: 2009-06-16 00:12:50 EDT (Tue, 16 Jun 2009)
New Revision: 53965
URL: http://svn.boost.org/trac/boost/changeset/53965
Log:
added/removed some comments
Text files modified: 
   sandbox/monotonic/boost/monotonic/allocator.h      |     1 -                                       
   sandbox/monotonic/boost/monotonic/fixed_storage.h  |    33 ++++++++++++---------------------       
   sandbox/monotonic/boost/monotonic/shared_storage.h |     4 ----                                    
   sandbox/monotonic/boost/monotonic/storage.h        |     5 -----                                   
   sandbox/monotonic/boost/monotonic/storage_base.h   |    11 +++++++----                             
   5 files changed, 19 insertions(+), 35 deletions(-)
Modified: sandbox/monotonic/boost/monotonic/allocator.h
==============================================================================
--- sandbox/monotonic/boost/monotonic/allocator.h	(original)
+++ sandbox/monotonic/boost/monotonic/allocator.h	2009-06-16 00:12:50 EDT (Tue, 16 Jun 2009)
@@ -8,7 +8,6 @@
 #include <boost/monotonic/storage_base.h>
 #include <boost/monotonic/storage.h>
 #include <boost/assert.hpp>
-//#include <boost/swap.hpp>
 #include <boost/type_traits/has_trivial_constructor.hpp>
 #include <boost/type_traits/has_trivial_destructor.hpp>
 
Modified: sandbox/monotonic/boost/monotonic/fixed_storage.h
==============================================================================
--- sandbox/monotonic/boost/monotonic/fixed_storage.h	(original)
+++ sandbox/monotonic/boost/monotonic/fixed_storage.h	2009-06-16 00:12:50 EDT (Tue, 16 Jun 2009)
@@ -26,15 +26,11 @@
                 template <size_t N>
                 struct fixed_storage : storage_base
                 {
-
-#ifdef BOOST_MONOTONIC_USE_AUTOBUFFER
-			typedef boost::auto_buffer<char, boost::store_n_bytes<N> > buffer_type;
-#else
-			typedef boost::array<char, N> buffer_type;
-#endif
+			BOOST_STATIC_ASSERT(N > 0);
+			typedef boost::array<char, N> Buffer;
 
                 private:
-			buffer_type buffer;			///< the storage
+			Buffer buffer;			///< the storage
                         size_t cursor;				///< pointer to current index within storage for next allocation
 #ifndef NDEBUG
                         size_t num_allocations;
@@ -48,7 +44,7 @@
                         {
                         }
 
-			buffer_type const &get_buffer()  const
+			Buffer const &get_buffer()  const
                         {
                                 return buffer;
                         }
@@ -81,9 +77,6 @@
                         /// allocate storage, given alignment requirement
                         void *allocate(size_t num_bytes, size_t alignment)
                         {
-#ifndef NDEBUG
-				++num_allocations;
-#endif
                                 // ensure we return a point on an aligned boundary
                                 size_t extra = cursor & (alignment - 1);
                                 if (extra > 0)
@@ -93,20 +86,14 @@
                                 {
                                         return 0;
                                 }
-#ifdef BOOST_MONOTONIC_USE_AUTOBUFFER
-				buffer.uninitialized_resize(buffer.size() + required);
+#ifndef NDEBUG
+				++num_allocations;
 #endif
                                 char *ptr = &buffer[cursor];
                                 cursor += required;
                                 return ptr + extra;
                         }
 
-			/// no work is done to deallocate storage
-			void deallocate(void * /*p*/, size_t /*n*/)
-			{
-			}
-
-			/// the maximum size is determined at compile-time
                         size_t max_size() const
                         {
                                 return N;
@@ -116,10 +103,12 @@
                         {
                                 return N - cursor;
                         }
+
                         size_t used() const
                         {
                                 return cursor;
                         }
+
 #ifndef NDEBUG
                         size_t get_num_allocs() const
                         {
@@ -127,7 +116,9 @@
                         }
 #endif
                 };
-	}
-}
+	
+	} // namespace monotonic
+
+} // namespace boost
 
 //EOF
Modified: sandbox/monotonic/boost/monotonic/shared_storage.h
==============================================================================
--- sandbox/monotonic/boost/monotonic/shared_storage.h	(original)
+++ sandbox/monotonic/boost/monotonic/shared_storage.h	2009-06-16 00:12:50 EDT (Tue, 16 Jun 2009)
@@ -44,10 +44,6 @@
                                 mutex::scoped_lock lock(guard);
                                 return storage.allocate(num_bytes, alignment);
                         }
-			void deallocate(void *, size_t)
-			{
-				// do nothing
-			}
                         size_t remaining() const
                         {
                                 mutex::scoped_lock lock(guard);
Modified: sandbox/monotonic/boost/monotonic/storage.h
==============================================================================
--- sandbox/monotonic/boost/monotonic/storage.h	(original)
+++ sandbox/monotonic/boost/monotonic/storage.h	2009-06-16 00:12:50 EDT (Tue, 16 Jun 2009)
@@ -116,11 +116,6 @@
                                 return AddLink(size).Allocate(num_bytes, alignment);
                         }
 
-			void deallocate(void *, size_t)
-			{
-				// do nothing
-			}
-
                         size_t max_size() const
                         {
                                 return std::numeric_limits<size_t>::max();
Modified: sandbox/monotonic/boost/monotonic/storage_base.h
==============================================================================
--- sandbox/monotonic/boost/monotonic/storage_base.h	(original)
+++ sandbox/monotonic/boost/monotonic/storage_base.h	2009-06-16 00:12:50 EDT (Tue, 16 Jun 2009)
@@ -9,16 +9,19 @@
 {
         namespace monotonic
         {
-		/// base structure for inline_storage<N>
+		/// base structure for different storage types
                 struct storage_base
                 {
+			// reset the number of bytes used to zero
+			virtual void reset() = 0;
+
                         // the number of bytes to allocate, and the alignment to use
                         virtual void *allocate(size_t num_bytes, size_t alignment) = 0;
-
-			virtual void deallocate(void *base, size_t num_bytes) = 0;
+			
                         virtual size_t max_size() const = 0;
+			
+			/// return the number of bytes remaining
                         virtual size_t remaining() const = 0;
-			virtual void reset() = 0;
                 };
         }
 }