Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r67793 - in sandbox/SOC/2010/phoenix3: boost/phoenix boost/phoenix/bind boost/phoenix/core boost/phoenix/core/detail boost/phoenix/debug boost/phoenix/function boost/phoenix/function/detail boost/phoenix/fusion boost/phoenix/object boost/phoenix/object/detail boost/phoenix/operator boost/phoenix/operator/detail boost/phoenix/scope boost/phoenix/scope/detail boost/phoenix/statement boost/phoenix/statement/detail boost/phoenix/stl/algorithm boost/phoenix/support boost/phoenix/support/detail libs/phoenix/doc libs/phoenix/doc/html libs/phoenix/doc/html/phoenix libs/phoenix/doc/html/phoenix/advanced_topics libs/phoenix/doc/html/phoenix/reference libs/phoenix/doc/html/phoenix/reference/concepts libs/phoenix/doc/html/phoenix/reference/modules libs/phoenix/doc/html/phoenix/reference/modules/bind libs/phoenix/doc/html/phoenix/reference/modules/core libs/phoenix/doc/html/phoenix/reference/modules/object libs/phoenix/doc/html/phoenix/reference/modules/operator libs/phoenix/doc/html/phoenix/reference/modules/scope libs/phoenix/doc/html/phoenix/reference/modules/statement libs/phoenix/doc/html/phoenix/reference/modules/stl libs/phoenix/doc/html/phoenix/starter_kit libs/phoenix/doc/html/phoenix/starter_kit/composites libs/phoenix/doc/html/phoenix/starter_kit/primitives libs/phoenix/test/boost_bind_compatibility
From: thom.heller_at_[hidden]
Date: 2011-01-08 14:06:25


Author: theller
Date: 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
New Revision: 67793
URL: http://svn.boost.org/trac/boost/changeset/67793

Log:
code cleanup take 1
Added:
   sandbox/SOC/2010/phoenix3/boost/phoenix/scope/detail/let_local_gen.hpp (contents, props changed)
   sandbox/SOC/2010/phoenix3/boost/phoenix/scope/detail/make_locals.hpp (contents, props changed)
   sandbox/SOC/2010/phoenix3/boost/phoenix/statement/detail/catch_push_back.hpp (contents, props changed)
   sandbox/SOC/2010/phoenix3/boost/phoenix/statement/detail/try_catch_eval.hpp (contents, props changed)
   sandbox/SOC/2010/phoenix3/boost/phoenix/statement/detail/try_catch_expression.hpp (contents, props changed)
Removed:
   sandbox/SOC/2010/phoenix3/boost/phoenix/core/compose.hpp
   sandbox/SOC/2010/phoenix3/boost/phoenix/core/detail/actor_fun_eval.hpp
   sandbox/SOC/2010/phoenix3/boost/phoenix/core/detail/compose_ex.hpp
   sandbox/SOC/2010/phoenix3/boost/phoenix/core/detail/compose_result_of.hpp
   sandbox/SOC/2010/phoenix3/boost/phoenix/core/detail/make_basic_environment.hpp
   sandbox/SOC/2010/phoenix3/boost/phoenix/core/no_nullary.hpp
   sandbox/SOC/2010/phoenix3/boost/phoenix/debug/dump_env.hpp
   sandbox/SOC/2010/phoenix3/boost/phoenix/scope/detail/local_variable.hpp
   sandbox/SOC/2010/phoenix3/boost/phoenix/scope/scope_actor.hpp
   sandbox/SOC/2010/phoenix3/boost/phoenix/scope/scope_domain.hpp
   sandbox/SOC/2010/phoenix3/boost/phoenix/scope/scope_grammar.hpp
   sandbox/SOC/2010/phoenix3/boost/phoenix/support/element_at.hpp
Text files modified:
   sandbox/SOC/2010/phoenix3/boost/phoenix/bind/bind.hpp | 53 -
   sandbox/SOC/2010/phoenix3/boost/phoenix/bind/bind_member_function.hpp | 56 -
   sandbox/SOC/2010/phoenix3/boost/phoenix/core.hpp | 5
   sandbox/SOC/2010/phoenix3/boost/phoenix/core/actor.hpp | 22
   sandbox/SOC/2010/phoenix3/boost/phoenix/core/argument.hpp | 11
   sandbox/SOC/2010/phoenix3/boost/phoenix/core/arity.hpp | 82 +-
   sandbox/SOC/2010/phoenix3/boost/phoenix/core/detail/actor_operator.hpp | 52 -
   sandbox/SOC/2010/phoenix3/boost/phoenix/core/detail/actor_result_of.hpp | 27
   sandbox/SOC/2010/phoenix3/boost/phoenix/core/domain.hpp | 4
   sandbox/SOC/2010/phoenix3/boost/phoenix/core/environment.hpp | 13
   sandbox/SOC/2010/phoenix3/boost/phoenix/core/expression.hpp | 21
   sandbox/SOC/2010/phoenix3/boost/phoenix/core/function_equal.hpp | 29
   sandbox/SOC/2010/phoenix3/boost/phoenix/core/is_actor.hpp | 8
   sandbox/SOC/2010/phoenix3/boost/phoenix/core/is_nullary.hpp | 17
   sandbox/SOC/2010/phoenix3/boost/phoenix/core/limits.hpp | 2
   sandbox/SOC/2010/phoenix3/boost/phoenix/core/mem_obj_ptr.hpp | 5
   sandbox/SOC/2010/phoenix3/boost/phoenix/core/meta_grammar.hpp | 33
   sandbox/SOC/2010/phoenix3/boost/phoenix/core/nothing.hpp | 21
   sandbox/SOC/2010/phoenix3/boost/phoenix/core/reference.hpp | 17
   sandbox/SOC/2010/phoenix3/boost/phoenix/core/terminal.hpp | 19
   sandbox/SOC/2010/phoenix3/boost/phoenix/core/unpack.hpp | 159 +++--
   sandbox/SOC/2010/phoenix3/boost/phoenix/function/detail/function_operator.hpp | 6
   sandbox/SOC/2010/phoenix3/boost/phoenix/function/detail/function_result_of.hpp | 7
   sandbox/SOC/2010/phoenix3/boost/phoenix/function/function.hpp | 47 -
   sandbox/SOC/2010/phoenix3/boost/phoenix/fusion/at.hpp | 49 -
   sandbox/SOC/2010/phoenix3/boost/phoenix/object/const_cast.hpp | 16
   sandbox/SOC/2010/phoenix3/boost/phoenix/object/construct.hpp | 11
   sandbox/SOC/2010/phoenix3/boost/phoenix/object/detail/construct.hpp | 9
   sandbox/SOC/2010/phoenix3/boost/phoenix/object/detail/construct_eval.hpp | 4
   sandbox/SOC/2010/phoenix3/boost/phoenix/object/detail/new.hpp | 5
   sandbox/SOC/2010/phoenix3/boost/phoenix/object/detail/new_eval.hpp | 9
   sandbox/SOC/2010/phoenix3/boost/phoenix/object/dynamic_cast.hpp | 16
   sandbox/SOC/2010/phoenix3/boost/phoenix/object/new.hpp | 11
   sandbox/SOC/2010/phoenix3/boost/phoenix/object/reinterpret_cast.hpp | 14
   sandbox/SOC/2010/phoenix3/boost/phoenix/object/static_cast.hpp | 14
   sandbox/SOC/2010/phoenix3/boost/phoenix/operator.hpp | 32
   sandbox/SOC/2010/phoenix3/boost/phoenix/operator/detail/mem_fun_ptr_gen.hpp | 12
   sandbox/SOC/2010/phoenix3/boost/phoenix/operator/if_else.hpp | 24
   sandbox/SOC/2010/phoenix3/boost/phoenix/operator/io.hpp | 8
   sandbox/SOC/2010/phoenix3/boost/phoenix/operator/member.hpp | 81 ++
   sandbox/SOC/2010/phoenix3/boost/phoenix/operator/operator.hpp | 2
   sandbox/SOC/2010/phoenix3/boost/phoenix/scope/detail/dynamic.hpp | 45 +
   sandbox/SOC/2010/phoenix3/boost/phoenix/scope/detail/local_gen.hpp | 48
   sandbox/SOC/2010/phoenix3/boost/phoenix/scope/dynamic.hpp | 101 --
   sandbox/SOC/2010/phoenix3/boost/phoenix/scope/lambda.hpp | 230 +++++--
   sandbox/SOC/2010/phoenix3/boost/phoenix/scope/let.hpp | 36
   sandbox/SOC/2010/phoenix3/boost/phoenix/scope/local_variable.hpp | 194 +++---
   sandbox/SOC/2010/phoenix3/boost/phoenix/scope/scoped_environment.hpp | 10
   sandbox/SOC/2010/phoenix3/boost/phoenix/statement/detail/switch.hpp | 230 +++----
   sandbox/SOC/2010/phoenix3/boost/phoenix/statement/do_while.hpp | 2
   sandbox/SOC/2010/phoenix3/boost/phoenix/statement/for.hpp | 5
   sandbox/SOC/2010/phoenix3/boost/phoenix/statement/if.hpp | 8
   sandbox/SOC/2010/phoenix3/boost/phoenix/statement/switch.hpp | 88 ---
   sandbox/SOC/2010/phoenix3/boost/phoenix/statement/try_catch.hpp | 173 ------
   sandbox/SOC/2010/phoenix3/boost/phoenix/stl/algorithm/iteration.hpp | 124 ++--
   sandbox/SOC/2010/phoenix3/boost/phoenix/stl/algorithm/querying.hpp | 1090 ++++++++++++++++++++--------------------
   sandbox/SOC/2010/phoenix3/boost/phoenix/support/detail/iterate.hpp | 24
   sandbox/SOC/2010/phoenix3/boost/phoenix/support/detail/iterate_define.hpp | 134 +++-
   sandbox/SOC/2010/phoenix3/boost/phoenix/support/iterate.hpp | 5
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/Jamfile | 16
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/index.html | 18
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/acknowledgments.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/advanced_topics.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/advanced_topics/extending_actors.html | 10
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/advanced_topics/porting_from_phoenix_2_0.html | 4
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/introduction.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/basics.html | 12
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/concepts.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/concepts/actor.html | 12
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/concepts/environment.html | 12
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/concepts/evaluationpolicy.html | 12
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/concepts/evaluator.html | 12
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/bind.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/bind/binding_functions.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/bind/binding_member_functions.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/bind/binding_member_variables.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/bind/compatibility_with_other_bind_libraries.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/core.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/core/arguments.html | 10
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/core/constant_references.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/core/nothing.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/core/references.html | 4
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/core/values.html | 4
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/function.html | 4
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/object.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/object/casts.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/object/construction.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/object/delete.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/object/new.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/operator.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/operator/supported_operators.html | 10
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/scope.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/scope/lambda.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/scope/let.html | 6
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/scope/local_variables.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/___do_while_____statement.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/___if_else_____statement.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/block_statement.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/for__statement.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/if__statement.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/switch__statement.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/throw_.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/try__catch__statement.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/while__statement.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/stl.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/stl/algorithm.html | 10
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/stl/container.html | 8
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/organization.html | 10
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/references.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit.html | 4
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/composites.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/composites/construct__new__delete__casts.html | 4
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/composites/lazy_functions.html | 6
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/composites/lazy_operators.html | 8
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/composites/lazy_statements.html | 4
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/composites/more.html | 4
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/primitives.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/primitives/arguments.html | 4
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/primitives/references.html | 4
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/primitives/values.html | 8
   sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/wrap_up.html | 2
   sandbox/SOC/2010/phoenix3/libs/phoenix/test/boost_bind_compatibility/bind_placeholder_test.cpp | 3
   125 files changed, 1841 insertions(+), 2038 deletions(-)

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/bind/bind.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/bind/bind.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/bind/bind.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -11,8 +11,6 @@
 #ifndef PHOENIX_BIND_BIND_HPP
 #define PHOENIX_BIND_BIND_HPP
 
-//#include <boost/phoenix/core/expression.hpp>
-//#include <boost/phoenix/core/unpack.hpp>
 #include <boost/phoenix/function.hpp>
 #include <boost/phoenix/support/iterate.hpp>
 #include <boost/utility/result_of.hpp>
@@ -22,52 +20,11 @@
     ////////////////////////////////////////////////////////////////////////////
     // Bind
     ////////////////////////////////////////////////////////////////////////////
-
-#if 0
- PHOENIX_DEFINE_EXPRESSION_VARARG(bind, (meta_grammar), PHOENIX_ARG_LIMIT)
-
- struct bind_eval
- : proto::callable
- {
- template <typename Sig>
- struct result;
-
- template <typename This, typename Env, typename F>
- struct result<This(Env &, F const &)>
- /*: boost::result_of<
- typename boost::result_of<evaluator(F const &, Env &)>::type()
- >*/
- {
- typedef int type;
- };
- typedef int result_type;
-
- template <typename Env, typename F>
- result_type//typename result<bind_eval(Env &, F const &)>::type
- operator()(Env & env, F const & f) const
- {
- eval(f, env);
- std::cout << typeid(detail::wrap<typename boost::result_of<evaluator(F const&, Env&)>::type>).name() << "\n";
- //std::cout << typeid(detail::wrap<typename boost::result_of<evaluator(F &, Env&)>::type>).name() << "\n";
- //std::cout << typeid(detail::wrap<typename proto::result_of::value<F>::type>).name() << "\n";
- //std::cout << typeid(detail::wrap<typename proto::result_of::value<F const &>::type>).name() << "\n";
- //std::cout << typeid(detail::wrap<typename proto::result_of::value<F &>::type>).name() << "\n";
- return 5;//typename result<bind_eval(Env &, F const &)>::type();
- }
- };
-
- template <typename Dummy>
- struct default_actions::when<rule::bind, Dummy>
- : proto::call<bind_eval(_env, unpack)>
- {};
-#endif
     
     template <typename F>
     typename boost::result_of<function<F>()>::type const
- //typename expression::bind<F>::type
     bind(F f)
     {
- //return expression::bind<F>::make(f);
         return function<F>(f)();
     }
 
@@ -83,16 +40,8 @@
 #else
     
     template <typename F, PHOENIX_typename_A>
-/*#if PHOENIX_ITERATION == 1
- typename disable_if<
- is_member_pointer<F>
- , typename boost::result_of<function<F>(A0 const&)>::type const
- >::type
-#else*/
- //typename boost::result_of<function<F>(PHOENIX_A_const_ref)>::type const
     typename result_of::function<F, PHOENIX_A>::type const
-//#endif
- bind(F f, PHOENIX_A_a)
+ bind(F f, PHOENIX_A_const_ref_a)
     {
         return function<F>(f)(PHOENIX_a);
     }

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/bind/bind_member_function.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/bind/bind_member_function.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/bind/bind_member_function.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -20,9 +20,9 @@
     template <typename RT, typename ClassT, typename ClassA>
     typename result_of::function<
         RT(ClassT::*)()
- , ClassA// const&
+ , ClassA
>::type
- bind(RT(ClassT::*f)(), ClassA /*const&*/ obj)
+ bind(RT(ClassT::*f)(), ClassA obj)
     {
         return function<RT(ClassT::*)()>(f)(obj);
     }
@@ -30,35 +30,13 @@
     template <typename RT, typename ClassT, typename ClassA>
     typename result_of::function<
         RT(ClassT::*)() const
- , ClassA// const&
+ , ClassA
>::type
- bind(RT(ClassT::*f)() const, ClassA /*const&*/ obj)
+ bind(RT(ClassT::*f)() const, ClassA obj)
     {
         return function<RT(ClassT::*)() const>(f)(obj);
     }
 
- /*
- template <typename RT, typename ClassT>
- typename result_of::function<
- RT(ClassT::*)()
- , ClassT//&//typename make_reference<ClassT>::type const
- >::type
- bind(RT(ClassT::*f)(), ClassT& obj)
- {
- return function<RT(ClassT::*)()>(f)(obj);//ref(obj));
- }
-
- template <typename RT, typename ClassT>
- typename result_of::function<
- RT(ClassT::*)() const
- , ClassT//&//typename make_reference<ClassT>::type const
- >::type
- bind(RT(ClassT::*f)() const, ClassT& obj)
- {
- return function<RT(ClassT::*)() const>(f)(obj);//ref(obj));
- }
- */
-
 #define PHOENIX_ITERATION_PARAMS \
     (3, (1, PHOENIX_ARG_LIMIT, \
     <boost/phoenix/bind/bind_member_function.hpp>))
@@ -75,7 +53,8 @@
       , typename ClassT
       , BOOST_PP_ENUM_PARAMS(PHOENIX_ITERATION, typename T)
       , typename ClassA
- , PHOENIX_typename_A>
+ , PHOENIX_typename_A
+ >
     typename result_of::function<
         RT(ClassT::*)(BOOST_PP_ENUM_PARAMS(PHOENIX_ITERATION, T))
       , ClassA const&
