$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r81934 - sandbox-branches/geometry/index/boost/geometry/extensions/index
From: adam.wulkiewicz_at_[hidden]
Date: 2012-12-14 06:33:48
Author: awulkiew
Date: 2012-12-14 06:33:48 EST (Fri, 14 Dec 2012)
New Revision: 81934
URL: http://svn.boost.org/trac/boost/changeset/81934
Log:
static_vector changes: added MPL_ASSERT, added difference_type.
Text files modified: 
   sandbox-branches/geometry/index/boost/geometry/extensions/index/static_vector.hpp |    11 +++++++++++                             
   1 files changed, 11 insertions(+), 0 deletions(-)
Modified: sandbox-branches/geometry/index/boost/geometry/extensions/index/static_vector.hpp
==============================================================================
--- sandbox-branches/geometry/index/boost/geometry/extensions/index/static_vector.hpp	(original)
+++ sandbox-branches/geometry/index/boost/geometry/extensions/index/static_vector.hpp	2012-12-14 06:33:48 EST (Fri, 14 Dec 2012)
@@ -7,6 +7,7 @@
 // http://www.boost.org/LICENSE_1_0.txt)
 
 #include <stdexcept>
+#include <boost/mpl/assert.hpp>
 #include <boost/aligned_storage.hpp>
 #include <boost/iterator/reverse_iterator.hpp>
 
@@ -27,9 +28,15 @@
 template <typename Value, size_t Capacity>
 class static_vector
 {
+    BOOST_MPL_ASSERT_MSG(
+        (0 < Capacity),
+        INVALID_CAPACITY,
+        static_vector);
+
 public:
     typedef Value value_type;
     typedef size_t size_type;
+    typedef ptrdiff_t difference_type;
     typedef Value& reference;
     typedef Value const& const_reference;
     typedef Value * pointer;
@@ -209,13 +216,17 @@
     // nothrow
     iterator begin() { return this->ptr(0); }
     const_iterator begin() const { return this->ptr(0); }
+    const_iterator cbegin() const { return this->ptr(0); }
     iterator end() { return this->ptr(m_size); }
     const_iterator end() const { return this->ptr(m_size); }
+    const_iterator cend() const { return this->ptr(m_size); }
     // nothrow
     reverse_iterator rbegin() { return reverse_iterator(this->end()); }
     const_reverse_iterator rbegin() const { return reverse_iterator(this->end()); }
+    const_reverse_iterator crbegin() const { return reverse_iterator(this->end()); }
     reverse_iterator rend() { return reverse_iterator(this->begin()); }
     const_reverse_iterator rend() const { return reverse_iterator(this->begin()); }
+    const_reverse_iterator crend() const { return reverse_iterator(this->begin()); }
 
     // nothrow
     size_type capacity() const { return Capacity; }