$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
From: eric_at_[hidden]
Date: 2007-10-18 23:16:51
Author: eric_niebler
Date: 2007-10-18 23:16:51 EDT (Thu, 18 Oct 2007)
New Revision: 40173
URL: http://svn.boost.org/trac/boost/changeset/40173
Log:
don't copy singular iterator in sub_match, misc clean-up
Text files modified: 
   trunk/boost/xpressive/detail/core/matcher/attr_matcher.hpp |     2 +-                                      
   trunk/boost/xpressive/detail/detail_fwd.hpp                |     3 ---                                     
   trunk/boost/xpressive/sub_match.hpp                        |     8 +++++++-                                
   trunk/boost/xpressive/xpressive_typeof.hpp                 |     6 +++---                                  
   4 files changed, 11 insertions(+), 8 deletions(-)
Modified: trunk/boost/xpressive/detail/core/matcher/attr_matcher.hpp
==============================================================================
--- trunk/boost/xpressive/detail/core/matcher/attr_matcher.hpp	(original)
+++ trunk/boost/xpressive/detail/core/matcher/attr_matcher.hpp	2007-10-18 23:16:51 EDT (Thu, 18 Oct 2007)
@@ -71,7 +71,7 @@
     {
         typedef typename Matcher::value_type::second_type const* result_type;
 
-        attr_matcher(int slot, Matcher &matcher, Traits const& traits)
+        attr_matcher(int slot, Matcher const &matcher, Traits const& traits)
           : slot_(slot-1)
         {
             char_translate<Traits, ICase> trans(traits);
Modified: trunk/boost/xpressive/detail/detail_fwd.hpp
==============================================================================
--- trunk/boost/xpressive/detail/detail_fwd.hpp	(original)
+++ trunk/boost/xpressive/detail/detail_fwd.hpp	2007-10-18 23:16:51 EDT (Thu, 18 Oct 2007)
@@ -163,9 +163,6 @@
     template<typename Modifier>
     struct modifier_op;
 
-    template<typename Left, typename Right>
-    struct modifier_sequencer;
-
     struct icase_modifier;
 
     template<typename BidiIter, typename ICase, typename Traits>
Modified: trunk/boost/xpressive/sub_match.hpp
==============================================================================
--- trunk/boost/xpressive/sub_match.hpp	(original)
+++ trunk/boost/xpressive/sub_match.hpp	2007-10-18 23:16:51 EDT (Thu, 18 Oct 2007)
@@ -70,7 +70,13 @@
     typedef typename detail::string_type<value_type>::type string_type;
     typedef BidiIter iterator;
 
-    explicit sub_match(BidiIter first = BidiIter(), BidiIter second = BidiIter(), bool matched_ = false)
+    sub_match()
+      : std::pair<BidiIter, BidiIter>()
+      , matched(false)
+    {
+    }
+
+    sub_match(BidiIter first, BidiIter second, bool matched_ = false)
       : std::pair<BidiIter, BidiIter>(first, second)
       , matched(matched_)
     {
Modified: trunk/boost/xpressive/xpressive_typeof.hpp
==============================================================================
--- trunk/boost/xpressive/xpressive_typeof.hpp	(original)
+++ trunk/boost/xpressive/xpressive_typeof.hpp	2007-10-18 23:16:51 EDT (Thu, 18 Oct 2007)
@@ -19,7 +19,7 @@
 #ifndef BOOST_NO_STL_LOCALE
 # include <boost/typeof/std/locale.hpp>
 #endif
-//#include <boost/xpressive/proto/proto_typeof.hpp>
+#include <boost/xpressive/proto/proto_typeof.hpp>
 #include <boost/xpressive/xpressive_fwd.hpp>
 
 #include BOOST_TYPEOF_INCREMENT_REGISTRATION_GROUP()
@@ -30,9 +30,9 @@
 BOOST_TYPEOF_REGISTER_TYPE(boost::xpressive::detail::set_initializer)
 BOOST_TYPEOF_REGISTER_TYPE(boost::xpressive::detail::keeper_tag)
 BOOST_TYPEOF_REGISTER_TYPE(boost::xpressive::detail::modifier_tag)
+BOOST_TYPEOF_REGISTER_TYPE(boost::xpressive::detail::lookahead_tag)
+BOOST_TYPEOF_REGISTER_TYPE(boost::xpressive::detail::lookbehind_tag)
 BOOST_TYPEOF_REGISTER_TEMPLATE(boost::xpressive::detail::generic_quant_tag, (unsigned int)(unsigned int))
-BOOST_TYPEOF_REGISTER_TEMPLATE(boost::xpressive::detail::lookahead_tag, (bool))
-BOOST_TYPEOF_REGISTER_TEMPLATE(boost::xpressive::detail::lookbehind_tag, (bool))
 BOOST_TYPEOF_REGISTER_TEMPLATE(boost::xpressive::basic_regex, (typename))
 
 ///////////////////////////////////////////////////////////////////////////////