@@ -84,7 +63,8 @@
     bind(
         RT(ClassT::*f)(BOOST_PP_ENUM_PARAMS(PHOENIX_ITERATION, T))
       , ClassA const& obj
- , PHOENIX_A_const_ref_a)
+ , PHOENIX_A_const_ref_a
+ )
     {
         return function<
             RT(ClassT::*)(BOOST_PP_ENUM_PARAMS(PHOENIX_ITERATION, T))>(f)(
@@ -96,7 +76,8 @@
       , typename ClassT
       , BOOST_PP_ENUM_PARAMS(PHOENIX_ITERATION, typename T)
       , typename ClassA
- , PHOENIX_typename_A>
+ , PHOENIX_typename_A
+ >
     typename result_of::function<
         RT(ClassT::*)(BOOST_PP_ENUM_PARAMS(PHOENIX_ITERATION, T)) const
       , ClassA const&
@@ -105,7 +86,8 @@
     bind(
         RT(ClassT::*f)(BOOST_PP_ENUM_PARAMS(PHOENIX_ITERATION, T)) const
       , ClassA const& obj
- , PHOENIX_A_const_ref_a)
+ , PHOENIX_A_const_ref_a
+ )
     {
         return function<
             RT(ClassT::*)(BOOST_PP_ENUM_PARAMS(PHOENIX_ITERATION, T)) const>(f)(
@@ -116,7 +98,8 @@
         typename RT
       , typename ClassT
       , BOOST_PP_ENUM_PARAMS(PHOENIX_ITERATION, typename T)
- , PHOENIX_typename_A>
+ , PHOENIX_typename_A
+ >
     typename result_of::function<
         RT(ClassT::*)(BOOST_PP_ENUM_PARAMS(PHOENIX_ITERATION, T))
       , typename make_reference<ClassT>::type const
@@ -125,7 +108,8 @@
     bind(
         RT(ClassT::*f)(BOOST_PP_ENUM_PARAMS(PHOENIX_ITERATION, T))
       , ClassT& obj
- , PHOENIX_A_const_ref_a)
+ , PHOENIX_A_const_ref_a
+ )
     {
         return function<
             RT(ClassT::*)(BOOST_PP_ENUM_PARAMS(PHOENIX_ITERATION, T))>(f)(
@@ -136,7 +120,8 @@
         typename RT
       , typename ClassT
       , BOOST_PP_ENUM_PARAMS(PHOENIX_ITERATION, typename T)
- , PHOENIX_typename_A>
+ , PHOENIX_typename_A
+ >
     typename result_of::function<
         RT(ClassT::*)(BOOST_PP_ENUM_PARAMS(PHOENIX_ITERATION, T)) const
       , typename make_reference<ClassT>::type const
@@ -147,8 +132,9 @@
       , ClassT& obj
       , PHOENIX_A_const_ref_a)
     {
- return function<RT(ClassT::*)(BOOST_PP_ENUM_PARAMS(PHOENIX_ITERATION, T)) const>(f)(
- ref(obj), PHOENIX_a);
+ return function<
+ RT(ClassT::*)(BOOST_PP_ENUM_PARAMS(PHOENIX_ITERATION, T)) const>(f)(
+ ref(obj), PHOENIX_a);
     }
 
 #endif

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/core.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/core.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/core.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -10,13 +10,12 @@
 #include <boost/phoenix/version.hpp>
 #include <boost/phoenix/core/limits.hpp>
 #include <boost/phoenix/core/actor.hpp>
-//#include <boost/phoenix/core/compose.hpp>
 #include <boost/phoenix/core/is_actor.hpp>
 #include <boost/phoenix/core/argument.hpp>
 #include <boost/phoenix/core/value.hpp>
 #include <boost/phoenix/core/reference.hpp>
-//#include <boost/phoenix/core/nothing.hpp>
+#include <boost/phoenix/core/nothing.hpp>
 #include <boost/phoenix/core/function_equal.hpp>
-//#include <boost/phoenix/core/visit_each.hpp>
+#include <boost/phoenix/core/visit_each.hpp>
 
 #endif

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/core/actor.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/core/actor.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/core/actor.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -58,18 +58,16 @@
         template <typename Expr>
         struct actor<Expr>
         {
- //static const int arity = result_of::arity<Expr>::type::value;
-
             typedef
+ // avoid calling result_of::actor when this is false
                 typename mpl::eval_if<
- typename is_nullary<Expr>::type // avoid calling result_of::actor when this is false
+ typename is_nullary<Expr>::type
                   , boost::result_of<
                         evaluator(
                             Expr const &
                           , fusion::vector2<fusion::vector0<>&, default_actions>&
                         )
>
- //evaluator<Expr const &, fusion::vector2<fusion::vector0<>&, default_actions>&>
                   , mpl::identity<detail::error_expecting_arguments>
>::type
             type;
@@ -98,21 +96,9 @@
         template <typename Sig>
         struct result;
 
- /*
- template <typename This>
- struct result<This()>
- : result_of::actor<Expr>
- {};
- */
- //BOOST_MPL_ASSERT((proto::matches<actor<Expr>, meta_grammar>));
-
         typename result_of::actor<Expr>::type
         operator()()
         {
- /*
- typedef make_basic_environment<default_actions> env_type;
- typename env_type::type env = env_type::make();
- */
             typedef fusion::vector0<> args_type;
             args_type args;
             fusion::vector2<args_type&, default_actions> env(args, default_actions());
@@ -123,10 +109,6 @@
         typename result_of::actor<Expr>::type
         operator()() const
         {
- /*
- typedef make_basic_environment<default_actions> env_type;
- typename env_type::type env = env_type::make();
- */
             typedef fusion::vector0<> args_type;
             args_type args;
             fusion::vector2<args_type&, default_actions> env(args, default_actions());

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/core/argument.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/core/argument.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/core/argument.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -9,13 +9,6 @@
 #ifndef PHOENIX_CORE_ARGUMENT_HPP
 #define PHOENIX_CORE_ARGUMENT_HPP
 
-/*
-#include <boost/phoenix/core/compose.hpp>
-#include <boost/phoenix/core/actor.hpp>
-#include <boost/phoenix/core/no_nullary.hpp>
-#include <boost/phoenix/core/meta_grammar.hpp>
-#include <boost/phoenix/core/environment.hpp>
-*/
 #include <boost/phoenix/core/limits.hpp>
 #include <boost/phoenix/core/actor.hpp>
 #include <boost/phoenix/core/terminal.hpp>
@@ -60,7 +53,7 @@
 namespace boost {
     template <typename I>
     struct is_placeholder<phoenix::argument<I> >
- : mpl::true_
+ : I
     {};
 }
 
@@ -68,7 +61,7 @@
 {
     #define BOOST_PHOENIX_ARGUMENT_N(_, N, name) \
     actor< \
- proto::terminal<argument<mpl::int_<N> > >::type \
+ proto::terminal<argument<mpl::int_<BOOST_PP_INC(N)> > >::type \
> const BOOST_PP_CAT(name, BOOST_PP_INC(N)) = {};
 
     namespace placeholders

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/core/arity.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/core/arity.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/core/arity.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -22,63 +22,63 @@
 
 namespace boost { namespace phoenix
 {
- ////////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////////////////////////////////////////////
     //
     // Calculate the arity of an expression using proto transforms
     //
- ////////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////////////////////////////////////////////
     
     struct argument;
 
- template <typename F>
- struct funcwrap;
-
- struct env;
-
- namespace detail
- {
- struct arity
- : proto::or_<
- proto::when<proto::terminal<proto::_>, mpl::int_<0>()>
- , proto::when<
- proto::function<
- proto::terminal<funcwrap<argument> >
- , proto::terminal<env>
- , proto::_
- >
- , mpl::next<proto::_value(proto::_child2)>()
- >
- , proto::otherwise<
- proto::fold<
- proto::_
- , mpl::int_<0>()
- , mpl::max<arity, proto::_state>()
- >
- >
- >
- {};
- }
+ struct arity;
 
     namespace result_of
     {
         template <typename Expr>
         struct arity
- : boost::result_of<detail::arity(Expr)>
+ : mpl::int_<
+ boost::result_of<
+ evaluator(
+ Expr const&
+ , fusion::vector2<
+ mpl::int_<0>
+ , boost::phoenix::arity
+ >&
+ )
+ >::type::value
+ >
         {};
     }
 
- template <typename Expr>
- int arity()
+ struct arity
     {
- return result_of::arity<Expr>::type::value;
- }
-
- template <typename Expr>
- int arity(Expr const&)
- {
- return result_of::arity<Expr>::type::value;
- }
+ template <typename Rule, typename Dummy = void>
+ struct when
+ : proto::fold<
+ proto::_
+ , mpl::int_<0>
+ , mpl::max<
+ proto::_state
+ , evaluator(proto::_, _env)
+ >()
+ >
+ {};
+ };
 
+ template <typename Dummy>
+ struct arity::when<rule::argument, Dummy>
+ : proto::make<is_placeholder<proto::_value>()>
+ {};
+
+ template <typename Dummy>
+ struct arity::when<rule::custom_terminal, Dummy>
+ : proto::make<mpl::int_<0>()>
+ {};
+
+ template <typename Dummy>
+ struct arity::when<rule::terminal, Dummy>
+ : proto::make<mpl::int_<0>()>
+ {};
 }}
 
 #endif

Deleted: sandbox/SOC/2010/phoenix3/boost/phoenix/core/compose.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/core/compose.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
+++ (empty file)
@@ -1,143 +0,0 @@
-/*==============================================================================
- Copyright (c) 2001-2010 Joel de Guzman
- Copyright (c) 2010 Eric Niebler
-
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-==============================================================================*/
-#ifndef PHOENIX_CORE_COMPOSE_HPP
-#define PHOENIX_CORE_COMPOSE_HPP
-
-#include <boost/call_traits.hpp>
-#include <boost/fusion/sequence/intrinsic/at.hpp>
-#include <boost/phoenix/core/limits.hpp>
-#include <boost/phoenix/core/meta_grammar.hpp>
-#include <boost/phoenix/support/iterate.hpp>
-#include <boost/proto/tags.hpp>
-#include <boost/proto/make_expr.hpp>
-
-namespace boost { namespace phoenix
-{
- ////////////////////////////////////////////////////////////////////////////
- // Create an actor (TR1 function) from a proto transform and data type
- // we will associte with it (the actor).
- ////////////////////////////////////////////////////////////////////////////
-
- template <typename Expr>
- struct actor;
-
- struct default_domain_with_basic_expr
- : proto::domain<proto::use_basic_expr<proto::default_generator> >
- {};
-
- template <typename F, template< typename > class Actor
- , PHOENIX_typename_A_void(PHOENIX_COMPOSITE_LIMIT)
- , typename Dummy = void>
- struct compose_ex;
-
- template <typename F
- , PHOENIX_typename_A_void(PHOENIX_COMPOSITE_LIMIT)
- , typename Dummy = void>
- struct compose : compose_ex<F, actor, PHOENIX_A(PHOENIX_COMPOSITE_LIMIT)>
- {};
-
- template <typename F, template<typename> class Actor>
- struct compose_ex<F, Actor>
- {
- typedef
- typename proto::result_of::make_expr<
- proto::tag::function
- , default_domain_with_basic_expr
- , funcwrap<F>
- , env>::type
- base_type;
- typedef Actor<base_type> result_type;
- typedef result_type type;
-
- result_type const
- operator()() const
- {
- actor<base_type> const e = {{{funcwrap<F>()}, {env()}}};
- return e;
- }
- };
-
- template <typename F, template<typename> class Actor, typename A0>
- struct compose_ex<F, Actor, A0>
- {
- typedef
- typename proto::result_of::make_expr<
- proto::tag::function
- , default_domain_with_basic_expr
- , funcwrap<F>
- , env
- , A0>::type
- base_type;
- typedef Actor<base_type> result_type;
- typedef result_type type;
-
- result_type const
- operator()(typename call_traits<A0>::param_type a0) const
- {
- actor<base_type> const e = {{{funcwrap<F>()}, {env()}, a0}};
- return e;
- }
- };
-
- template <typename F, template<typename> class Actor, typename A0, typename A1>
- struct compose_ex<F, Actor, A0, A1>
- {
- typedef
- typename proto::result_of::make_expr<
- proto::tag::function
- , default_domain_with_basic_expr
- , funcwrap<F>
- , env
- , A0
- , A1>::type
- base_type;
- typedef Actor<base_type> result_type;
- typedef result_type type;
-
- result_type const
- operator()(typename call_traits<A0>::param_type a0,typename call_traits<A1>::param_type a1) const
- {
- actor<base_type> const e = {{{funcwrap<F>()}, {env()}, a0, a1}};
- return e;
- }
- };
-
- template <typename F, template<typename> class Actor, typename A0, typename A1, typename A2>
- struct compose_ex<F, Actor, A0, A1, A2>
- {
- typedef
- typename proto::result_of::make_expr<
- proto::tag::function
- , default_domain_with_basic_expr
- , funcwrap<F>
- , env
- , A0
- , A1
- , A2>::type
- base_type;
- typedef Actor<base_type> result_type;
- typedef result_type type;
-
- result_type const
- operator()(
- typename call_traits<A0>::param_type a0,
- typename call_traits<A1>::param_type a1,
- typename call_traits<A2>::param_type a2) const
- {
- actor<base_type> const e = {{{funcwrap<F>()}, {env()}, a0, a1, a2}};
- return e;
- }
- };
-
- // Bring in the rest
- #include <boost/phoenix/core/detail/compose_ex.hpp>
-
-}}
-
-#endif
-

Deleted: sandbox/SOC/2010/phoenix3/boost/phoenix/core/detail/actor_fun_eval.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/core/detail/actor_fun_eval.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
+++ (empty file)
@@ -1,67 +0,0 @@
-/*==============================================================================
- Copyright (c) 2005-2010 Joel de Guzman
- Copyright (c) 2010 Thomas Heller
-
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-==============================================================================*/
-
-#if !PHOENIX_IS_ITERATING
-
-#ifndef PHOENIX_CORE_DETAIL_ACTOR_FUN_EVAL_HPP
-#define PHOENIX_CORE_DETAIL_ACTOR_FUN_EVAL_HPP
-
-#include <boost/phoenix/support/iterate.hpp>
-#include <boost/preprocessor/repetition/enum_shifted_binary_params.hpp>
-#include <boost/preprocessor/punctuation/paren.hpp>
-
-#define PHOENIX_ITERATION_PARAMS \
- (3, (4, PHOENIX_ACTOR_LIMIT, \
- <boost/phoenix/core/detail/actor_fun_eval.hpp>))
-#include PHOENIX_ITERATE()
-
-#endif
-
-#else
- template <PHOENIX_typename_A>
- struct actor_fun_eval<PHOENIX_A>
- {
-#define EVAL_RESULTS(_, n, __) BOOST_PP_COMMA_IF(BOOST_PP_DEC(n)) typename boost::result_of<eval_grammar(A ## n const&, Env&)>::type
- template <typename Env, typename Dummy = void>
- struct basic_environment
- : make_basic_environment<
- BOOST_PP_REPEAT_FROM_TO(
- 1, PHOENIX_ITERATION, EVAL_RESULTS, _)>
- {};
-
- template <typename Sig>
- struct result;
-
- template <typename This, typename Env>
- struct result<This(Env&, PHOENIX_A_const_ref)>
- {
- typedef typename boost::result_of<
- eval_grammar(A0 const&, typename basic_environment<Env>::type&)
- >::type
- type;
- };
-
- template <typename Env>
- typename boost::result_of<
- eval_grammar(A0 const&, typename basic_environment<Env>::type&)
- >::type
- operator()(Env& env, PHOENIX_A_const_ref_a) const
- {
-#define EVAL_ARGS(_, n, __) BOOST_PP_COMMA_IF(BOOST_PP_DEC(n)) eval(a ## n , env)
- typename basic_environment<Env>::type args(
- BOOST_PP_REPEAT_FROM_TO(1, PHOENIX_ITERATION, EVAL_ARGS, _));
-
- return eval(a0, args);
- }
- };
-
-#undef EVAL_ARGS
-#undef EVAL_RESULTS
-
-#endif
-

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/core/detail/actor_operator.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/core/detail/actor_operator.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/core/detail/actor_operator.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -22,8 +22,6 @@
 
 #else
 
-#define PHOENIX_ENV( A ) typename make_basic_environment<A>::type
-
         template <typename This, PHOENIX_typename_A>
         struct result<This(PHOENIX_A)>
             : result_of::actor<Expr, PHOENIX_A>
@@ -35,17 +33,14 @@
         typename result_of::actor<Expr, PHOENIX_A_ref>::type
         operator()(PHOENIX_A_ref_a)
         {
- /*
- typedef make_basic_environment<default_actions, PHOENIX_A_ref> env_type;
- typename env_type::type env = env_type::make(PHOENIX_a);
- */
             typedef
                 BOOST_PP_CAT(fusion::vector, PHOENIX_ITERATION)<
                     PHOENIX_A_ref
>
                 args_type;
             args_type args(PHOENIX_a);
- fusion::vector2<args_type&, default_actions> env(args, default_actions());
+ fusion::vector2<args_type&, default_actions>
+ env(args, default_actions());
 
             return eval(*this, env);
         }
@@ -54,17 +49,14 @@
         typename result_of::actor<Expr, PHOENIX_A_ref>::type
         operator()(PHOENIX_A_ref_a) const
         {
- /*
- typedef make_basic_environment<default_actions, PHOENIX_A_ref> env_type;
- typename env_type::type env = env_type::make(PHOENIX_a);
- */
             typedef
                 BOOST_PP_CAT(fusion::vector, PHOENIX_ITERATION)<
                     PHOENIX_A_ref
>
                 args_type;
             args_type args(PHOENIX_a);
- fusion::vector2<args_type&, default_actions> env(args, default_actions());
+ fusion::vector2<args_type&, default_actions>
+ env(args, default_actions());
             
             return eval(*this, env);
         }
@@ -73,17 +65,14 @@
         typename result_of::actor<Expr, PHOENIX_A_const_ref>::type
         operator()(PHOENIX_A_const_ref_a)
         {
- /*
- typedef make_basic_environment<default_actions, PHOENIX_A_ref> env_type;
- typename env_type::type env = env_type::make(PHOENIX_a);
- */
             typedef
                 BOOST_PP_CAT(fusion::vector, PHOENIX_ITERATION)<
                     PHOENIX_A_const_ref
>
                 args_type;
             args_type args(PHOENIX_a);
- fusion::vector2<args_type&, default_actions> env(args, default_actions());
+ fusion::vector2<args_type&, default_actions>
+ env(args, default_actions());
             
             return eval(*this, env);
         }
@@ -92,17 +81,14 @@
         typename result_of::actor<Expr, PHOENIX_A_const_ref>::type
         operator()(PHOENIX_A_const_ref_a) const
         {
- /*
- typedef make_basic_environment<default_actions, PHOENIX_A_ref> env_type;
- typename env_type::type env = env_type::make(PHOENIX_a);
- */
             typedef
                 BOOST_PP_CAT(fusion::vector, PHOENIX_ITERATION)<
                     PHOENIX_A_const_ref
>
                 args_type;
             args_type args(PHOENIX_a);
- fusion::vector2<args_type&, default_actions> env(args, default_actions());
+ fusion::vector2<args_type&, default_actions>
+ env(args, default_actions());
 
             return eval(*this, env);
         }
@@ -122,7 +108,7 @@
         operator()(PHOENIX_PERM_A_a(I)) const \
         { \
             typedef \
- typename fusion::result_of::make_vector<PHOENIX_PERM_A(I)>::type \
+ typename fusion::result_of::make_vector<PHOENIX_PERM_A(I)>::type\
                 args_type; \
             args_type args(PHOENIX_a); \
             fusion::vector2< \
@@ -137,7 +123,7 @@
         operator()(PHOENIX_PERM_A_a(I)) \
         { \
             typedef \
- typename fusion::result_of::make_vector<PHOENIX_PERM_A(I)>::type \
+ typename fusion::result_of::make_vector<PHOENIX_PERM_A(I)>::type\
                 args_type; \
             args_type args(PHOENIX_a); \
             fusion::vector2< \
@@ -153,23 +139,5 @@
 #undef PHOENIX_ACTOR_OPERATOR
 
 #endif
-/*
- template <PHOENIX_typename_A>
- typename compose<
- actor_fun_eval<
- actor<Expr>, BOOST_PP_ENUM_BINARY_PARAMS(PHOENIX_ITERATION, actor<A, > BOOST_PP_INTERCEPT)
- >
- , actor<Expr>, BOOST_PP_ENUM_BINARY_PARAMS(PHOENIX_ITERATION, actor<A, > BOOST_PP_INTERCEPT)
- >::type const
- operator()(BOOST_PP_ENUM_BINARY_PARAMS(PHOENIX_ITERATION, actor<A, > const& a)) const
- {
- return compose<
- actor_fun_eval<actor<Expr>, BOOST_PP_ENUM_BINARY_PARAMS(PHOENIX_ITERATION, actor<A, > BOOST_PP_INTERCEPT)>
- , actor<Expr>, BOOST_PP_ENUM_BINARY_PARAMS(PHOENIX_ITERATION, actor<A, > BOOST_PP_INTERCEPT)
- >()(*this, a0, a1, a2);
- }
-*/
-
-#undef PHOENIX_ENV
 
 #endif

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/core/detail/actor_result_of.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/core/detail/actor_result_of.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/core/detail/actor_result_of.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -22,18 +22,28 @@
        
 #else
 
-#define PHOENIX_ENV( A ) typename make_basic_environment<A>::type
-
         template <typename Expr, PHOENIX_typename_A>
         struct actor<Expr, PHOENIX_A>
- /*: boost::result_of<eval_grammar(
- ::boost::phoenix::actor<Expr> const &,
- PHOENIX_ENV(PHOENIX_A)&)>
- */
+ {
+ typedef
+ typename phoenix::evaluator::
+ impl<
+ Expr const&
+ , fusion::vector2<
+ BOOST_PP_CAT(
+ fusion::vector
+ , PHOENIX_ITERATION
+ )<PHOENIX_A>
+ , default_actions
+ >
+ , int
+ >::result_type
+ type;
+ };
+ /*
             : boost::result_of<
                 phoenix::evaluator(
                     Expr const&
- //, typename make_basic_environment<default_actions, PHOENIX_A>::type &
                   , fusion::vector2<
                         BOOST_PP_CAT(fusion::vector, PHOENIX_ITERATION)<
                             PHOENIX_A
@@ -43,8 +53,7 @@
                 )
>
         {};
-
-#undef PHOENIX_ENV
+ */
 
 #endif
 

Deleted: sandbox/SOC/2010/phoenix3/boost/phoenix/core/detail/compose_ex.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/core/detail/compose_ex.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
+++ (empty file)
@@ -1,50 +0,0 @@
-/*==============================================================================
- Copyright (c) 2005-2010 Joel de Guzman
- Copyright (c) 2010 Thomas Heller
-
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-==============================================================================*/
-
-#if !PHOENIX_IS_ITERATING
-
-#ifndef PHOENIX_CORE_DETAIL_COMPOSE_RESULT_OF_HPP
-#define PHOENIX_CORE_DETAIL_COMPOSE_RESULT_OF_HPP
-
-#include <boost/phoenix/support/iterate.hpp>
-
-#define PHOENIX_ITERATION_PARAMS \
- (3, (4, PHOENIX_COMPOSITE_LIMIT, \
- <boost/phoenix/core/detail/compose_ex.hpp>))
-#include PHOENIX_ITERATE()
-
-#endif
-
-#else
-
- template <typename F, template<typename> class Actor, PHOENIX_typename_A>
- struct compose_ex<F, Actor, PHOENIX_A>
- {
- typedef
- typename proto::result_of::make_expr<
- proto::tag::function
- , default_domain_with_basic_expr
- , funcwrap<F>
- , env
- , PHOENIX_A>::type
- base_type;
- typedef Actor<base_type> result_type;
- typedef result_type type;
-
- result_type const
- operator()(
- BOOST_PP_ENUM_BINARY_PARAMS(
- PHOENIX_ITERATION,
- typename call_traits< A, >::param_type a)) const
- {
- actor<base_type> const e = {{{funcwrap<F>()}, {env()}, PHOENIX_a}};
- return e;
- }
- };
-
-#endif

Deleted: sandbox/SOC/2010/phoenix3/boost/phoenix/core/detail/compose_result_of.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/core/detail/compose_result_of.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
+++ (empty file)
@@ -1,58 +0,0 @@
-/*==============================================================================
- Copyright (c) 2005-2010 Joel de Guzman
- Copyright (c) 2010 Thomas Heller
-
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-==============================================================================*/
-
-#if !PHOENIX_IS_ITERATING
-
-#ifndef PHOENIX_CORE_DETAIL_COMPOSE_RESULT_OF_HPP
-#define PHOENIX_CORE_DETAIL_COMPOSE_RESULT_OF_HPP
-
-#include <boost/phoenix/support/iterate.hpp>
-
-#define PHOENIX_ITERATION_PARAMS \
- (3, (3, PHOENIX_COMPOSITE_LIMIT, \
- <boost/phoenix/core/detail/compose_ex.hpp>))
-#include PHOENIX_ITERATE()
-
-#endif
-
-#else
-
- template <typename F, template<typename> class Actor, PHOENIX_typename_A>
- struct compose_ex<F, Actor, PHOENIX_A>
- {
- typedef
- typename proto::result_of::make_expr<
- proto::tag::function
- , default_domain_with_basic_expr
- , funcwrap<F>
- , env
- , PHOENIX_A>::type
- base_type;
- typedef Actor<base_type> result_type;
- typedef result_type type;
-
- result_type const
- operator()(
- BOOST_PP_ENUM_BINARY_PARAMS(
- PHOENIX_ITERATION,
- typename call_traits< A, >::param_type a)) const
- {
-#if PHOENIX_ITERATION == 1
- // silence gcc warnings
- //actor<base_type> const e = {{{funcwrap<F>()}, {env()}, {a0}}};
- actor<base_type> const e = {{{funcwrap<F>()}, {env()}, a0}};
-#elif PHOENIX_ITERATION == 2
- actor<base_type> const e = {{{funcwrap<F>()}, {env()}, a0, a1}};
-#else
- actor<base_type> const e = {{{funcwrap<F>()}, {env()}, PHOENIX_a}};
-#endif
- return e;
- }
- };
-
-#endif

Deleted: sandbox/SOC/2010/phoenix3/boost/phoenix/core/detail/make_basic_environment.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/core/detail/make_basic_environment.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
+++ (empty file)
@@ -1,37 +0,0 @@
-/*==============================================================================
- Copyright (c) 2005-2010 Joel de Guzman
- Copyright (c) 2010 Thomas Heller
-
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-==============================================================================*/
-
-#if !PHOENIX_IS_ITERATING
-
-#ifndef PHOENIX_CORE_DETAIL_MAKE_BASIC_ENVIRONMENT_HPP
-#define PHOENIX_CORE_DETAIL_MAKE_BASIC_ENVIRONMENT_HPP
-
-#define PHOENIX_ITERATION_PARAMS \
- (3, (4, PHOENIX_ARG_LIMIT, \
- <boost/phoenix/core/detail/make_basic_environment.hpp>))
-#include PHOENIX_ITERATE()
-
-#endif
-
-#else
-
- template <typename Actions, PHOENIX_typename_A>
- struct make_basic_environment<Actions, PHOENIX_A>
- {
- typedef
- BOOST_PP_CAT(fusion::vector, PHOENIX_ITERATION)<PHOENIX_A>
- params_type;
- typedef fusion::vector2<params_type, Actions> type;
-
- static type make(PHOENIX_A_a)
- {
- return type(params_type(PHOENIX_a), Actions());
- }
- };
-
-#endif

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/core/domain.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/core/domain.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/core/domain.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -25,12 +25,12 @@
         : proto::domain<
             proto::pod_generator<actor>
           , meta_grammar
- //, proto::_
           , proto::default_domain
>
     {
         template <typename T>
- struct as_child : as_expr<T>
+ struct as_child
+ : as_expr<T>
         {};
     };
 }}

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/core/environment.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/core/environment.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/core/environment.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -39,17 +39,17 @@
             typename result<NAME(Env const &)>::type \
             operator()(Env const & env) const \
             { \
- return proto::functional::at()(env, mpl::int_<N>()); \
+ return proto::functional::at()(env, mpl::int_<N>()); \
             } \
                                                                                 \
             template <typename Env> \
             typename result<args(Env &)>::type \
             operator()(Env & env) const \
             { \
- return proto::functional::at()(env, mpl::int_<N>()); \
+ return proto::functional::at()(env, mpl::int_<N>()); \
             } \
         }; \
- /**/
+ /**/
         BOOST_PHOENIX_GET_ENVIRONMENT(args, 0)
         BOOST_PHOENIX_GET_ENVIRONMENT(actions, 1)
     #undef BOOST_PHOENIX_GET_ENVIRONMENT
@@ -69,7 +69,12 @@
 
             template <typename This, typename N, typename Env>
             struct result<This(N, Env &)>
- : boost::result_of<proto::functional::at(typename args::result<args(Env &)>::type, N)>
+ : boost::result_of<
+ proto::functional::at(
+ typename args::result<args(Env &)>::type
+ , N
+ )
+ >
             {};
 
             template <typename N, typename Env>

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/core/expression.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/core/expression.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/core/expression.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -37,9 +37,10 @@
         : proto::domain<proto::use_basic_expr<proto::default_generator> >
     {};
 
- #define PHOENIX_ITERATION_PARAMS \
- (3, (1, PHOENIX_COMPOSITE_LIMIT, \
- <boost/phoenix/core/expression.hpp>))
+#define PHOENIX_ITERATION_PARAMS \
+ (3, (1, PHOENIX_COMPOSITE_LIMIT, \
+ <boost/phoenix/core/expression.hpp>)) \
+/**/
     #include PHOENIX_ITERATE()
 
 }}
@@ -93,7 +94,7 @@
             ) \
> \
     {}; \
- /**/
+/**/
 
 #define PHOENIX_DEFINE_EXPRESSION_VARARG(NAME, GRAMMAR, LIMIT) \
     namespace tag { \
@@ -141,7 +142,7 @@
     struct meta_grammar::case_<tag:: NAME, Dummy> \
         : proto::when<rule:: NAME, proto::external_transform> \
     {}; \
- /**/
+/**/
 
 #define PHOENIX_DEFINE_EXPRESSION_EXT(ACTOR, NAME, SEQ) \
     namespace tag { \
@@ -168,7 +169,7 @@
     struct meta_grammar::case_<tag:: NAME, Dummy> \
         : proto::when<rule:: NAME, proto::external_transform> \
     {}; \
- /**/
+/**/
 
 #define PHOENIX_DEFINE_EXPRESSION_EXT_VARARG_R(_, N, NAME) \
     template < \
@@ -242,7 +243,7 @@
     struct meta_grammar::case_<tag:: NAME, Dummy> \
         : proto::when<rule:: NAME, proto::external_transform> \
     {}; \
- /**/
+/**/
 
 #endif
 
@@ -283,11 +284,11 @@
         {};
         
         typedef Tag proto_tag;
- #define BOOST_PHOENIX_ENUM_CHILDREN(_, N, __) \
+ #define BOOST_PHOENIX_ENUM_CHILDREN(_, N, __) \
         typedef BOOST_PP_CAT(A, N) BOOST_PP_CAT(proto_child, N); \
- /**/
+ /**/
         BOOST_PP_REPEAT(PHOENIX_ITERATION, BOOST_PHOENIX_ENUM_CHILDREN, _)
- #undef BOOST_PHOENIX_ENUM_CHILDREN
+ #undef BOOST_PHOENIX_ENUM_CHILDREN
     };
 
 #endif

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/core/function_equal.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/core/function_equal.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/core/function_equal.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -9,9 +9,6 @@
 #define PHOENIX_CORE_FUNCTION_EQUAL_HPP
 
 #include <boost/phoenix/core/terminal.hpp>
-#include <boost/preprocessor/control/if.hpp>
-#include <boost/preprocessor/facilities/empty.hpp>
-#include <boost/preprocessor/facilities/identity.hpp>
 
 namespace boost
 {
@@ -44,6 +41,7 @@
             {
                 return a0.get_pointer() == a1.get_pointer();
             }
+
             template <typename A0, typename A1>
             result_type
             operator()(weak_ptr<A0> const & a0, weak_ptr<A1> const & a1) const
@@ -61,27 +59,10 @@
                   , proto::or_<
                         proto::when<
                             proto::terminal<proto::_>
- , proto::if_<
- mpl::false_()//is_custom_terminal<proto::_value>()
- , compare(
- proto::lazy<
- custom_terminal<proto::_value>(
- proto::_value
- )
- >
- , proto::lazy<
- custom_terminal<
- proto::_value(proto::_state)
- >(
- proto::_value(proto::_state)
- )
- >
- )
- , compare(
- proto::_value
- , proto::_value(proto::_state)
- )
- >
+ , compare(
+ proto::_value
+ , proto::_value(proto::_state)
+ )
>
                       , proto::otherwise<test(proto::_, proto::_state)>
>

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/core/is_actor.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/core/is_actor.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/core/is_actor.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -23,10 +23,14 @@
     struct actor;
 
     template <typename T, typename Enable = void>
- struct is_actor : mpl::false_ {};
+ struct is_actor
+ : mpl::false_
+ {};
 
     template <typename Expr>
- struct is_actor<actor<Expr> > : mpl::true_ {};
+ struct is_actor<actor<Expr> >
+ : mpl::true_
+ {};
 }}
 
 #endif

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/core/is_nullary.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/core/is_nullary.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/core/is_nullary.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -43,7 +43,12 @@
 
                 template <typename Dummy>
                 struct is_nullary_::when<rule::custom_terminal, Dummy>
- : proto::lazy<is_nullary<custom_terminal<proto::_value> >(proto::_, _env)>
+ : proto::lazy<
+ is_nullary<custom_terminal<proto::_value> >(
+ proto::_
+ , _env
+ )
+ >
                 {};
 
                 template <typename Dummy>
@@ -54,7 +59,15 @@
 
         template <typename Expr>
         struct is_nullary
- : boost::result_of<evaluator(Expr const&, fusion::vector2<fusion::vector0<>&, detail::is_nullary_>&)>
+ : boost::result_of<
+ evaluator(
+ Expr const&
+ , fusion::vector2<
+ mpl::true_
+ , detail::is_nullary_
+ >&
+ )
+ >
         {};
 
     template <typename T>

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/core/limits.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/core/limits.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/core/limits.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -40,7 +40,7 @@
 #endif
 
 #if !defined(PHOENIX_COMPOSITE_LIMIT)
-# define PHOENIX_COMPOSITE_LIMIT BOOST_PP_INC(PHOENIX_LIMIT)
+# define PHOENIX_COMPOSITE_LIMIT PHOENIX_LIMIT
 #elif (PHOENIX_COMPOSITE_LIMIT < 5)
 # error "PHOENIX_COMPOSITE_LIMIT is set too low"
 #endif

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/core/mem_obj_ptr.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/core/mem_obj_ptr.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/core/mem_obj_ptr.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -8,7 +8,6 @@
 #ifndef PHOENIX_CORE_MEM_OBJ_PTR_HPP
 #define PHOENIX_CORE_MEM_OBJ_PTR_HPP
 
-#include <boost/phoenix/core/compose.hpp>
 #include <boost/phoenix/core/meta_grammar.hpp>
 #include <boost/type_traits/is_const.hpp>
 #include <boost/type_traits/remove_pointer.hpp>
@@ -27,6 +26,8 @@
     // To be used in bind and operator->*
     //
     ////////////////////////////////////////////////////////////////////////////
+
+ /* FIXME
     namespace meta
     {
         template <typename T>
@@ -64,7 +65,6 @@
     {
         template <typename Env, typename Object, typename MemPtr>
         struct mem_obj_ptr
- : boost::result_of<eval_grammar()>
         {
             typedef typename meta::object_type<
                 typename remove_const<
@@ -166,6 +166,7 @@
 
         };
     }
+ */
 
 }}
 

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/core/meta_grammar.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/core/meta_grammar.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/core/meta_grammar.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -21,7 +21,7 @@
 
 namespace boost { namespace phoenix
 {
- ////////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////////////////////////////////////////////
     // The grammar defining valid phoenix expressions
     struct meta_grammar
         : proto::switch_<meta_grammar>
@@ -33,17 +33,24 @@
     };
 
     struct evaluator
- : proto::call<
- meta_grammar(
- proto::_
- , functional::args(proto::_state)
- , functional::actions(proto::_state)
- )
- >
- {};
+ {
+ BOOST_PROTO_TRANSFORM(evaluator)
+
+ template <typename Expr, typename State, typename Data>
+ struct impl
+ : proto::call<
+ meta_grammar(
+ proto::_
+ , functional::args(proto::_state)
+ , functional::actions(proto::_state)
+ )
+ >::impl<Expr, State, Data>
+ {};
+ };
     
- ////////////////////////////////////////////////////////////////////////////
- // Set of default actions. Extend this whenever you add a new phoenix construct
+ /////////////////////////////////////////////////////////////////////////////
+ // Set of default actions. Extend this whenever you add a new phoenix
+ // construct
     struct default_actions
     {
         template <typename Rule, typename Dummy = void>
@@ -52,9 +59,9 @@
         {};
     };
 
- ////////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////////////////////////////////////////////
     // A function object we can call to evaluate our expression
- evaluator const eval = evaluator();
+ evaluator const eval = {};
 }}
 
 #endif

Deleted: sandbox/SOC/2010/phoenix3/boost/phoenix/core/no_nullary.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/core/no_nullary.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
+++ (empty file)
@@ -1,71 +0,0 @@
-/*==============================================================================
- Copyright (c) 2005-2010 Joel de Guzman
- Copyright (c) 2010 Thomas Heller
-
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-==============================================================================*/
-#ifndef PHOENIX_CORE_NO_NULLARY_HPP
-#define PHOENIX_CORE_NO_NULLARY_HPP
-
-#include <boost/mpl/or.hpp>
-#include <boost/mpl/bool.hpp>
-#include <boost/mpl/deref.hpp>
-#include <boost/phoenix/core/limits.hpp>
-#include <boost/proto/proto_fwd.hpp>
-#include <boost/proto/matches.hpp>
-#include <boost/proto/traits.hpp>
-#include <boost/proto/tags.hpp>
-#include <boost/proto/transform/arg.hpp>
-#include <boost/proto/transform/when.hpp>
-#include <boost/proto/transform/fold.hpp>
-#include <boost/utility/result_of.hpp>
-
-namespace boost { namespace phoenix
-{
- template <typename F>
- struct funcwrap;
-
- template <typename Func, typename Dummy = void>
- struct enable_nullary
- : mpl::true_
- {};
-
-
- template <typename Expr>
- struct no_nullary;
-
- namespace detail
- {
- struct no_nullary_transform
- : proto::or_<
- proto::when<
- proto::terminal<funcwrap<proto::_> >
- , mpl::not_<
- mpl::deref<
- enable_nullary<
- mpl::deref<proto::_value>
- >
- >
- >()
- >
- , proto::when<proto::terminal<proto::_>, mpl::false_()>
- , proto::otherwise<
- proto::fold<
- proto::_
- , mpl::false_()
- , mpl::or_<no_nullary_transform, proto::_state>()
- >
- >
- >
- {};
- }
-
- template <typename Expr>
- struct no_nullary
- : boost::result_of<detail::no_nullary_transform(Expr const&)>
- {};
-
-}}
-
-#endif

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/core/nothing.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/core/nothing.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/core/nothing.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -7,29 +7,38 @@
 #ifndef PHOENIX_CORE_NOTHING_HPP
 #define PHOENIX_CORE_NOTHING_HPP
 
+#include <boost/mpl/void.hpp>
 #include <boost/phoenix/core/actor.hpp>
-#include <boost/phoenix/core/compose.hpp>
+#include <boost/phoenix/core/expression.hpp>
 
 namespace boost { namespace phoenix
 {
- ////////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////////////////////////////////////////////
     //
     // null_actor
     //
     // An actor that does nothing (a "bum", if you will :-).
     //
- ////////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////////////////////////////////////////////
+
+ PHOENIX_DEFINE_EXPRESSION(null, (proto::terminal<mpl::void_>::type))
     
     struct null_eval
     {
+ BOOST_PROTO_CALLABLE()
+
         typedef void result_type;
 
- template <typename Env>
- void eval(Env const&) const
+ void operator()() const
         {}
     };
 
- compose<null_eval>::type const nothing = {};
+ template <typename Dummy>
+ struct default_actions::when<rule::null, Dummy>
+ : proto::call<null_eval()>
+ {};
+
+ expression::null<mpl::void_>::type const nothing = {};
 }}
 
 #endif

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/core/reference.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/core/reference.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/core/reference.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -15,13 +15,13 @@
 
 namespace boost { namespace phoenix
 {
- ////////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////////////////////////////////////////////
     //
     // reference
     //
     // function for evaluating references, e.g. ref(123)
     //
- ////////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////////////////////////////////////////////
     template <typename T>
     struct reference
         : proto::terminal<reference_wrapper<T> >
@@ -57,25 +57,12 @@
     {
         typedef T &result_type;
 
- T &operator()(boost::reference_wrapper<T> r) const
- {
- std::cout << "...\n";
- return r;
- }
-
         template <typename Env>
         T &operator()(boost::reference_wrapper<T> r, Env &) const
         {
             return r;
         }
     };
-
- /*
- template <typename T>
- struct is_nullary<custom_terminal<reference_wrapper<T> > >
- : proto::make<mpl::true_()>
- {};
- */
 }}
 
 #endif

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/core/terminal.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/core/terminal.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/core/terminal.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -13,7 +13,8 @@
 namespace boost { namespace phoenix
 {
     template <typename T>
- struct is_custom_terminal : mpl::false_ {};
+ struct is_custom_terminal
+ : mpl::false_ {};
 
     template <typename T>
     struct custom_terminal;
@@ -46,10 +47,24 @@
     struct default_actions::when<rule::custom_terminal, Grammar>
         : proto::lazy<custom_terminal<proto::_value>(proto::_value, _env)>
     {};
+
+ namespace detail
+ {
+ template <typename N>
+ struct placeholder_idx
+ : mpl::int_<N::value - 1>
+ {};
+ }
     
     template <typename Grammar>
     struct default_actions::when<rule::argument, Grammar>
- : proto::call<functional::args_at(proto::_value, _env)>
+ : proto::call<
+ functional::args_at(
+ //mpl::prior<boost::is_placeholder<proto::_value>()>()
+ detail::placeholder_idx<boost::is_placeholder<proto::_value>()>()
+ , _env
+ )
+ >
     {};
 }}
 

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/core/unpack.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/core/unpack.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/core/unpack.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -24,12 +24,6 @@
 #include <boost/proto/proto.hpp>
 #include <boost/proto/functional.hpp>
 
-#define UNPACK_CHOICES \
- (phoenix::unpack) \
- (phoenix::unpack()) \
- (phoenix::unpack(Seq)) \
- (phoenix::unpack(Seq, Fun))
-
 namespace boost { namespace phoenix
 {
     struct unpack {};
@@ -54,23 +48,20 @@
     }
 }}
 
+#define PHOENIX_UNPACK_CHOICES \
+ (phoenix::unpack) \
+ (phoenix::unpack()) \
+ (phoenix::unpack(Seq)) \
+ (phoenix::unpack(Seq, Fun)) \
+/**/
+
 #define BOOST_PP_ITERATION_PARAMS_1 \
- (3, (1, BOOST_PP_SEQ_SIZE(UNPACK_CHOICES), \
+ (3, (1, BOOST_PP_SEQ_SIZE(PHOENIX_UNPACK_CHOICES), \
             <boost/phoenix/core/unpack.hpp>)) \
 /**/
 #include BOOST_PP_ITERATE()
 
-#undef M0
-#undef M1
-#undef M2
-#undef M3
-#undef M4
-#undef M5
-#undef I
-#undef J
-#undef K
-#undef L
-#undef UNPACK_CHOICES
+#undef PHOENIX_UNPACK_CHOICES
 
 #endif
 
@@ -78,12 +69,12 @@
 
 #if BOOST_PP_ITERATION_DEPTH() == 1
 
-#define I \
+#define PHOENIX_UNPACK_I \
     BOOST_PP_DEC(BOOST_PP_FRAME_ITERATION(1)) \
 /**/
 
-#define UNPACK \
- BOOST_PP_SEQ_ELEM(I, UNPACK_CHOICES) \
+#define PHOENIX_UNPACK \
+ BOOST_PP_SEQ_ELEM(PHOENIX_UNPACK_I, PHOENIX_UNPACK_CHOICES) \
 /**/
 
 #define BOOST_PP_ITERATION_PARAMS_2 \
@@ -91,50 +82,64 @@
     <boost/phoenix/core/unpack.hpp>)) \
 /**/
 #include BOOST_PP_ITERATE()
-#undef UNPACK
+
+#undef PHOENIX_UNPACK
+#undef PHOENIX_UNPACK_I
 
 #elif BOOST_PP_ITERATION_DEPTH() == 2
 
-#define J \
+#define PHOENIX_UNPACK_J \
     BOOST_PP_FRAME_ITERATION(2) \
 /**/
 
 #define BOOST_PP_ITERATION_PARAMS_3 \
