Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r59929 - trunk/boost/spirit/home/support
From: hartmut.kaiser_at_[hidden]
Date: 2010-02-25 20:12:23


Author: hkaiser
Date: 2010-02-25 20:12:23 EST (Thu, 25 Feb 2010)
New Revision: 59929
URL: http://svn.boost.org/trac/boost/changeset/59929

Log:
Spirit: fixed #3815 (Clearing an iterator range)
Text files modified:
   trunk/boost/spirit/home/support/attributes.hpp | 11 +++++++++++
   1 files changed, 11 insertions(+), 0 deletions(-)

Modified: trunk/boost/spirit/home/support/attributes.hpp
==============================================================================
--- trunk/boost/spirit/home/support/attributes.hpp (original)
+++ trunk/boost/spirit/home/support/attributes.hpp 2010-02-25 20:12:23 EST (Thu, 25 Feb 2010)
@@ -34,6 +34,7 @@
 #include <boost/proto/proto_fwd.hpp>
 #include <boost/utility/enable_if.hpp>
 #include <boost/variant.hpp>
+#include <boost/range/iterator_range.hpp>
 #include <vector>
 #include <utility>
 
@@ -778,6 +779,16 @@
         }
     };
 
+ // iterator range
+ template <typename T>
+ struct clear_value<iterator_range<T> >
+ {
+ static void call(iterator_range<T>& val)
+ {
+ val = iterator_range<T>(val.end(), val.end());
+ }
+ };
+
     // main dispatch
     template <typename T>
     void clear(T& val)


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