Update of /cvsroot/boost/boost/boost/xpressive/detail/core/matcher
In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv3520/detail/core/matcher

Modified Files:
        action_matcher.hpp 
Log Message:
attribute placeholders get real T& instead of opt<T> in actions

Index: action_matcher.hpp
===================================================================
RCS file: 
/cvsroot/boost/boost/boost/xpressive/detail/core/matcher/action_matcher.hpp,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -d -r1.24 -r1.25
--- action_matcher.hpp  17 Jun 2007 02:08:36 -0000      1.24
+++ action_matcher.hpp  21 Jun 2007 23:11:11 -0000      1.25
@@ -95,6 +95,9 @@
     struct attr_with_default_tag
     {};
 
+    template<typename T>
+    struct opt;
+
     
///////////////////////////////////////////////////////////////////////////////
     // action_context
     //
@@ -125,6 +128,16 @@
             }
         };
 
+        template<typename Expr, typename Arg>
+        struct eval_terminal<Expr, opt<Arg> >
+        {
+            typedef Arg const &result_type;
+            result_type operator()(Expr &expr, action_context const &) const
+            {
+                return proto::arg(expr);
+            }
+        };
+
         template<typename Expr, typename Type, typename Int>
         struct eval_terminal<Expr, action_arg<Type, Int> >
         {


-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Boost-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/boost-cvs

Reply via email to