- (3, (BOOST_PP_DEC(J), BOOST_PP_DEC(BOOST_PROTO_MAX_ARITY), \
+ (3, (BOOST_PP_DEC(PHOENIX_UNPACK_J), BOOST_PP_DEC(BOOST_PROTO_MAX_ARITY), \
     <boost/phoenix/core/unpack.hpp>)) \
 /**/
 #include BOOST_PP_ITERATE()
 
+#undef PHOENIX_UNPACK_J
+
 #elif BOOST_PP_ITERATION_DEPTH() == 3
 
-#define K \
+#define PHOENIX_UNPACK_K \
     BOOST_PP_FRAME_ITERATION(3) \
 /**/
 
-#define M0(Z, N, D) \
+#define PHOENIX_UNPACK_M0(Z, N, D) \
     , A ## N \
 /**/
 
-#define SIG \
+#define PHOENIX_UNPACK_SIG \
     R( \
- BOOST_PP_ENUM_PARAMS(BOOST_PP_DEC(J), A) \
- BOOST_PP_COMMA_IF(BOOST_PP_DEC(J)) \
- UNPACK \
- BOOST_PP_REPEAT_FROM_TO(BOOST_PP_FRAME_START(3), K, M0, _) \
+ BOOST_PP_ENUM_PARAMS(BOOST_PP_DEC(PHOENIX_UNPACK_J), A) \
+ BOOST_PP_COMMA_IF(BOOST_PP_DEC(PHOENIX_UNPACK_J)) \
+ PHOENIX_UNPACK \
+ BOOST_PP_REPEAT_FROM_TO( \
+ BOOST_PP_FRAME_START(3) \
+ , PHOENIX_UNPACK_K \
+ , PHOENIX_UNPACK_M0 \
+ , _ \
+ ) \
     ) \
 /**/
 
-#define M1(Z, N, D) \
+#define PHOENIX_UNPACK_M1(Z, N, D) \
     BOOST_PP_COMMA_IF(BOOST_PP_NOT_EQUAL(N, D)) BOOST_PP_CAT(A, N) \
 /**/
 
-#define M2(Z, N, D) \
+#define PHOENIX_UNPACK_M2(Z, N, D) \
     , typename A ## N \
 /**/
 
-#define TYPENAME_SIG \
- BOOST_PP_ENUM_PARAMS(BOOST_PP_DEC(J), typename A) \
- BOOST_PP_REPEAT_FROM_TO(BOOST_PP_FRAME_START(3), K, M2, _) \
+#define PHOENIX_UNPACK_TYPENAME_SIG \
+ BOOST_PP_ENUM_PARAMS(BOOST_PP_DEC(PHOENIX_UNPACK_J), typename A) \
+ BOOST_PP_REPEAT_FROM_TO( \
+ BOOST_PP_FRAME_START(3) \
+ , PHOENIX_UNPACK_K \
+ , PHOENIX_UNPACK_M2 \
+ , _ \
+ ) \
 /**/
     
 namespace boost { namespace phoenix
@@ -148,7 +153,8 @@
           , typename Seq
           , typename Fun
           , typename R
- BOOST_PP_COMMA_IF(BOOST_PP_DEC(J)) TYPENAME_SIG
+ BOOST_PP_COMMA_IF(BOOST_PP_DEC(PHOENIX_UNPACK_J))
+ PHOENIX_UNPACK_TYPENAME_SIG
>
         struct unpack_impl<
             Expr
@@ -156,7 +162,7 @@
           , Data
           , Seq
           , Fun
- , SIG
+ , PHOENIX_UNPACK_SIG
           , 0
>
             : proto::transform_impl<Expr, State, Data>
@@ -166,17 +172,20 @@
             typedef
                 proto::call<
                     R(
- BOOST_PP_ENUM_PARAMS(BOOST_PP_DEC(J), A)
+ BOOST_PP_ENUM_PARAMS(BOOST_PP_DEC(PHOENIX_UNPACK_J), A)
                         BOOST_PP_COMMA_IF(
                             BOOST_PP_AND(
- BOOST_PP_DEC(J)
- , BOOST_PP_NOT_EQUAL(BOOST_PP_FRAME_START(3), K)
+ BOOST_PP_DEC(PHOENIX_UNPACK_J)
+ , BOOST_PP_NOT_EQUAL(
+ BOOST_PP_FRAME_START(3)
+ , PHOENIX_UNPACK_K
+ )
                             )
                         )
                         BOOST_PP_REPEAT_FROM_TO(
                             BOOST_PP_FRAME_START(3)
- , K
- , M1
+ , PHOENIX_UNPACK_K
+ , PHOENIX_UNPACK_M1
                           , BOOST_PP_FRAME_START(3)
                         )
                     )
@@ -212,16 +221,17 @@
 namespace boost { namespace proto {
     template <
         typename R
- #if I > 1
+ #if PHOENIX_UNPACK_I > 1
       , typename Seq
       #endif
- #if I > 2
+ #if PHOENIX_UNPACK_I > 2
       , typename Fun
       #endif
- BOOST_PP_COMMA_IF(BOOST_PP_DEC(J)) TYPENAME_SIG
+ BOOST_PP_COMMA_IF(BOOST_PP_DEC(PHOENIX_UNPACK_J))
+ PHOENIX_UNPACK_TYPENAME_SIG
>
- struct call<SIG>
- : proto::transform<call<SIG> >
+ struct call<PHOENIX_UNPACK_SIG>
+ : proto::transform<call<PHOENIX_UNPACK_SIG> >
     {
         template <typename Expr, typename State, typename Data>
         struct impl
@@ -229,33 +239,38 @@
                 Expr
               , State
               , Data
- #if I > 1
+ #if PHOENIX_UNPACK_I > 1
               , Seq
               #else
               , proto::_
               #endif
- #if I > 2
+ #if PHOENIX_UNPACK_I > 2
               , Fun
               #else
               , proto::_
               #endif
- , SIG
+ , PHOENIX_UNPACK_SIG
>
         {};
     };
 
 }}
 
+#undef PHOENIX_UNPACK_K
+#undef PHOENIX_UNPACK_SIG
+#undef PHOENIX_UNPACK_TYPENAME_SIG
+#undef PHOENIX_UNPACK_M0
+#undef PHOENIX_UNPACK_M1
+#undef PHOENIX_UNPACK_M2
+
 #else
 
-#define L BOOST_PP_FRAME_ITERATION(4)
+#define PHOENIX_UNPACK_L BOOST_PP_FRAME_ITERATION(4)
 
-//BOOST_PP_SUB(BOOST_PP_ADD(BOOST_PP_ADD(J, K), L), 2)
-#if J + K + L - 2 > BOOST_PROTO_MAX_ARITY
-//SIG J K L too much ...
+#if PHOENIX_UNPACK_J + PHOENIX_UNPACK_K + PHOENIX_UNPACK_L - 2 > BOOST_PROTO_MAX_ARITY
+//PHOENIX_UNPACK_SIG PHOENIX_UNPACK_J PHOENIX_UNPACK_K PHOENIX_UNPACK_L too much ...
 #else
- #undef M5
- #define M5(__, N, ___) \
+ #define PHOENIX_UNPACK_M5(__, N, ___) \
         fun_type(proto::functional::at(Seq, mpl::int_<N>())) \
     /**/
 
@@ -266,7 +281,8 @@
           , typename Seq
           , typename Fun
           , typename R
- BOOST_PP_COMMA_IF(BOOST_PP_DEC(J)) TYPENAME_SIG
+ BOOST_PP_COMMA_IF(BOOST_PP_DEC(PHOENIX_UNPACK_J))
+ PHOENIX_UNPACK_TYPENAME_SIG
>
         struct unpack_impl<
             Expr
@@ -274,8 +290,8 @@
           , Data
           , Seq
           , Fun
- , SIG
- , L
+ , PHOENIX_UNPACK_SIG
+ , PHOENIX_UNPACK_L
>
             : proto::transform_impl<Expr, State, Data>
         {
@@ -284,19 +300,25 @@
             typedef
                 proto::call<
                     R(
- BOOST_PP_ENUM_PARAMS(BOOST_PP_DEC(J), A)
- BOOST_PP_COMMA_IF(BOOST_PP_AND(BOOST_PP_DEC(J), L))
- BOOST_PP_ENUM(L, M5, _)
+ BOOST_PP_ENUM_PARAMS(BOOST_PP_DEC(PHOENIX_UNPACK_J), A)
+ BOOST_PP_COMMA_IF(
+ BOOST_PP_AND(BOOST_PP_DEC(PHOENIX_UNPACK_J)
+ , PHOENIX_UNPACK_L)
+ )
+ BOOST_PP_ENUM(PHOENIX_UNPACK_L, PHOENIX_UNPACK_M5, _)
                         BOOST_PP_COMMA_IF(
                             BOOST_PP_AND(
- L
- , BOOST_PP_NOT_EQUAL(BOOST_PP_FRAME_START(3), K)
+ PHOENIX_UNPACK_L
+ , BOOST_PP_NOT_EQUAL(
+ BOOST_PP_FRAME_START(3)
+ , PHOENIX_UNPACK_K
+ )
                             )
                         )
                         BOOST_PP_REPEAT_FROM_TO(
                             BOOST_PP_FRAME_START(3)
- , K
- , M1
+ , PHOENIX_UNPACK_K
+ , PHOENIX_UNPACK_M1
                           , BOOST_PP_FRAME_START(3)
                         )
                     )
@@ -321,8 +343,11 @@
 
         };
 
+ #undef PHOENIX_UNPACK_M5
 #endif
 
+#undef PHOENIX_UNPACK_L
+
 #endif
 
 #endif

Deleted: sandbox/SOC/2010/phoenix3/boost/phoenix/debug/dump_env.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/debug/dump_env.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
+++ (empty file)
@@ -1,78 +0,0 @@
-/*==============================================================================
- Copyright (c) 2010 Thomas Heller
-
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-==============================================================================*/
-#ifndef PHOENIX_DEBUG_DUMP_ENVIRONMENT_HPP
-#define PHOENIX_DEBUG_DUMP_ENVIRONMENT_HPP
-
-#include <boost/fusion/algorithm/iteration/for_each.hpp>
-#include <boost/mpl/void.hpp>
-#include <boost/phoenix/core/extension.hpp>
-#include <boost/phoenix/core/meta_grammar.hpp>
-#include <boost/proto/proto_fwd.hpp>
-#include <boost/proto/matches.hpp>
-
-#include <iostream>
-
-namespace boost { namespace phoenix
-{
- namespace detail
- {
- struct dump_env_tag {};
-
- typedef extension<dump_env_tag> dump_env_ext;
-
- struct dump
- {
- template<typename T>
- void
- operator()(T & t ) const
- {
- std::cout << t << std::endl;
- }
- };
-
- struct dump_env
- : proto::callable
- {
- typedef void result_type;
-
- template<typename Env>
- void
- operator()(Env & env) const
- {
- if( fusion::size( env ) == 0 )
- {
- std::cout << "current environment is empty.\n";
- return;
- }
-
- std::cout << "current environment is:\n";
- fusion::for_each( env, dump() );
- }
- };
- }
-
-
- /// FIXME: boost::result_of doesn't seem to like that...
- //boost::result_of< detail::dump_environment_extension() >::type
- /*
- boost::result_of< detail::dump_env_ext( mpl::void_ ) >::type
- dump_env()
- {
- return detail::dump_env_ext()( mpl::void_() );
- }*/
-
-
- template<>
- struct eval_cases::case_<debug::detail::dump_env_tag>
- : proto::or_<
- proto::when<
- proto::_, debug::detail::dump_env(proto::_state)> >
- {};
-
-}}
-
-#endif

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/function/detail/function_operator.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/function/detail/function_operator.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/function/detail/function_operator.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -12,8 +12,8 @@
 #define PHOENIX_FUNCTION_DETAIL_FUNCTION_OPERATOR_HPP
 
 #define PHOENIX_ITERATION_PARAMS \
- (3, (1, PHOENIX_ACTOR_LIMIT, \
- <boost/phoenix/function/detail/function_operator.hpp>))
+ (3, (1, PHOENIX_ACTOR_LIMIT, \
+ <boost/phoenix/function/detail/function_operator.hpp>))
 #include PHOENIX_ITERATE()
 
 #endif
@@ -21,7 +21,7 @@
 #else
         template <typename This, PHOENIX_typename_A>
         struct result<This(PHOENIX_A)>
- :result<This(PHOENIX_A_const_ref)>//: result_of::function<F, PHOENIX_A>
+ :result<This(PHOENIX_A_const_ref)>
         {};
 
         template <typename This, PHOENIX_typename_A>

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/function/detail/function_result_of.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/function/detail/function_result_of.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/function/detail/function_result_of.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -12,7 +12,7 @@
 #define PHOENIX_FUNCTION_DETAIL_FUNCTION_RESULT_OF_HPP
 
 #define PHOENIX_ITERATION_PARAMS \
- (3, (4, PHOENIX_ACTOR_LIMIT, \
+ (3, (1, PHOENIX_ACTOR_LIMIT, \
     <boost/phoenix/function/detail/function_result_of.hpp>))
 #include PHOENIX_ITERATE()
 
@@ -22,11 +22,12 @@
 
         template <typename F, PHOENIX_typename_A>
         struct function<F, PHOENIX_A>
- : proto::result_of::make_expr<
+ : proto::result_of::make_expr<
                 proto::tag::function
               , phoenix_domain
               , F
- , PHOENIX_A>
+ , PHOENIX_A
+ >
         {};
 
 #endif

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/function/function.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/function/function.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/function/function.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -18,15 +18,22 @@
 
 namespace boost { namespace phoenix
 {
- ////////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////////////////////////////////////////////
     // Functions
- ////////////////////////////////////////////////////////////////////////////
-
+ /////////////////////////////////////////////////////////////////////////////
+
+ namespace expression
+ {
+ using proto::function;
+ }
     
     namespace rule
     {
         struct function
- : proto::nary_expr<proto::tag::function, proto::vararg<meta_grammar> >
+ : proto::nary_expr<
+ proto::tag::function
+ , proto::vararg<meta_grammar>
+ >
         {};
     }
 
@@ -37,9 +44,11 @@
 
     namespace result_of
     {
- template <typename F,
- PHOENIX_typename_A_void(PHOENIX_ACTOR_LIMIT),
- typename Dummy = void>
+ template <
+ typename F
+ , PHOENIX_typename_A_void(PHOENIX_ACTOR_LIMIT)
+ , typename Dummy = void
+ >
         struct function;
 
         template <typename F>
@@ -50,30 +59,6 @@
               , F>
         {};
 
- template <typename F, typename A0>
- struct function<F, A0>
- : proto::result_of::make_expr<
- proto::tag::function
- , phoenix_domain
- , F, A0>
- {};
-
- template <typename F, typename A0, typename A1>
- struct function<F, A0, A1>
- : proto::result_of::make_expr<
- proto::tag::function
- , phoenix_domain
- , F, A0, A1>
- {};
-
- template <typename F, typename A0, typename A1, typename A2>
- struct function<F, A0, A1, A2>
- : proto::result_of::make_expr<
- proto::tag::function
- , phoenix_domain
- , F, A0, A1, A2>
- {};
-
         // Bring in the rest
         #include <boost/phoenix/function/detail/function_result_of.hpp>
     }

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/fusion/at.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/fusion/at.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/fusion/at.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -21,52 +21,25 @@
       , (proto::terminal<proto::_>)
         (meta_grammar)
     )
-
- namespace result_of
- {
- template <typename Env, typename Tuple, int N>
- struct at_c
- : fusion::result_of::at_c<
- typename boost::remove_reference<
- typename boost::result_of<
- evaluator(Tuple const&, Env)
- >::type
- >::type
- , N
- >
- {};
- }
-
-
- template <typename N>
- struct at_eval
- {
- template <typename Sig>
- struct result;
-
- template <typename This, typename Env, typename Tuple>
- struct result<This(Env, Tuple const&)>
- : result_of::at_c<Env, Tuple, N::value>
- {};
-
- template <typename Env, typename Tuple>
- typename result_of::at_c<Env &, Tuple, N::value>::type
- operator()(Env& env, Tuple const& tuple) const
- {
- return fusion::at_c<0>(eval(tuple, env));
- }
- };
-
+
     template <typename Dummy>
     struct default_actions::when<rule::at_c, Dummy>
- : proto::lazy<at_eval<proto::_value(proto::_child_c<0>)>(_env, proto::_child_c<1>)>
+ : proto::call<
+ proto::functional::at(
+ evaluator(proto::_child_c<1>, _env)
+ , proto::_value(proto::_child_c<0>)
+ )
+ >
     {};
 
     template <int N, typename Tuple>
     typename expression::at_c<mpl::int_<N>, Tuple>::type const
     at_c(Tuple const& tuple)
     {
- return expression::at_c<mpl::int_<N>, Tuple>::make(mpl::int_<N>(), tuple);
+ return
+ expression::
+ at_c<mpl::int_<N>, Tuple>::
+ make(mpl::int_<N>(), tuple);
     }
 }}
 

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/object/const_cast.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/object/const_cast.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/object/const_cast.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -35,21 +35,31 @@
 
     template <typename Dummy>
     struct default_actions::when<rule::const_cast_, Dummy>
- : proto::lazy<const_cast_eval<evaluator(proto::_child_c<0>, _env) >(_env, proto::_child_c<1>)>
+ : proto::lazy<
+ const_cast_eval<
+ evaluator(proto::_child_c<0>, _env)
+ >(_env, proto::_child_c<1>)
+ >
     {};
 
     template <typename T, typename U>
     typename expression::const_cast_<detail::target<T>, U>::type const
     const_cast_(U const& u)
     {
- return expression::const_cast_<detail::target<T>, U>::make(detail::target<T>(), u);
+ return
+ expression::
+ const_cast_<detail::target<T>, U>::
+ make(detail::target<T>(), u);
     }
     
     template <typename T, typename U>
     typename expression::const_cast_<detail::target<T>, U>::type const
     const_cast_(U & u)
     {
- return expression::const_cast_<detail::target<T>, U>::make(detail::target<T>(), u);
+ return
+ expression::
+ const_cast_<detail::target<T>, U>::
+ make(detail::target<T>(), u);
     }
 
 }}

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/object/construct.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/object/construct.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/object/construct.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -41,14 +41,21 @@
 
     template <typename Dummy>
     struct default_actions::when<rule::construct, Dummy>
- : proto::lazy<construct_eval<proto::_value(proto::_child_c<0>)>(_env, unpack(proto::functional::pop_front(proto::_)))>
+ : proto::lazy<
+ construct_eval<
+ proto::_value(proto::_child_c<0>)
+ >(_env, unpack(proto::functional::pop_front(proto::_)))
+ >
     {};
 
     template <typename T>
     typename expression::construct<detail::target<T> >::type const
     construct()
     {
- return expression::construct<detail::target<T> >::make(detail::target<T>());
+ return
+ expression::
+ construct<detail::target<T> >::
+ make(detail::target<T>());
     }
 
     // Bring in the rest

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/object/detail/construct.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/object/detail/construct.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/object/detail/construct.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -12,8 +12,8 @@
 #define PHOENIX_OBJECT_DETAIL_CONSTRUCT_HPP
 
 #define PHOENIX_ITERATION_PARAMS \
- (3, (1, PHOENIX_COMPOSITE_LIMIT, \
- <boost/phoenix/object/detail/construct.hpp>))
+ (3, (1, PHOENIX_COMPOSITE_LIMIT, \
+ <boost/phoenix/object/detail/construct.hpp>))
 #include PHOENIX_ITERATE()
 
 #endif
@@ -24,7 +24,10 @@
     typename expression::construct<detail::target<T>, PHOENIX_A>::type const
     construct(PHOENIX_A_const_ref_a)
     {
- return expression::construct<detail::target<T>, PHOENIX_A>::make(detail::target<T>(), PHOENIX_a);
+ return
+ expression::
+ construct<detail::target<T>, PHOENIX_A>::
+ make(detail::target<T>(), PHOENIX_a);
     }
 
 #endif

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/object/detail/construct_eval.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/object/detail/construct_eval.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/object/detail/construct_eval.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -12,8 +12,8 @@
 #define PHOENIX_OBJECT_DETAIL_CONSTRUCT_EVAL_HPP
 
 #define PHOENIX_ITERATION_PARAMS \
- (3, (1, PHOENIX_COMPOSITE_LIMIT, \
- <boost/phoenix/object/detail/construct_eval.hpp>))
+ (3, (1, PHOENIX_COMPOSITE_LIMIT, \
+ <boost/phoenix/object/detail/construct_eval.hpp>))
 #include PHOENIX_ITERATE()
 
 #endif

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/object/detail/new.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/object/detail/new.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/object/detail/new.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -24,7 +24,10 @@
     typename expression::new_<detail::target<T>, PHOENIX_A>::type const
     new_(PHOENIX_A_const_ref_a)
     {
- return expression::new_<detail::target<T>, PHOENIX_A>::make(detail::target<T>(), PHOENIX_a);
+ return
+ expression::
+ new_<detail::target<T>, PHOENIX_A>::
+ make(detail::target<T>(), PHOENIX_a);
     }
 
 #endif

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/object/detail/new_eval.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/object/detail/new_eval.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/object/detail/new_eval.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -12,8 +12,8 @@
 #define PHOENIX_OBJECT_DETAIL_NEW_EVAL_HPP
 
 #define PHOENIX_ITERATION_PARAMS \
- (3, (1, PHOENIX_COMPOSITE_LIMIT, \
- <boost/phoenix/object/detail/new_eval.hpp>))
+ (3, (1, PHOENIX_COMPOSITE_LIMIT, \
+ <boost/phoenix/object/detail/new_eval.hpp>))
 #include PHOENIX_ITERATE()
 
 #endif
@@ -27,7 +27,10 @@
 #define EVAL_a(_,n,__) \
             BOOST_PP_COMMA_IF(n) eval(a ## n, env)
 
- return new construct_type(BOOST_PP_REPEAT(PHOENIX_ITERATION, EVAL_a, _));
+ return
+ new construct_type(
+ BOOST_PP_REPEAT(PHOENIX_ITERATION, EVAL_a, _)
+ );
 #undef EVAL_a
         }
 

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/object/dynamic_cast.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/object/dynamic_cast.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/object/dynamic_cast.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -35,21 +35,31 @@
 
     template <typename Dummy>
     struct default_actions::when<rule::dynamic_cast_, Dummy>
- : proto::lazy<dynamic_cast_eval<evaluator(proto::_child_c<0>, _env) >(_env, proto::_child_c<1>)>
+ : proto::lazy<
+ dynamic_cast_eval<
+ evaluator(proto::_child_c<0>, _env)
+ >(_env, proto::_child_c<1>)
+ >
     {};
 
     template <typename T, typename U>
     typename expression::dynamic_cast_<detail::target<T>, U>::type const
     dynamic_cast_(U const& u)
     {
- return expression::dynamic_cast_<detail::target<T>, U>::make(detail::target<T>(), u);
+ return
+ expression::
+ dynamic_cast_<detail::target<T>, U>::
+ make(detail::target<T>(), u);
     }
     
     template <typename T, typename U>
     typename expression::dynamic_cast_<detail::target<T>, U>::type const
     dynamic_cast_(U & u)
     {
- return expression::dynamic_cast_<detail::target<T>, U>::make(detail::target<T>(), u);
+ return
+ expression::
+ dynamic_cast_<detail::target<T>, U>::
+ make(detail::target<T>(), u);
     }
 }}
 

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/object/new.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/object/new.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/object/new.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -42,14 +42,21 @@
 
     template <typename Dummy>
     struct default_actions::when<rule::new_, Dummy>
- : proto::lazy<new_eval<proto::_value(proto::_child_c<0>)>(_env, unpack(proto::functional::pop_front(proto::_)))>
+ : proto::lazy<
+ new_eval<
+ proto::_value(proto::_child_c<0>)
+ >(_env, unpack(proto::functional::pop_front(proto::_)))
+ >
     {};
 
     template <typename T>
     typename expression::new_<detail::target<T> >::type const
     new_()
     {
- return expression::new_<detail::target<T> >::make(detail::target<T>());
+ return
+ expression::
+ new_<detail::target<T> >::
+ make(detail::target<T>());
     }
 
     // Bring in the rest

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/object/reinterpret_cast.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/object/reinterpret_cast.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/object/reinterpret_cast.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -35,21 +35,29 @@
 
     template <typename Dummy>
     struct default_actions::when<rule::reinterpret_cast_, Dummy>
- : proto::lazy<reinterpret_cast_eval<evaluator(proto::_child_c<0>, _env) >(_env, proto::_child_c<1>)>
+ : proto::lazy<
+ reinterpret_cast_eval<evaluator(proto::_child_c<0>, _env)
+ >(_env, proto::_child_c<1>)>
     {};
 
     template <typename T, typename U>
     typename expression::reinterpret_cast_<detail::target<T>, U>::type const
     reinterpret_cast_(U const& u)
     {
- return expression::reinterpret_cast_<detail::target<T>, U>::make(detail::target<T>(), u);
+ return
+ expression::
+ reinterpret_cast_<detail::target<T>, U>::
+ make(detail::target<T>(), u);
     }
     
     template <typename T, typename U>
     typename expression::reinterpret_cast_<detail::target<T>, U>::type const
     reinterpret_cast_(U & u)
     {
- return expression::reinterpret_cast_<detail::target<T>, U>::make(detail::target<T>(), u);
+ return
+ expression::
+ reinterpret_cast_<detail::target<T>, U>::
+ make(detail::target<T>(), u);
     }
 
 }}

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/object/static_cast.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/object/static_cast.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/object/static_cast.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -35,21 +35,29 @@
 
     template <typename Dummy>
     struct default_actions::when<rule::static_cast_, Dummy>
- : proto::lazy<static_cast_eval<evaluator(proto::_child_c<0>, _env) >(_env, proto::_child_c<1>)>
+ : proto::lazy<
+ static_cast_eval<evaluator(proto::_child_c<0>, _env)
+ >(_env, proto::_child_c<1>)>
     {};
 
     template <typename T, typename U>
     typename expression::static_cast_<detail::target<T>, U>::type const
     static_cast_(U const& u)
     {
- return expression::static_cast_<detail::target<T>, U>::make(detail::target<T>(), u);
+ return
+ expression::
+ static_cast_<detail::target<T>, U>::
+ make(detail::target<T>(), u);
     }
     
     template <typename T, typename U>
     typename expression::static_cast_<detail::target<T>, U>::type const
     static_cast_(U & u)
     {
- return expression::static_cast_<detail::target<T>, U>::make(detail::target<T>(), u);
+ return
+ expression::
+ static_cast_<detail::target<T>, U>::
+ make(detail::target<T>(), u);
     }
 
 }}

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/operator.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/operator.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/operator.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -1,44 +1,46 @@
 /*==============================================================================
     Copyright (c) 2005-2010 Joel de Guzman
+ Copyright (c) 2010 Thomas Heller
 
     Distributed under the Boost Software License, Version 1.0. (See accompanying
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ==============================================================================*/
+
 #ifndef PHOENIX_OPERATOR_HPP
 #define PHOENIX_OPERATOR_HPP
 
-#define PHOENIX_UNARY_RULE(__, ___, name) \
- struct name \
- : proto::unary_expr<proto::tag::name, proto::_> \
- {}; \
- /**/
-
-#define PHOENIX_BINARY_RULE(__, ___, name) \
- struct name \
- : proto::binary_expr<proto::tag::name, proto::_, proto::_> \
- {}; \
- /**/
+#define PHOENIX_UNARY_RULE(__, ___, name) \
+ struct name \
+ : proto::unary_expr<proto::tag::name, proto::_> \
+ {}; \
+/**/
+
+#define PHOENIX_BINARY_RULE(__, ___, name) \
+ struct name \
+ : proto::binary_expr<proto::tag::name, proto::_, proto::_> \
+ {}; \
+/**/
 
 #define PHOENIX_GRAMMAR(_, __, name) \
     template <typename Dummy> \
     struct meta_grammar::case_<proto::tag::name, Dummy> \
- : proto::when<rule::name, proto::external_transform> \
+ : proto::when<rule::name, proto::external_transform> \
     {}; \
- /**/
+/**/
 
 #define PHOENIX_UNARY_OPERATORS(ops) \
     namespace rule { \
         BOOST_PP_SEQ_FOR_EACH(PHOENIX_UNARY_RULE, _, ops) \
     } \
     BOOST_PP_SEQ_FOR_EACH(PHOENIX_GRAMMAR, _, ops) \
- /**/
+/**/
 
 #define PHOENIX_BINARY_OPERATORS(ops) \
     namespace rule { \
         BOOST_PP_SEQ_FOR_EACH(PHOENIX_BINARY_RULE, _, ops) \
     } \
     BOOST_PP_SEQ_FOR_EACH(PHOENIX_GRAMMAR, _, ops) \
- /**/
+/**/
 
 #include <boost/phoenix/version.hpp>
 #include <boost/phoenix/operator/arithmetic.hpp>

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/operator/detail/mem_fun_ptr_gen.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/operator/detail/mem_fun_ptr_gen.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/operator/detail/mem_fun_ptr_gen.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -95,7 +95,11 @@
 #elif BOOST_PP_ITERATION_FLAGS() == PHOENIX_ITERATE_OPERATOR
 
             template <PHOENIX_typename_A>
- typename result_of::mem_fun_ptr_gen<Object, MemPtr, PHOENIX_A>::type const
+ typename result_of::mem_fun_ptr_gen<
+ Object
+ , MemPtr
+ , PHOENIX_A
+ >::type const
             operator()(PHOENIX_A_const_ref_a) const
             {
                 return proto::make_expr<
@@ -103,7 +107,11 @@
             }
 
             template <PHOENIX_typename_A>
- typename result_of::mem_fun_ptr_gen<Object, MemPtr, PHOENIX_A>::type const
+ typename result_of::mem_fun_ptr_gen<
+ Object
+ , MemPtr
+ , PHOENIX_A
+ >::type const
             operator()(PHOENIX_A_ref_a) const
             {
                 return proto::make_expr<

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/operator/if_else.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/operator/if_else.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/operator/if_else.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -8,16 +8,26 @@
 #ifndef PHOENIX_OPERATOR_IF_ELSE_HPP
 #define PHOENIX_OPERATOR_IF_ELSE_HPP
 
-//#include <boost/phoenix/core/compose.hpp>
-//#include <boost/utility/result_of.hpp>
-
 namespace boost { namespace phoenix
 {
+ namespace tag
+ {
+ typedef proto::tag::if_else_ if_else_operator;
+ }
+
+ namespace expression
+ {
+ template <typename A0, typename A1, typename A2>
+ struct if_else_operator
+ : expr<tag::if_else_operator, A0, A1, A2>
+ {};
+ }
+
         namespace rule
         {
- struct if_else
+ struct if_else_operator
                   : proto::nary_expr<
- proto::tag::if_else_
+ tag::if_else_operator
                   , meta_grammar
                   , meta_grammar
                   , meta_grammar>
@@ -25,8 +35,8 @@
         }
 
         template <typename Dummy>
- struct meta_grammar::case_<proto::tag::if_else_, Dummy>
- : proto::when<rule::if_else, proto::external_transform>
+ struct meta_grammar::case_<tag::if_else_operator, Dummy>
+ : proto::when<rule::if_else_operator, proto::external_transform>
         {};
 
         using proto::if_else;

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/operator/io.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/operator/io.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/operator/io.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -18,15 +18,15 @@
     namespace detail
     {
         typedef std::ios_base& (*iomanip_type)(std::ios_base&);
- typedef std::istream& (*imanip_type)(std::istream&);
- typedef std::ostream& (*omanip_type)(std::ostream&);
+ typedef std::istream& (*imanip_type)(std::istream&);
+ typedef std::ostream& (*omanip_type)(std::ostream&);
     }
 
- ///////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////////////////////////////////////////////
     //
     // overloads for I/O manipulators.
     //
- ///////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////////////////////////////////////////////
     template <typename Expr>
     typename proto::result_of::make_expr<
           proto::tag::shift_left

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/operator/member.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/operator/member.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/operator/member.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -34,18 +34,24 @@
         template<typename Sig>
         struct result;
 
- #define PHOENIX_MEMBER_RESULT_OF(_, N, __) \
- typename boost::result_of<evaluator(BOOST_PP_CAT(A, N) const&, Env&)>::type
- #define PHOENIX_MEMBER_EVAL(_, N, __) \
- eval(BOOST_PP_CAT(a, N), env)
-
- #define PHOENIX_ITERATION_PARAMS \
- (4, (0, PHOENIX_LIMIT, \
- <boost/phoenix/operator/member.hpp>, \
- PHOENIX_ITERATE_OPERATOR))
+ #define PHOENIX_MEMBER_RESULT_OF(_, N, __) \
+ typename boost::result_of< \
+ evaluator(BOOST_PP_CAT(A, N) const&, Env&) \
+ >::type \
+ /**/
+
+ #define PHOENIX_MEMBER_EVAL(_, N, __) \
+ eval(BOOST_PP_CAT(a, N), env)
+ /**/
+
+ #define PHOENIX_ITERATION_PARAMS \
+ (4, (0, PHOENIX_LIMIT, \
+ <boost/phoenix/operator/member.hpp>, \
+ PHOENIX_ITERATE_OPERATOR)) \
+ /**/
         #include PHOENIX_ITERATE()
- #undef PHOENIX_MEMBER_RESULT_OF
- #undef PHOENIX_MEMBER_EVAL
+ #undef PHOENIX_MEMBER_RESULT_OF
+ #undef PHOENIX_MEMBER_EVAL
         };
 
     template <typename Dummy>
@@ -59,7 +65,13 @@
 #else // PHOENIX_IS_ITERATING
         
         
- template<typename This, typename Env, typename T1, typename T2 BOOST_PP_COMMA_IF(PHOENIX_ITERATION) PHOENIX_typename_A>
+ template<
+ typename This
+ , typename Env
+ , typename T1
+ , typename T2
+ BOOST_PP_COMMA_IF(PHOENIX_ITERATION) PHOENIX_typename_A
+ >
         struct result<
             This(
                 Env
@@ -78,13 +90,20 @@
>
         {};
         
- template<typename This, typename Env, typename T1, typename T2 BOOST_PP_COMMA_IF(PHOENIX_ITERATION) PHOENIX_typename_A>
+ template<
+ typename This
+ , typename Env
+ , typename T1
+ , typename T2
+ BOOST_PP_COMMA_IF(PHOENIX_ITERATION) PHOENIX_typename_A
+ >
         struct result<
             This(
                 Env &
               , T1 const&
               , T2 const&
- BOOST_PP_COMMA_IF(PHOENIX_ITERATION) PHOENIX_A_const_ref)
+ BOOST_PP_COMMA_IF(PHOENIX_ITERATION) PHOENIX_A_const_ref
+ )
>
             : boost::result_of<
                 typename boost::remove_reference<
@@ -94,16 +113,40 @@
                     typename boost::result_of<
                         evaluator(T1 const&, Env&)
>::type
- BOOST_PP_ENUM_TRAILING(PHOENIX_ITERATION, PHOENIX_MEMBER_RESULT_OF, _)
+ BOOST_PP_ENUM_TRAILING(
+ PHOENIX_ITERATION, PHOENIX_MEMBER_RESULT_OF, _
+ )
                 )
>
         {};
                 
- template <typename Env, typename T1, typename T2 BOOST_PP_ENUM_TRAILING_PARAMS(PHOENIX_ITERATION, typename A)>
- typename result<mem_fun_ptr_eval(Env &, T1 const&, T2 const& BOOST_PP_ENUM_TRAILING_BINARY_PARAMS(PHOENIX_ITERATION, A, const & BOOST_PP_INTERCEPT))>::type
- operator()(Env & env, T1 const& t1, T2 const& t2 BOOST_PP_ENUM_TRAILING_BINARY_PARAMS(PHOENIX_ITERATION, A, const & a)) const
+ template <
+ typename Env
+ , typename T1
+ , typename T2
+ BOOST_PP_ENUM_TRAILING_PARAMS(PHOENIX_ITERATION, typename A)
+ >
+ typename result<
+ mem_fun_ptr_eval(
+ Env &
+ , T1 const&
+ , T2 const&
+ BOOST_PP_ENUM_TRAILING_BINARY_PARAMS(
+ PHOENIX_ITERATION
+ , A
+ , const & BOOST_PP_INTERCEPT
+ )
+ )
+ >::type
+ operator()(
+ Env & env
+ , T1 const& t1
+ , T2 const& t2
+ BOOST_PP_ENUM_TRAILING_BINARY_PARAMS(PHOENIX_ITERATION, A, const & a)
+ ) const
                 {
- return (get_pointer(eval(t1, env))->*eval(t2, env))(BOOST_PP_ENUM(PHOENIX_ITERATION, PHOENIX_MEMBER_EVAL, _));
+ return (get_pointer(eval(t1, env))->*eval(t2, env))
+ (BOOST_PP_ENUM(PHOENIX_ITERATION, PHOENIX_MEMBER_EVAL, _));
                 }
 
 #endif

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/operator/operator.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/operator/operator.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/operator/operator.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -8,8 +8,6 @@
 #ifndef PHOENIX_OPERATOR_OPERATOR_HPP
 #define PHOENIX_OPERATOR_OPERATOR_HPP
 
-#include <boost/phoenix/core/limits.hpp>
-#include <boost/fusion/sequence/intrinsic/at.hpp>
 #include <boost/proto/operators.hpp>
 
 #endif

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/scope/detail/dynamic.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/scope/detail/dynamic.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/scope/detail/dynamic.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -5,43 +5,54 @@
     Distributed under the Boost Software License, Version 1.0. (See accompanying
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ==============================================================================*/
-
 #if !PHOENIX_IS_ITERATING
 
+#define PHOENIX_SCOPE_DYNAMIC_MEMBER(_, N, __) \
+ typedef \
+ typename expression::dynamic_member< \
+ mpl::int_<N> \
+ , self_type * \
+ >::type \
+ BOOST_PP_CAT(member, BOOST_PP_INC(N)); \
+/**/
+
 #define PHOENIX_ITERATION_PARAMS \
- (3, (4, PHOENIX_DYNAMIC_LIMIT, \
+ (3, (1, PHOENIX_DYNAMIC_LIMIT, \
     <boost/phoenix/scope/detail/dynamic.hpp>))
 #include PHOENIX_ITERATE()
 
-#else
-
-#define PHOENIX_SCOPE_DYNAMIC_MEMBER_I(_, n, __) \
- typedef typename expression::dynamic_member<mpl::int_<n>, self_type>::type BOOST_PP_CAT(member, BOOST_PP_INC(n));
-
-
-//typedef typename make_dynamic_member<n, self_type>::type BOOST_PP_CAT(member, BOOST_PP_INC(n));
+#undef PHOENIX_SCOPE_DYNAMIC_MEMBER
 
-#define PHOENIX_SCOPE_DYNAMIC_MEMBER BOOST_PP_REPEAT(PHOENIX_ITERATION, PHOENIX_SCOPE_DYNAMIC_MEMBER_I, _)
+#else
 
     template <PHOENIX_typename_A>
     struct dynamic<PHOENIX_A> : noncopyable
     {
- typedef BOOST_PP_CAT(fusion::vector, PHOENIX_ITERATION)<PHOENIX_A> tuple_type;
- typedef dynamic<PHOENIX_A> self_type;
- typedef dynamic_frame<self_type> dynamic_frame_type;
+ typedef
+ BOOST_PP_CAT(fusion::vector, PHOENIX_ITERATION)<PHOENIX_A>
+ tuple_type;
+ typedef
+ dynamic<PHOENIX_A>
+ self_type;
+ typedef
+ dynamic_frame<self_type>
+ dynamic_frame_type;
 
         dynamic()
             : frame(0) {}
 
         template <int N>
         static
- void //typename make_dynamic_member<N, self_type>::type
- init(self_type& scope)
+ typename expression::dynamic_member<mpl::int_<N>, self_type *>::type
+ init(self_type * scope)
         {
- //return make_dynamic_member<N, self_type>()(dynamic_member_data<N, self_type>(static_cast<self_type &>(scope)));
+ return
+ expression::
+ dynamic_member<mpl::int_<N>, self_type *>::
+ make(mpl::int_<N>(), scope);
         }
 
- PHOENIX_SCOPE_DYNAMIC_MEMBER
+ BOOST_PP_REPEAT(PHOENIX_ITERATION, PHOENIX_SCOPE_DYNAMIC_MEMBER, _)
 
         mutable dynamic_frame_type* frame;
     };

Added: sandbox/SOC/2010/phoenix3/boost/phoenix/scope/detail/let_local_gen.hpp
==============================================================================
--- (empty file)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/scope/detail/let_local_gen.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -0,0 +1,33 @@
+/*==============================================================================
+ Copyright (c) 2005-2010 Joel de Guzman
+ Copyright (c) 2010 Thomas Heller
+
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+==============================================================================*/
+#if !PHOENIX_IS_ITERATING
+
+#ifndef PHOENIX_SCOPE_DETAIL_LET_LOCAL_GEN_HPP
+#define PHOENIX_SCOPE_DETAIL_LET_LOCAL_GEN_HPP
+
+#include <boost/phoenix/support/iterate.hpp>
+
+#define PHOENIX_ITERATION_PARAMS \
+ (3, (2, PHOENIX_LOCAL_LIMIT, \
+ <boost/phoenix/scope/detail/let_local_gen.hpp>))
+#include PHOENIX_ITERATE()
+
+#endif
+
+#else
+
+ template <PHOENIX_typename_A>
+ let_actor_gen<
+ typename detail::make_locals<PHOENIX_A>::type
+ > const
+ operator()(PHOENIX_A_const_ref_a) const
+ {
+ return detail::make_locals<PHOENIX_A>::make(PHOENIX_a);
+ }
+
+#endif

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/scope/detail/local_gen.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/scope/detail/local_gen.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/scope/detail/local_gen.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -8,43 +8,45 @@
 
 #if !PHOENIX_IS_ITERATING
 
+#define PHOENIX_LOCAL_GEN_KEY_TYPES(_, N, __) \
+ BOOST_PP_COMMA_IF(N) \
+ typename proto::result_of::value< \
+ typename proto::result_of::child_c< \
+ typename proto::result_of::child_c<A ## N, 0>::type \
+ , 0 \
+ >::type \
+ >::type::type::key_type \
+/**/
+
+#define PHOENIX_LOCAL_GEN_ACTOR(_, N, __) \
+ BOOST_PP_COMMA_IF(N) proto::child_c<1>(a ## N) \
+/**/
+
+#define PHOENIX_LOCAL_GEN_ACTOR_TYPES(_, n, __) \
+ BOOST_PP_COMMA_IF(n) typename proto::result_of::child_c<A ## n, 1>::type \
+/**/
+
 #define PHOENIX_ITERATION_PARAMS \
- (3, (3, PHOENIX_LOCAL_LIMIT, \
+ (3, (3, PHOENIX_LOCAL_LIMIT, \
     <boost/phoenix/scope/detail/local_gen.hpp>))
 #include PHOENIX_ITERATE()
 
-#else
-
-#define PHOENIX_LOCAL_GEN_ACTOR_TYPES_I(_, n, __) \
- BOOST_PP_COMMA_IF(n) typename proto::result_of::child_c<A ## n, 1>::type
-
-#define PHOENIX_LOCAL_GEN_ACTOR_TYPES BOOST_PP_REPEAT(PHOENIX_ITERATION, PHOENIX_LOCAL_GEN_ACTOR_TYPES_I, _)
+#undef PHOENIX_LOCAL_GEN_KEY_TYPES
+#undef PHOENIX_LOCAL_GEN_ACTOR
+#undef PHOENIX_LOCAL_GEN_ACTOR_TYPES
 
-#define PHOENIX_LOCAL_GEN_ACTOR_I(_, n, __) \
- BOOST_PP_COMMA_IF(n) proto::child_c<1>(a ## n)
-
-#define PHOENIX_LOCAL_GEN_ACTOR BOOST_PP_REPEAT(PHOENIX_ITERATION, PHOENIX_LOCAL_GEN_ACTOR_I, _)
-
-#define PHOENIX_LOCAL_GEN_KEY_TYPES_I(_, n, __) \
- BOOST_PP_COMMA_IF(n) \
- typename proto::result_of::value< \
- typename proto::result_of::child_c< \
- typename proto::result_of::child_c<A ## n, 0>::type, 0 \
- >::type \
- >::type::type::key_type \
-
-#define PHOENIX_LOCAL_GEN_KEY_TYPES BOOST_PP_REPEAT(PHOENIX_ITERATION, PHOENIX_LOCAL_GEN_KEY_TYPES_I, _)
+#else
 
         template <PHOENIX_typename_A>
         PHOENIX_LOCAL_GEN_NAME<
             BOOST_PP_CAT(fusion::vector, PHOENIX_ITERATION)<PHOENIX_LOCAL_GEN_ACTOR_TYPES>
- , detail::map_local_index_to_tuple<PHOENIX_LOCAL_GEN_KEY_TYPES>
+ , detail::map_local_index_to_tuple<BOOST_PP_REPEAT(PHOENIX_ITERATION, PHOENIX_LOCAL_GEN_KEY_TYPES, _)>
> const
         operator()(PHOENIX_A_const_ref_a) const
         {
             return
                 BOOST_PP_CAT(
- fusion::vector, PHOENIX_ITERATION)<PHOENIX_LOCAL_GEN_ACTOR_TYPES>(PHOENIX_LOCAL_GEN_ACTOR);
+ fusion::vector, PHOENIX_ITERATION)<BOOST_PP_REPEAT(PHOENIX_ITERATION, PHOENIX_LOCAL_GEN_ACTOR_TYPES_I, _)>(BOOST_PP_REPEAT(PHOENIX_ITERATION, PHOENIX_LOCAL_GEN_ACTOR, _));
         }
 
 #endif

Deleted: sandbox/SOC/2010/phoenix3/boost/phoenix/scope/detail/local_variable.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/scope/detail/local_variable.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
+++ (empty file)
@@ -1,183 +0,0 @@
-/*==============================================================================
- Copyright (c) 2005-2010 Joel de Guzman
- Copyright (c) 2010 Thomas Heller
-
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-==============================================================================*/
-#ifndef PHOENIX_SCOPE_DETAIL_LOCAL_VARIABLE_HPP
-#define PHOENIX_SCOPE_DETAIL_LOCAL_VARIABLE_HPP
-
-#define PHOENIX_MAP_LOCAL_TEMPLATE_PARAM(z, n, data) \
- typename T##n = unused<n>
-
-#define PHOENIX_MAP_LOCAL_DISPATCH(z, n, data) \
- typedef char(&result##n)[n+2]; \
- static result##n get(T##n*);
-
-
-namespace boost { namespace phoenix
-{
- namespace detail
- {
- struct compute_no_nullary
- {
- template <typename State, typename T>
- struct apply
- {
- typedef typename
- mpl::or_<typename no_nullary<T>::type, State>::type
- type;
- };
- };
-
- template <typename Env>
- struct initialize_local
- {
- template <typename Sig>
- struct result;
-
- template <typename This, typename Expr>
- struct result<This(Expr)>
- {
- typedef typename remove_reference<Expr>::type expr_type;
- typedef typename boost::result_of<eval_grammar(expr_type const&, Env &)>::type type;
- };
-
- initialize_local(Env& env)
- : env(env) {}
-
- template <typename Expr>
- typename result<initialize_local(Expr)>::type
- operator()(Expr const& expr) const
- {
- return eval(expr, env);
- }
-
- Env& env;
- };
-
- template <int N>
- struct unused;
-
- template <BOOST_PP_ENUM(
- PHOENIX_LOCAL_LIMIT, PHOENIX_MAP_LOCAL_TEMPLATE_PARAM, _)>
- struct map_local_index_to_tuple
- {
- typedef char(&not_found)[1];
- static not_found get(...);
-
- BOOST_PP_REPEAT(PHOENIX_LOCAL_LIMIT, PHOENIX_MAP_LOCAL_DISPATCH, _)
- };
-
- template<typename T>
- T* generate_pointer();
-
- template <typename Map, typename Tag>
- struct get_index
- {
- BOOST_STATIC_CONSTANT(int,
- value = (
- static_cast<int>((sizeof(Map::get(generate_pointer<Tag>()))) / sizeof(char)) - 2
- ));
-
- // if value == -1, Tag is not found
- typedef mpl::int_<value> type;
- };
-
- template <typename Key, typename Env>
- struct apply_local;
-
- template <typename Key, typename Env>
- struct outer_local
- {
- typedef typename
- apply_local<Key, typename Env::outer_env_type>::type
- type;
- };
-
- template <typename Locals, typename Index>
- struct get_local_or_void
- {
- typedef typename
- mpl::eval_if<
- mpl::less<Index, mpl::size<Locals> >
- , fusion::result_of::at<Locals, Index>
- , mpl::identity<fusion::void_>
- >::type
- type;
- };
-
- template <typename Key, typename Env, typename Index>
- struct get_local_from_index
- {
- typedef typename
- mpl::eval_if<
- mpl::equal_to<Index, mpl::int_<-1> >
- , outer_local<Key, Env>
- , get_local_or_void<typename Env::locals_type, Index>
- >::type
- type;
- };
-
- template <typename Key, typename Env>
- struct get_local
- {
- typedef typename
- get_index<
- typename Env::map_type, Key>::type
- index_type;
-
- typedef typename
- get_local_from_index<Key, Env, index_type>::type
- type;
- };
-
- template <typename Key, typename Env>
- struct apply_local
- {
- //BOOST_STATIC_ASSERT( is_scoped_environment<Env>::value );
- // $$$ TODO: static assert that Env is a scoped_environment $$$
- typedef typename get_local<Key, Env>::type type;
- };
-
- template <typename Key>
- struct eval_local
- {
- template <typename RT, typename Env, typename Index>
- static RT
- get(Env & env, Index, mpl::false_)
- {
- return fusion::at<Index>(env.locals);
- }
-
- template <typename RT, typename Env, typename Index>
- static RT
- get(Env & env, Index index, mpl::true_)
- {
- typedef typename
- get_index<typename Env::outer_env_type::map_type, Key>::type
- index_type;
-
- return get<RT>(
- env.outer_env
- , index_type()
- , mpl::equal_to<index_type, mpl::int_<-1> >());
- }
-
- template <typename RT, typename Env, typename Index>
- static RT
- get(Env & env, Index index)
- {
- return get<RT>(
- env
- , index
- , mpl::equal_to<Index, mpl::int_<-1> >());
- }
- };
-
- }
-
-}}
-
-#endif

Added: sandbox/SOC/2010/phoenix3/boost/phoenix/scope/detail/make_locals.hpp
==============================================================================
--- (empty file)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/scope/detail/make_locals.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -0,0 +1,63 @@
+/*==============================================================================
+ Copyright (c) 2005-2010 Joel de Guzman
+ Copyright (c) 2010 Thomas Heller
+
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+==============================================================================*/
+#if !PHOENIX_IS_ITERATING
+
+#ifndef PHOENIX_SCOPE_DETAIL_MAKE_LOCALS_HPP
+#define PHOENIX_SCOPE_DETAIL_MAKE_LOCALS_HPP
+
+#include <boost/phoenix/support/iterate.hpp>
+
+#define PHOENIX_ITERATION_PARAMS \
+ (3, (3, PHOENIX_LOCAL_LIMIT, \
+ <boost/phoenix/scope/detail/make_locals.hpp>))
+#include PHOENIX_ITERATE()
+
+#endif
+
+#else
+
+ template <PHOENIX_typename_A>
+ struct make_locals<PHOENIX_A>
+ {
+ typedef
+ typename make_locals<
+ BOOST_PP_ENUM_PARAMS(BOOST_PP_DEC(PHOENIX_ITERATION), A)
+ >::type const
+ type0;
+
+ typedef
+ typename expression::sequence<
+ type0
+ , BOOST_PP_CAT(A, BOOST_PP_DEC(PHOENIX_ITERATION))
+ >::type
+ type;
+
+ static type const make(PHOENIX_A_a)
+ {
+ return
+ expression::sequence<
+ type0
+ , BOOST_PP_CAT(A, BOOST_PP_DEC(PHOENIX_ITERATION))
+ >::make(
+ make_locals<
+ BOOST_PP_ENUM_PARAMS(
+ BOOST_PP_DEC(PHOENIX_ITERATION)
+ , A
+ )
+ >::make(
+ BOOST_PP_ENUM_PARAMS(
+ BOOST_PP_DEC(PHOENIX_ITERATION)
+ , a
+ )
+ )
+ , BOOST_PP_CAT(a, BOOST_PP_DEC(PHOENIX_ITERATION))
+ );
+ }
+ };
+
+#endif

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/scope/dynamic.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/scope/dynamic.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/scope/dynamic.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -123,9 +123,16 @@
                     typename proto::detail::uncvref<Scope>::type
>::type
                 scope_type;
- typedef typename scope_type::dynamic_frame_type::tuple_type tuple_type;
-
- typedef typename fusion::result_of::at_c<tuple_type, proto::detail::uncvref<N>::type::value>::type type;
+ typedef
+ typename scope_type::dynamic_frame_type::tuple_type
+ tuple_type;
+
+ typedef
+ typename fusion::result_of::at_c<
+ tuple_type
+ , proto::detail::uncvref<N>::type::value
+ >::type
+ type;
 
         };
 
@@ -139,87 +146,21 @@
 
     template <typename Dummy>
     struct default_actions::when<rule::dynamic_member, Dummy>
- : proto::call<dynamic_member_eval(_env, proto::_value(proto::_child_c<0>), proto::_value(proto::_child_c<1>))>
+ : proto::call<
+ dynamic_member_eval(
+ _env
+ , proto::_value(proto::_child_c<0>)
+ , proto::_value(proto::_child_c<1>)
+ )
+ >
     {};
     
- template <PHOENIX_typename_A_void(PHOENIX_DYNAMIC_LIMIT), typename Dummy = void>
+ template <
+ PHOENIX_typename_A_void(PHOENIX_DYNAMIC_LIMIT)
+ , typename Dummy = void
+ >
     struct dynamic;
     
- template <typename A0>
- struct dynamic<A0> : noncopyable
- {
- typedef fusion::vector1<A0> tuple_type;
- typedef dynamic<A0> self_type;
- typedef dynamic_frame<self_type> dynamic_frame_type;
-
- dynamic()
- : frame(0) {}
-
- template <int N>
- static
- void//typename make_dynamic_member<N, self_type>::type
- init(self_type& scope)
- {
- //return make_dynamic_member<N, self_type>()(dynamic_member_data<N, self_type>(static_cast<self_type &>(scope)));
- }
-
- //typedef typename make_dynamic_member<0, self_type>::type member1;
- typedef typename expression::dynamic_member<mpl::int_<0>, self_type>::type member1;
-
- mutable dynamic_frame_type* frame;
- };
-
- template <typename A0, typename A1>
- struct dynamic<A0, A1> : noncopyable
- {
- typedef fusion::vector2<A0, A1> tuple_type;
- typedef dynamic<A0, A1> self_type;
- typedef dynamic_frame<self_type> dynamic_frame_type;
-
- dynamic()
- : frame(0) {}
-
- template <int N>
- static
- void//typename make_dynamic_member<N, self_type>::type
- init(self_type& scope)
- {
- //return make_dynamic_member<N, self_type>()(dynamic_member_data<N, self_type>(static_cast<self_type &>(scope)));
- }
-
- //typedef typename make_dynamic_member<0, self_type>::type member1;
- typedef typename expression::dynamic_member<mpl::int_<0>, self_type>::type member1;
- //typedef typename make_dynamic_member<1, self_type>::type member2;
- typedef typename expression::dynamic_member<mpl::int_<1>, self_type>::type member2;
-
- mutable dynamic_frame_type* frame;
- };
-
- template <typename A0, typename A1, typename A2>
- struct dynamic<A0, A1, A2> : noncopyable
- {
- typedef fusion::vector3<A0, A1, A2> tuple_type;
- typedef dynamic<A0, A1, A2> self_type;
- typedef dynamic_frame<self_type> dynamic_frame_type;
-
- dynamic()
- : frame(0) {}
-
- template <int N>
- static
- typename expression::dynamic_member<mpl::int_<N>, self_type *>::type
- init(self_type * scope)
- {
- return expression::dynamic_member<mpl::int_<N>, self_type *>::make(mpl::int_<N>(), scope);
- }
-
- typedef typename expression::dynamic_member<mpl::int_<0>, dynamic *>::type member1;
- typedef typename expression::dynamic_member<mpl::int_<1>, dynamic *>::type member2;
- typedef typename expression::dynamic_member<mpl::int_<2>, dynamic *>::type member3;
-
- mutable dynamic_frame_type* frame;
- };
-
     // Bring in the rest ...
     #include <boost/phoenix/scope/detail/dynamic.hpp>
 }}

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/scope/lambda.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/scope/lambda.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/scope/lambda.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -9,17 +9,6 @@
 #ifndef PHOENIX_SCOPE_LAMBDA_HPP
 #define PHOENIX_SCOPE_LAMBDA_HPP
 
-/*
-#include <boost/fusion/include/transform.hpp>
-#include <boost/fusion/include/as_vector.hpp>
-#include <boost/fusion/include/mpl.hpp>
-#include <boost/phoenix/core/limits.hpp>
-#include <boost/phoenix/scope/scoped_environment.hpp>
-#include <boost/phoenix/core/actor.hpp>
-#include <boost/phoenix/scope/detail/local_variable.hpp>
-#include <boost/phoenix/support/element_at.hpp>
-#include <boost/phoenix/support/iterate.hpp>
-*/
 #include <boost/phoenix/core/limits.hpp>
 #include <boost/mpl/int.hpp>
 #include <boost/phoenix/core/actor.hpp>
@@ -35,22 +24,41 @@
     )
 
     struct lambda_eval
- : proto::callable
     {
+ BOOST_PROTO_CALLABLE()
+
         template <typename Sig>
         struct result;
 
- template <typename This, typename Env, typename OuterEnv, typename Locals, typename Lambda>
+ template <
+ typename This
+ , typename Env
+ , typename OuterEnv
+ , typename Locals
+ , typename Lambda
+ >
         struct result<This(Env, OuterEnv, Locals, Lambda)>
             : result<This(Env const &, OuterEnv &, Locals &, Lambda &)>
         {};
 
- template <typename This, typename Env, typename OuterEnv, typename Locals, typename Lambda>
+ template <
+ typename This
+ , typename Env
+ , typename OuterEnv
+ , typename Locals
+ , typename Lambda
+ >
         struct result<This(Env, OuterEnv &, Locals &, Lambda &)>
             : result<This(Env const &, OuterEnv &, Locals &, Lambda &)>
         {};
 
- template <typename This, typename Env, typename OuterEnv, typename Locals, typename Lambda>
+ template <
+ typename This
+ , typename Env
+ , typename OuterEnv
+ , typename Locals
+ , typename Lambda
+ >
         struct result<This(Env &, OuterEnv &, Locals &, Lambda &)>
         {
             typedef
@@ -60,6 +68,7 @@
>::type
>::type
                 args_type;
+
             typedef
                 typename proto::detail::uncvref<
                     typename boost::result_of<
@@ -67,22 +76,47 @@
>::type
>::type
                 actions_type;
- typedef fusion::vector2<args_type, actions_type> env_type;
 
- typedef typename proto::detail::uncvref<Locals>::type locals_type;
+ typedef
+ fusion::vector2<args_type, actions_type>
+ env_type;
 
- typedef typename proto::detail::uncvref<OuterEnv>::type outer_env_type;
+ typedef
+ typename proto::detail::uncvref<Locals>::type
+ locals_type;
 
- typedef scoped_environment<env_type, outer_env_type const, locals_type const> scoped_env;
+ typedef
+ typename proto::detail::uncvref<OuterEnv>::type
+ outer_env_type;
+
+ typedef
+ scoped_environment<env_type, outer_env_type const, locals_type const>
+ scoped_env;
 
- typedef fusion::vector2<scoped_env, actions_type&> new_env_type;
+ typedef
+ fusion::vector2<scoped_env, actions_type&>
+ new_env_type;
 
- typedef typename boost::result_of<evaluator(Lambda const &, new_env_type &)>::type type;
+ typedef
+ typename evaluator::impl<Lambda const &, new_env_type&, int>::result_type
+ type;
         };
         
- template <typename Env, typename OuterEnv, typename Locals, typename Lambda>
- typename result<lambda_eval(Env &, OuterEnv const&, Locals &, Lambda &)>::type
- operator()(Env& env, OuterEnv const & outer_env, Locals const& locals, Lambda const& lambda) const
+ template <
+ typename Env
+ , typename OuterEnv
+ , typename Locals
+ , typename Lambda
+ >
+ typename result<
+ lambda_eval(Env &, OuterEnv const&, Locals &, Lambda &)
+ >::type
+ operator()(
+ Env& env
+ , OuterEnv const & outer_env
+ , Locals const& locals
+ , Lambda const& lambda
+ ) const
         {
             typedef
                 typename proto::detail::uncvref<
@@ -91,6 +125,7 @@
>::type
>::type
                 args_type;
+
             typedef
                 typename proto::detail::uncvref<
                     typename boost::result_of<
@@ -98,11 +133,22 @@
>::type
>::type
                 actions_type;
- typedef fusion::vector2<args_type, actions_type> env_type;
+
+ typedef
+ fusion::vector2<args_type, actions_type>
+ env_type;
             
- typedef typename proto::detail::uncvref<Locals>::type locals_type;
- typedef typename proto::detail::uncvref<OuterEnv>::type outer_env_type;
- typedef scoped_environment<env_type, OuterEnv const, locals_type const> scoped_env_type;
+ typedef
+ typename proto::detail::uncvref<Locals>::type
+ locals_type;
+
+ typedef
+ typename proto::detail::uncvref<OuterEnv>::type
+ outer_env_type;
+
+ typedef
+ scoped_environment<env_type, OuterEnv const, locals_type const>
+ scoped_env_type;
 
             env_type e(functional::args()(env), functional::actions()(env));
 
@@ -121,7 +167,14 @@
 
     template <typename Dummy>
     struct default_actions::when<rule::lambda, Dummy>
- : proto::call<lambda_eval(_env, proto::_value(proto::_child_c<0>), proto::_child_c<1>, proto::_child_c<2>)>
+ : proto::call<
+ lambda_eval(
+ _env
+ , proto::_value(proto::_child_c<0>)
+ , proto::_child_c<1>
+ , proto::_child_c<2>
+ )
+ >
     {};
 
     namespace detail
@@ -134,7 +187,13 @@
                   , rule::local_var_def_list
                   , meta_grammar
>
- , evaluator(proto::_child_c<2>, fusion::vector2<fusion::vector0<>&, scope_is_nullary_actions>())
+ , evaluator(
+ proto::_child_c<2>
+ , fusion::vector2<
+ mpl::true_
+ , scope_is_nullary_actions
+ >()
+ )
>
         {};
     }
@@ -151,12 +210,12 @@
 
         template <typename A0>
         struct lambda_actor<A0>
- : expr/*_ext<lambda_actor,*/< tag::lambda_actor, A0>
+ : expr<tag::lambda_actor, A0>
         {};
 
         template <typename A0, typename A1>
         struct lambda_actor<A0, A1>
- : expr/*_ext<lambda_actor,*/< tag::lambda_actor, A0, A1>
+ : expr< tag::lambda_actor, A0, A1>
         {};
     }
 
@@ -177,7 +236,7 @@
             : proto::or_<
                 proto::when<
                     expression::lambda_actor<meta_grammar>
- , mpl::true_()//evaluator(proto::_child_c<0>, _env)
+ , mpl::true_()
>
               , proto::when<
                     expression::lambda_actor<
@@ -205,7 +264,9 @@
         template <typename This, typename Env, typename Lambda>
         struct result<This(Env, Lambda &)>
         {
- typedef typename proto::detail::uncvref<Env>::type env_type;
+ typedef
+ typename proto::detail::uncvref<Env>::type
+ env_type;
 
             typedef
                 typename proto::detail::uncvref<
@@ -219,9 +280,17 @@
>::type
                 actions_type;
 
- typedef fusion::vector2<args_type, actions_type> outer_env_type;
+ typedef
+ fusion::vector2<args_type, actions_type>
+ outer_env_type;
 
- typedef typename expression::lambda<outer_env_type, mpl::void_, typename proto::detail::uncvref<Lambda>::type>::type type;
+ typedef
+ typename expression::lambda<
+ outer_env_type
+ , mpl::void_
+ , typename proto::detail::uncvref<Lambda>::type
+ >::type
+ type;
         };
 
         template <typename This, typename Env, typename Locals, typename Lambda>
@@ -237,7 +306,10 @@
>::type
>::type
                 locals_type;
- typedef typename proto::detail::uncvref<Env>::type env_type;
+
+ typedef
+ typename proto::detail::uncvref<Env>::type
+ env_type;
 
             typedef
                 typename proto::detail::uncvref<
@@ -251,17 +323,26 @@
>::type
                 actions_type;
 
- typedef fusion::vector2<args_type, actions_type> outer_env_type;
+ typedef
+ fusion::vector2<args_type, actions_type>
+ outer_env_type;
             
             typedef
- typename expression::lambda<outer_env_type, locals_type, typename proto::detail::uncvref<Lambda>::type>::type const type;
+ typename expression::lambda<
+ outer_env_type
+ , locals_type
+ , typename proto::detail::uncvref<Lambda>::type
+ >::type const
+ type;
         };
 
         template <typename Env, typename Lambda>
         typename result<lambda_actor_eval(Env&, Lambda const&)>::type
         operator()(Env & env, Lambda const& lambda) const
         {
- typedef typename proto::detail::uncvref<Env>::type env_type;
+ typedef
+ typename proto::detail::uncvref<Env>::type
+ env_type;
 
             typedef
                 typename proto::detail::uncvref<
@@ -275,16 +356,28 @@
>::type
                 actions_type;
 
- typedef fusion::vector2<args_type, actions_type> outer_env_type;
+ typedef
+ fusion::vector2<args_type, actions_type>
+ outer_env_type;
 
- outer_env_type outer_env(fusion::at_c<0>(env), fusion::at_c<1>(env));
+ outer_env_type
+ outer_env(fusion::at_c<0>(env), fusion::at_c<1>(env));
 
             mpl::void_ t;
- return expression::lambda<outer_env_type, mpl::void_, Lambda>::make(outer_env, t, lambda);
+ return
+ expression::
+ lambda<outer_env_type, mpl::void_, Lambda>::
+ make(outer_env, t, lambda);
         }
 
- template <typename Env, typename Locals, typename Lambda>
- typename result<lambda_actor_eval(Env&, Locals const&, Lambda const&)>::type
+ template <
+ typename Env
+ , typename Locals
+ , typename Lambda
+ >
+ typename result<
+ lambda_actor_eval(Env&, Locals const&, Lambda const&)
+ >::type
         operator()(Env & env, Locals const& locals, Lambda const& lambda) const
         {
             typedef
@@ -316,32 +409,23 @@
>::type
                 actions_type;
 
- typedef fusion::vector2<args_type, actions_type> outer_env_type;
+ typedef
+ fusion::vector2<args_type, actions_type>
+ outer_env_type;
 
- outer_env_type outer_env(fusion::at_c<0>(env), fusion::at_c<1>(env));
+ outer_env_type
+ outer_env(fusion::at_c<0>(env), fusion::at_c<1>(env));
 
- return expression::lambda<outer_env_type, locals_type, Lambda>::make(outer_env, l, lambda);
+ return
+ expression::
+ lambda<outer_env_type, locals_type, Lambda>::
+ make(outer_env, l, lambda);
         }
     };
 
     template <typename Dummy>
     struct default_actions::when<rule::lambda_actor, Dummy>
         : proto::call<lambda_actor_eval(_env, unpack)>
- /*
- : proto::or_<
- proto::when<
- expression::lambda_actor<meta_grammar>
- , lambda_actor_eval(_env, unpack)//lambda_actor_eval(_env, proto::_child_c<0>)
- >
- , proto::when<
- expression::lambda_actor<
- rule::local_var_def_list
- , meta_grammar
- >
- , lambda_actor_eval(_env, proto::_child_c<0>, proto::_child_c<1>)
- >
- >
- */
     {};
     
     template <typename Locals = void, typename Dummy = void>
@@ -394,16 +478,16 @@
             return expr0;
         }
 
-#define PHOENIX_LAMBDA_LOCAL_GEN(Z, N, DATA) \
- template <PHOENIX_typename_A(N)> \
- lambda_actor_gen< \
- typename detail::make_locals<PHOENIX_A(N)>::type \
- > const \
- operator()(PHOENIX_A_const_ref_a(N)) const \
- { \
- return detail::make_locals<PHOENIX_A(N)>::make(PHOENIX_a(N)); \
- } \
- /**/
+ #define PHOENIX_LAMBDA_LOCAL_GEN(Z, N, DATA) \
+ template <PHOENIX_typename_A(N)> \
+ lambda_actor_gen< \
+ typename detail::make_locals<PHOENIX_A(N)>::type \
+ > const \
+ operator()(PHOENIX_A_const_ref_a(N)) const \
+ { \
+ return detail::make_locals<PHOENIX_A(N)>::make(PHOENIX_a(N)); \
+ } \
+ /**/
         BOOST_PP_REPEAT_FROM_TO(2, PHOENIX_LOCAL_LIMIT, PHOENIX_LAMBDA_LOCAL_GEN, _)
 
     };

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/scope/let.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/scope/let.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/scope/let.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -30,14 +30,15 @@
             : proto::make<
                 mpl::and_<
                     detail::local_var_def_is_nullary(proto::_child_c<0>, _env)
- //mpl::true_()
- //, mpl::true_()//let_evaluator(proto::_child_c<1>, _env)
- , evaluator(proto::_child_c<1>, //fusion::vector2<scoped_environment<_env, _env, mpl::void_()>(), functional::actions(_env)>()
- fusion::vector2<fusion::vector0<>&, scope_is_nullary_actions>()
- )
+ , evaluator(
+ proto::_child_c<1>
+ , fusion::vector2<
+ mpl::true_
+ , scope_is_nullary_actions
+ >()
+ )
>()
>
- //: proto::make<mpl::true_()>
         {};
     }
 
@@ -72,7 +73,10 @@
                 typename boost::result_of<
                     evaluator(
                         Let const &
- , fusion::vector2<scoped_environment<Env, Env, locals_type> &, actions_type> &
+ , fusion::vector2<
+ scoped_environment<Env, Env, locals_type> &
+ , actions_type
+ > &
                     )
>::type
                 type;
@@ -114,8 +118,10 @@
                   , l
                 );
 
- fusion::vector2<scoped_environment<Env, Env, locals_type &> &, actions_type>
- new_env(scoped_env, functional::actions()(env));
+ fusion::vector2<
+ scoped_environment<Env, Env, locals_type &> &
+ , actions_type
+ > new_env(scoped_env, functional::actions()(env));
 
             return eval(let, new_env);
         }
@@ -176,17 +182,7 @@
             return expr0;
         }
 
-#define PHOENIX_LET_LOCAL_GEN(Z, N, DATA) \
- template <PHOENIX_typename_A(N)> \
- let_actor_gen< \
- typename detail::make_locals<PHOENIX_A(N)>::type \
- > const \
- operator()(PHOENIX_A_const_ref_a(N)) const \
- { \
- return detail::make_locals<PHOENIX_A(N)>::make(PHOENIX_a(N)); \
- } \
- /**/
- BOOST_PP_REPEAT_FROM_TO(2, PHOENIX_LOCAL_LIMIT, PHOENIX_LET_LOCAL_GEN, _)
+ #include <boost/phoenix/scope/detail/let_local_gen.hpp>
     };
 
     let_local_gen const let = {};

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/scope/local_variable.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/scope/local_variable.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/scope/local_variable.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -10,7 +10,6 @@
 
 #include <boost/phoenix/core/actor.hpp>
 #include <boost/phoenix/core/expression.hpp>
-#include <boost/phoenix/scope/scope_actor.hpp>
 #include <boost/phoenix/scope/scoped_environment.hpp>
 #include <boost/phoenix/statement/sequence.hpp>
 
@@ -45,14 +44,7 @@
     namespace rule
     {
         struct local_variable
- //: expression::local_variable<proto::_>
- : proto::and_<
- //proto::if_<is_scoped_environment<_env>()>
- //proto::if_<blubb<_env>()>
- //, rule::local_variable
- expression::local_variable<proto::_>
- >
- //: proto::terminal< ::boost::phoenix::local_variable<proto::_> >
+ : expression::local_variable<proto::_>
         {};
 
         struct local_var_def
@@ -81,7 +73,9 @@
                 typedef
                     typename mpl::eval_if<
                         is_reference<result_type>
- , reference<typename boost::remove_reference<result_type>::type>
+ , reference<
+ typename boost::remove_reference<result_type>::type
+ >
                       , value<result_type>
>::type
                     type;
@@ -91,9 +85,16 @@
             typename result<local_eval(Expr const&, Env&)>::type
             operator()(Expr const& expr, Env & env) const
             {
- typedef typename result<local_eval(Expr const&, Env&)>::result_type result_type;
+ typedef
+ typename result<local_eval(Expr const&, Env&)>::result_type
+ result_type;
 
- return this->make(expr, env, typename is_reference<result_type>::type());
+ return
+ this->make(
+ expr
+ , env
+ , typename is_reference<result_type>::type()
+ );
             }
 
             private:
@@ -103,11 +104,18 @@
                 {
                     typedef
                         typename remove_reference<
- typename result<local_eval(Expr const&, Env&)>::result_type
+ typename result<
+ local_eval(Expr const&, Env&)
+ >::result_type
>::type
                         result_type;
                 
- return this->make_ref(expr, env, typename is_const<result_type>::type());
+ return
+ this->make_ref(
+ expr
+ , env
+ , typename is_const<result_type>::type()
+ );
                 }
                 
                 template <typename Expr, typename Env>
@@ -161,7 +169,6 @@
     }
 
     template <typename Dummy>
- //struct scope_grammar::case_<tag::local_variable, Dummy>
     struct meta_grammar::case_<tag::local_variable, Dummy>
         : proto::when<
             rule::local_variable
@@ -173,10 +180,8 @@
     {
         template <typename Dummy>
         struct is_nullary_::when<rule::local_variable, Dummy>
- //: proto::make<mpl::true_()>
             : proto::if_<
                 is_scoped_environment<functional::args(_env)>()
- //foo(functional::args(proto::_state))
               , mpl::true_()
               , mpl::false_()
>
@@ -185,22 +190,30 @@
         struct local_var_def_is_nullary
             : proto::or_<
                 proto::when<
- proto::comma<local_var_def_is_nullary, rule::local_var_def>
+ proto::comma<
+ local_var_def_is_nullary
+ , rule::local_var_def
+ >
                   , mpl::and_<
                         local_var_def_is_nullary(proto::_left, proto::_state)
- //, mpl::false_()//, local_var_def_is_nullary(proto::_right, proto::_state)
- //, evaluator(proto::_right(proto::_right), proto::_state)
- //, is_nullary<proto::_right(proto::_right)>()
- , evaluator(proto::_right(proto::_right), fusion::vector2<fusion::vector0<>, detail::is_nullary_>(), int())
+ , evaluator(
+ proto::_right(proto::_right)
+ , fusion::vector2<
+ mpl::true_
+ , detail::is_nullary_
+ >()
+ )
>()
>
               , proto::when<
- //proto::_
                     rule::local_var_def
- //, mpl::false_()
- , evaluator(proto::_child_c<1>, fusion::vector2<fusion::vector0<>, detail::is_nullary_>(), int())
- //, is_nullary<proto::_child_c<1> >()
- //, proto::lazy<is_nullary<custom_terminal<proto::_child_c<1> > >(proto::_child_c<1>, _env)>
+ , evaluator(
+ proto::_child_c<1>
+ , fusion::vector2<
+ mpl::true_
+ , detail::is_nullary_
+ >()
+ )
>
>
         {};
@@ -231,31 +244,28 @@
             }
         };
 
- template <typename T>
- T operator+(local_var_not_found const&, T const & t)
- {
- return t;
- }
-
- /*
- template <typename T>
- T operator+(T const & t, local_var_not_found const&)
- {
- return t;
- }
- */
-
         struct find_local
             : proto::or_<
- proto::when<proto::terminal<mpl::void_>, detail::local_var_not_found()>
+ proto::when<
+ proto::terminal<mpl::void_>
+ , detail::local_var_not_found()
+ >
               , proto::when<
                     proto::comma<find_local, rule::local_var_def>
                   , proto::if_<
- proto::matches<proto::_left(proto::_right), proto::_data>()
- //, evaluator(proto::_right(proto::_right), proto::_state)
- , evaluator(proto::_right(proto::_right), proto::_state)
- //, int()
- , find_local(proto::_left, proto::_state, proto::_data)
+ proto::matches<
+ proto::_left(proto::_right)
+ , proto::_data
+ >()
+ , evaluator(
+ proto::_right(proto::_right)
+ , proto::_state
+ )
+ , find_local(
+ proto::_left
+ , proto::_state
+ , proto::_data
+ )
>
>
               , proto::when<
@@ -284,7 +294,11 @@
                     is_same<
                         typename proto::detail::uncvref<
                             typename boost::result_of<
- detail::find_local(typename Args::locals_type &, Env, Key)
+ detail::find_local(
+ typename Args::locals_type &
+ , Env
+ , Key
+ )
>::type
>::type
                       , detail::local_var_not_found
@@ -293,28 +307,14 @@
                         This(typename Args::outer_env_type&)
>
                   , boost::result_of<
- detail::find_local(typename Args::locals_type &, Env, Key)
+ detail::find_local(
+ typename Args::locals_type &
+ , Env
+ , Key
+ )
>
>
>
- /*
- : mpl::if_<
- typename is_same<
- typename proto::detail::uncvref<
- typename boost::result_of<
- detail::find_local(typename Args::locals_type &, Env, Key)
- >::type
- >::type
- , detail::local_var_not_found
- >::type
- , typename boost::result_of<
- This(typename Args::outer_env_type&)
- >::type
- , typename boost::result_of<
- detail::find_local(typename Args::locals_type &, Env, Key)
- >::type
- >
- */
         {};
 
     }
@@ -369,7 +369,6 @@
         }
 
         private:
-
             // is a scoped environment
             template <typename Env>
             typename result<get_local<Key>(Env&)>::type
@@ -388,7 +387,11 @@
                         env
                       , typename is_same<
                             typename proto::detail::uncvref<
- typename boost::result_of<detail::find_local(typename env_type::locals_type, Env &, Key)>::type
+ typename detail::find_local::impl<
+ typename env_type::locals_type
+ , Env &
+ , Key
+ >::result_type
>::type
                           , detail::local_var_not_found
>::type()
@@ -396,16 +399,23 @@
                     
             }
 
- // is a scoped environment, and we need to look in the outer environment
+ // is a scoped environment
+ // --> we need to look in the outer environment
             template <typename Env>
             typename result<get_local<Key>(Env&)>::type
             evaluate_scoped(Env & env, mpl::false_) const
             {
                 Key k;
- return detail::find_local()(functional::args()(env).locals, env, k);
+ return
+ detail::find_local()(
+ functional::args()(env).locals
+ , env
+ , k
+ );
             }
             
- // is a scoped environment, and we have the local in our environment
+ // is a scoped environment
+ // --> we have the local in our environment
             template <typename Env>
             typename result<get_local<Key>(Env&)>::type
             evaluate_scoped(Env & env, mpl::true_) const
@@ -488,7 +498,10 @@
     
     namespace detail
     {
- template <PHOENIX_typename_A_void(PHOENIX_LOCAL_LIMIT)>
+ template <
+ PHOENIX_typename_A_void(PHOENIX_LOCAL_LIMIT)
+ , typename Dummy = void
+ >
         struct make_locals;
 
         template <typename A0, typename A1>
@@ -504,40 +517,7 @@
             }
         };
 
- #define PHOENIX_MAKE_LOCALS(Z, N, DATA) \
- template <PHOENIX_typename_A(N)> \
- struct make_locals<PHOENIX_A(N)> \
- { \
- typedef \
- typename make_locals<PHOENIX_A(BOOST_PP_DEC(N))>::type const \
- type0; \
- \
- typedef \
- typename expression::sequence< \
- type0 \
- , BOOST_PP_CAT(A, BOOST_PP_DEC(N)) \
- >::type \
- type; \
- \
- static type const make(PHOENIX_A_a(N)) \
- { \
- return \
- expression::sequence< \
- type0 \
- , BOOST_PP_CAT(A, BOOST_PP_DEC(N)) \
- >::make( \
- make_locals< \
- PHOENIX_A(BOOST_PP_DEC(N)) \
- >::make( \
- PHOENIX_a(BOOST_PP_DEC(N)) \
- ) \
- , BOOST_PP_CAT(a, BOOST_PP_DEC(N)) \
- ); \
- } \
- }; \
- /**/
- BOOST_PP_REPEAT_FROM_TO(3, PHOENIX_LOCAL_LIMIT, PHOENIX_MAKE_LOCALS, _)
- #undef PHOENIX_MAKE_LOCALS
+ #include <boost/phoenix/scope/detail/make_locals.hpp>
     }
 }}
 

Deleted: sandbox/SOC/2010/phoenix3/boost/phoenix/scope/scope_actor.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/scope/scope_actor.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
+++ (empty file)
@@ -1,26 +0,0 @@
-/*==============================================================================
- Copyright (c) 2005-2010 Joel de Guzman
- Copyright (c) 2010 Thomas Heller
-
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-==============================================================================*/
-#ifndef PHOENIX_SCOPE_SCOPE_ACTOR_HPP
-#define PHOENIX_SCOPE_SCOPE_ACTOR_HPP
-
-#include <boost/phoenix/scope/scope_domain.hpp>
-#include <boost/phoenix/scope/scope_grammar.hpp>
-
-namespace boost { namespace phoenix
-{
- template <typename Expr>
- struct scope_actor
- {
- BOOST_PROTO_BASIC_EXTENDS(Expr, scope_actor<Expr>, scope_domain)
- BOOST_PROTO_EXTENDS_ASSIGN()
- BOOST_PROTO_EXTENDS_SUBSCRIPT()
-
- };
-}}
-
-#endif

Deleted: sandbox/SOC/2010/phoenix3/boost/phoenix/scope/scope_domain.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/scope/scope_domain.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
+++ (empty file)
@@ -1,33 +0,0 @@
-/*==============================================================================
- Copyright (c) 2005-2010 Joel de Guzman
- Copyright (c) 2010 Thomas Heller
-
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-==============================================================================*/
-#ifndef PHOENIX_SCOPE_SCOPE_DOMAIN_HPP
-#define PHOENIX_SCOPE_SCOPE_DOMAIN_HPP
-
-namespace boost { namespace phoenix
-{
- template <typename Expr>
- struct scope_actor;
-
- struct scope_grammar;
-
- struct scope_domain
- : proto::domain<
- proto::pod_generator<scope_actor>
- , scope_grammar
- //, proto::_
- //, proto::default_domain
- , phoenix_domain
- >
- {
- template <typename T>
- struct as_child : as_expr<T>
- {};
- };
-}}
-
-#endif

Deleted: sandbox/SOC/2010/phoenix3/boost/phoenix/scope/scope_grammar.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/scope/scope_grammar.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
+++ (empty file)
@@ -1,23 +0,0 @@
-/*==============================================================================
- Copyright (c) 2005-2010 Joel de Guzman
- Copyright (c) 2010 Thomas Heller
-
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-==============================================================================*/
-#ifndef PHOENIX_SCOPE_SCOPE_GRAMMAR_HPP
-#define PHOENIX_SCOPE_SCOPE_GRAMMAR_HPP
-
-namespace boost { namespace phoenix
-{
- struct scope_grammar
- : proto::switch_<scope_grammar>
- {
- template <typename Tag, typename Dummy = void>
- struct case_
- : meta_grammar::case_<Tag, Dummy>
- {};
- };
-}}
-
-#endif

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/scope/scoped_environment.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/scope/scoped_environment.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/scope/scoped_environment.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -30,7 +30,11 @@
         typedef typename boost::remove_reference<OuterEnv>::type outer_env_type;
         typedef typename boost::remove_reference<Locals>::type locals_type;
 
- scoped_environment(env_type& env, outer_env_type& outer_env, locals_type & locals)
+ scoped_environment(
+ env_type& env
+ , outer_env_type& outer_env
+ , locals_type & locals
+ )
             : env(env)
             , outer_env(outer_env)
             , locals(locals)
@@ -80,7 +84,9 @@
>::type
>::type
                 env_type;
- typedef typename fusion::result_of::value_at<env_type, N>::type type;
+ typedef
+ typename fusion::result_of::value_at<env_type, N>::type
+ type;
         };
         
         template <typename Seq, typename N>

Added: sandbox/SOC/2010/phoenix3/boost/phoenix/statement/detail/catch_push_back.hpp
==============================================================================
--- (empty file)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/statement/detail/catch_push_back.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -0,0 +1,110 @@
+/*==============================================================================
+ Copyright (c) 2005-2010 Joel de Guzman
+ Copyright (c) 2010 Thomas Heller
+
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+==============================================================================*/
+#if !PHOENIX_IS_ITERATING
+
+#ifndef PHOENIX_STATEMENT_DETAIL_CATCH_PUSH_BACK_HPP
+#define PHOENIX_STATEMENT_DETAIL_CATCH_PUSH_BACK_HPP
+
+#include <boost/phoenix/support/iterate.hpp>
+
+ #define PHOENIX_CATCH_PUSH_BACK_R0(Z, N, DATA) \
+ BOOST_PP_COMMA_IF(N) \
+ typename proto::result_of::child_c<TryCatch, N>::type \
+ /**/
+
+ #define PHOENIX_CATCH_PUSH_BACK_R1(Z, N, DATA) \
+ BOOST_PP_COMMA_IF(N) proto::child_c<N>(try_catch) \
+ /**/
+
+#define PHOENIX_ITERATION_PARAMS \
+ (3, (2, PHOENIX_CATCH_LIMIT, \
+ <boost/phoenix/statement/detail/catch_push_back.hpp>))
+#include PHOENIX_ITERATE()
+
+ #undef PHOENIX_CATCH_PUSH_BACK_R0
+ #undef PHOENIX_CATCH_PUSH_BACK_R1
+
+#endif
+
+#else
+ template <typename TryCatch, typename Exception, typename Expr>
+ struct catch_push_back<TryCatch, Exception, Expr, PHOENIX_ITERATION>
+ {
+ typedef
+ typename proto::result_of::make_expr<
+ tag::catch_
+ , default_domain_with_basic_expr
+ , catch_exception<Exception>
+ , Expr
+ >::type
+ catch_expr;
+
+ typedef expression::try_catch<
+ BOOST_PP_REPEAT(PHOENIX_ITERATION, PHOENIX_CATCH_PUSH_BACK_R0, _)
+ , catch_expr> gen_type;
+ typedef typename gen_type::type type;
+
+ static type
+ make(
+ TryCatch const& try_catch
+ , Expr const& catch_
+ )
+ {
+ return
+ gen_type::make(
+ BOOST_PP_REPEAT(
+ PHOENIX_ITERATION
+ , PHOENIX_CATCH_PUSH_BACK_R1
+ , _
+ )
+ , proto::make_expr<
+ tag::catch_
+ , default_domain_with_basic_expr
+ >(catch_exception<Exception>(), catch_)
+ );
+ }
+ };
+
+ template <typename TryCatch, typename Expr>
+ struct catch_all_push_back<TryCatch, Expr, PHOENIX_ITERATION>
+ {
+ typedef
+ typename proto::result_of::make_expr<
+ tag::catch_all
+ , default_domain_with_basic_expr
+ , Expr
+ >::type
+ catch_expr;
+
+ typedef expression::try_catch<
+ BOOST_PP_REPEAT(PHOENIX_ITERATION, PHOENIX_CATCH_PUSH_BACK_R0, _)
+ , catch_expr> gen_type;
+ typedef typename gen_type::type type;
+
+ static type
+ make(
+ TryCatch const& try_catch
+ , Expr const& catch_
+ )
+ {
+ return
+ gen_type::make(
+ BOOST_PP_REPEAT(
+ PHOENIX_ITERATION
+ , PHOENIX_CATCH_PUSH_BACK_R1
+ , _
+ )
+ , proto::make_expr<
+ tag::catch_all
+ , default_domain_with_basic_expr
+ >(catch_)
+ );
+ }
+ };
+
+#endif

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/statement/detail/switch.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/statement/detail/switch.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/statement/detail/switch.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -11,147 +11,113 @@
 #ifndef PHOENIX_STATEMENT_DETAIL_SWITCH_HPP
 #define PHOENIX_STATEMENT_DETAIL_SWITCH_HPP
 
-#include <boost/preprocessor/cat.hpp>
+#include <boost/phoenix/support/iterate.hpp>
 
- struct switch_eval
- {
- typedef void result_type;
-
- template <typename Env, typename Cond, typename Case0>
- void
- operator()(Env& env, Cond const& cond, Case0 const& case0) const
- {
- return evaluate(env, cond, case0, result_of::is_default_case<Case0>());
- }
-
- template <typename Env, typename Cond, typename Case0>
- void
- evaluate(Env& env, Cond const& cond, Case0 const& case0, mpl::false_) const
- {
- typedef typename result_of::case_label<Case0>::type label0;
-
- switch(eval(cond, env))
- {
- case label0::value: eval(case_statement(case0), env); break;
- }
- }
-
- template <typename Env, typename Cond, typename Case0>
- void
- evaluate(Env& env, Cond const& cond, Case0 const& case0, mpl::true_) const
- {
- switch(eval(cond, env))
- {
- default: eval(proto::child(case0), env); break;
- }
- }
-
-#define PHOENIX_SWITCH_EVAL_LABEL_TYPEDEF(_,n,__)\
- typedef typename result_of::case_label<BOOST_PP_CAT(A, n)>::type BOOST_PP_CAT(label, n);
-
-#define PHOENIX_SWITCH_EVAL_CASE_EVAL(_,n,__)\
- case BOOST_PP_CAT(label,n)::value: eval(case_statement(BOOST_PP_CAT(a, n)), env); break;
-
-
-#define PHOENIX_SWITCH_EVAL_OVERLOADS(_,n,__) \
- template <typename Env, typename Cond, PHOENIX_typename_A(n)> \
- void \
- operator()(Env& env, Cond const& cond, PHOENIX_A_const_ref_a(n)) const \
- { \
- return evaluate(env, cond, PHOENIX_a(n), result_of::is_default_case<BOOST_PP_CAT(A, BOOST_PP_DEC(n))>()); \
- }\
- \
- template <typename Env, typename Cond, PHOENIX_typename_A(n)>\
- void\
- evaluate(Env& env, Cond const& cond, PHOENIX_A_const_ref_a(n), mpl::false_) const\
- {\
- BOOST_PP_REPEAT(n, PHOENIX_SWITCH_EVAL_LABEL_TYPEDEF, _)\
- switch(eval(cond, env))\
- {\
- BOOST_PP_REPEAT(n, PHOENIX_SWITCH_EVAL_CASE_EVAL, _)\
- }\
- }\
- \
- template <typename Env, typename Cond, PHOENIX_typename_A(n)>\
- void\
- evaluate(Env& env, Cond const& cond, PHOENIX_A_const_ref_a(n), mpl::true_) const\
- {\
- BOOST_PP_REPEAT(BOOST_PP_DEC(n), PHOENIX_SWITCH_EVAL_LABEL_TYPEDEF, _)\
- switch(eval(cond, env))\
- {\
- BOOST_PP_REPEAT(BOOST_PP_DEC(n), PHOENIX_SWITCH_EVAL_CASE_EVAL, _)\
- default: eval(proto::child(BOOST_PP_CAT(a, BOOST_PP_DEC(n))), env); break;\
- }\
- }
-
- BOOST_PP_REPEAT_FROM_TO(2, PHOENIX_COMPOSITE_LIMIT, PHOENIX_SWITCH_EVAL_OVERLOADS, _)
-
-#undef PHOENIX_SWITCH_EVAL_LABEL_TYPEDEF
-#undef PHOENIX_SWITCH_EVAL_CASE_EVAL
-#undef PHOENIX_SWITCH_EVAL_OVERLOADS
- };
-
- template <typename Cond, typename Cases>
- struct make_switch<Cond, Cases, 1>
- {
- typedef typename result_of::case_compound<Cases, mpl::int_<0> >::type case0;
-
- typedef
- compose<
- switch_eval
- , Cond
- , case0
- >
- composite_type;
-
- typedef typename composite_type::type type;
-
- type const
- operator()( Cond const& cond, Cases const& cases) const
- {
- return composite_type()(cond, case_compound_c<0>(cases));
- }
- };
+ #define PHOENIX_SWITCH_EVAL_TYPEDEF_R(Z, N, DATA) \
+ typedef \
+ typename boost::result_of< \
+ detail::switch_grammar( \
+ Cases \
+ , mpl::int_<N> \
+ , mpl::int_<DATA> \
+ ) \
+ >::type \
+ BOOST_PP_CAT(case, N); \
+ typedef \
+ typename proto::result_of::value< \
+ typename proto::result_of::child_c< \
+ BOOST_PP_CAT(case, N) \
+ , 0 \
+ >::type \
+ >::type \
+ BOOST_PP_CAT(case_label, N); \
+ mpl::int_<N> BOOST_PP_CAT(idx, N); \
+ /**/
+
+ #define PHOENIX_SWITCH_EVAL_R(Z, N, DATA) \
+ case BOOST_PP_CAT(case_label, N)::value : \
+ eval( \
+ proto::child_c<1>( \
+ detail::switch_grammar()( \
+ cases, BOOST_PP_CAT(idx, N), size \
+ ) \
+ ) \
+ , env \
+ ); \
+ break;
+ /**/
 
 #define PHOENIX_ITERATION_PARAMS \
- (3, (2, PHOENIX_COMPOSITE_LIMIT, \
- <boost/phoenix/statement/detail/switch.hpp>))
+ (3, (0, PHOENIX_LIMIT, \
+ <boost/phoenix/statement/detail/switch.hpp>))
 #include PHOENIX_ITERATE()
 
+ #undef PHOENIX_SWITCH_EVAL_R
+ #undef PHOENIX_SWITCH_EVAL_TYPEDEF
+
 #endif
 
 #else
+ template <typename Env, typename Cond, typename Cases>
+ result_type
+ evaluate(
+ Env & env
+ , Cond const & cond
+ , Cases const & cases
+ , mpl::int_<PHOENIX_ITERATION> size
+ , mpl::false_
+ ) const
+ {
+ BOOST_PP_REPEAT(
+ PHOENIX_ITERATION
+ , PHOENIX_SWITCH_EVAL_TYPEDEF_R
+ , PHOENIX_ITERATION
+ )
+ switch(eval(cond, env))
+ {
+ BOOST_PP_REPEAT(PHOENIX_ITERATION, PHOENIX_SWITCH_EVAL_R, _)
+ }
+ }
 
- template <typename Cond, typename Cases>
- struct make_switch<Cond, Cases, PHOENIX_ITERATION>
- {
-#define CASE_TYPEDEF(_,n,__) \
- typedef typename result_of::case_compound<Cases, mpl::int_< n > >::type BOOST_PP_CAT(case, n);
- BOOST_PP_REPEAT(PHOENIX_ITERATION, CASE_TYPEDEF, _)
-
- typedef
- compose<
- switch_eval
- , Cond
- , BOOST_PP_ENUM_PARAMS(PHOENIX_ITERATION, case)
- >
- composite_type;
-
- typedef typename composite_type::type type;
-
- type const
- operator()( Cond const& cond, Cases const& cases) const
- {
- return composite_type()(
- cond,
-#define CASE_COMPOUND(_,n,__)\
- BOOST_PP_COMMA_IF(n) case_compound_c< n >(cases)
- BOOST_PP_REPEAT(PHOENIX_ITERATION, CASE_COMPOUND, _));
- }
- };
-
-#undef CASE_TYPEDEF
-#undef CASE_COMPOUND
+ template <typename Env, typename Cond, typename Cases>
+ result_type
+ evaluate(
+ Env & env
+ , Cond const & cond
+ , Cases const & cases
+ , mpl::int_<PHOENIX_ITERATION> size
+ , mpl::true_
+ ) const
+ {
+ BOOST_PP_REPEAT(
+ BOOST_PP_DEC(PHOENIX_ITERATION)
+ , PHOENIX_SWITCH_EVAL_TYPEDEF_R
+ , PHOENIX_ITERATION
+ )
+ mpl::int_<BOOST_PP_DEC(PHOENIX_ITERATION)>
+ BOOST_PP_CAT(idx, BOOST_PP_DEC(PHOENIX_ITERATION));
+ switch(eval(cond, env))
+ {
+ BOOST_PP_REPEAT(
+ BOOST_PP_DEC(PHOENIX_ITERATION)
+ , PHOENIX_SWITCH_EVAL_R, _
+ )
+ default:
+ eval(
+ proto::child_c<0>(
+ detail::switch_grammar()(
+ cases
+ , BOOST_PP_CAT(
+ idx
+ , BOOST_PP_DEC(PHOENIX_ITERATION)
+ )
+ , size
+ )
+ )
+ , env
+ );
+ }
+ }
 
 #endif
 

Added: sandbox/SOC/2010/phoenix3/boost/phoenix/statement/detail/try_catch_eval.hpp
==============================================================================
--- (empty file)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/statement/detail/try_catch_eval.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -0,0 +1,86 @@
+/*==============================================================================
+ Copyright (c) 2005-2010 Joel de Guzman
+ Copyright (c) 2010 Thomas Heller
+
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+==============================================================================*/
+#if !PHOENIX_IS_ITERATING
+
+#ifndef PHOENIX_STATEMENT_DETAIL_TRY_CATCH_EVAL_HPP
+#define PHOENIX_STATEMENT_DETAIL_TRY_CATCH_EVAL_HPP
+
+#include <boost/phoenix/support/iterate.hpp>
+
+ #define PHOENIX_TRY_CATCH_EVAL_R(Z, N, DATA) \
+ catch( \
+ typename proto::result_of::value< \
+ typename proto::result_of::child_c< \
+ BOOST_PP_CAT(A, N) \
+ , 0 \
+ >::type \
+ >::type::type & \
+ ) \
+ { \
+ eval(proto::child_c<1>(BOOST_PP_CAT(a, N)), env); \
+ } \
+ /**/
+
+
+#define PHOENIX_ITERATION_PARAMS \
+ (3, (1, PHOENIX_CATCH_LIMIT, \
+ <boost/phoenix/statement/detail/try_catch_eval.hpp>))
+#include PHOENIX_ITERATE()
+
+ #undef PHOENIX_TRY_CATCH_EVAL_R
+
+#endif
+
+#else
+
+ template <typename Env, typename Try, PHOENIX_typename_A>
+ typename boost::enable_if<
+ proto::matches<
+ BOOST_PP_CAT(A, BOOST_PP_DEC(PHOENIX_ITERATION))
+ , rule::catch_
+ >
+ , result_type
+ >::type
+ operator()(Env & env, Try const & try_, PHOENIX_A_const_ref_a) const
+ {
+ try
+ {
+ eval(proto::child_c<0>(try_), env);
+ }
+ BOOST_PP_REPEAT(PHOENIX_ITERATION, PHOENIX_TRY_CATCH_EVAL_R, _)
+ }
+
+ template <typename Env, typename Try, PHOENIX_typename_A>
+ typename boost::disable_if<
+ proto::matches<
+ BOOST_PP_CAT(A, BOOST_PP_DEC(PHOENIX_ITERATION))
+ , rule::catch_
+ >
+ , result_type
+ >::type
+ operator()(Env & env, Try const & try_, PHOENIX_A_const_ref_a) const
+ {
+ try
+ {
+ eval(proto::child_c<0>(try_), env);
+ }
+ BOOST_PP_REPEAT(
+ BOOST_PP_DEC(PHOENIX_ITERATION)
+ , PHOENIX_TRY_CATCH_EVAL_R, _
+ )
+ catch(...)
+ {
+ eval(
+ proto::child_c<0>(
+ BOOST_PP_CAT(a, BOOST_PP_DEC(PHOENIX_ITERATION))
+ )
+ , env);
+ }
+ }
+
+#endif

Added: sandbox/SOC/2010/phoenix3/boost/phoenix/statement/detail/try_catch_expression.hpp
==============================================================================
--- (empty file)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/statement/detail/try_catch_expression.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -0,0 +1,34 @@
+/*==============================================================================
+ Copyright (c) 2005-2010 Joel de Guzman
+ Copyright (c) 2010 Thomas Heller
+
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+==============================================================================*/
+#if !PHOENIX_IS_ITERATING
+
+#ifndef PHOENIX_STATEMENT_DETAIL_TRY_CATCH_EXPRESSION_HPP
+#define PHOENIX_STATEMENT_DETAIL_TRY_CATCH_EXPRESSION_HPP
+
+#include <boost/phoenix/support/iterate.hpp>
+
+#define PHOENIX_ITERATION_PARAMS \
+ (3, (0, PHOENIX_CATCH_LIMIT, \
+ <boost/phoenix/statement/detail/try_catch_expression.hpp>))
+#include PHOENIX_ITERATE()
+
+#endif
+
+#else
+
+ template <typename Try BOOST_PP_COMMA_IF(PHOENIX_ITERATION) PHOENIX_typename_A>
+ struct try_catch<Try BOOST_PP_COMMA_IF(PHOENIX_ITERATION) PHOENIX_A>
+ : expr_ext<
+ try_catch_actor
+ , tag::try_catch
+ , Try
+ BOOST_PP_COMMA_IF(PHOENIX_ITERATION) PHOENIX_A>
+ {};
+ /**/
+
+#endif

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/statement/do_while.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/statement/do_while.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/statement/do_while.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -70,7 +70,7 @@
         }
     };
 
- do_gen const do_ = do_gen();
+ do_gen const do_ = {};
 
 }}
 

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/statement/for.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/statement/for.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/statement/for.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -66,7 +66,10 @@
         typename expression::for_<Init, Cond, Step, Do>::type const
         operator[](Do const& do_) const
         {
- return expression::for_<Init, Cond, Step, Do>::make(init, cond, step, do_);
+ return
+ expression::
+ for_<Init, Cond, Step, Do>::
+ make(init, cond, step, do_);
         }
 
         Init const& init;

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/statement/if.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/statement/if.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/statement/if.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -36,7 +36,7 @@
     )
     
     PHOENIX_DEFINE_EXPRESSION(
- if_else_
+ if_else
       , (meta_grammar) // Cond
         (meta_grammar) // Then
         (meta_grammar) // Else
@@ -86,7 +86,7 @@
     {};
     
     template <typename Dummy>
- struct default_actions::when<rule::if_else_, Dummy>
+ struct default_actions::when<rule::if_else, Dummy>
         : proto::call<
             if_else_eval(
                 _env
@@ -107,10 +107,10 @@
             , then( then ) {}
 
         template<typename Else>
- typename expression::if_else_<Cond, Then, Else>::type const
+ typename expression::if_else<Cond, Then, Else>::type const
         operator[](Else const & else_) const
         {
- return expression::if_else_<Cond, Then, Else>::make(cond, then, else_);
+ return expression::if_else<Cond, Then, Else>::make(cond, then, else_);
         }
 
         Cond const & cond;

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/statement/switch.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/statement/switch.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/statement/switch.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -180,92 +180,8 @@
         }
 
         private:
- #define PHOENIX_SWITCH_EVAL_TYPEDEF_R(Z, N, DATA) \
- typedef \
- typename boost::result_of< \
- detail::switch_grammar( \
- Cases \
- , mpl::int_<N> \
- , mpl::int_<DATA> \
- ) \
- >::type \
- BOOST_PP_CAT(case, N); \
- typedef \
- typename proto::result_of::value< \
- typename proto::result_of::child_c< \
- BOOST_PP_CAT(case, N) \
- , 0 \
- >::type \
- >::type \
- BOOST_PP_CAT(case_label, N); \
- mpl::int_<N> BOOST_PP_CAT(idx, N); \
- /**/
-
- #define PHOENIX_SWITCH_EVAL_R(Z, N, DATA) \
- case BOOST_PP_CAT(case_label, N)::value : \
- eval( \
- proto::child_c<1>( \
- detail::switch_grammar()( \
- cases, BOOST_PP_CAT(idx, N), size \
- ) \
- ) \
- , env \
- ); \
- break;
- /**/
-
- #define PHOENIX_SWITCH_EVAL(Z, N, DATA) \
- template <typename Env, typename Cond, typename Cases> \
- result_type \
- evaluate( \
- Env & env \
- , Cond const & cond \
- , Cases const & cases \
- , mpl::int_<N> size \
- , mpl::false_ \
- ) const \
- { \
- BOOST_PP_REPEAT(N, PHOENIX_SWITCH_EVAL_TYPEDEF_R, N) \
- switch(eval(cond, env)) \
- { \
- BOOST_PP_REPEAT(N, PHOENIX_SWITCH_EVAL_R, _) \
- } \
- } \
- \
- template <typename Env, typename Cond, typename Cases> \
- result_type \
- evaluate( \
- Env & env \
- , Cond const & cond \
- , Cases const & cases \
- , mpl::int_<N> size \
- , mpl::true_ \
- ) const \
- { \
- BOOST_PP_REPEAT( \
- BOOST_PP_DEC(N) \
- , PHOENIX_SWITCH_EVAL_TYPEDEF_R \
- , N \
- ) \
- mpl::int_<BOOST_PP_DEC(N)> BOOST_PP_CAT(idx, BOOST_PP_DEC(N)); \
- switch(eval(cond, env)) \
- { \
- BOOST_PP_REPEAT(BOOST_PP_DEC(N), PHOENIX_SWITCH_EVAL_R, _) \
- default: \
- eval( \
- proto::child_c<0>( \
- detail::switch_grammar()( \
- cases \
- , BOOST_PP_CAT(idx, BOOST_PP_DEC(N)) \
- , size \
- ) \
- ) \
- , env \
- ); \
- } \
- } \
- /**/
- BOOST_PP_REPEAT_FROM_TO(0, PHOENIX_LIMIT, PHOENIX_SWITCH_EVAL, _)
+ // Bring in the evaluation functions
+ #include <boost/phoenix/statement/detail/switch.hpp>
     };
     
     template <typename Dummy>

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/statement/try_catch.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/statement/try_catch.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/statement/try_catch.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -12,7 +12,6 @@
 
 #include <boost/phoenix/core/expression.hpp>
 #include <boost/phoenix/core/unpack.hpp>
-#include <boost/phoenix/support/iterate.hpp>
 
 namespace boost { namespace phoenix
 {
@@ -41,19 +40,8 @@
>
         struct try_catch;
 
- #define PHOENIX_TRY_CATCH_EXPRESSION(Z, N, DATA) \
- template <typename Try BOOST_PP_COMMA_IF(N) PHOENIX_typename_A(N)> \
- struct try_catch<Try BOOST_PP_COMMA_IF(N) PHOENIX_A(N)> \
- : expr_ext< \
- try_catch_actor \
- , tag::try_catch \
- , Try \
- BOOST_PP_COMMA_IF(N) PHOENIX_A(N)> \
- {}; \
- /**/
-
- BOOST_PP_REPEAT(PHOENIX_CATCH_LIMIT, PHOENIX_TRY_CATCH_EXPRESSION, _)
- #undef PHOENIX_TRY_CATCH_EXPRESSION
+ // bring in the expression definitions
+ #include <boost/phoenix/statement/detail/try_catch_expression.hpp>
 
         template <typename A0, typename A1>
         struct catch_
@@ -109,62 +97,8 @@
     {
         typedef void result_type;
 
- #define PHOENIX_TRY_CATCH_EVAL_R(Z, N, DATA) \
- catch( \
- typename proto::result_of::value< \
- typename proto::result_of::child_c< \
- BOOST_PP_CAT(A, N) \
- , 0 \
- >::type \
- >::type::type & \
- ) \
- { \
- eval(proto::child_c<1>(BOOST_PP_CAT(a, N)), env); \
- } \
- /**/
-
- #define PHOENIX_TRY_CATCH_EVAL(Z, N, DATA) \
- template <typename Env, typename Try, PHOENIX_typename_A(N)> \
- typename boost::enable_if< \
- proto::matches<BOOST_PP_CAT(A, BOOST_PP_DEC(N)), rule::catch_> \
- , result_type \
- >::type \
- operator()(Env & env, Try const & try_, PHOENIX_A_const_ref_a(N)) const \
- { \
- try \
- { \
- eval(proto::child_c<0>(try_), env); \
- } \
- BOOST_PP_REPEAT(N, PHOENIX_TRY_CATCH_EVAL_R, _) \
- } \
- \
- template <typename Env, typename Try, PHOENIX_typename_A(N)> \
- typename boost::disable_if< \
- proto::matches<BOOST_PP_CAT(A, BOOST_PP_DEC(N)), rule::catch_> \
- , result_type \
- >::type \
- operator()(Env & env, Try const & try_, PHOENIX_A_const_ref_a(N)) const \
- { \
- try \
- { \
- eval(proto::child_c<0>(try_), env); \
- } \
- BOOST_PP_REPEAT(BOOST_PP_DEC(N), PHOENIX_TRY_CATCH_EVAL_R, _) \
- catch(...) \
- { \
- eval(proto::child_c<0>(BOOST_PP_CAT(a, BOOST_PP_DEC(N))), env); \
- } \
- } \
- /**/
-
- BOOST_PP_REPEAT_FROM_TO(
- 1
- , PHOENIX_CATCH_LIMIT
- , PHOENIX_TRY_CATCH_EVAL
- , _
- )
- #undef PHOENIX_TRY_CATCH_EVAL
- #undef PHOENIX_TRY_CATCH_EVAL_R
+ // bring in the operator overloads
+ #include <boost/phoenix/statement/detail/try_catch_eval.hpp>
     };
 
     template <typename Dummy>
@@ -250,59 +184,6 @@
                     );
             }
         };
-
- #define PHOENIX_CATCH_PUSH_BACK_R0(Z, N, DATA) \
- BOOST_PP_COMMA_IF(N) \
- typename proto::result_of::child_c<TryCatch, N>::type \
- /**/
-
- #define PHOENIX_CATCH_PUSH_BACK_R1(Z, N, DATA) \
- BOOST_PP_COMMA_IF(N) proto::child_c<N>(try_catch) \
- /**/
-
- #define PHOENIX_CATCH_PUSH_BACK(Z, N, DATA) \
- template <typename TryCatch, typename Exception, typename Expr> \
- struct catch_push_back<TryCatch, Exception, Expr, N> \
- { \
- typedef \
- typename proto::result_of::make_expr< \
- tag::catch_ \
- , default_domain_with_basic_expr \
- , catch_exception<Exception> \
- , Expr \
- >::type \
- catch_expr; \
- \
- typedef expression::try_catch< \
- BOOST_PP_REPEAT(N, PHOENIX_CATCH_PUSH_BACK_R0, _) \
- , catch_expr> gen_type; \
- typedef typename gen_type::type type; \
- \
- static type \
- make( \
- TryCatch const& try_catch \
- , Expr const& catch_ \
- ) \
- { \
- return \
- gen_type::make( \
- BOOST_PP_REPEAT(N, PHOENIX_CATCH_PUSH_BACK_R1, _) \
- , proto::make_expr< \
- tag::catch_ \
- , default_domain_with_basic_expr \
- >(catch_exception<Exception>(), catch_) \
- ); \
- } \
- }; \
- /**/
-
- BOOST_PP_REPEAT_FROM_TO(
- 2
- , PHOENIX_CATCH_LIMIT
- , PHOENIX_CATCH_PUSH_BACK
- , _
- )
- #undef PHOENIX_CATCH_PUSH_BACK
         
         template <
             typename TryCatch
@@ -342,51 +223,7 @@
                     );
             }
         };
-
- #define PHOENIX_CATCH_ALL_PUSH_BACK(Z, N, DATA) \
- template <typename TryCatch, typename Expr> \
- struct catch_all_push_back<TryCatch, Expr, N> \
- { \
- typedef \
- typename proto::result_of::make_expr< \
- tag::catch_all \
- , default_domain_with_basic_expr \
- , Expr \
- >::type \
- catch_expr; \
- \
- typedef expression::try_catch< \
- BOOST_PP_REPEAT(N, PHOENIX_CATCH_PUSH_BACK_R0, _) \
- , catch_expr> gen_type; \
- typedef typename gen_type::type type; \
- \
- static type \
- make( \
- TryCatch const& try_catch \
- , Expr const& catch_ \
- ) \
- { \
- return \
- gen_type::make( \
- BOOST_PP_REPEAT(N, PHOENIX_CATCH_PUSH_BACK_R1, _) \
- , proto::make_expr< \
- tag::catch_all \
- , default_domain_with_basic_expr \
- >(catch_) \
- ); \
- } \
- }; \
- /**/
-
- BOOST_PP_REPEAT_FROM_TO(
- 2
- , PHOENIX_CATCH_LIMIT
- , PHOENIX_CATCH_ALL_PUSH_BACK
- , _
- )
- #undef PHOENIX_CATCH_ALL_PUSH_BACK
- #undef PHOENIX_CATCH_PUSH_BACK_R0
- #undef PHOENIX_CATCH_PUSH_BACK_R1
+ #include <boost/phoenix/statement/detail/catch_push_back.hpp>
     }
 
     template <typename TryCatch, typename Exception>

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/stl/algorithm/iteration.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/stl/algorithm/iteration.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/stl/algorithm/iteration.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -20,76 +20,76 @@
 #include <boost/phoenix/function/function.hpp>
 
 namespace boost { namespace phoenix {
-namespace impl
-{
- struct for_each
+ namespace impl
     {
- template <typename Sig>
- struct result;
-
- template<typename This, class R, class F>
- struct result<This(R&, F)>
- : result<This(R&, F const &)>
- {};
-
- template<typename This, class R, class F>
- struct result<This(R&, F &)>
+ struct for_each
         {
- typedef F type;
- };
+ template <typename Sig>
+ struct result;
 
- template<class R, class F>
- F operator()(R& r, F fn) const
- {
- return std::for_each(detail::begin_(r), detail::end_(r), fn);
- }
- };
-
- struct accumulate
- {
- template <typename Sig>
- struct result;
-
- template<typename This, class R, class I>
- struct result<This(R&, I)>
- : result<This(R&, I const &)>
- {};
-
- template<typename This, class R, class I>
- struct result<This(R&, I &)>
- {
- typedef I type;
+ template<typename This, class R, class F>
+ struct result<This(R&, F)>
+ : result<This(R&, F const &)>
+ {};
+
+ template<typename This, class R, class F>
+ struct result<This(R&, F &)>
+ {
+ typedef F type;
+ };
+
+ template<class R, class F>
+ F operator()(R& r, F fn) const
+ {
+ return std::for_each(detail::begin_(r), detail::end_(r), fn);
+ }
         };
-
- template<typename This, class R, class I, class C>
- struct result<This(R&, I, C)>
- : result<This(R&, I const &, C)>
- {};
 
- template<typename This, class R, class I, class C>
- struct result<This(R&, I &, C)>
+ struct accumulate
         {
- typedef I type;
+ template <typename Sig>
+ struct result;
+
+ template<typename This, class R, class I>
+ struct result<This(R&, I)>
+ : result<This(R&, I const &)>
+ {};
+
+ template<typename This, class R, class I>
+ struct result<This(R&, I &)>
+ {
+ typedef I type;
+ };
+
+ template<typename This, class R, class I, class C>
+ struct result<This(R&, I, C)>
+ : result<This(R&, I const &, C)>
+ {};
+
+ template<typename This, class R, class I, class C>
+ struct result<This(R&, I &, C)>
+ {
+ typedef I type;
+ };
+
+ template<class R, class I>
+ I
+ operator()(R& r, I i) const
+ {
+ return std::accumulate(detail::begin_(r), detail::end_(r), i);
+ }
+
+ template<class R, class I, class C>
+ I
+ operator()(R& r, I i, C c) const
+ {
+ return std::accumulate(detail::begin_(r), detail::end_(r), i, c);
+ }
         };
+ }
 
- template<class R, class I>
- I
- operator()(R& r, I i) const
- {
- return std::accumulate(detail::begin_(r), detail::end_(r), i);
- }
-
- template<class R, class I, class C>
- I
- operator()(R& r, I i, C c) const
- {
- return std::accumulate(detail::begin_(r), detail::end_(r), i, c);
- }
- };
-}
-
-function<impl::for_each> const for_each = impl::for_each();
-function<impl::accumulate> const accumulate = impl::accumulate();
+ function<impl::for_each> const for_each = impl::for_each();
+ function<impl::accumulate> const accumulate = impl::accumulate();
 
 }}
 

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/stl/algorithm/querying.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/stl/algorithm/querying.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/stl/algorithm/querying.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -29,614 +29,614 @@
 #include <boost/range/difference_type.hpp>
 
 namespace boost { namespace phoenix {
-namespace impl
-{
- struct find
+ namespace impl
     {
- template <typename Sig>
- struct result;
-
- template <typename This, class R, class T>
- struct result<This(R&, T const&)>
- : range_result_iterator<R>
- {};
-
- template<class R, class T>
- typename range_result_iterator<R>::type
- execute(R& r, T const& x, mpl::true_) const
+ struct find
         {
- return r.find(x);
- }
+ template <typename Sig>
+ struct result;
 
- template<class R, class T>
- typename range_result_iterator<R>::type
- execute(R& r, T const& x, mpl::false_) const
- {
- return std::find(detail::begin_(r), detail::end_(r), x);
- }
+ template <typename This, class R, class T>
+ struct result<This(R&, T const&)>
+ : range_result_iterator<R>
+ {};
+
+ template<class R, class T>
+ typename range_result_iterator<R>::type
+ execute(R& r, T const& x, mpl::true_) const
+ {
+ return r.find(x);
+ }
+
+ template<class R, class T>
+ typename range_result_iterator<R>::type
+ execute(R& r, T const& x, mpl::false_) const
+ {
+ return std::find(detail::begin_(r), detail::end_(r), x);
+ }
+
+ template<class R, class T>
+ typename range_result_iterator<R>::type
+ operator()(R& r, T const& x) const
+ {
+ return execute(r, x, has_find<R>());
+ }
+ };
 
- template<class R, class T>
- typename range_result_iterator<R>::type
- operator()(R& r, T const& x) const
+ struct find_if
         {
- return execute(r, x, has_find<R>());
- }
- };
+ template <typename Sig>
+ struct result;
 
- struct find_if
- {
- template <typename Sig>
- struct result;
+ template <typename This, class R, class P>
+ struct result<This(R&, P)>
+ : range_result_iterator<R>
+ {};
+
+ template<class R, class P>
+ typename range_result_iterator<R>::type
+ operator()(R& r, P p) const
+ {
+ return std::find_if(detail::begin_(r), detail::end_(r), p);
+ }
+ };
 
- template <typename This, class R, class P>
- struct result<This(R&, P)>
- : range_result_iterator<R>
- {};
-
- template<class R, class P>
- typename range_result_iterator<R>::type
- operator()(R& r, P p) const
+ struct find_end
         {
- return std::find_if(detail::begin_(r), detail::end_(r), p);
- }
- };
-
- struct find_end
- {
- template <typename Sig>
- struct result;
-
- template<typename This, class R, class R2>
- struct result<This(R&, R2&)>
- : range_result_iterator<R>
- {};
-
- template<typename This, class R, class R2, class P>
- struct result<This(R&, R2&, P)>
- : range_result_iterator<R>
- {};
-
- template<class R, class R2>
- typename range_result_iterator<R>::type
- operator()(R& r, R2& r2) const
- {
- return std::find_end(
- detail::begin_(r)
- , detail::end_(r)
- , detail::begin_(r2)
- , detail::end_(r2)
- );
- }
-
- template<class R, class R2, class P>
- typename range_result_iterator<R>::type
- operator()(R& r, R2& r2, P p) const
- {
- return std::find_end(
- detail::begin_(r)
- , detail::end_(r)
- , detail::begin_(r2)
- , detail::end_(r2)
- , p
- );
- }
- };
+ template <typename Sig>
+ struct result;
 
- struct find_first_of
- {
- template <typename Sig>
- struct result;
-
- template<typename This, class R, class R2>
- struct result<This(R&, R2&)>
- : range_result_iterator<R>
- {};
-
- template<typename This, class R, class R2, class P>
- struct result<This(R&, R2&, P)>
- : range_result_iterator<R>
- {};
-
- template<class R, class R2>
- typename range_result_iterator<R>::type
- operator()(R& r, R2& r2) const
- {
- return std::find_first_of(
- detail::begin_(r)
- , detail::end_(r)
- , detail::begin_(r2)
- , detail::end_(r2)
- );
- }
-
- template<class R, class R2, class P>
- typename range_result_iterator<R>::type
- operator()(R& r, R2& r2, P p) const
- {
- return std::find_first_of(
- detail::begin_(r)
- , detail::end_(r)
- , detail::begin_(r2)
- , detail::end_(r2)
- , p
- );
- }
- };
-
- struct adjacent_find
- {
- template <typename Sig>
- struct result;
-
- template <typename This, class R>
- struct result<This(R&)>
- : range_result_iterator<R>
- {};
-
- template <typename This, class R, class P>
- struct result<This(R&, P)>
- : range_result_iterator<R>
- {};
-
- template<class R>
- typename range_result_iterator<R>::type
- operator()(R& r) const
- {
- return std::adjacent_find(detail::begin_(r), detail::end_(r));
- }
+ template<typename This, class R, class R2>
+ struct result<This(R&, R2&)>
+ : range_result_iterator<R>
+ {};
+
+ template<typename This, class R, class R2, class P>
+ struct result<This(R&, R2&, P)>
+ : range_result_iterator<R>
+ {};
+
+ template<class R, class R2>
+ typename range_result_iterator<R>::type
+ operator()(R& r, R2& r2) const
+ {
+ return std::find_end(
+ detail::begin_(r)
+ , detail::end_(r)
+ , detail::begin_(r2)
+ , detail::end_(r2)
+ );
+ }
+
+ template<class R, class R2, class P>
+ typename range_result_iterator<R>::type
+ operator()(R& r, R2& r2, P p) const
+ {
+ return std::find_end(
+ detail::begin_(r)
+ , detail::end_(r)
+ , detail::begin_(r2)
+ , detail::end_(r2)
+ , p
+ );
+ }
+ };
 
- template<class R, class P>
- typename range_result_iterator<R>::type
- operator()(R& r, P p) const
+ struct find_first_of
         {
- return std::adjacent_find(detail::begin_(r), detail::end_(r), p);
- }
- };
+ template <typename Sig>
+ struct result;
 
- struct count
- {
- template <typename Sig>
- struct result;
-
- template <typename This, class R, class T>
- struct result<This(R&, T const&)>
- : range_difference<R>
- {};
-
- template<class R, class T>
- typename range_difference<R>::type
- operator()(R& r, T const& x) const
- {
- return std::count(detail::begin_(r), detail::end_(r), x);
- }
- };
-
- struct count_if
- {
- template <typename Sig>
- struct result;
+ template<typename This, class R, class R2>
+ struct result<This(R&, R2&)>
+ : range_result_iterator<R>
+ {};
+
+ template<typename This, class R, class R2, class P>
+ struct result<This(R&, R2&, P)>
+ : range_result_iterator<R>
+ {};
+
+ template<class R, class R2>
+ typename range_result_iterator<R>::type
+ operator()(R& r, R2& r2) const
+ {
+ return std::find_first_of(
+ detail::begin_(r)
+ , detail::end_(r)
+ , detail::begin_(r2)
+ , detail::end_(r2)
+ );
+ }
+
+ template<class R, class R2, class P>
+ typename range_result_iterator<R>::type
+ operator()(R& r, R2& r2, P p) const
+ {
+ return std::find_first_of(
+ detail::begin_(r)
+ , detail::end_(r)
+ , detail::begin_(r2)
+ , detail::end_(r2)
+ , p
+ );
+ }
+ };
 
- template <typename This, class R, class P>
- struct result<This(R&, P)>
- : range_difference<R>
- {};
-
- template<class R, class P>
- typename range_difference<R>::type
- operator()(R& r, P p) const
+ struct adjacent_find
         {
- return std::count_if(detail::begin_(r), detail::end_(r), p);
- }
- };
+ template <typename Sig>
+ struct result;
 
- struct distance
- {
- template <typename Sig>
- struct result;
+ template <typename This, class R>
+ struct result<This(R&)>
+ : range_result_iterator<R>
+ {};
+
+ template <typename This, class R, class P>
+ struct result<This(R&, P)>
+ : range_result_iterator<R>
+ {};
+
+ template<class R>
+ typename range_result_iterator<R>::type
+ operator()(R& r) const
+ {
+ return std::adjacent_find(detail::begin_(r), detail::end_(r));
+ }
+
+ template<class R, class P>
+ typename range_result_iterator<R>::type
+ operator()(R& r, P p) const
+ {
+ return std::adjacent_find(detail::begin_(r), detail::end_(r), p);
+ }
+ };
 
- template <typename This, class R>
- struct result<This(R&)>
- : range_difference<R>
- {};
-
- template<class R>
- typename range_difference<R>::type
- operator()(R& r) const
+ struct count
         {
- return std::distance(detail::begin_(r), detail::end_(r));
- }
- };
+ template <typename Sig>
+ struct result;
 
- struct equal
- {
- typedef bool result_type;
-
- template<class R, class I>
- bool operator()(R& r, I i) const
- {
- return std::equal(detail::begin_(r), detail::end_(r), i);
- }
+ template <typename This, class R, class T>
+ struct result<This(R&, T const&)>
+ : range_difference<R>
+ {};
+
+ template<class R, class T>
+ typename range_difference<R>::type
+ operator()(R& r, T const& x) const
+ {
+ return std::count(detail::begin_(r), detail::end_(r), x);
+ }
+ };
 
- template<class R, class I, class P>
- bool operator()(R& r, I i, P p) const
+ struct count_if
         {
- return std::equal(detail::begin_(r), detail::end_(r), i, p);
- }
- };
-
- struct search
- {
- template <typename Sig>
- struct result;
+ template <typename Sig>
+ struct result;
 
- template <typename This, class R, typename R2>
- struct result<This(R&, R2&)>
- : range_result_iterator<R>
- {};
-
- template <typename This, class R, typename R2, class P>
- struct result<This(R&, R2&, P)>
- : range_result_iterator<R>
- {};
-
- template<class R, class R2>
- typename range_result_iterator<R>::type
- operator()(R& r, R2& r2) const
- {
- return std::search(
- detail::begin_(r)
- , detail::end_(r)
- , detail::begin_(r2)
- , detail::end_(r2)
- );
- }
-
- template<class R, class R2, class P>
- typename range_result_iterator<R>::type
- operator()(R& r, R2& r2, P p) const
- {
- return std::search(
- detail::begin_(r)
- , detail::end_(r)
- , detail::begin_(r2)
- , detail::end_(r2)
- , p
- );
- }
- };
-
- struct lower_bound
- {
- template <typename Sig>
- struct result;
-
- template <typename This, class R, class T>
- struct result<This(R&, T const&)>
- : range_result_iterator<R>
- {};
-
- template <typename This, class R, class T, class C>
- struct result<This(R&, T const&, C)>
- : range_result_iterator<R>
- {};
-
- template<class R, class T>
- typename range_result_iterator<R>::type
- execute(R& r, T const& val, mpl::true_) const
- {
- return r.lower_bound(val);
- }
+ template <typename This, class R, class P>
+ struct result<This(R&, P)>
+ : range_difference<R>
+ {};
+
+ template<class R, class P>
+ typename range_difference<R>::type
+ operator()(R& r, P p) const
+ {
+ return std::count_if(detail::begin_(r), detail::end_(r), p);
+ }
+ };
 
- template<class R, class T>
- typename range_result_iterator<R>::type
- execute(R& r, T const& val, mpl::false_) const
+ struct distance
         {
- return std::lower_bound(detail::begin_(r), detail::end_(r), val);
- }
+ template <typename Sig>
+ struct result;
 
- template<class R, class T>
- typename range_result_iterator<R>::type
- operator()(R& r, T const& val) const
- {
- return execute(r, val, has_lower_bound<R>());
- }
+ template <typename This, class R>
+ struct result<This(R&)>
+ : range_difference<R>
+ {};
+
+ template<class R>
+ typename range_difference<R>::type
+ operator()(R& r) const
+ {
+ return std::distance(detail::begin_(r), detail::end_(r));
+ }
+ };
 
- template<class R, class T, class C>
- typename range_result_iterator<R>::type
- operator()(R& r, T const& val, C c) const
+ struct equal
         {
- return std::lower_bound(detail::begin_(r), detail::end_(r), val, c);
- }
- };
+ typedef bool result_type;
 
- struct upper_bound
- {
- template <typename Sig>
- struct result;
+ template<class R, class I>
+ bool operator()(R& r, I i) const
+ {
+ return std::equal(detail::begin_(r), detail::end_(r), i);
+ }
+
+ template<class R, class I, class P>
+ bool operator()(R& r, I i, P p) const
+ {
+ return std::equal(detail::begin_(r), detail::end_(r), i, p);
+ }
+ };
 
- template <typename This, class R, class T>
- struct result<This(R&, T const&)>
- : range_result_iterator<R>
- {};
-
- template <typename This, class R, class T, class C>
- struct result<This(R&, T const&, C)>
- : range_result_iterator<R>
- {};
-
- template<class R, class T>
- typename range_result_iterator<R>::type
- execute(R& r, T const& val, mpl::true_) const
+ struct search
         {
- return r.upper_bound(val);
- }
+ template <typename Sig>
+ struct result;
 
- template<class R, class T>
- typename range_result_iterator<R>::type
- execute(R& r, T const& val, mpl::false_) const
- {
- return std::upper_bound(detail::begin_(r), detail::end_(r), val);
- }
+ template <typename This, class R, typename R2>
+ struct result<This(R&, R2&)>
+ : range_result_iterator<R>
+ {};
+
+ template <typename This, class R, typename R2, class P>
+ struct result<This(R&, R2&, P)>
+ : range_result_iterator<R>
+ {};
+
+ template<class R, class R2>
+ typename range_result_iterator<R>::type
+ operator()(R& r, R2& r2) const
+ {
+ return std::search(
+ detail::begin_(r)
+ , detail::end_(r)
+ , detail::begin_(r2)
+ , detail::end_(r2)
+ );
+ }
+
+ template<class R, class R2, class P>
+ typename range_result_iterator<R>::type
+ operator()(R& r, R2& r2, P p) const
+ {
+ return std::search(
+ detail::begin_(r)
+ , detail::end_(r)
+ , detail::begin_(r2)
+ , detail::end_(r2)
+ , p
+ );
+ }
+ };
 
- template<class R, class T>
- typename range_result_iterator<R>::type
- operator()(R& r, T const& val) const
+ struct lower_bound
         {
- return execute(r, val, has_upper_bound<R>());
- }
+ template <typename Sig>
+ struct result;
 
- template<class R, class T, class C>
- typename range_result_iterator<R>::type
- operator()(R& r, T const& val, C c) const
- {
- return std::upper_bound(detail::begin_(r), detail::end_(r), val, c);
- }
- };
-
- namespace result_of
- {
- template <typename R, typename T, typename C = void>
- struct equal_range
- {
- typedef std::pair<
- typename range_result_iterator<R>::type
- , typename range_result_iterator<R>::type
- > type;
+ template <typename This, class R, class T>
+ struct result<This(R&, T const&)>
+ : range_result_iterator<R>
+ {};
+
+ template <typename This, class R, class T, class C>
+ struct result<This(R&, T const&, C)>
+ : range_result_iterator<R>
+ {};
+
+ template<class R, class T>
+ typename range_result_iterator<R>::type
+ execute(R& r, T const& val, mpl::true_) const
+ {
+ return r.lower_bound(val);
+ }
+
+ template<class R, class T>
+ typename range_result_iterator<R>::type
+ execute(R& r, T const& val, mpl::false_) const
+ {
+ return std::lower_bound(detail::begin_(r), detail::end_(r), val);
+ }
+
+ template<class R, class T>
+ typename range_result_iterator<R>::type
+ operator()(R& r, T const& val) const
+ {
+ return execute(r, val, has_lower_bound<R>());
+ }
+
+ template<class R, class T, class C>
+ typename range_result_iterator<R>::type
+ operator()(R& r, T const& val, C c) const
+ {
+ return std::lower_bound(detail::begin_(r), detail::end_(r), val, c);
+ }
         };
- }
 
- struct equal_range
- {
- template <typename Sig>
- struct result;
-
- template <typename This, class R, class T>
- struct result<This(R&, T const&)>
- : result_of::equal_range<R,T>
- {};
-
- template <typename This, class R, class T, class C>
- struct result<This(R&, T const&, C)>
- : result_of::equal_range<R,T, C>
- {};
-
- template<class R, class T>
- typename result_of::equal_range<R, T>::type
- execute(R& r, T const& val, mpl::true_) const
+ struct upper_bound
         {
- return r.equal_range(val);
- }
+ template <typename Sig>
+ struct result;
 
- template<class R, class T>
- typename result_of::equal_range<R, T>::type
- execute(R& r, T const& val, mpl::false_) const
- {
- return std::equal_range(detail::begin_(r), detail::end_(r), val);
- }
+ template <typename This, class R, class T>
+ struct result<This(R&, T const&)>
+ : range_result_iterator<R>
+ {};
+
+ template <typename This, class R, class T, class C>
+ struct result<This(R&, T const&, C)>
+ : range_result_iterator<R>
+ {};
+
+ template<class R, class T>
+ typename range_result_iterator<R>::type
+ execute(R& r, T const& val, mpl::true_) const
+ {
+ return r.upper_bound(val);
+ }
+
+ template<class R, class T>
+ typename range_result_iterator<R>::type
+ execute(R& r, T const& val, mpl::false_) const
+ {
+ return std::upper_bound(detail::begin_(r), detail::end_(r), val);
+ }
+
+ template<class R, class T>
+ typename range_result_iterator<R>::type
+ operator()(R& r, T const& val) const
+ {
+ return execute(r, val, has_upper_bound<R>());
+ }
+
+ template<class R, class T, class C>
+ typename range_result_iterator<R>::type
+ operator()(R& r, T const& val, C c) const
+ {
+ return std::upper_bound(detail::begin_(r), detail::end_(r), val, c);
+ }
+ };
 
- template<class R, class T>
- typename result_of::equal_range<R, T>::type
- operator()(R& r, T const& val) const
+ namespace result_of
         {
- return execute(r, val, has_equal_range<R>());
- }
+ template <typename R, typename T, typename C = void>
+ struct equal_range
+ {
+ typedef std::pair<
+ typename range_result_iterator<R>::type
+ , typename range_result_iterator<R>::type
+ > type;
+ };
+ }
+
+ struct equal_range
+ {
+ template <typename Sig>
+ struct result;
+
+ template <typename This, class R, class T>
+ struct result<This(R&, T const&)>
+ : result_of::equal_range<R,T>
+ {};
+
+ template <typename This, class R, class T, class C>
+ struct result<This(R&, T const&, C)>
+ : result_of::equal_range<R,T, C>
+ {};
+
+ template<class R, class T>
+ typename result_of::equal_range<R, T>::type
+ execute(R& r, T const& val, mpl::true_) const
+ {
+ return r.equal_range(val);
+ }
+
+ template<class R, class T>
+ typename result_of::equal_range<R, T>::type
+ execute(R& r, T const& val, mpl::false_) const
+ {
+ return std::equal_range(detail::begin_(r), detail::end_(r), val);
+ }
+
+ template<class R, class T>
+ typename result_of::equal_range<R, T>::type
+ operator()(R& r, T const& val) const
+ {
+ return execute(r, val, has_equal_range<R>());
+ }
+
+ template<class R, class T, class C>
+ typename result_of::equal_range<R, T, C>::type
+ operator()(R& r, T const& val, C c) const
+ {
+ return std::equal_range(detail::begin_(r), detail::end_(r), val, c);
+ }
+ };
 
- template<class R, class T, class C>
- typename result_of::equal_range<R, T, C>::type
- operator()(R& r, T const& val, C c) const
+ namespace result_of
         {
- return std::equal_range(detail::begin_(r), detail::end_(r), val, c);
+ template <typename R, typename I, typename P = void>
+ struct mismatch
+ {
+ typedef std::pair<
+ typename range_result_iterator<R>::type
+ , typename detail::decay_array<I>::type
+ > type;
+ };
         }
- };
 
- namespace result_of
- {
- template <typename R, typename I, typename P = void>
         struct mismatch
         {
- typedef std::pair<
- typename range_result_iterator<R>::type
- , typename detail::decay_array<I>::type
- > type;
- };
- }
+ template <typename Sig>
+ struct result;
 
- struct mismatch
- {
- template <typename Sig>
- struct result;
-
- template<typename This, class R, class I>
- struct result<This(R&, I)>
- : result_of::mismatch<R, I>
- {};
-
- template<typename This, class R, class I, class P>
- struct result<This(R&, I, P)>
- : result_of::mismatch<R, I, P>
- {};
-
- template<class R, class I>
- typename result_of::mismatch<R, I>::type
- operator()(R& r, I i) const
- {
- return std::mismatch(detail::begin_(r), detail::end_(r), i);
- }
+ template<typename This, class R, class I>
+ struct result<This(R&, I)>
+ : result_of::mismatch<R, I>
+ {};
+
+ template<typename This, class R, class I, class P>
+ struct result<This(R&, I, P)>
+ : result_of::mismatch<R, I, P>
+ {};
+
+ template<class R, class I>
+ typename result_of::mismatch<R, I>::type
+ operator()(R& r, I i) const
+ {
+ return std::mismatch(detail::begin_(r), detail::end_(r), i);
+ }
+
+ template<class R, class I, class P>
+ typename result_of::mismatch<R, I, P>::type
+ operator()(R& r, I i, P p) const
+ {
+ return std::mismatch(detail::begin_(r), detail::end_(r), i, p);
+ }
+ };
 
- template<class R, class I, class P>
- typename result_of::mismatch<R, I, P>::type
- operator()(R& r, I i, P p) const
+ struct binary_search
         {
- return std::mismatch(detail::begin_(r), detail::end_(r), i, p);
- }
- };
-
- struct binary_search
- {
- typedef bool result_type;
+ typedef bool result_type;
 
- template<class R, class T>
- bool operator()(R& r, T const& val) const
- {
- return std::binary_search(detail::begin_(r), detail::end_(r), val);
- }
+ template<class R, class T>
+ bool operator()(R& r, T const& val) const
+ {
+ return std::binary_search(detail::begin_(r), detail::end_(r), val);
+ }
+
+ template<class R, class T, class C>
+ bool operator()(R& r, T const& val, C c) const
+ {
+ return std::binary_search(detail::begin_(r), detail::end_(r), val, c);
+ }
+ };
 
- template<class R, class T, class C>
- bool operator()(R& r, T const& val, C c) const
+ struct includes
         {
- return std::binary_search(detail::begin_(r), detail::end_(r), val, c);
- }
- };
+ typedef bool result_type;
 
- struct includes
- {
- typedef bool result_type;
+ template<class R1, class R2>
+ bool operator()(R1& r1, R2& r2) const
+ {
+ return std::includes(
+ detail::begin_(r1), detail::end_(r1)
+ , detail::begin_(r2), detail::end_(r2)
+ );
+ }
+
+ template<class R1, class R2, class C>
+ bool operator()(R1& r1, R2& r2, C c) const
+ {
+ return std::includes(
+ detail::begin_(r1), detail::end_(r1)
+ , detail::begin_(r2), detail::end_(r2)
+ , c
+ );
+ }
+ };
 
- template<class R1, class R2>
- bool operator()(R1& r1, R2& r2) const
+ struct min_element
         {
- return std::includes(
- detail::begin_(r1), detail::end_(r1)
- , detail::begin_(r2), detail::end_(r2)
- );
- }
+ template <typename Sig>
+ struct result;
+
+ template <typename This, class R>
+ struct result<This(R&)>
+ : range_result_iterator<R>
+ {};
+
+ template <typename This, class R, class P>
+ struct result<This(R&, P)>
+ : range_result_iterator<R>
+ {};
+
+ template<class R>
+ typename range_result_iterator<R>::type
+ operator()(R& r) const
+ {
+ return std::min_element(detail::begin_(r), detail::end_(r));
+ }
+
+ template<class R, class P>
+ typename range_result_iterator<R>::type
+ operator()(R& r, P p) const
+ {
+ return std::min_element(detail::begin_(r), detail::end_(r), p);
+ }
+ };
 
- template<class R1, class R2, class C>
- bool operator()(R1& r1, R2& r2, C c) const
+ struct max_element
         {
- return std::includes(
- detail::begin_(r1), detail::end_(r1)
- , detail::begin_(r2), detail::end_(r2)
- , c
- );
- }
- };
+ template <typename Sig>
+ struct result;
 
- struct min_element
- {
- template <typename Sig>
- struct result;
+ template <typename This, class R>
+ struct result<This(R&)>
+ : range_result_iterator<R>
+ {};
+
+ template <typename This, class R, class P>
+ struct result<This(R&, P)>
+ : range_result_iterator<R>
+ {};
+
+ template<class R>
+ typename range_result_iterator<R>::type
+ operator()(R& r) const
+ {
+ return std::max_element(detail::begin_(r), detail::end_(r));
+ }
         
- template <typename This, class R>
- struct result<This(R&)>
- : range_result_iterator<R>
- {};
-
- template <typename This, class R, class P>
- struct result<This(R&, P)>
- : range_result_iterator<R>
- {};
-
- template<class R>
- typename range_result_iterator<R>::type
- operator()(R& r) const
- {
- return std::min_element(detail::begin_(r), detail::end_(r));
- }
-
- template<class R, class P>
- typename range_result_iterator<R>::type
- operator()(R& r, P p) const
- {
- return std::min_element(detail::begin_(r), detail::end_(r), p);
- }
- };
-
- struct max_element
- {
- template <typename Sig>
- struct result;
+ template<class R, class P>
+ typename range_result_iterator<R>::type
+ operator()(R& r, P p) const
+ {
+ return std::max_element(detail::begin_(r), detail::end_(r), p);
+ }
+ };
 
- template <typename This, class R>
- struct result<This(R&)>
- : range_result_iterator<R>
- {};
-
- template <typename This, class R, class P>
- struct result<This(R&, P)>
- : range_result_iterator<R>
- {};
-
- template<class R>
- typename range_result_iterator<R>::type
- operator()(R& r) const
+ struct lexicographical_compare
         {
- return std::max_element(detail::begin_(r), detail::end_(r));
- }
-
- template<class R, class P>
- typename range_result_iterator<R>::type
- operator()(R& r, P p) const
- {
- return std::max_element(detail::begin_(r), detail::end_(r), p);
- }
- };
+ typedef bool result_type;
 
- struct lexicographical_compare
- {
- typedef bool result_type;
-
- template<class R1, class R2>
- bool operator()(R1& r1, R2& r2) const
- {
- return std::lexicographical_compare(
- detail::begin_(r1), detail::end_(r1)
- , detail::begin_(r2), detail::end_(r2)
- );
- }
-
- template<class R1, class R2, class P>
- bool operator()(R1& r1, R2& r2, P p) const
- {
- return std::lexicographical_compare(
- detail::begin_(r1), detail::end_(r1)
- , detail::begin_(r2), detail::end_(r2)
- , p
- );
- }
- };
+ template<class R1, class R2>
+ bool operator()(R1& r1, R2& r2) const
+ {
+ return std::lexicographical_compare(
+ detail::begin_(r1), detail::end_(r1)
+ , detail::begin_(r2), detail::end_(r2)
+ );
+ }
+
+ template<class R1, class R2, class P>
+ bool operator()(R1& r1, R2& r2, P p) const
+ {
+ return std::lexicographical_compare(
+ detail::begin_(r1), detail::end_(r1)
+ , detail::begin_(r2), detail::end_(r2)
+ , p
+ );
+ }
+ };
 
-}
+ }
 
-function<impl::find> const find = impl::find();
-function<impl::find_if> const find_if = impl::find_if();
-function<impl::find_end> const find_end = impl::find_end();
-function<impl::find_first_of> const find_first_of = impl::find_first_of();
-function<impl::adjacent_find> const adjacent_find = impl::adjacent_find();
-function<impl::count> const count = impl::count();
-function<impl::count_if> const count_if = impl::count_if();
-function<impl::distance> const distance = impl::distance();
-function<impl::equal> const equal = impl::equal();
-function<impl::search> const search = impl::search();
-function<impl::lower_bound> const lower_bound = impl::lower_bound();
-function<impl::upper_bound> const upper_bound = impl::upper_bound();
-function<impl::equal_range> const equal_range = impl::equal_range();
-function<impl::mismatch> const mismatch = impl::mismatch();
-function<impl::binary_search> const binary_search = impl::binary_search();
-function<impl::includes> const includes = impl::includes();
-function<impl::min_element> const min_element = impl::min_element();
-function<impl::max_element> const max_element = impl::max_element();
-function<impl::lexicographical_compare> const lexicographical_compare = impl::lexicographical_compare();
+ function<impl::find> const find = impl::find();
+ function<impl::find_if> const find_if = impl::find_if();
+ function<impl::find_end> const find_end = impl::find_end();
+ function<impl::find_first_of> const find_first_of = impl::find_first_of();
+ function<impl::adjacent_find> const adjacent_find = impl::adjacent_find();
+ function<impl::count> const count = impl::count();
+ function<impl::count_if> const count_if = impl::count_if();
+ function<impl::distance> const distance = impl::distance();
+ function<impl::equal> const equal = impl::equal();
+ function<impl::search> const search = impl::search();
+ function<impl::lower_bound> const lower_bound = impl::lower_bound();
+ function<impl::upper_bound> const upper_bound = impl::upper_bound();
+ function<impl::equal_range> const equal_range = impl::equal_range();
+ function<impl::mismatch> const mismatch = impl::mismatch();
+ function<impl::binary_search> const binary_search = impl::binary_search();
+ function<impl::includes> const includes = impl::includes();
+ function<impl::min_element> const min_element = impl::min_element();
+ function<impl::max_element> const max_element = impl::max_element();
+ function<impl::lexicographical_compare> const lexicographical_compare = impl::lexicographical_compare();
 
 }}
 

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/support/detail/iterate.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/support/detail/iterate.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/support/detail/iterate.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -14,40 +14,48 @@
 #endif
 
 #define PHOENIX_ITERATION_PARAMS_SIZE \
- BOOST_PP_TUPLE_ELEM(2, 0, PHOENIX_ITERATION_PARAMS)
+ BOOST_PP_TUPLE_ELEM(2, 0, PHOENIX_ITERATION_PARAMS) \
+/**/
 
 #define PHOENIX_ITERATION_TUPLE \
- BOOST_PP_TUPLE_ELEM(2, 1, PHOENIX_ITERATION_PARAMS)
+ BOOST_PP_TUPLE_ELEM(2, 1, PHOENIX_ITERATION_PARAMS) \
+/**/
 
 #define PHOENIX_ITERATION_START \
     BOOST_PP_TUPLE_ELEM( \
- PHOENIX_ITERATION_PARAMS_SIZE, 0, PHOENIX_ITERATION_TUPLE)
+ PHOENIX_ITERATION_PARAMS_SIZE, 0, PHOENIX_ITERATION_TUPLE) \
+/**/
 
 #define PHOENIX_ITERATION_END \
     BOOST_PP_TUPLE_ELEM( \
- PHOENIX_ITERATION_PARAMS_SIZE, 1, PHOENIX_ITERATION_TUPLE)
+ PHOENIX_ITERATION_PARAMS_SIZE, 1, PHOENIX_ITERATION_TUPLE) \
+/**/
 
 
 #define PHOENIX_ITERATION_FILE() \
     BOOST_PP_TUPLE_ELEM( \
- PHOENIX_ITERATION_PARAMS_SIZE, 2, PHOENIX_ITERATION_TUPLE)
+ PHOENIX_ITERATION_PARAMS_SIZE, 2, PHOENIX_ITERATION_TUPLE) \
+/**/
 
 #if PHOENIX_ITERATION_PARAMS_SIZE == 3
 
 #define BOOST_PP_ITERATION_PARAMS_1 \
     (3, (PHOENIX_ITERATION_START, PHOENIX_ITERATION_END, \
- <boost/phoenix/support/detail/iterate.hpp>))
+ <boost/phoenix/support/detail/iterate.hpp>)) \
+/**/
 
 #else
 
 #define PHOENIX_ITERATION_FLAG \
     BOOST_PP_TUPLE_ELEM( \
- PHOENIX_ITERATION_PARAMS_SIZE, 3, PHOENIX_ITERATION_TUPLE)
+ PHOENIX_ITERATION_PARAMS_SIZE, 3, PHOENIX_ITERATION_TUPLE) \
+/**/
 
 #define BOOST_PP_ITERATION_PARAMS_1 \
     (4, (PHOENIX_ITERATION_START, PHOENIX_ITERATION_END, \
     <boost/phoenix/support/detail/iterate.hpp>, \
- PHOENIX_ITERATION_FLAG))
+ PHOENIX_ITERATION_FLAG)) \
+/**/
 
 #endif
 

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/support/detail/iterate_define.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/support/detail/iterate_define.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/support/detail/iterate_define.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -7,29 +7,41 @@
 
 #if !PHOENIX_IS_ITERATING
 
-#define PHOENIX_typename_A(N) BOOST_PP_ENUM_PARAMS(N, typename A)
+#define PHOENIX_typename_A(N) \
+ BOOST_PP_ENUM_PARAMS(N, typename A) \
+/**/
 
 #define PHOENIX_typename_A_void(N) \
- BOOST_PP_ENUM_PARAMS_WITH_A_DEFAULT(N, typename A, void)
+ BOOST_PP_ENUM_PARAMS_WITH_A_DEFAULT(N, typename A, void) \
+/**/
 
 #define PHOENIX_A(N) \
- BOOST_PP_ENUM_PARAMS(N, A)
+ BOOST_PP_ENUM_PARAMS(N, A) \
+/**/
 
 #define PHOENIX_A_ref(N) \
- BOOST_PP_ENUM_BINARY_PARAMS(N, A, & BOOST_PP_INTERCEPT)
+ BOOST_PP_ENUM_BINARY_PARAMS(N, A, & BOOST_PP_INTERCEPT) \
+/**/
 
 #define PHOENIX_A_const_ref(N) \
- BOOST_PP_ENUM_BINARY_PARAMS(N, A, const& BOOST_PP_INTERCEPT)
+ BOOST_PP_ENUM_BINARY_PARAMS(N, A, const& BOOST_PP_INTERCEPT) \
+/**/
 
-#define PHOENIX_A_a(N) BOOST_PP_ENUM_BINARY_PARAMS(N, A, a)
-
-#define PHOENIX_A_ref_a(N) BOOST_PP_ENUM_BINARY_PARAMS(N, A, & a)
+#define PHOENIX_A_a(N) \
+ BOOST_PP_ENUM_BINARY_PARAMS(N, A, a) \
+/**/
+
+#define PHOENIX_A_ref_a(N) \
+ BOOST_PP_ENUM_BINARY_PARAMS(N, A, & a) \
+/**/
 
 #define PHOENIX_A_const_ref_a(N) \
- BOOST_PP_ENUM_BINARY_PARAMS(N, A, const& a)
+ BOOST_PP_ENUM_BINARY_PARAMS(N, A, const& a) \
+/**/
 
 #define PHOENIX_a(N) \
- BOOST_PP_ENUM_PARAMS(N, a)
+ BOOST_PP_ENUM_PARAMS(N, a) \
+/**/
 
 #else
 
@@ -44,68 +56,100 @@
 #include <boost/preprocessor/seq/size.hpp>
 #include <boost/preprocessor/tuple/elem.hpp>
 
-#define PHOENIX_ITERATION BOOST_PP_ITERATION()
-
-#define PHOENIX_typename_A BOOST_PP_ENUM_PARAMS(PHOENIX_ITERATION, typename A)
+#define PHOENIX_ITERATION \
+ BOOST_PP_ITERATION() \
+/**/
+
+#define PHOENIX_typename_A \
+ BOOST_PP_ENUM_PARAMS(PHOENIX_ITERATION, typename A) \
+/**/
 
 #define PHOENIX_typename_A_void \
- BOOST_PP_ENUM_PARAMS_WITH_A_DEFAULT(PHOENIX_ITERATION, typename A, void)
+ BOOST_PP_ENUM_PARAMS_WITH_A_DEFAULT(PHOENIX_ITERATION, typename A, void) \
+/**/
 
 #define PHOENIX_A \
- BOOST_PP_ENUM_PARAMS(PHOENIX_ITERATION, A)
+ BOOST_PP_ENUM_PARAMS(PHOENIX_ITERATION, A) \
+/**/
 
 #define PHOENIX_A_ref \
- BOOST_PP_ENUM_BINARY_PARAMS(PHOENIX_ITERATION, A, & BOOST_PP_INTERCEPT)
+ BOOST_PP_ENUM_BINARY_PARAMS(PHOENIX_ITERATION, A, & BOOST_PP_INTERCEPT) \
+/**/
 
 #define PHOENIX_A_const_ref \
- BOOST_PP_ENUM_BINARY_PARAMS(PHOENIX_ITERATION, A, const& BOOST_PP_INTERCEPT)
-
-#define PHOENIX_A_a BOOST_PP_ENUM_BINARY_PARAMS(PHOENIX_ITERATION, A, a)
+ BOOST_PP_ENUM_BINARY_PARAMS(PHOENIX_ITERATION, A, const& BOOST_PP_INTERCEPT)\
+/**/
 
-#define PHOENIX_A_ref_a BOOST_PP_ENUM_BINARY_PARAMS(PHOENIX_ITERATION, A, & a)
+#define PHOENIX_A_a \
+ BOOST_PP_ENUM_BINARY_PARAMS(PHOENIX_ITERATION, A, a) \
+/**/
+
+#define PHOENIX_A_ref_a \
+ BOOST_PP_ENUM_BINARY_PARAMS(PHOENIX_ITERATION, A, & a) \
+/**/
 
 #define PHOENIX_A_const_ref_a \
- BOOST_PP_ENUM_BINARY_PARAMS(PHOENIX_ITERATION, A, const& a)
+ BOOST_PP_ENUM_BINARY_PARAMS(PHOENIX_ITERATION, A, const& a) \
+/**/
 
 #define PHOENIX_a \
- BOOST_PP_ENUM_PARAMS(PHOENIX_ITERATION, a)
+ BOOST_PP_ENUM_PARAMS(PHOENIX_ITERATION, a) \
+/**/
 
- ////////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////////////////////////////////////////////
     // Begin Perfect Forward argument permutation calculation
- ////////////////////////////////////////////////////////////////////////////
-#define PHOENIX_M0_R(_, N, __) (((A ## N)(&))((A ## N)(const&)))
-
-#define PHOENIX_M0 BOOST_PP_REPEAT(PHOENIX_ITERATION, PHOENIX_M0_R, _)
-
-#define PHOENIX_M1_R_R(_, N, SEQ) BOOST_PP_SEQ_ELEM(N, SEQ)
-
-#define PHOENIX_M1_R(R, __, ___, ELEM) \
- (BOOST_PP_REPEAT(BOOST_PP_SEQ_SIZE(ELEM), PHOENIX_M1_R_R, ELEM))
-
-#define PHOENIX_M1(R, PRODUCT) \
- ((BOOST_PP_SEQ_ENUM \
- (BOOST_PP_SEQ_FOR_EACH_I_R \
- (R, PHOENIX_M1_R, _, PRODUCT))))
-
-#define PHOENIX_PERM_SEQ BOOST_PP_SEQ_FOR_EACH_PRODUCT(PHOENIX_M1, PHOENIX_M0)
+ /////////////////////////////////////////////////////////////////////////////
+#define PHOENIX_M0_R(_, N, __) \
+ (((A ## N)(&))((A ## N)(const&))) \
+/**/
+
+#define PHOENIX_M0 \
+ BOOST_PP_REPEAT(PHOENIX_ITERATION, PHOENIX_M0_R, _) \
+/**/
+
+#define PHOENIX_M1_R_R(_, N, SEQ) \
+ BOOST_PP_SEQ_ELEM(N, SEQ) \
+/**/
+
+#define PHOENIX_M1_R(R, __, ___, ELEM) \
+ (BOOST_PP_REPEAT(BOOST_PP_SEQ_SIZE(ELEM), PHOENIX_M1_R_R, ELEM)) \
+/**/
+
+#define PHOENIX_M1(R, PRODUCT) \
+ ((BOOST_PP_SEQ_ENUM \
+ (BOOST_PP_SEQ_FOR_EACH_I_R \
+ (R, PHOENIX_M1_R, _, PRODUCT)))) \
+/**/
+
+#define PHOENIX_PERM_SEQ \
+ BOOST_PP_SEQ_FOR_EACH_PRODUCT(PHOENIX_M1, PHOENIX_M0) \
+/**/
     ////////////////////////////////////////////////////////////////////////////
     // End
     ////////////////////////////////////////////////////////////////////////////
 
-#define PHOENIX_PERM_SIZE BOOST_PP_SEQ_SIZE(PHOENIX_PERM_SEQ)
+#define PHOENIX_PERM_SIZE \
+ BOOST_PP_SEQ_SIZE(PHOENIX_PERM_SEQ) \
+/**/
 
 #define PHOENIX_M2(_, N, TUPLE) \
- BOOST_PP_COMMA_IF(N) BOOST_PP_TUPLE_ELEM(PHOENIX_ITERATION, N, TUPLE)
+ BOOST_PP_COMMA_IF(N) BOOST_PP_TUPLE_ELEM(PHOENIX_ITERATION, N, TUPLE) \
+/**/
     
 #define PHOENIX_M3(_, N, TUPLE) \
- BOOST_PP_COMMA_IF(N) BOOST_PP_TUPLE_ELEM(PHOENIX_ITERATION, N, TUPLE) a ## N
+ BOOST_PP_COMMA_IF(N) BOOST_PP_TUPLE_ELEM(PHOENIX_ITERATION, N, TUPLE) a ## N\
+/**/
 
-#define PHOENIX_PERM_ELEM(N) BOOST_PP_SEQ_ELEM(N, PHOENIX_PERM_SEQ)
+#define PHOENIX_PERM_ELEM(N) \
+ BOOST_PP_SEQ_ELEM(N, PHOENIX_PERM_SEQ) \
+/**/
 
 #define PHOENIX_PERM_A(N) \
- BOOST_PP_REPEAT(PHOENIX_ITERATION, PHOENIX_M2, PHOENIX_PERM_ELEM(N))
+ BOOST_PP_REPEAT(PHOENIX_ITERATION, PHOENIX_M2, PHOENIX_PERM_ELEM(N)) \
+/**/
 
 #define PHOENIX_PERM_A_a(N) \
- BOOST_PP_REPEAT(PHOENIX_ITERATION, PHOENIX_M3, PHOENIX_PERM_ELEM(N))
+ BOOST_PP_REPEAT(PHOENIX_ITERATION, PHOENIX_M3, PHOENIX_PERM_ELEM(N)) \
+/**/
 
 #endif

Deleted: sandbox/SOC/2010/phoenix3/boost/phoenix/support/element_at.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/support/element_at.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
+++ (empty file)
@@ -1,86 +0,0 @@
-/*==============================================================================
- Copyright (c) 2010 Joel de Guzman
-
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-==============================================================================*/
-#ifndef PHOENIX_SUPPORT_ELEMENT_AT_HPP
-#define PHOENIX_SUPPORT_ELEMENT_AT_HPP
-
-#include <boost/fusion/sequence/intrinsic/value_at.hpp>
-
-#include <boost/proto/traits.hpp>
-
-namespace boost { namespace phoenix
-{
- ////////////////////////////////////////////////////////////////////////////
- //
- // Actors carry specific information with it. Primitive actors may hold
- // simple primitive data, like values (e.g. int). Composites hold a tuple
- // of proto expressions that evaluate to actors (using fusion vector).
- // The following facilities extract the "elements" from an actor. An
- // element is just a proto expression that evaluates to an actor.
- //
- ////////////////////////////////////////////////////////////////////////////
- namespace result_of
- {
- // Get the Nth element value type from Expr (N is an integral constant)
- template <class Expr, int N>
- struct element_value_at_c : fusion::result_of::value_at_c<Expr, N+2>
- {};
-
- // Get the Nth element value type from Expr (N is an mpl int_)
- template <class Expr, class N>
- struct element_value_at : element_value_at_c<Expr, N::value>
- {};
-
- // Get the element type N from Expr (N is an integral constant)
- template <class Expr, int N>
- struct element_at_c : proto::result_of::child_c<Expr &, N+2>
- {};
-
- // Get the Nth element type N from Expr (N is an mpl int_)
- template <class Expr, class N>
- struct element_at : element_at_c<Expr, N::value>
- {};
- }
-
- // Get the Nth element value N from Expr (N is an integral constant)
- // non-const overload
- template <int N, class Expr>
- typename result_of::element_at_c<Expr, N>::type
- element_at_c(Expr& expr)
- {
- return proto::child_c<N+2>(expr);
- }
-
- // Get the Nth element value N from Expr (N is an integral constant)
- // const overload
- template <int N, class Expr>
- typename result_of::element_at_c<Expr const, N>::type
- element_at_c(Expr const& expr)
- {
- return proto::child_c<N+2>(expr);
- }
-
- // Get the Nth element value N from Expr (N is an mpl int_)
- // non-const overload
- template <class N, class Expr>
- typename result_of::element_at<Expr, N>::type
- element_at(Expr& expr)
- {
- return proto::child_c<N::value + 2>(expr);
- }
-
- // Get the Nth element value N from Expr (N is an mpl int_)
- // const overload
- template <class N, class Expr>
- typename result_of::element_at<Expr const, N>::type
- element_at(Expr const& expr)
- {
- return proto::child_c<N::value + 2>(expr);
- }
-
-}}
-
-#endif

Modified: sandbox/SOC/2010/phoenix3/boost/phoenix/support/iterate.hpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/boost/phoenix/support/iterate.hpp (original)
+++ sandbox/SOC/2010/phoenix3/boost/phoenix/support/iterate.hpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -11,10 +11,7 @@
 
 #define PHOENIX_IS_ITERATING 0
 
-#define PHOENIX_ITERATE_RESULT_OF 1
-#define PHOENIX_ITERATE_OPERATOR 2
-
-#define PHOENIX_ITERATE() \
+#define PHOENIX_ITERATE() \
     <boost/phoenix/support/detail/iterate.hpp>
 
 #include <boost/phoenix/support/detail/iterate_define.hpp>

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/Jamfile
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/Jamfile (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/Jamfile 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -7,24 +7,24 @@
 #==============================================================================
 
 project phoenix/doc ;
-import boostbook ;
+
 import quickbook ;
 
 path-constant images : html ;
 
-boostbook quickbook
+boostbook phoenix-doc
     :
         phoenix3.qbk
     :
         <xsl:param>boost.root=../../../..
- <xsl:param>chunk.section.depth=4
- <xsl:param>chunk.first.sections=1
- <xsl:param>toc.section.depth=4
- <xsl:param>toc.max.depth=4
- <xsl:param>generate.section.toc.level=4
+ <xsl:param>chunk.section.depth=4
+ <xsl:param>chunk.first.sections=1
+ <xsl:param>toc.section.depth=4
+ <xsl:param>toc.max.depth=4
+ <xsl:param>generate.section.toc.level=4
         <xsl:param>boost.libraries=../../../libraries.htm
         <xsl:param>html.stylesheet=../../../../doc/html/boostbook.css
- <format>html:<xsl:param>admon.graphics.path=images/
+ <format>html:<xsl:param>admon.graphics.path=images/
         <format>pdf:<xsl:param>img.src.path=$(images)/
         <format>pdf:<xsl:param>boost.url.prefix=http://www.boost.org/doc/libs/release/libs/phoenix/doc/html
     ;

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/index.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/index.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/index.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Chapter&#160;1.&#160;Phoenix 3.0</title>
 <link rel="stylesheet" href="../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="next" href="phoenix/introduction.html" title="Introduction">
 </head>
@@ -26,7 +26,7 @@
 </h3></div></div>
 <div><p class="copyright">Copyright &#169; 2002-2005, 2010 Joel de Guzman, Dan Marsden, Thomas Heller</p></div>
 <div><div class="legalnotice">
-<a name="id791888"></a><p>
+<a name="id569902"></a><p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>
@@ -145,7 +145,7 @@
 </dl>
 </div>
 <a name="phoenix.preface"></a><h2>
-<a name="id822617"></a>
+<a name="id600596"></a>
     <a class="link" href="index.html#phoenix.preface">Preface</a>
   </h2>
 <div class="blockquote"><blockquote class="blockquote"><p>
@@ -164,7 +164,7 @@
     <span class="inlinemediaobject"><img src="images/lambda_cpp.png" alt="lambda_cpp"></span>
   </p>
 <a name="phoenix.description"></a><h3>
-<a name="id790669"></a>
+<a name="id568695"></a>
     <a class="link" href="index.html#phoenix.description">Description</a>
   </h3>
 <p>
@@ -182,7 +182,7 @@
     library is organized in highly independent modules and layers.
   </p>
 <a name="phoenix.how_to_use_this_manual"></a><h3>
-<a name="id790716"></a>
+<a name="id568742"></a>
     <a class="link" href="index.html#phoenix.how_to_use_this_manual">How to use this manual</a>
   </h3>
 <p>
@@ -204,7 +204,7 @@
     icons precede some text to indicate:
   </p>
 <div class="table">
-<a name="id790750"></a><p class="title"><b>Table&#160;1.1.&#160;Icons</b></p>
+<a name="id568777"></a><p class="title"><b>Table&#160;1.1.&#160;Icons</b></p>
 <div class="table-contents"><table class="table" summary="Icons">
 <colgroup>
 <col>
@@ -285,7 +285,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="sidebar">
-<p class="title"><b></b></p>
+<div class="titlepage"></div>
 <p>
     <span class="inlinemediaobject"><img src="images/note.png" alt="note"></span> Unless otherwise noted <code class="computeroutput"><span class="keyword">using</span>
     <span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">phoenix</span><span class="special">;</span></code>
@@ -293,12 +293,12 @@
   </p>
 </div>
 <a name="phoenix._emphasis_role__bold___emphasis____to_my_dear_daughter__phoenix__emphasis___emphasis_"></a><h3>
-<a name="id831572"></a>
+<a name="id609551"></a>
     <a class="link" href="index.html#phoenix._emphasis_role__bold___emphasis____to_my_dear_daughter__phoenix__emphasis___emphasis_"><span class="bold"><strong><span class="emphasis"><em>...To my dear daughter, Phoenix</em></span></strong></span></a>
   </h3>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
-<td align="left"><p><small>Last revised: August 16, 2010 at 18:47:55 GMT</small></p></td>
+<td align="left"><p><small>Last revised: December 28, 2010 at 11:36:08 GMT</small></p></td>
 <td align="right"><div class="copyright-footer"></div></td>
 </tr></table>
 <hr>

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/acknowledgments.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/acknowledgments.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/acknowledgments.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Acknowledgments</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="prev" href="wrap_up.html" title="Wrap Up">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/advanced_topics.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/advanced_topics.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/advanced_topics.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Advanced Topics</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="prev" href="starter_kit/composites/more.html" title="More">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/advanced_topics/extending_actors.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/advanced_topics/extending_actors.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/advanced_topics/extending_actors.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Extending Actors</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../advanced_topics.html" title="Advanced Topics">
 <link rel="prev" href="porting_from_phoenix_2_0.html" title="Porting from Phoenix 2.0">
@@ -39,7 +39,7 @@
         on how to implement a custom actor which is usable as if it were a STL Container.
       </p>
 <a name="phoenix.advanced_topics.extending_actors.requirements"></a><h5>
-<a name="id836134"></a>
+<a name="id614113"></a>
         <a class="link" href="extending_actors.html#phoenix.advanced_topics.extending_actors.requirements">Requirements</a>
       </h5>
 <p>
@@ -141,7 +141,7 @@
         Additionally, we want all the operator() overloads of the regular actor.
       </p>
 <a name="phoenix.advanced_topics.extending_actors.defining_the_actor"></a><h5>
-<a name="id836423"></a>
+<a name="id614402"></a>
         <a class="link" href="extending_actors.html#phoenix.advanced_topics.extending_actors.defining_the_actor">Defining
         the actor</a>
       </h5>
@@ -174,7 +174,7 @@
 <span class="special">};</span>
 </pre>
 <a name="phoenix.advanced_topics.extending_actors.using_the_actor"></a><h5>
-<a name="id837126"></a>
+<a name="id615104"></a>
         <a class="link" href="extending_actors.html#phoenix.advanced_topics.extending_actors.using_the_actor">Using
         the actor</a>
       </h5>
@@ -235,7 +235,7 @@
         Wow, that was easy!
       </p>
 <a name="phoenix.advanced_topics.extending_actors.adding_life_to_the_actor"></a><h5>
-<a name="id837887"></a>
+<a name="id615866"></a>
         <a class="link" href="extending_actors.html#phoenix.advanced_topics.extending_actors.adding_life_to_the_actor">Adding
         life to the actor</a>
       </h5>

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/advanced_topics/porting_from_phoenix_2_0.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/advanced_topics/porting_from_phoenix_2_0.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/advanced_topics/porting_from_phoenix_2_0.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Porting from Phoenix 2.0</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../advanced_topics.html" title="Advanced Topics">
 <link rel="prev" href="../advanced_topics.html" title="Advanced Topics">
@@ -176,7 +176,7 @@
 </tbody>
 </table></div>
 <div class="sidebar">
-<p class="title"><b></b></p>
+<div class="titlepage"></div>
 <p>
         <span class="inlinemediaobject"><img src="../../images/tip.png" alt="tip"></span> There is no general guideline for porting code which
         relies on the internals of Phoenix 2.0. If you plan on porting your Phoenix

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/introduction.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/introduction.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/introduction.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Introduction</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="prev" href="../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Reference</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="prev" href="advanced_topics/extending_actors.html" title="Extending Actors">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/basics.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/basics.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/basics.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Basics</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../reference.html" title="Reference">
 <link rel="prev" href="../reference.html" title="Reference">
@@ -42,7 +42,7 @@
         </p></td></tr>
 </table></div>
 <a name="phoenix.reference.basics.partial_function_application"></a><h5>
-<a name="id838890"></a>
+<a name="id616869"></a>
         <a class="link" href="basics.html#phoenix.reference.basics.partial_function_application">Partial
         Function Application</a>
       </h5>
@@ -98,7 +98,7 @@
         be black boxes anymore.
       </p>
 <a name="phoenix.reference.basics.stl_and_higher_order_functions"></a><h5>
-<a name="id839106"></a>
+<a name="id617085"></a>
         <a class="link" href="basics.html#phoenix.reference.basics.stl_and_higher_order_functions">STL
         and higher order functions</a>
       </h5>
@@ -129,7 +129,7 @@
         </p></td></tr>
 </table></div>
 <a name="phoenix.reference.basics.lazy_evaluation"></a><h5>
-<a name="id839318"></a>
+<a name="id617297"></a>
         <a class="link" href="basics.html#phoenix.reference.basics.lazy_evaluation">Lazy Evaluation</a>
       </h5>
 <p>
@@ -184,7 +184,7 @@
 </span><span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="special">(</span><span class="identifier">arg1</span> <span class="special">%</span> <span class="number">2</span> <span class="special">==</span> <span class="number">1</span><span class="special">)(</span><span class="identifier">y</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span> <span class="comment">// prints 0 or false
 </span></pre>
 <a name="phoenix.reference.basics.forwarding_function_problem"></a><h5>
-<a name="id839861"></a>
+<a name="id617840"></a>
         <a class="link" href="basics.html#phoenix.reference.basics.forwarding_function_problem">Forwarding
         Function Problem</a>
       </h5>
@@ -225,7 +225,7 @@
         </p></td></tr>
 </table></div>
 <a name="phoenix.reference.basics.polymorphic_functions"></a><h5>
-<a name="id839999"></a>
+<a name="id617978"></a>
         <a class="link" href="basics.html#phoenix.reference.basics.polymorphic_functions">Polymorphic
         Functions</a>
       </h5>

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/concepts.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/concepts.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/concepts.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Concepts</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../reference.html" title="Reference">
 <link rel="prev" href="organization.html" title="Organization">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/concepts/actor.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/concepts/actor.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/concepts/actor.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Actor</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../concepts.html" title="Concepts">
 <link rel="prev" href="../concepts.html" title="Concepts">
@@ -20,7 +20,7 @@
 <a name="phoenix.reference.concepts.actor"></a><a class="link" href="actor.html" title="Actor">Actor</a>
 </h4></div></div></div>
 <a name="phoenix.reference.concepts.actor.description"></a><h6>
-<a name="id841415"></a>
+<a name="id619394"></a>
           <a class="link" href="actor.html#phoenix.reference.concepts.actor.description">Description</a>
         </h6>
 <p>
@@ -74,7 +74,7 @@
 </dl>
 </div>
 <a name="phoenix.reference.concepts.actor.valid_expressions"></a><h6>
-<a name="id841659"></a>
+<a name="id619638"></a>
           <a class="link" href="actor.html#phoenix.reference.concepts.actor.valid_expressions">Valid
           Expressions</a>
         </h6>
@@ -156,7 +156,7 @@
 </tbody>
 </table></div>
 <a name="phoenix.reference.concepts.actor.result_type_expressions"></a><h6>
-<a name="id841792"></a>
+<a name="id619771"></a>
           <a class="link" href="actor.html#phoenix.reference.concepts.actor.result_type_expressions">Result
           Type Expressions</a>
         </h6>
@@ -238,7 +238,7 @@
 </tbody>
 </table></div>
 <a name="phoenix.reference.concepts.actor.expression_semantics"></a><h6>
-<a name="id841925"></a>
+<a name="id619905"></a>
           <a class="link" href="actor.html#phoenix.reference.concepts.actor.expression_semantics">Expression
           Semantics</a>
         </h6>
@@ -301,7 +301,7 @@
 </tbody>
 </table></div>
 <a name="phoenix.reference.concepts.actor.models"></a><h6>
-<a name="id842067"></a>
+<a name="id620046"></a>
           <a class="link" href="actor.html#phoenix.reference.concepts.actor.models">Models</a>
         </h6>
 <div class="itemizedlist"><ul class="itemizedlist" type="disc">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/concepts/environment.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/concepts/environment.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/concepts/environment.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Environment</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../concepts.html" title="Concepts">
 <link rel="prev" href="evaluationpolicy.html" title="EvaluationPolicy">
@@ -20,7 +20,7 @@
 <a name="phoenix.reference.concepts.environment"></a><a class="link" href="environment.html" title="Environment">Environment</a>
 </h4></div></div></div>
 <a name="phoenix.reference.concepts.environment.description"></a><h6>
-<a name="id844343"></a>
+<a name="id622322"></a>
           <a class="link" href="environment.html#phoenix.reference.concepts.environment.description">Description</a>
         </h6>
 <p>
@@ -51,7 +51,7 @@
 </dl>
 </div>
 <a name="phoenix.reference.concepts.environment.valid_expressions"></a><h6>
-<a name="id844464"></a>
+<a name="id622443"></a>
           <a class="link" href="environment.html#phoenix.reference.concepts.environment.valid_expressions">Valid
           Expressions</a>
         </h6>
@@ -116,7 +116,7 @@
 </tbody>
 </table></div>
 <a name="phoenix.reference.concepts.environment.result_type_expressions"></a><h6>
-<a name="id844638"></a>
+<a name="id622617"></a>
           <a class="link" href="environment.html#phoenix.reference.concepts.environment.result_type_expressions">Result
           Type Expressions</a>
         </h6>
@@ -182,7 +182,7 @@
 </tbody>
 </table></div>
 <a name="phoenix.reference.concepts.environment.expression_semantics"></a><h6>
-<a name="id844842"></a>
+<a name="id622821"></a>
           <a class="link" href="environment.html#phoenix.reference.concepts.environment.expression_semantics">Expression
           Semantics</a>
         </h6>
@@ -233,7 +233,7 @@
 </tbody>
 </table></div>
 <a name="phoenix.reference.concepts.environment.models"></a><h6>
-<a name="id845026"></a>
+<a name="id623005"></a>
           <a class="link" href="environment.html#phoenix.reference.concepts.environment.models">Models</a>
         </h6>
 <div class="itemizedlist"><ul class="itemizedlist" type="disc">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/concepts/evaluationpolicy.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/concepts/evaluationpolicy.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/concepts/evaluationpolicy.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>EvaluationPolicy</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../concepts.html" title="Concepts">
 <link rel="prev" href="evaluator.html" title="Evaluator">
@@ -20,7 +20,7 @@
 <a name="phoenix.reference.concepts.evaluationpolicy"></a><a class="link" href="evaluationpolicy.html" title="EvaluationPolicy">EvaluationPolicy</a>
 </h4></div></div></div>
 <a name="phoenix.reference.concepts.evaluationpolicy.description"></a><h6>
-<a name="id842881"></a>
+<a name="id620860"></a>
           <a class="link" href="evaluationpolicy.html#phoenix.reference.concepts.evaluationpolicy.description">Description</a>
         </h6>
 <p>
@@ -60,7 +60,7 @@
 </dl>
 </div>
 <a name="phoenix.reference.concepts.evaluationpolicy.valid_expressions"></a><h6>
-<a name="id843077"></a>
+<a name="id621056"></a>
           <a class="link" href="evaluationpolicy.html#phoenix.reference.concepts.evaluationpolicy.valid_expressions">Valid
           Expressions</a>
         </h6>
@@ -107,7 +107,7 @@
 </tr></tbody>
 </table></div>
 <a name="phoenix.reference.concepts.evaluationpolicy.result_type_expressions"></a><h6>
-<a name="id843204"></a>
+<a name="id621183"></a>
           <a class="link" href="evaluationpolicy.html#phoenix.reference.concepts.evaluationpolicy.result_type_expressions">Result
           Type Expressions</a>
         </h6>
@@ -154,7 +154,7 @@
 </tr></tbody>
 </table></div>
 <a name="phoenix.reference.concepts.evaluationpolicy.expression_semantics"></a><h6>
-<a name="id843358"></a>
+<a name="id621337"></a>
           <a class="link" href="evaluationpolicy.html#phoenix.reference.concepts.evaluationpolicy.expression_semantics">Expression
           Semantics</a>
         </h6>
@@ -190,7 +190,7 @@
 </tr></tbody>
 </table></div>
 <a name="phoenix.reference.concepts.evaluationpolicy.models"></a><h6>
-<a name="id843471"></a>
+<a name="id621450"></a>
           <a class="link" href="evaluationpolicy.html#phoenix.reference.concepts.evaluationpolicy.models">Models</a>
         </h6>
 <div class="itemizedlist"><ul class="itemizedlist" type="disc">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/concepts/evaluator.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/concepts/evaluator.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/concepts/evaluator.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Evaluator</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../concepts.html" title="Concepts">
 <link rel="prev" href="actor.html" title="Actor">
@@ -20,7 +20,7 @@
 <a name="phoenix.reference.concepts.evaluator"></a><a class="link" href="evaluator.html" title="Evaluator">Evaluator</a>
 </h4></div></div></div>
 <a name="phoenix.reference.concepts.evaluator.description"></a><h6>
-<a name="id842210"></a>
+<a name="id620189"></a>
           <a class="link" href="evaluator.html#phoenix.reference.concepts.evaluator.description">Description</a>
         </h6>
 <p>
@@ -64,7 +64,7 @@
 </dl>
 </div>
 <a name="phoenix.reference.concepts.evaluator.valid_expressions"></a><h6>
-<a name="id842394"></a>
+<a name="id620373"></a>
           <a class="link" href="evaluator.html#phoenix.reference.concepts.evaluator.valid_expressions">Valid
           Expressions</a>
         </h6>
@@ -111,7 +111,7 @@
 </tr></tbody>
 </table></div>
 <a name="phoenix.reference.concepts.evaluator.result_type_expressions"></a><h6>
-<a name="id842511"></a>
+<a name="id620490"></a>
           <a class="link" href="evaluator.html#phoenix.reference.concepts.evaluator.result_type_expressions">Result
           Type Expressions</a>
         </h6>
@@ -157,7 +157,7 @@
 </tr></tbody>
 </table></div>
 <a name="phoenix.reference.concepts.evaluator.expression_semantics"></a><h6>
-<a name="id842598"></a>
+<a name="id620577"></a>
           <a class="link" href="evaluator.html#phoenix.reference.concepts.evaluator.expression_semantics">Expression
           Semantics</a>
         </h6>
@@ -193,7 +193,7 @@
 </tr></tbody>
 </table></div>
 <a name="phoenix.reference.concepts.evaluator.models"></a><h6>
-<a name="id842702"></a>
+<a name="id620682"></a>
           <a class="link" href="evaluator.html#phoenix.reference.concepts.evaluator.models">Models</a>
         </h6>
 <div class="itemizedlist"><ul class="itemizedlist" type="disc">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Modules</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../reference.html" title="Reference">
 <link rel="prev" href="concepts/environment.html" title="Environment">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/bind.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/bind.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/bind.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Bind</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../modules.html" title="Modules">
 <link rel="prev" href="scope/lambda.html" title="lambda">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/bind/binding_functions.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/bind/binding_functions.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/bind/binding_functions.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Binding Functions</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../bind.html" title="Bind">
 <link rel="prev" href="../bind.html" title="Bind">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/bind/binding_member_functions.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/bind/binding_member_functions.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/bind/binding_member_functions.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Binding Member Functions</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../bind.html" title="Bind">
 <link rel="prev" href="binding_functions.html" title="Binding Functions">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/bind/binding_member_variables.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/bind/binding_member_variables.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/bind/binding_member_variables.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Binding Member Variables</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../bind.html" title="Bind">
 <link rel="prev" href="binding_member_functions.html" title="Binding Member Functions">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/bind/compatibility_with_other_bind_libraries.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/bind/compatibility_with_other_bind_libraries.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/bind/compatibility_with_other_bind_libraries.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Compatibility with other bind libraries</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../bind.html" title="Bind">
 <link rel="prev" href="binding_member_variables.html" title="Binding Member Variables">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/core.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/core.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/core.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Core</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../modules.html" title="Modules">
 <link rel="prev" href="../modules.html" title="Modules">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/core/arguments.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/core/arguments.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/core/arguments.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Arguments</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../core.html" title="Core">
 <link rel="prev" href="constant_references.html" title="Constant References">
@@ -31,7 +31,7 @@
             as an imaginary data-bin where a function argument will be placed.
           </p>
 <a name="phoenix.reference.modules.core.arguments.predefined_arguments"></a><h6>
-<a name="id846499"></a>
+<a name="id624478"></a>
             <a class="link" href="arguments.html#phoenix.reference.modules.core.arguments.predefined_arguments">Predefined
             Arguments</a>
           </h6>
@@ -77,7 +77,7 @@
             the DRY principle.
           </p>
 <a name="phoenix.reference.modules.core.arguments.user_defined_arguments"></a><h6>
-<a name="id847262"></a>
+<a name="id625241"></a>
             <a class="link" href="arguments.html#phoenix.reference.modules.core.arguments.user_defined_arguments">User
             Defined Arguments</a>
           </h6>
@@ -117,7 +117,7 @@
 </td></tr>
 </table></div>
 <a name="phoenix.reference.modules.core.arguments.evaluating_an_argument"></a><h6>
-<a name="id847488"></a>
+<a name="id625466"></a>
             <a class="link" href="arguments.html#phoenix.reference.modules.core.arguments.evaluating_an_argument">Evaluating
             an Argument</a>
           </h6>
@@ -144,7 +144,7 @@
 <span class="identifier">Hello</span> <span class="identifier">World</span>
 </pre>
 <a name="phoenix.reference.modules.core.arguments.extra_arguments"></a><h6>
-<a name="id847817"></a>
+<a name="id625795"></a>
             <a class="link" href="arguments.html#phoenix.reference.modules.core.arguments.extra_arguments">Extra
             Arguments</a>
           </h6>

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/core/constant_references.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/core/constant_references.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/core/constant_references.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Constant References</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../core.html" title="Core">
 <link rel="prev" href="references.html" title="References">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/core/nothing.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/core/nothing.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/core/nothing.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Nothing</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../core.html" title="Core">
 <link rel="prev" href="arguments.html" title="Arguments">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/core/references.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/core/references.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/core/references.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>References</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../core.html" title="Core">
 <link rel="prev" href="values.html" title="Values">
@@ -56,7 +56,7 @@
 <pre class="programlisting"><span class="identifier">add_assign</span><span class="special">(</span><span class="identifier">ref</span><span class="special">(</span><span class="identifier">i</span><span class="special">),</span> <span class="number">2</span><span class="special">)</span>
 </pre>
 <a name="phoenix.reference.modules.core.references.evaluating_a_reference"></a><h6>
-<a name="id845985"></a>
+<a name="id623964"></a>
             <a class="link" href="references.html#phoenix.reference.modules.core.references.evaluating_a_reference">Evaluating
             a Reference</a>
           </h6>

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/core/values.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/core/values.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/core/values.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Values</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../core.html" title="Core">
 <link rel="prev" href="../core.html" title="Core">
@@ -48,7 +48,7 @@
             but, as we'll see later on, there are situations where this is unavoidable.
           </p>
 <a name="phoenix.reference.modules.core.values.evaluating_a_value"></a><h3>
-<a name="id845483"></a>
+<a name="id623462"></a>
             <a class="link" href="values.html#phoenix.reference.modules.core.values.evaluating_a_value">Evaluating
             a Value</a>
           </h3>

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/function.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/function.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/function.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Function</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../modules.html" title="Modules">
 <link rel="prev" href="core/nothing.html" title="Nothing">
@@ -120,7 +120,7 @@
           does not require any state).
         </p>
 <div class="sidebar">
-<p class="title"><b></b></p>
+<div class="titlepage"></div>
 <p>
           <span class="inlinemediaobject"><img src="../../../images/alert.png" alt="alert"></span> Take care though when using function objects with
           state because they are often copied repeatedly, and state may change in

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/object.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/object.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/object.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Object</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../modules.html" title="Modules">
 <link rel="prev" href="statement/throw_.html" title="throw_">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/object/casts.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/object/casts.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/object/casts.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Casts</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../object.html" title="Object">
 <link rel="prev" href="delete.html" title="Delete">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/object/construction.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/object/construction.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/object/construction.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Construction</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../object.html" title="Object">
 <link rel="prev" href="../object.html" title="Object">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/object/delete.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/object/delete.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/object/delete.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Delete</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../object.html" title="Object">
 <link rel="prev" href="new.html" title="New">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/object/new.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/object/new.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/object/new.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>New</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../object.html" title="Object">
 <link rel="prev" href="construction.html" title="Construction">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/operator.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/operator.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/operator.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Operator</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../modules.html" title="Modules">
 <link rel="prev" href="function.html" title="Function">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/operator/supported_operators.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/operator/supported_operators.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/operator/supported_operators.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Supported operators</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../operator.html" title="Operator">
 <link rel="prev" href="../operator.html" title="Operator">
@@ -21,7 +21,7 @@
           operators</a>
 </h5></div></div></div>
 <a name="phoenix.reference.modules.operator.supported_operators.unary_operators"></a><h6>
-<a name="id850184"></a>
+<a name="id628162"></a>
             <a class="link" href="supported_operators.html#phoenix.reference.modules.operator.supported_operators.unary_operators">Unary
             operators</a>
           </h6>
@@ -29,7 +29,7 @@
 <span class="identifier">postfix</span><span class="special">:</span> <span class="special">++,</span> <span class="special">--</span>
 </pre>
 <a name="phoenix.reference.modules.operator.supported_operators.binary_operators"></a><h6>
-<a name="id850315"></a>
+<a name="id628294"></a>
             <a class="link" href="supported_operators.html#phoenix.reference.modules.operator.supported_operators.binary_operators">Binary
             operators</a>
           </h6>
@@ -39,7 +39,7 @@
 <span class="special">&amp;&amp;,</span> <span class="special">||,</span> <span class="special">-&gt;*</span>
 </pre>
 <a name="phoenix.reference.modules.operator.supported_operators.ternary_operator"></a><h6>
-<a name="id850517"></a>
+<a name="id628495"></a>
             <a class="link" href="supported_operators.html#phoenix.reference.modules.operator.supported_operators.ternary_operator">Ternary
             operator</a>
           </h6>
@@ -54,7 +54,7 @@
             is identical, albeit in a lazy manner.
           </p>
 <a name="phoenix.reference.modules.operator.supported_operators.member_pointer_operator"></a><h6>
-<a name="id850619"></a>
+<a name="id628598"></a>
             <a class="link" href="supported_operators.html#phoenix.reference.modules.operator.supported_operators.member_pointer_operator">Member
             pointer operator</a>
           </h6>

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/scope.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/scope.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/scope.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Scope</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../modules.html" title="Modules">
 <link rel="prev" href="object/casts.html" title="Casts">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/scope/lambda.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/scope/lambda.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/scope/lambda.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>lambda</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../scope.html" title="Scope">
 <link rel="prev" href="let.html" title="let">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/scope/let.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/scope/let.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/scope/let.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>let</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../scope.html" title="Scope">
 <link rel="prev" href="local_variables.html" title="Local Variables">
@@ -109,8 +109,8 @@
             and <code class="computeroutput"><span class="identifier">ref</span></code>s are L-values.
             <code class="computeroutput"><span class="identifier">val</span></code>s are R-values.
           </p>
-<a name="phoenix.reference.modules.scope.let.visibility"></a><p>
- <span class="bold"><strong>Visibility</strong></span>
+<p>
+ <span class="bold"><strong>Visibility</strong></span> <a name="phoenix.reference.modules.scope.let.visibility"></a>
           </p>
 <p>
             The scope and lifetimes of the local variables is limited within the

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/scope/local_variables.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/scope/local_variables.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/scope/local_variables.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Local Variables</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../scope.html" title="Scope">
 <link rel="prev" href="../scope.html" title="Scope">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Statement</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../modules.html" title="Modules">
 <link rel="prev" href="operator/supported_operators.html" title="Supported operators">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/___do_while_____statement.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/___do_while_____statement.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/___do_while_____statement.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>do_while_ Statement</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../statement.html" title="Statement">
 <link rel="prev" href="while__statement.html" title="while_ Statement">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/___if_else_____statement.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/___if_else_____statement.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/___if_else_____statement.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>if_else_ Statement</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../statement.html" title="Statement">
 <link rel="prev" href="if__statement.html" title="if_ Statement">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/block_statement.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/block_statement.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/block_statement.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Block Statement</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../statement.html" title="Statement">
 <link rel="prev" href="../statement.html" title="Statement">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/for__statement.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/for__statement.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/for__statement.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>for_ Statement</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../statement.html" title="Statement">
 <link rel="prev" href="___do_while_____statement.html" title="do_while_ Statement">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/if__statement.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/if__statement.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/if__statement.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>if_ Statement</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../statement.html" title="Statement">
 <link rel="prev" href="block_statement.html" title="Block Statement">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/switch__statement.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/switch__statement.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/switch__statement.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>switch_ Statement</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../statement.html" title="Statement">
 <link rel="prev" href="___if_else_____statement.html" title="if_else_ Statement">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/throw_.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/throw_.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/throw_.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>throw_</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../statement.html" title="Statement">
 <link rel="prev" href="try__catch__statement.html" title="try_ catch_ Statement">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/try__catch__statement.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/try__catch__statement.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/try__catch__statement.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>try_ catch_ Statement</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../statement.html" title="Statement">
 <link rel="prev" href="for__statement.html" title="for_ Statement">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/while__statement.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/while__statement.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/statement/while__statement.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>while_ Statement</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../statement.html" title="Statement">
 <link rel="prev" href="switch__statement.html" title="switch_ Statement">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/stl.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/stl.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/stl.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>STL</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../modules.html" title="Modules">
 <link rel="prev" href="bind/compatibility_with_other_bind_libraries.html" title="Compatibility with other bind libraries">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/stl/algorithm.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/stl/algorithm.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/stl/algorithm.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Algorithm</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../stl.html" title="STL">
 <link rel="prev" href="container.html" title="Container">
@@ -67,13 +67,13 @@
             and their semantics.
           </p>
 <div class="sidebar">
-<p class="title"><b></b></p>
+<div class="titlepage"></div>
 <p>
             <span class="inlinemediaobject"><img src="../../../../images/tip.png" alt="tip"></span> Arguments in brackets denote optional parameters.
           </p>
 </div>
 <div class="table">
-<a name="id863784"></a><p class="title"><b>Table&#160;1.6.&#160;Iteration Algorithms</b></p>
+<a name="id641762"></a><p class="title"><b>Table&#160;1.6.&#160;Iteration Algorithms</b></p>
 <div class="table-contents"><table class="table" summary="Iteration Algorithms">
 <colgroup>
 <col>
@@ -123,7 +123,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="id864062"></a><p class="title"><b>Table&#160;1.7.&#160;Querying Algorithms</b></p>
+<a name="id642041"></a><p class="title"><b>Table&#160;1.7.&#160;Querying Algorithms</b></p>
 <div class="table-contents"><table class="table" summary="Querying Algorithms">
 <colgroup>
 <col>
@@ -415,7 +415,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="id866534"></a><p class="title"><b>Table&#160;1.8.&#160;Transformation Algorithms</b></p>
+<a name="id644513"></a><p class="title"><b>Table&#160;1.8.&#160;Transformation Algorithms</b></p>
 <div class="table-contents"><table class="table" summary="Transformation Algorithms">
 <colgroup>
 <col>

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/stl/container.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/stl/container.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/modules/stl/container.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Container</title>
 <link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../stl.html" title="STL">
 <link rel="prev" href="../stl.html" title="STL">
@@ -137,7 +137,7 @@
             does not use the member "dot" syntax.
           </p>
 <div class="table">
-<a name="id860733"></a><p class="title"><b>Table&#160;1.4.&#160;Sample usage</b></p>
+<a name="id638711"></a><p class="title"><b>Table&#160;1.4.&#160;Sample usage</b></p>
 <div class="table-contents"><table class="table" summary="Sample usage">
 <colgroup>
 <col>
@@ -209,13 +209,13 @@
             The following table describes the container functions and their semantics.
           </p>
 <div class="sidebar">
-<p class="title"><b></b></p>
+<div class="titlepage"></div>
 <p>
             <span class="inlinemediaobject"><img src="../../../../images/tip.png" alt="tip"></span> Arguments in brackets denote optional parameters.
           </p>
 </div>
 <div class="table">
-<a name="id861072"></a><p class="title"><b>Table&#160;1.5.&#160;Lazy STL Container Functions</b></p>
+<a name="id639051"></a><p class="title"><b>Table&#160;1.5.&#160;Lazy STL Container Functions</b></p>
 <div class="table-contents"><table class="table" summary="Lazy STL Container Functions">
 <colgroup>
 <col>

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/organization.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/organization.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/reference/organization.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Organization</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../reference.html" title="Reference">
 <link rel="prev" href="basics.html" title="Basics">
@@ -41,7 +41,7 @@
         header files. There are no object files to link against.
       </p>
 <a name="phoenix.reference.organization.core"></a><h3>
-<a name="id840376"></a>
+<a name="id618355"></a>
         <a class="link" href="organization.html#phoenix.reference.organization.core">Core</a>
       </h3>
 <p>
@@ -70,7 +70,7 @@
         can again be another composite.
       </p>
 <div class="table">
-<a name="id840436"></a><p class="title"><b>Table&#160;1.2.&#160;Modules</b></p>
+<a name="id618415"></a><p class="title"><b>Table&#160;1.2.&#160;Modules</b></p>
 <div class="table-contents"><table class="table" summary="Modules">
 <colgroup>
 <col>
@@ -199,7 +199,7 @@
         the core module is defined in <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">phoenix</span><span class="special">/</span><span class="identifier">core</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>.
       </p>
 <div class="table">
-<a name="id840724"></a><p class="title"><b>Table&#160;1.3.&#160;Includes</b></p>
+<a name="id618703"></a><p class="title"><b>Table&#160;1.3.&#160;Includes</b></p>
 <div class="table-contents"><table class="table" summary="Includes">
 <colgroup>
 <col>
@@ -330,7 +330,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="sidebar">
-<p class="title"><b></b></p>
+<div class="titlepage"></div>
 <p>
         <span class="inlinemediaobject"><img src="../../images/tip.png" alt="tip"></span> Finer grained include files are available per feature;
         see the succeeding sections.

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/references.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/references.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/references.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>References</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="prev" href="acknowledgments.html" title="Acknowledgments">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Starter Kit</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="prev" href="introduction.html" title="Introduction">
@@ -61,7 +61,7 @@
       into high gear quickly.
     </p>
 <a name="phoenix.starter_kit.functors_everywhere"></a><h4>
-<a name="id831676"></a>
+<a name="id609655"></a>
       <a class="link" href="starter_kit.html#phoenix.starter_kit.functors_everywhere">Functors everywhere</a>
     </h4>
 <p>

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/composites.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/composites.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/composites.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Composites</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../starter_kit.html" title="Starter Kit">
 <link rel="prev" href="primitives/arguments.html" title="Arguments">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/composites/construct__new__delete__casts.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/composites/construct__new__delete__casts.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/composites/construct__new__delete__casts.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Construct, New, Delete, Casts</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../composites.html" title="Composites">
 <link rel="prev" href="lazy_statements.html" title="Lazy Statements">
@@ -40,7 +40,7 @@
           </p></td></tr>
 </table></div>
 <div class="sidebar">
-<p class="title"><b></b></p>
+<div class="titlepage"></div>
 <p>
           <span class="inlinemediaobject"><img src="../../../images/tip.png" alt="tip"></span> Learn more about this <a class="link" href="../../reference/modules/object.html" title="Object">here.</a>
         </p>

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/composites/lazy_functions.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/composites/lazy_functions.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/composites/lazy_functions.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Lazy Functions</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../composites.html" title="Composites">
 <link rel="prev" href="construct__new__delete__casts.html" title="Construct, New, Delete, Casts">
@@ -46,7 +46,7 @@
 <span class="identifier">function</span><span class="special">&lt;</span><span class="identifier">is_odd_impl</span><span class="special">&gt;</span> <span class="identifier">is_odd</span><span class="special">;</span>
 </pre>
 <a name="phoenix.starter_kit.composites.lazy_functions.things_to_note_"></a><h6>
-<a name="id834504"></a>
+<a name="id612483"></a>
           <a class="link" href="lazy_functions.html#phoenix.starter_kit.composites.lazy_functions.things_to_note_">Things
           to note:</a>
         </h6>
@@ -77,7 +77,7 @@
           (See function.cpp)
         </p>
 <a name="phoenix.starter_kit.composites.lazy_functions.predefined_lazy_functions"></a><h6>
-<a name="id834683"></a>
+<a name="id612662"></a>
           <a class="link" href="lazy_functions.html#phoenix.starter_kit.composites.lazy_functions.predefined_lazy_functions">Predefined
           Lazy Functions</a>
         </h6>

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/composites/lazy_operators.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/composites/lazy_operators.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/composites/lazy_operators.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Lazy Operators</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../composites.html" title="Composites">
 <link rel="prev" href="../composites.html" title="Composites">
@@ -64,13 +64,13 @@
 </span><span class="identifier">ref</span><span class="special">(</span><span class="identifier">x</span><span class="special">[</span><span class="identifier">ref</span><span class="special">(</span><span class="identifier">i</span><span class="special">)])</span> <span class="comment">// illegal (x is not a phoenix primitive or composite)
 </span></pre>
 <div class="sidebar">
-<p class="title"><b></b></p>
+<div class="titlepage"></div>
 <p>
           <span class="inlinemediaobject"><img src="../../../images/tip.png" alt="tip"></span> Learn more about operators <a class="link" href="../../reference/modules/operator.html" title="Operator">here.</a>
         </p>
 </div>
 <a name="phoenix.starter_kit.composites.lazy_operators.first_practical_example"></a><h6>
-<a name="id833426"></a>
+<a name="id611405"></a>
           <a class="link" href="lazy_operators.html#phoenix.starter_kit.composites.lazy_operators.first_practical_example">First
           Practical Example</a>
         </h6>
@@ -113,7 +113,7 @@
           (See find_if.cpp)
         </p>
 <div class="sidebar">
-<p class="title"><b></b></p>
+<div class="titlepage"></div>
 <p>
           <span class="inlinemediaobject"><img src="../../../images/tip.png" alt="tip"></span> ...<span class="bold"><strong>That's it, we're done</strong></span>.
           Well if you wish to know a little bit more, read on...

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/composites/lazy_statements.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/composites/lazy_statements.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/composites/lazy_statements.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Lazy Statements</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../composites.html" title="Composites">
 <link rel="prev" href="lazy_operators.html" title="Lazy Operators">
@@ -44,7 +44,7 @@
           (See if.cpp)
         </p>
 <div class="sidebar">
-<p class="title"><b></b></p>
+<div class="titlepage"></div>
 <p>
           <span class="inlinemediaobject"><img src="../../../images/tip.png" alt="tip"></span> Learn more about statements <a class="link" href="../../reference/modules/statement.html" title="Statement">here.</a>
         </p>

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/composites/more.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/composites/more.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/composites/more.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>More</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../composites.html" title="Composites">
 <link rel="prev" href="lazy_functions.html" title="Lazy Functions">
@@ -28,7 +28,7 @@
           vs. <a class="link" href="../../reference/modules/function.html" title="Function">Lazy Functions</a>).
         </p>
 <div class="sidebar">
-<p class="title"><b></b></p>
+<div class="titlepage"></div>
 <p>
           <span class="inlinemediaobject"><img src="../../../images/tip.png" alt="tip"></span> ...<span class="bold"><strong>If you still wish to learn
           more, the read on...</strong></span>

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/primitives.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/primitives.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/primitives.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Primitives</title>
 <link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../starter_kit.html" title="Starter Kit">
 <link rel="prev" href="../starter_kit.html" title="Starter Kit">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/primitives/arguments.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/primitives/arguments.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/primitives/arguments.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Arguments</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../primitives.html" title="Primitives">
 <link rel="prev" href="references.html" title="References">
@@ -46,7 +46,7 @@
           (See arguments.cpp)
         </p>
 <div class="sidebar">
-<p class="title"><b></b></p>
+<div class="titlepage"></div>
 <p>
           <span class="inlinemediaobject"><img src="../../../images/tip.png" alt="tip"></span> Learn more about arguments <a class="link" href="../../reference/modules/core/arguments.html" title="Arguments">here.</a>
         </p>

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/primitives/references.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/primitives/references.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/primitives/references.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>References</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../primitives.html" title="Primitives">
 <link rel="prev" href="values.html" title="Values">
@@ -44,7 +44,7 @@
           (See references.cpp)
         </p>
 <div class="sidebar">
-<p class="title"><b></b></p>
+<div class="titlepage"></div>
 <p>
           <span class="inlinemediaobject"><img src="../../../images/tip.png" alt="tip"></span> Learn more about references <a class="link" href="../../reference/modules/core/references.html" title="References">here.</a>
         </p>

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/primitives/values.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/primitives/values.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/starter_kit/primitives/values.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Values</title>
 <link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../../../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../primitives.html" title="Primitives">
 <link rel="prev" href="../primitives.html" title="Primitives">
@@ -32,7 +32,7 @@
           World"</span></code>.
         </p>
 <a name="phoenix.starter_kit.primitives.values.lazy_evaluation"></a><h6>
-<a name="id831838"></a>
+<a name="id609817"></a>
           <a class="link" href="values.html#phoenix.starter_kit.primitives.values.lazy_evaluation">Lazy
           Evaluation</a>
         </h6>
@@ -50,7 +50,7 @@
           (See values.cpp)
         </p>
 <div class="sidebar">
-<p class="title"><b></b></p>
+<div class="titlepage"></div>
 <p>
           <span class="inlinemediaobject"><img src="../../../images/tip.png" alt="tip"></span> Learn more about values <a class="link" href="../../reference/modules/core/values.html" title="Values">here.</a>
         </p>
@@ -65,7 +65,7 @@
           anything and defers the evaluation for later.
         </p>
 <a name="phoenix.starter_kit.primitives.values.callbacks"></a><h6>
-<a name="id832064"></a>
+<a name="id610042"></a>
           <a class="link" href="values.html#phoenix.starter_kit.primitives.values.callbacks">Callbacks</a>
         </h6>
 <p>

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/wrap_up.html
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/wrap_up.html (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/doc/html/phoenix/wrap_up.html 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -3,7 +3,7 @@
 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 <title>Wrap Up</title>
 <link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="up" href="../index.html" title="Chapter&#160;1.&#160;Phoenix 3.0">
 <link rel="prev" href="reference/modules/stl/algorithm.html" title="Algorithm">

Modified: sandbox/SOC/2010/phoenix3/libs/phoenix/test/boost_bind_compatibility/bind_placeholder_test.cpp
==============================================================================
--- sandbox/SOC/2010/phoenix3/libs/phoenix/test/boost_bind_compatibility/bind_placeholder_test.cpp (original)
+++ sandbox/SOC/2010/phoenix3/libs/phoenix/test/boost_bind_compatibility/bind_placeholder_test.cpp 2011-01-08 14:06:03 EST (Sat, 08 Jan 2011)
@@ -51,9 +51,8 @@
 {
 
 template< int I > struct is_placeholder< custom_placeholder< I > >
- : mpl::true_
 {
- enum { value = I };
+ enum { value = I + 1};
 };
 
 } // namespace boost


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