|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r76026 - in branches/release: . boost boost/algorithm/string boost/archive boost/bimap boost/config boost/date_time boost/date_time/posix_time boost/detail boost/dynamic_bitset boost/filesystem boost/function boost/functional boost/geometry boost/geometry/algorithms boost/geometry/arithmetic boost/geometry/core boost/geometry/domains boost/geometry/geometries boost/geometry/iterators boost/geometry/multi boost/geometry/policies boost/geometry/strategies boost/geometry/util boost/geometry/views boost/gil boost/graph boost/heap boost/icl boost/integer boost/interprocess boost/intrusive boost/io boost/iostreams boost/iterator boost/locale boost/math boost/math/special_functions boost/msm boost/msm/back boost/msm/front boost/msm/front/detail boost/msm/front/euml boost/numeric/ublas boost/pool boost/program_options boost/program_options/detail boost/property_tree boost/proto boost/proto/detail boost/proto/detail/preprocessed boost/proto/transform boost/proto/transform/detail boost/proto/transform/detail/preprocessed boost/range boost/regex boost/serialization boost/signals boost/signals2 boost/spirit boost/spirit/home boost/spirit/home/karma boost/spirit/home/support boost/statechart boost/system boost/thread boost/tr1 boost/type_traits boost/typeof boost/utility boost/uuid boost/variant boost/wave boost/xpressive doc libs libs/algorithm/string libs/array libs/array/test libs/bimap libs/config libs/date_time libs/date_time/data libs/date_time/example/gregorian libs/date_time/example/local_time libs/date_time/example/posix_time libs/date_time/example/tutorial libs/date_time/test/posix_time libs/date_time/xmldoc libs/detail libs/filesystem libs/function libs/functional libs/fusion libs/geometry libs/geometry/doc libs/geometry/doc/concept libs/geometry/doc/doxy libs/geometry/doc/generated libs/geometry/doc/html libs/geometry/doc/reference libs/geometry/doc/src libs/geometry/example libs/geometry/test libs/graph/doc libs/graph_parallel libs/icl libs/icl/doc libs/icl/doc/html libs/icl/doc/html/header/boost/icl libs/icl/test libs/icl/test/test_doc_code_ libs/integer libs/interprocess libs/intrusive libs/io libs/io/doc libs/iostreams libs/iterator libs/locale libs/locale/src libs/math libs/math/doc/sf_and_dist libs/math/doc/sf_and_dist/html/math_toolkit/main_overview libs/math/test libs/mpi/build libs/mpl/doc/refmanual libs/mpl/doc/src/refmanual libs/msm libs/numeric/ublas libs/numeric/ublas/doc libs/parameter/doc/html libs/phoenix/doc libs/phoenix/doc/examples libs/pool libs/program_options libs/program_options/test libs/property_tree libs/proto/preprocess libs/range libs/regex libs/serialization libs/serialization/example libs/serialization/src libs/serialization/test libs/signals libs/signals2 libs/signals2/doc libs/spirit libs/spirit/classic/example libs/spirit/doc libs/spirit/example libs/spirit/phoenix libs/spirit/test libs/spirit/test/qi libs/statechart libs/static_assert libs/system libs/thread libs/timer libs/tr1 libs/type_traits libs/typeof/doc libs/utility libs/utility/swap/test libs/uuid libs/wave more status tools tools/bcp tools/boostbook tools/build/v2 tools/build/v2/tools tools/inspect tools/quickbook tools/regression tools/regression/src tools/release tools/wave
From: eric_at_[hidden]
Date: 2011-12-17 14:17:44
Author: eric_niebler
Date: 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
New Revision: 76026
URL: http://svn.boost.org/trac/boost/changeset/76026
Log:
merge [75578] from trunk, fixes #5735
Properties modified:
branches/release/ (props changed)
branches/release/INSTALL (props changed)
branches/release/Jamroot (props changed)
branches/release/LICENSE_1_0.txt (props changed)
branches/release/boost/ (props changed)
branches/release/boost-build.jam (props changed)
branches/release/boost.css (props changed)
branches/release/boost.png (props changed)
branches/release/boost/algorithm/string/ (props changed)
branches/release/boost/archive/ (props changed)
branches/release/boost/array.hpp (props changed)
branches/release/boost/bimap/ (props changed)
branches/release/boost/concept_check.hpp (props changed)
branches/release/boost/config/ (props changed)
branches/release/boost/config.hpp (props changed)
branches/release/boost/cregex.hpp (props changed)
branches/release/boost/cstdint.hpp (props changed)
branches/release/boost/current_function.hpp (props changed)
branches/release/boost/date_time/c_time.hpp (props changed)
branches/release/boost/date_time/date_formatting.hpp (props changed)
branches/release/boost/date_time/filetime_functions.hpp (props changed)
branches/release/boost/date_time/gregorian_calendar.ipp (props changed)
branches/release/boost/date_time/posix_time/time_serialize.hpp (props changed)
branches/release/boost/date_time/strings_from_facet.hpp (props changed)
branches/release/boost/date_time/time_facet.hpp (props changed)
branches/release/boost/date_time/tz_db_base.hpp (props changed)
branches/release/boost/detail/ (props changed)
branches/release/boost/detail/interlocked.hpp (props changed)
branches/release/boost/dynamic_bitset/dynamic_bitset.hpp (props changed)
branches/release/boost/filesystem/ (props changed)
branches/release/boost/filesystem.hpp (props changed)
branches/release/boost/function/ (props changed)
branches/release/boost/function/function_template.hpp (props changed)
branches/release/boost/functional/ (props changed)
branches/release/boost/geometry/ (props changed)
branches/release/boost/geometry/algorithms/ (props changed)
branches/release/boost/geometry/arithmetic/ (props changed)
branches/release/boost/geometry/core/ (props changed)
branches/release/boost/geometry/domains/ (props changed)
branches/release/boost/geometry/geometries/ (props changed)
branches/release/boost/geometry/geometry.hpp (props changed)
branches/release/boost/geometry/iterators/ (props changed)
branches/release/boost/geometry/multi/ (props changed)
branches/release/boost/geometry/policies/ (props changed)
branches/release/boost/geometry/strategies/ (props changed)
branches/release/boost/geometry/util/ (props changed)
branches/release/boost/geometry/views/ (props changed)
branches/release/boost/gil/ (props changed)
branches/release/boost/graph/ (props changed)
branches/release/boost/heap/ (props changed)
branches/release/boost/icl/ (props changed)
branches/release/boost/integer/ (props changed)
branches/release/boost/integer.hpp (props changed)
branches/release/boost/integer_fwd.hpp (props changed)
branches/release/boost/integer_traits.hpp (props changed)
branches/release/boost/interprocess/ (props changed)
branches/release/boost/intrusive/ (props changed)
branches/release/boost/io/ (props changed)
branches/release/boost/iostreams/ (props changed)
branches/release/boost/iterator/ (props changed)
branches/release/boost/iterator/iterator_facade.hpp (props changed)
branches/release/boost/locale/ (props changed)
branches/release/boost/locale.hpp (props changed)
branches/release/boost/math/ (props changed)
branches/release/boost/math/special_functions/ (props changed)
branches/release/boost/math_fwd.hpp (props changed)
branches/release/boost/msm/ (props changed)
branches/release/boost/msm/active_state_switching_policies.hpp (props changed)
branches/release/boost/msm/back/ (props changed)
branches/release/boost/msm/back/args.hpp (props changed)
branches/release/boost/msm/back/bind_helpers.hpp (props changed)
branches/release/boost/msm/back/common_types.hpp (props changed)
branches/release/boost/msm/back/copy_policies.hpp (props changed)
branches/release/boost/msm/back/default_compile_policy.hpp (props changed)
branches/release/boost/msm/back/dispatch_table.hpp (props changed)
branches/release/boost/msm/back/favor_compile_time.hpp (props changed)
branches/release/boost/msm/back/fold_to_list.hpp (props changed)
branches/release/boost/msm/back/history_policies.hpp (props changed)
branches/release/boost/msm/back/metafunctions.hpp (props changed)
branches/release/boost/msm/back/mpl_graph_fsm_check.hpp (props changed)
branches/release/boost/msm/back/no_fsm_check.hpp (props changed)
branches/release/boost/msm/back/queue_container_circular.hpp (props changed)
branches/release/boost/msm/back/queue_container_deque.hpp (props changed)
branches/release/boost/msm/back/state_machine.hpp (props changed)
branches/release/boost/msm/back/tools.hpp (props changed)
branches/release/boost/msm/common.hpp (props changed)
branches/release/boost/msm/front/ (props changed)
branches/release/boost/msm/front/common_states.hpp (props changed)
branches/release/boost/msm/front/completion_event.hpp (props changed)
branches/release/boost/msm/front/detail/ (props changed)
branches/release/boost/msm/front/detail/common_states.hpp (props changed)
branches/release/boost/msm/front/detail/row2_helper.hpp (props changed)
branches/release/boost/msm/front/euml/ (props changed)
branches/release/boost/msm/front/euml/algorithm.hpp (props changed)
branches/release/boost/msm/front/euml/common.hpp (props changed)
branches/release/boost/msm/front/euml/container.hpp (props changed)
branches/release/boost/msm/front/euml/euml.hpp (props changed)
branches/release/boost/msm/front/euml/euml_typeof.hpp (props changed)
branches/release/boost/msm/front/euml/guard_grammar.hpp (props changed)
branches/release/boost/msm/front/euml/iteration.hpp (props changed)
branches/release/boost/msm/front/euml/operator.hpp (props changed)
branches/release/boost/msm/front/euml/phoenix_placeholders.hpp (props changed)
branches/release/boost/msm/front/euml/querying.hpp (props changed)
branches/release/boost/msm/front/euml/state_grammar.hpp (props changed)
branches/release/boost/msm/front/euml/stl.hpp (props changed)
branches/release/boost/msm/front/euml/stt_grammar.hpp (props changed)
branches/release/boost/msm/front/euml/transformation.hpp (props changed)
branches/release/boost/msm/front/functor_row.hpp (props changed)
branches/release/boost/msm/front/internal_row.hpp (props changed)
branches/release/boost/msm/front/row2.hpp (props changed)
branches/release/boost/msm/front/state_machine_def.hpp (props changed)
branches/release/boost/msm/front/states.hpp (props changed)
branches/release/boost/msm/msm_grammar.hpp (props changed)
branches/release/boost/msm/proto_config.hpp (props changed)
branches/release/boost/msm/row_tags.hpp (props changed)
branches/release/boost/numeric/ublas/ (props changed)
branches/release/boost/numeric/ublas/functional.hpp (props changed)
branches/release/boost/pool/ (props changed)
branches/release/boost/program_options/ (props changed)
branches/release/boost/program_options/detail/parsers.hpp (props changed)
branches/release/boost/program_options/parsers.hpp (props changed)
branches/release/boost/property_tree/ (props changed)
branches/release/boost/range/ (props changed)
branches/release/boost/regex/ (props changed)
branches/release/boost/regex.h (props changed)
branches/release/boost/regex.hpp (props changed)
branches/release/boost/regex_fwd.hpp (props changed)
branches/release/boost/serialization/ (props changed)
branches/release/boost/signals/ (props changed)
branches/release/boost/signals2/ (props changed)
branches/release/boost/signals2.hpp (props changed)
branches/release/boost/spirit/ (props changed)
branches/release/boost/spirit/home/ (props changed)
branches/release/boost/spirit/home/karma/ (props changed)
branches/release/boost/spirit/home/support/attributes.hpp (props changed)
branches/release/boost/statechart/ (props changed)
branches/release/boost/static_assert.hpp (props changed)
branches/release/boost/system/ (props changed)
branches/release/boost/thread/ (props changed)
branches/release/boost/thread.hpp (props changed)
branches/release/boost/timer.hpp (props changed)
branches/release/boost/token_functions.hpp (props changed)
branches/release/boost/tr1/ (props changed)
branches/release/boost/type_traits/ (props changed)
branches/release/boost/type_traits.hpp (props changed)
branches/release/boost/typeof/message.hpp (props changed)
branches/release/boost/typeof/register_functions.hpp (props changed)
branches/release/boost/typeof/register_functions_iterate.hpp (props changed)
branches/release/boost/typeof/typeof.hpp (props changed)
branches/release/boost/typeof/unsupported.hpp (props changed)
branches/release/boost/utility/ (props changed)
branches/release/boost/utility/value_init.hpp (props changed)
branches/release/boost/uuid/ (props changed)
branches/release/boost/variant/ (props changed)
branches/release/boost/version.hpp (props changed)
branches/release/boost/wave/ (props changed)
branches/release/boost/xpressive/ (props changed)
branches/release/boostcpp.jam (props changed)
branches/release/bootstrap.bat (props changed)
branches/release/bootstrap.sh (props changed)
branches/release/doc/ (props changed)
branches/release/index.htm (props changed)
branches/release/index.html (props changed)
branches/release/libs/ (props changed)
branches/release/libs/algorithm/string/ (props changed)
branches/release/libs/array/ (props changed)
branches/release/libs/array/test/array0.cpp (props changed)
branches/release/libs/array/test/array2.cpp (props changed)
branches/release/libs/array/test/array6.cpp (props changed)
branches/release/libs/bimap/ (props changed)
branches/release/libs/config/ (props changed)
branches/release/libs/date_time/ (props changed)
branches/release/libs/date_time/data/date_time_zonespec.csv (props changed)
branches/release/libs/date_time/example/gregorian/days_between_new_years.cpp (props changed)
branches/release/libs/date_time/example/gregorian/days_since_year_start.cpp (props changed)
branches/release/libs/date_time/example/gregorian/days_till_new_year.cpp (props changed)
branches/release/libs/date_time/example/gregorian/month_add.cpp (props changed)
branches/release/libs/date_time/example/local_time/flight.cpp (props changed)
branches/release/libs/date_time/example/local_time/local_date_time.cpp (props changed)
branches/release/libs/date_time/example/posix_time/print_hours.cpp (props changed)
branches/release/libs/date_time/example/posix_time/time_math.cpp (props changed)
branches/release/libs/date_time/example/tutorial/io_tutorial.cpp (props changed)
branches/release/libs/date_time/test/posix_time/testtime_facet.cpp (props changed)
branches/release/libs/date_time/test/posix_time/testtime_input_facet.cpp (props changed)
branches/release/libs/date_time/xmldoc/date_class.xml (props changed)
branches/release/libs/date_time/xmldoc/usage_examples.xml (props changed)
branches/release/libs/detail/ (props changed)
branches/release/libs/filesystem/ (props changed)
branches/release/libs/function/ (props changed)
branches/release/libs/functional/ (props changed)
branches/release/libs/fusion/ (props changed)
branches/release/libs/geometry/ (props changed)
branches/release/libs/geometry/doc/ (props changed)
branches/release/libs/geometry/doc/Jamfile.v2 (props changed)
branches/release/libs/geometry/doc/about_documentation.qbk (props changed)
branches/release/libs/geometry/doc/acknowledgments.qbk (props changed)
branches/release/libs/geometry/doc/concept/ (props changed)
branches/release/libs/geometry/doc/copyright_note_policy.txt (props changed)
branches/release/libs/geometry/doc/design_rationale.qbk (props changed)
branches/release/libs/geometry/doc/doxy/ (props changed)
branches/release/libs/geometry/doc/generated/ (props changed)
branches/release/libs/geometry/doc/geometry.qbk (props changed)
branches/release/libs/geometry/doc/html/ (props changed)
branches/release/libs/geometry/doc/imports.qbk (props changed)
branches/release/libs/geometry/doc/introduction.qbk (props changed)
branches/release/libs/geometry/doc/make_qbk.py (props changed)
branches/release/libs/geometry/doc/matrix.qbk (props changed)
branches/release/libs/geometry/doc/quickref.xml (props changed)
branches/release/libs/geometry/doc/quickstart.qbk (props changed)
branches/release/libs/geometry/doc/readme.txt (props changed)
branches/release/libs/geometry/doc/reference/ (props changed)
branches/release/libs/geometry/doc/reference.qbk (props changed)
branches/release/libs/geometry/doc/src/ (props changed)
branches/release/libs/geometry/example/ (props changed)
branches/release/libs/geometry/index.html (props changed)
branches/release/libs/geometry/test/ (props changed)
branches/release/libs/graph/doc/ (props changed)
branches/release/libs/graph_parallel/ (props changed)
branches/release/libs/icl/ (props changed)
branches/release/libs/icl/doc/ (props changed)
branches/release/libs/icl/doc/html/ (props changed)
branches/release/libs/icl/doc/html/header/boost/icl/ (props changed)
branches/release/libs/icl/test/ (props changed)
branches/release/libs/icl/test/test_doc_code_/ (props changed)
branches/release/libs/integer/ (props changed)
branches/release/libs/interprocess/ (props changed)
branches/release/libs/intrusive/ (props changed)
branches/release/libs/io/ (props changed)
branches/release/libs/io/doc/ (props changed)
branches/release/libs/iostreams/ (props changed)
branches/release/libs/iterator/ (props changed)
branches/release/libs/libraries.htm (props changed)
branches/release/libs/locale/ (props changed)
branches/release/libs/locale/src/ (props changed)
branches/release/libs/maintainers.txt (props changed)
branches/release/libs/math/ (props changed)
branches/release/libs/math/doc/sf_and_dist/faq.qbk (props changed)
branches/release/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/faq.html (props changed)
branches/release/libs/math/test/s_.ipp (props changed)
branches/release/libs/mpi/build/ (props changed)
branches/release/libs/mpl/doc/refmanual/broken-compiler-workarounds.html (props changed)
branches/release/libs/mpl/doc/refmanual/categorized-index-concepts.html (props changed)
branches/release/libs/mpl/doc/refmanual/cfg-no-preprocessed-headers.html (props changed)
branches/release/libs/mpl/doc/refmanual/composition-and-argument-binding.html (props changed)
branches/release/libs/mpl/doc/refmanual/data-types-concepts.html (props changed)
branches/release/libs/mpl/doc/refmanual/data-types-miscellaneous.html (props changed)
branches/release/libs/mpl/doc/refmanual/extensible-associative-sequence.html (props changed)
branches/release/libs/mpl/doc/refmanual/inserter-class.html (props changed)
branches/release/libs/mpl/doc/refmanual/tag-dispatched-metafunction.html (props changed)
branches/release/libs/mpl/doc/refmanual/trivial-metafunctions-summary.html (props changed)
branches/release/libs/mpl/doc/src/refmanual/Iterators-Iterator.rst (props changed)
branches/release/libs/msm/ (props changed)
branches/release/libs/numeric/ublas/ (props changed)
branches/release/libs/numeric/ublas/doc/ (props changed)
branches/release/libs/parameter/doc/html/index.html (props changed)
branches/release/libs/phoenix/doc/basics.qbk (props changed)
branches/release/libs/phoenix/doc/examples/extending_actors.qbk (props changed)
branches/release/libs/phoenix/doc/organisation.qbk (props changed)
branches/release/libs/pool/ (props changed)
branches/release/libs/program_options/ (props changed)
branches/release/libs/program_options/test/parsers_test.cpp (props changed)
branches/release/libs/property_tree/ (props changed)
branches/release/libs/range/ (props changed)
branches/release/libs/regex/ (props changed)
branches/release/libs/serialization/ (props changed)
branches/release/libs/serialization/example/ (props changed)
branches/release/libs/serialization/src/ (props changed)
branches/release/libs/serialization/test/test_diamond_complex.cpp (props changed)
branches/release/libs/signals/ (props changed)
branches/release/libs/signals2/ (props changed)
branches/release/libs/signals2/doc/ (props changed)
branches/release/libs/spirit/ (props changed)
branches/release/libs/spirit/classic/example/ (props changed)
branches/release/libs/spirit/doc/ (props changed)
branches/release/libs/spirit/example/ (props changed)
branches/release/libs/spirit/phoenix/ (props changed)
branches/release/libs/spirit/test/ (props changed)
branches/release/libs/spirit/test/qi/optional.cpp (props changed)
branches/release/libs/statechart/ (props changed)
branches/release/libs/static_assert/ (props changed)
branches/release/libs/system/ (props changed)
branches/release/libs/thread/ (props changed)
branches/release/libs/timer/ (props changed)
branches/release/libs/tr1/ (props changed)
branches/release/libs/type_traits/ (props changed)
branches/release/libs/typeof/doc/typeof.qbk (props changed)
branches/release/libs/utility/ (props changed)
branches/release/libs/utility/assert.html (props changed)
branches/release/libs/utility/assert_test.cpp (props changed)
branches/release/libs/utility/swap.html (props changed)
branches/release/libs/utility/swap/test/std_bitset.cpp (props changed)
branches/release/libs/utility/value_init.htm (props changed)
branches/release/libs/utility/value_init_test.cpp (props changed)
branches/release/libs/uuid/ (props changed)
branches/release/libs/wave/ (props changed)
branches/release/more/ (props changed)
branches/release/rst.css (props changed)
branches/release/status/ (props changed)
branches/release/status/Jamfile.v2 (props changed)
branches/release/status/expected_results.xml (props changed)
branches/release/status/explicit-failures-markup.xml (props changed)
branches/release/status/explicit-failures.xsd (props changed)
branches/release/tools/ (props changed)
branches/release/tools/bcp/ (props changed)
branches/release/tools/boostbook/ (props changed)
branches/release/tools/build/v2/ (props changed)
branches/release/tools/build/v2/tools/mpi.jam (props changed)
branches/release/tools/inspect/ (props changed)
branches/release/tools/quickbook/ (props changed)
branches/release/tools/regression/ (props changed)
branches/release/tools/regression/src/library_status.cpp (props changed)
branches/release/tools/release/ (props changed)
branches/release/tools/wave/ (props changed)
Text files modified:
branches/release/boost/proto/detail/as_expr.hpp | 8 +
branches/release/boost/proto/detail/as_lvalue.hpp | 2
branches/release/boost/proto/detail/basic_expr.hpp | 6 +
branches/release/boost/proto/detail/dont_care.hpp | 4
branches/release/boost/proto/detail/expr.hpp | 19 +++
branches/release/boost/proto/detail/expr_funop.hpp | 2
branches/release/boost/proto/detail/funop.hpp | 1
branches/release/boost/proto/detail/generate_by_value.hpp | 2
branches/release/boost/proto/detail/ignore_unused.hpp | 4
branches/release/boost/proto/detail/make_expr.hpp | 2
branches/release/boost/proto/detail/make_expr_.hpp | 2
branches/release/boost/proto/detail/make_expr_funop.hpp | 1
branches/release/boost/proto/detail/memfun_funop.hpp | 1
branches/release/boost/proto/detail/preprocessed/basic_expr.hpp | 35 ++++++
branches/release/boost/proto/detail/preprocessed/expr.hpp | 214 ++++++++++++++++++++++++++++++++++++++++
branches/release/boost/proto/detail/preprocessed/expr_variadic.hpp | 106 +++++++++++++++++++
branches/release/boost/proto/detail/preprocessed/extends_funop.hpp | 20 +-
branches/release/boost/proto/detail/preprocessed/extends_funop_const.hpp | 20 +-
branches/release/boost/proto/detail/preprocessed/funop.hpp | 10 +
branches/release/boost/proto/detail/preprocessed/generate_by_value.hpp | 20 +++
branches/release/boost/proto/detail/preprocessed/make_expr.hpp | 18 +++
branches/release/boost/proto/detail/preprocessed/make_expr_.hpp | 11 ++
branches/release/boost/proto/detail/preprocessed/make_expr_funop.hpp | 9 +
branches/release/boost/proto/detail/preprocessed/memfun_funop.hpp | 10 +
branches/release/boost/proto/detail/preprocessed/traits.hpp | 22 ++++
branches/release/boost/proto/detail/preprocessed/unpack_expr_.hpp | 21 +++
branches/release/boost/proto/detail/traits.hpp | 2
branches/release/boost/proto/detail/unpack_expr_.hpp | 3
branches/release/boost/proto/domain.hpp | 2
branches/release/boost/proto/expr.hpp | 4
branches/release/boost/proto/extends.hpp | 18 +++
branches/release/boost/proto/generate.hpp | 7 +
branches/release/boost/proto/make_expr.hpp | 6 +
branches/release/boost/proto/operators.hpp | 9 +
branches/release/boost/proto/traits.hpp | 38 +++++++
branches/release/boost/proto/transform/call.hpp | 13 ++
branches/release/boost/proto/transform/detail/call.hpp | 1
branches/release/boost/proto/transform/detail/construct_funop.hpp | 1
branches/release/boost/proto/transform/detail/construct_pod_funop.hpp | 1
branches/release/boost/proto/transform/detail/make.hpp | 4
branches/release/boost/proto/transform/detail/make_gcc_workaround.hpp | 2
branches/release/boost/proto/transform/detail/pass_through_impl.hpp | 1
branches/release/boost/proto/transform/detail/preprocessed/call.hpp | 7 +
branches/release/boost/proto/transform/detail/preprocessed/construct_funop.hpp | 10 +
branches/release/boost/proto/transform/detail/preprocessed/construct_pod_funop.hpp | 10 +
branches/release/boost/proto/transform/detail/preprocessed/make.hpp | 44 ++++++++
branches/release/boost/proto/transform/detail/preprocessed/make_gcc_workaround.hpp | 22 ++++
branches/release/boost/proto/transform/detail/preprocessed/pass_through_impl.hpp | 10 +
branches/release/boost/proto/transform/detail/preprocessed/when.hpp | 11 ++
branches/release/boost/proto/transform/detail/when.hpp | 1
branches/release/boost/proto/transform/impl.hpp | 8 +
branches/release/boost/proto/transform/make.hpp | 3
branches/release/boost/proto/transform/pass_through.hpp | 1
branches/release/libs/proto/preprocess/wave.cfg | 1
54 files changed, 788 insertions(+), 22 deletions(-)
Modified: branches/release/boost/proto/detail/as_expr.hpp
==============================================================================
--- branches/release/boost/proto/detail/as_expr.hpp (original)
+++ branches/release/boost/proto/detail/as_expr.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -45,6 +45,7 @@
typedef proto::expr<proto::tag::terminal, term<value_type>, 0> expr_type;
typedef typename Generator::template result<Generator(expr_type)>::type result_type;
+ BOOST_FORCEINLINE
result_type operator()(T &t) const
{
return Generator()(expr_type::make(t));
@@ -59,6 +60,7 @@
typedef proto::basic_expr<proto::tag::terminal, term<value_type>, 0> expr_type;
typedef typename Generator::template result<Generator(expr_type)>::type result_type;
+ BOOST_FORCEINLINE
result_type operator()(T &t) const
{
return Generator()(expr_type::make(t));
@@ -72,6 +74,7 @@
typedef typename term_traits<T &>::value_type value_type;
typedef proto::expr<proto::tag::terminal, term<value_type>, 0> result_type;
+ BOOST_FORCEINLINE
result_type operator()(T &t) const
{
return result_type::make(t);
@@ -85,6 +88,7 @@
typedef typename term_traits<T &>::value_type value_type;
typedef proto::basic_expr<proto::tag::terminal, term<value_type>, 0> result_type;
+ BOOST_FORCEINLINE
result_type operator()(T &t) const
{
return result_type::make(t);
@@ -107,6 +111,7 @@
typedef proto::expr<proto::tag::terminal, term<reference>, 0> expr_type;
typedef typename Generator::template result<Generator(expr_type)>::type result_type;
+ BOOST_FORCEINLINE
result_type operator()(T &t) const
{
return Generator()(expr_type::make(t));
@@ -125,6 +130,7 @@
typedef proto::basic_expr<proto::tag::terminal, term<reference>, 0> expr_type;
typedef typename Generator::template result<Generator(expr_type)>::type result_type;
+ BOOST_FORCEINLINE
result_type operator()(T &t) const
{
return Generator()(expr_type::make(t));
@@ -142,6 +148,7 @@
#endif
typedef proto::expr<proto::tag::terminal, term<reference>, 0> result_type;
+ BOOST_FORCEINLINE
result_type operator()(T &t) const
{
return result_type::make(t);
@@ -159,6 +166,7 @@
#endif
typedef proto::basic_expr<proto::tag::terminal, term<reference>, 0> result_type;
+ BOOST_FORCEINLINE
result_type operator()(T &t) const
{
return result_type::make(t);
Modified: branches/release/boost/proto/detail/as_lvalue.hpp
==============================================================================
--- branches/release/boost/proto/detail/as_lvalue.hpp (original)
+++ branches/release/boost/proto/detail/as_lvalue.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -16,12 +16,14 @@
namespace detail
{
template<typename T>
+ BOOST_FORCEINLINE
T &as_lvalue(T &t)
{
return t;
}
template<typename T>
+ BOOST_FORCEINLINE
T const &as_lvalue(T const &t)
{
return t;
Modified: branches/release/boost/proto/detail/basic_expr.hpp
==============================================================================
--- branches/release/boost/proto/detail/basic_expr.hpp (original)
+++ branches/release/boost/proto/detail/basic_expr.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -109,6 +109,7 @@
/// \return *this
///
+ BOOST_FORCEINLINE
basic_expr const &proto_base() const
{
return *this;
@@ -116,6 +117,7 @@
/// \overload
///
+ BOOST_FORCEINLINE
basic_expr &proto_base()
{
return *this;
@@ -126,6 +128,7 @@
/// arguments.
///
template<typename A0>
+ BOOST_FORCEINLINE
static basic_expr const make(A0 &a0)
{
return detail::make_terminal(a0, static_cast<basic_expr *>(0), static_cast<proto_args *>(0));
@@ -134,6 +137,7 @@
/// \overload
///
template<typename A0>
+ BOOST_FORCEINLINE
static basic_expr const make(A0 const &a0)
{
return detail::make_terminal(a0, static_cast<basic_expr *>(0), static_cast<proto_args *>(0));
@@ -143,6 +147,7 @@
/// arguments.
///
template<BOOST_PP_ENUM_PARAMS(ARG_COUNT, typename A)>
+ BOOST_FORCEINLINE
static basic_expr const make(BOOST_PP_ENUM_BINARY_PARAMS(ARG_COUNT, A, const &a))
{
basic_expr that = {BOOST_PP_ENUM_PARAMS(ARG_COUNT, a)};
@@ -163,6 +168,7 @@
/// \attention Proto overloads <tt>operator&</tt>, which means that
/// proto-ified objects cannot have their addresses taken, unless we use
/// the following hack to make \c &x implicitly convertible to \c X*.
+ BOOST_FORCEINLINE
operator address_of_hack_type_() const
{
return boost::addressof(this->child0);
Modified: branches/release/boost/proto/detail/dont_care.hpp
==============================================================================
--- branches/release/boost/proto/detail/dont_care.hpp (original)
+++ branches/release/boost/proto/detail/dont_care.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -9,13 +9,15 @@
#ifndef BOOST_PROTO_DETAIL_DONT_CARE_HPP_EAN_11_07_2007
#define BOOST_PROTO_DETAIL_DONT_CARE_HPP_EAN_11_07_2007
+#include <boost/config.hpp>
+
namespace boost { namespace proto
{
namespace detail
{
struct dont_care
{
- dont_care(...);
+ BOOST_FORCEINLINE dont_care(...);
};
}
}}
Modified: branches/release/boost/proto/detail/expr.hpp
==============================================================================
--- branches/release/boost/proto/detail/expr.hpp (original)
+++ branches/release/boost/proto/detail/expr.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -140,6 +140,7 @@
/// \return *this
///
+ BOOST_FORCEINLINE
expr const &proto_base() const
{
return *this;
@@ -147,6 +148,7 @@
/// \overload
///
+ BOOST_FORCEINLINE
expr &proto_base()
{
return *this;
@@ -157,6 +159,7 @@
/// arguments.
///
template<typename A0>
+ BOOST_FORCEINLINE
static expr const make(A0 &a0)
{
return detail::make_terminal(a0, static_cast<expr *>(0), static_cast<proto_args *>(0));
@@ -165,6 +168,7 @@
/// \overload
///
template<typename A0>
+ BOOST_FORCEINLINE
static expr const make(A0 const &a0)
{
return detail::make_terminal(a0, static_cast<expr *>(0), static_cast<proto_args *>(0));
@@ -174,6 +178,7 @@
/// arguments.
///
template<BOOST_PP_ENUM_PARAMS(ARG_COUNT, typename A)>
+ BOOST_FORCEINLINE
static expr const make(BOOST_PP_ENUM_BINARY_PARAMS(ARG_COUNT, A, const &a))
{
expr that = {BOOST_PP_ENUM_PARAMS(ARG_COUNT, a)};
@@ -194,6 +199,7 @@
/// \attention Proto overloads <tt>operator&</tt>, which means that
/// proto-ified objects cannot have their addresses taken, unless we use
/// the following hack to make \c &x implicitly convertible to \c X*.
+ BOOST_FORCEINLINE
operator address_of_hack_type_() const
{
return boost::addressof(this->child0);
@@ -208,6 +214,7 @@
///
/// \param a The rhs.
/// \return A new \c expr\<\> node representing an assignment of \c that to \c *this.
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, expr const &>
@@ -228,6 +235,7 @@
/// \param a The rhs.
/// \return A new \c expr\<\> node representing an assignment of \c a to \c *this.
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -246,6 +254,7 @@
/// \overload
///
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -265,6 +274,7 @@
/// \overload
///
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, typename result_of::as_child<A>::type>
@@ -283,6 +293,7 @@
/// \overload
///
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, typename result_of::as_child<A const>::type>
@@ -304,6 +315,7 @@
/// \param a The rhs.
/// \return A new \c expr\<\> node representing \c *this subscripted with \c a.
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -322,6 +334,7 @@
/// \overload
///
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -341,6 +354,7 @@
/// \overload
///
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr &, typename result_of::as_child<A>::type>
@@ -359,6 +373,7 @@
/// \overload
///
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr &, typename result_of::as_child<A const>::type>
@@ -387,6 +402,7 @@
/// \overload
///
template<typename ...A>
+ BOOST_FORCEINLINE
typename result_of::funop<
expr const(A const &...)
, expr
@@ -405,6 +421,7 @@
/// \overload
///
template<typename ...A>
+ BOOST_FORCEINLINE
typename result_of::funop<
expr(A const &...)
, expr
@@ -425,6 +442,7 @@
/// Function call
///
/// \return A new \c expr\<\> node representing the function invocation of \c (*this)().
+ BOOST_FORCEINLINE
proto::expr<proto::tag::function, list1<expr const &>, 1> const
operator ()() const
{
@@ -435,6 +453,7 @@
#ifdef BOOST_PROTO_DEFINE_TERMINAL
/// \overload
///
+ BOOST_FORCEINLINE
proto::expr<proto::tag::function, list1<expr &>, 1> const
operator ()()
{
Modified: branches/release/boost/proto/detail/expr_funop.hpp
==============================================================================
--- branches/release/boost/proto/detail/expr_funop.hpp (original)
+++ branches/release/boost/proto/detail/expr_funop.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -11,6 +11,7 @@
/// \overload
///
template<BOOST_PP_ENUM_PARAMS(N, typename A)>
+ BOOST_FORCEINLINE
typename result_of::BOOST_PP_CAT(funop, N)<
expr const
, default_domain BOOST_PP_ENUM_TRAILING_PARAMS(N, const A)
@@ -27,6 +28,7 @@
/// \overload
///
template<BOOST_PP_ENUM_PARAMS(N, typename A)>
+ BOOST_FORCEINLINE
typename result_of::BOOST_PP_CAT(funop, N)<
expr
, default_domain BOOST_PP_ENUM_TRAILING_PARAMS(N, const A)
Modified: branches/release/boost/proto/detail/funop.hpp
==============================================================================
--- branches/release/boost/proto/detail/funop.hpp (original)
+++ branches/release/boost/proto/detail/funop.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -55,6 +55,7 @@
>
>::type type;
+ BOOST_FORCEINLINE
static type const call(
Expr &e
BOOST_PP_ENUM_TRAILING_BINARY_PARAMS(BOOST_PP_ITERATION(), A, &a)
Modified: branches/release/boost/proto/detail/generate_by_value.hpp
==============================================================================
--- branches/release/boost/proto/detail/generate_by_value.hpp (original)
+++ branches/release/boost/proto/detail/generate_by_value.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -50,6 +50,7 @@
typedef proto::expr<Tag, src_args, N> src_type;
typedef proto::expr<Tag, dst_args, N> type;
+ BOOST_FORCEINLINE
static type const call(src_type const &e)
{
type that = {
@@ -77,6 +78,7 @@
typedef proto::basic_expr<Tag, src_args, N> src_type;
typedef proto::basic_expr<Tag, dst_args, N> type;
+ BOOST_FORCEINLINE
static type const call(src_type const &e)
{
type that = {
Modified: branches/release/boost/proto/detail/ignore_unused.hpp
==============================================================================
--- branches/release/boost/proto/detail/ignore_unused.hpp (original)
+++ branches/release/boost/proto/detail/ignore_unused.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -10,12 +10,14 @@
#ifndef BOOST_PROTO_DETAIL_IGNORE_UNUSED_HPP_EAN_03_03_2008
#define BOOST_PROTO_DETAIL_IGNORE_UNUSED_HPP_EAN_03_03_2008
+#include <boost/config.hpp>
+
namespace boost { namespace proto
{
namespace detail
{
template<typename T>
- inline void ignore_unused(T const &)
+ BOOST_FORCEINLINE void ignore_unused(T const &)
{}
}
}}
Modified: branches/release/boost/proto/detail/make_expr.hpp
==============================================================================
--- branches/release/boost/proto/detail/make_expr.hpp (original)
+++ branches/release/boost/proto/detail/make_expr.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -35,6 +35,7 @@
/// \overload
///
template<typename Tag BOOST_PP_ENUM_TRAILING_PARAMS(N, typename A)>
+ BOOST_FORCEINLINE
typename lazy_disable_if<
is_domain<A0>
, result_of::make_expr<
@@ -54,6 +55,7 @@
/// \overload
///
template<typename Tag, typename Domain BOOST_PP_ENUM_TRAILING_PARAMS(N, typename C)>
+ BOOST_FORCEINLINE
typename result_of::make_expr<
Tag
, Domain
Modified: branches/release/boost/proto/detail/make_expr_.hpp
==============================================================================
--- branches/release/boost/proto/detail/make_expr_.hpp (original)
+++ branches/release/boost/proto/detail/make_expr_.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -39,6 +39,7 @@
{
typedef typename proto::detail::protoify<A, Domain>::result_type result_type;
+ BOOST_FORCEINLINE
result_type operator()(typename add_reference<A>::type a) const
{
return proto::detail::protoify<A, Domain>()(a);
@@ -78,6 +79,7 @@
typedef typename Domain::proto_generator proto_generator;
typedef typename proto_generator::template result<proto_generator(expr_type)>::type result_type;
+ BOOST_FORCEINLINE
result_type operator()(BOOST_PP_ENUM_BINARY_PARAMS(N, typename add_reference<A, >::type a)) const
{
expr_type const that = {
Modified: branches/release/boost/proto/detail/make_expr_funop.hpp
==============================================================================
--- branches/release/boost/proto/detail/make_expr_funop.hpp (original)
+++ branches/release/boost/proto/detail/make_expr_funop.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -47,6 +47,7 @@
/// \overload
///
template<BOOST_PP_ENUM_PARAMS(N, typename A)>
+ BOOST_FORCEINLINE
typename result_of::make_expr<
Tag
, Domain
Modified: branches/release/boost/proto/detail/memfun_funop.hpp
==============================================================================
--- branches/release/boost/proto/detail/memfun_funop.hpp (original)
+++ branches/release/boost/proto/detail/memfun_funop.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -33,6 +33,7 @@
#define N BOOST_PP_ITERATION()
template<BOOST_PP_ENUM_PARAMS(N, typename A)>
+ BOOST_FORCEINLINE
result_type operator()(BOOST_PP_ENUM_BINARY_PARAMS(N, A, const &a)) const
{
BOOST_PROTO_USE_GET_POINTER();
Modified: branches/release/boost/proto/detail/preprocessed/basic_expr.hpp
==============================================================================
--- branches/release/boost/proto/detail/preprocessed/basic_expr.hpp (original)
+++ branches/release/boost/proto/detail/preprocessed/basic_expr.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -51,12 +51,14 @@
typedef void proto_child1; typedef void proto_child2; typedef void proto_child3; typedef void proto_child4; typedef void proto_child5; typedef void proto_child6; typedef void proto_child7; typedef void proto_child8; typedef void proto_child9;
+ BOOST_FORCEINLINE
basic_expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
basic_expr &proto_base()
{
return *this;
@@ -65,6 +67,7 @@
template<typename A0>
+ BOOST_FORCEINLINE
static basic_expr const make(A0 &a0)
{
return detail::make_terminal(a0, static_cast<basic_expr *>(0), static_cast<proto_args *>(0));
@@ -72,6 +75,7 @@
template<typename A0>
+ BOOST_FORCEINLINE
static basic_expr const make(A0 const &a0)
{
return detail::make_terminal(a0, static_cast<basic_expr *>(0), static_cast<proto_args *>(0));
@@ -125,12 +129,14 @@
typedef void proto_child1; typedef void proto_child2; typedef void proto_child3; typedef void proto_child4; typedef void proto_child5; typedef void proto_child6; typedef void proto_child7; typedef void proto_child8; typedef void proto_child9;
+ BOOST_FORCEINLINE
basic_expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
basic_expr &proto_base()
{
return *this;
@@ -139,6 +145,7 @@
template<typename A0>
+ BOOST_FORCEINLINE
static basic_expr const make(A0 const &a0)
{
basic_expr that = {a0};
@@ -155,6 +162,7 @@
+ BOOST_FORCEINLINE
operator address_of_hack_type_() const
{
return boost::addressof(this->child0);
@@ -205,12 +213,14 @@
typedef void proto_child2; typedef void proto_child3; typedef void proto_child4; typedef void proto_child5; typedef void proto_child6; typedef void proto_child7; typedef void proto_child8; typedef void proto_child9;
+ BOOST_FORCEINLINE
basic_expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
basic_expr &proto_base()
{
return *this;
@@ -219,6 +229,7 @@
template<typename A0 , typename A1>
+ BOOST_FORCEINLINE
static basic_expr const make(A0 const &a0 , A1 const &a1)
{
basic_expr that = {a0 , a1};
@@ -273,12 +284,14 @@
typedef void proto_child3; typedef void proto_child4; typedef void proto_child5; typedef void proto_child6; typedef void proto_child7; typedef void proto_child8; typedef void proto_child9;
+ BOOST_FORCEINLINE
basic_expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
basic_expr &proto_base()
{
return *this;
@@ -287,6 +300,7 @@
template<typename A0 , typename A1 , typename A2>
+ BOOST_FORCEINLINE
static basic_expr const make(A0 const &a0 , A1 const &a1 , A2 const &a2)
{
basic_expr that = {a0 , a1 , a2};
@@ -341,12 +355,14 @@
typedef void proto_child4; typedef void proto_child5; typedef void proto_child6; typedef void proto_child7; typedef void proto_child8; typedef void proto_child9;
+ BOOST_FORCEINLINE
basic_expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
basic_expr &proto_base()
{
return *this;
@@ -355,6 +371,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3>
+ BOOST_FORCEINLINE
static basic_expr const make(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3)
{
basic_expr that = {a0 , a1 , a2 , a3};
@@ -409,12 +426,14 @@
typedef void proto_child5; typedef void proto_child6; typedef void proto_child7; typedef void proto_child8; typedef void proto_child9;
+ BOOST_FORCEINLINE
basic_expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
basic_expr &proto_base()
{
return *this;
@@ -423,6 +442,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
+ BOOST_FORCEINLINE
static basic_expr const make(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4)
{
basic_expr that = {a0 , a1 , a2 , a3 , a4};
@@ -477,12 +497,14 @@
typedef void proto_child6; typedef void proto_child7; typedef void proto_child8; typedef void proto_child9;
+ BOOST_FORCEINLINE
basic_expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
basic_expr &proto_base()
{
return *this;
@@ -491,6 +513,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
+ BOOST_FORCEINLINE
static basic_expr const make(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5)
{
basic_expr that = {a0 , a1 , a2 , a3 , a4 , a5};
@@ -545,12 +568,14 @@
typedef void proto_child7; typedef void proto_child8; typedef void proto_child9;
+ BOOST_FORCEINLINE
basic_expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
basic_expr &proto_base()
{
return *this;
@@ -559,6 +584,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
+ BOOST_FORCEINLINE
static basic_expr const make(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6)
{
basic_expr that = {a0 , a1 , a2 , a3 , a4 , a5 , a6};
@@ -613,12 +639,14 @@
typedef void proto_child8; typedef void proto_child9;
+ BOOST_FORCEINLINE
basic_expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
basic_expr &proto_base()
{
return *this;
@@ -627,6 +655,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
+ BOOST_FORCEINLINE
static basic_expr const make(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6 , A7 const &a7)
{
basic_expr that = {a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7};
@@ -681,12 +710,14 @@
typedef void proto_child9;
+ BOOST_FORCEINLINE
basic_expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
basic_expr &proto_base()
{
return *this;
@@ -695,6 +726,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
+ BOOST_FORCEINLINE
static basic_expr const make(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6 , A7 const &a7 , A8 const &a8)
{
basic_expr that = {a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8};
@@ -749,12 +781,14 @@
+ BOOST_FORCEINLINE
basic_expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
basic_expr &proto_base()
{
return *this;
@@ -763,6 +797,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9>
+ BOOST_FORCEINLINE
static basic_expr const make(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6 , A7 const &a7 , A8 const &a8 , A9 const &a9)
{
basic_expr that = {a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9};
Modified: branches/release/boost/proto/detail/preprocessed/expr.hpp
==============================================================================
--- branches/release/boost/proto/detail/preprocessed/expr.hpp (original)
+++ branches/release/boost/proto/detail/preprocessed/expr.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -51,12 +51,14 @@
typedef void proto_child1; typedef void proto_child2; typedef void proto_child3; typedef void proto_child4; typedef void proto_child5; typedef void proto_child6; typedef void proto_child7; typedef void proto_child8; typedef void proto_child9;
+ BOOST_FORCEINLINE
expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
expr &proto_base()
{
return *this;
@@ -65,6 +67,7 @@
template<typename A0>
+ BOOST_FORCEINLINE
static expr const make(A0 &a0)
{
return detail::make_terminal(a0, static_cast<expr *>(0), static_cast<proto_args *>(0));
@@ -72,6 +75,7 @@
template<typename A0>
+ BOOST_FORCEINLINE
static expr const make(A0 const &a0)
{
return detail::make_terminal(a0, static_cast<expr *>(0), static_cast<proto_args *>(0));
@@ -83,6 +87,7 @@
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, expr const &>
@@ -102,6 +107,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -119,6 +125,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -136,6 +143,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, typename result_of::as_child<A>::type>
@@ -153,6 +161,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, typename result_of::as_child<A const>::type>
@@ -172,6 +181,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -189,6 +199,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -206,6 +217,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr &, typename result_of::as_child<A>::type>
@@ -223,6 +235,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr &, typename result_of::as_child<A const>::type>
@@ -247,6 +260,7 @@
+ BOOST_FORCEINLINE
proto::expr<proto::tag::function, list1<expr const &>, 1> const
operator ()() const
{
@@ -255,6 +269,7 @@
}
+ BOOST_FORCEINLINE
proto::expr<proto::tag::function, list1<expr &>, 1> const
operator ()()
{
@@ -264,6 +279,7 @@
template<typename A0>
+ BOOST_FORCEINLINE
typename result_of::funop1<
expr const
, default_domain , const A0
@@ -278,6 +294,7 @@
template<typename A0>
+ BOOST_FORCEINLINE
typename result_of::funop1<
expr
, default_domain , const A0
@@ -292,6 +309,7 @@
template<typename A0 , typename A1>
+ BOOST_FORCEINLINE
typename result_of::funop2<
expr const
, default_domain , const A0 , const A1
@@ -306,6 +324,7 @@
template<typename A0 , typename A1>
+ BOOST_FORCEINLINE
typename result_of::funop2<
expr
, default_domain , const A0 , const A1
@@ -320,6 +339,7 @@
template<typename A0 , typename A1 , typename A2>
+ BOOST_FORCEINLINE
typename result_of::funop3<
expr const
, default_domain , const A0 , const A1 , const A2
@@ -334,6 +354,7 @@
template<typename A0 , typename A1 , typename A2>
+ BOOST_FORCEINLINE
typename result_of::funop3<
expr
, default_domain , const A0 , const A1 , const A2
@@ -348,6 +369,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3>
+ BOOST_FORCEINLINE
typename result_of::funop4<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3
@@ -362,6 +384,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3>
+ BOOST_FORCEINLINE
typename result_of::funop4<
expr
, default_domain , const A0 , const A1 , const A2 , const A3
@@ -376,6 +399,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
+ BOOST_FORCEINLINE
typename result_of::funop5<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4
@@ -390,6 +414,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
+ BOOST_FORCEINLINE
typename result_of::funop5<
expr
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4
@@ -404,6 +429,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
+ BOOST_FORCEINLINE
typename result_of::funop6<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5
@@ -418,6 +444,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
+ BOOST_FORCEINLINE
typename result_of::funop6<
expr
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5
@@ -432,6 +459,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
+ BOOST_FORCEINLINE
typename result_of::funop7<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6
@@ -446,6 +474,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
+ BOOST_FORCEINLINE
typename result_of::funop7<
expr
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6
@@ -460,6 +489,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
+ BOOST_FORCEINLINE
typename result_of::funop8<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7
@@ -474,6 +504,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
+ BOOST_FORCEINLINE
typename result_of::funop8<
expr
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7
@@ -488,6 +519,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
+ BOOST_FORCEINLINE
typename result_of::funop9<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 , const A8
@@ -502,6 +534,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
+ BOOST_FORCEINLINE
typename result_of::funop9<
expr
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 , const A8
@@ -559,12 +592,14 @@
typedef void proto_child1; typedef void proto_child2; typedef void proto_child3; typedef void proto_child4; typedef void proto_child5; typedef void proto_child6; typedef void proto_child7; typedef void proto_child8; typedef void proto_child9;
+ BOOST_FORCEINLINE
expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
expr &proto_base()
{
return *this;
@@ -573,6 +608,7 @@
template<typename A0>
+ BOOST_FORCEINLINE
static expr const make(A0 const &a0)
{
expr that = {a0};
@@ -589,6 +625,7 @@
+ BOOST_FORCEINLINE
operator address_of_hack_type_() const
{
return boost::addressof(this->child0);
@@ -597,6 +634,7 @@
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, expr const &>
@@ -616,6 +654,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -633,6 +672,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -652,6 +692,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -669,6 +710,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -693,6 +735,7 @@
+ BOOST_FORCEINLINE
proto::expr<proto::tag::function, list1<expr const &>, 1> const
operator ()() const
{
@@ -702,6 +745,7 @@
template<typename A0>
+ BOOST_FORCEINLINE
typename result_of::funop1<
expr const
, default_domain , const A0
@@ -716,6 +760,7 @@
template<typename A0 , typename A1>
+ BOOST_FORCEINLINE
typename result_of::funop2<
expr const
, default_domain , const A0 , const A1
@@ -730,6 +775,7 @@
template<typename A0 , typename A1 , typename A2>
+ BOOST_FORCEINLINE
typename result_of::funop3<
expr const
, default_domain , const A0 , const A1 , const A2
@@ -744,6 +790,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3>
+ BOOST_FORCEINLINE
typename result_of::funop4<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3
@@ -758,6 +805,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
+ BOOST_FORCEINLINE
typename result_of::funop5<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4
@@ -772,6 +820,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
+ BOOST_FORCEINLINE
typename result_of::funop6<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5
@@ -786,6 +835,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
+ BOOST_FORCEINLINE
typename result_of::funop7<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6
@@ -800,6 +850,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
+ BOOST_FORCEINLINE
typename result_of::funop8<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7
@@ -814,6 +865,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
+ BOOST_FORCEINLINE
typename result_of::funop9<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 , const A8
@@ -871,12 +923,14 @@
typedef void proto_child2; typedef void proto_child3; typedef void proto_child4; typedef void proto_child5; typedef void proto_child6; typedef void proto_child7; typedef void proto_child8; typedef void proto_child9;
+ BOOST_FORCEINLINE
expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
expr &proto_base()
{
return *this;
@@ -885,6 +939,7 @@
template<typename A0 , typename A1>
+ BOOST_FORCEINLINE
static expr const make(A0 const &a0 , A1 const &a1)
{
expr that = {a0 , a1};
@@ -897,6 +952,7 @@
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, expr const &>
@@ -916,6 +972,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -933,6 +990,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -952,6 +1010,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -969,6 +1028,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -993,6 +1053,7 @@
+ BOOST_FORCEINLINE
proto::expr<proto::tag::function, list1<expr const &>, 1> const
operator ()() const
{
@@ -1002,6 +1063,7 @@
template<typename A0>
+ BOOST_FORCEINLINE
typename result_of::funop1<
expr const
, default_domain , const A0
@@ -1016,6 +1078,7 @@
template<typename A0 , typename A1>
+ BOOST_FORCEINLINE
typename result_of::funop2<
expr const
, default_domain , const A0 , const A1
@@ -1030,6 +1093,7 @@
template<typename A0 , typename A1 , typename A2>
+ BOOST_FORCEINLINE
typename result_of::funop3<
expr const
, default_domain , const A0 , const A1 , const A2
@@ -1044,6 +1108,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3>
+ BOOST_FORCEINLINE
typename result_of::funop4<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3
@@ -1058,6 +1123,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
+ BOOST_FORCEINLINE
typename result_of::funop5<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4
@@ -1072,6 +1138,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
+ BOOST_FORCEINLINE
typename result_of::funop6<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5
@@ -1086,6 +1153,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
+ BOOST_FORCEINLINE
typename result_of::funop7<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6
@@ -1100,6 +1168,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
+ BOOST_FORCEINLINE
typename result_of::funop8<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7
@@ -1114,6 +1183,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
+ BOOST_FORCEINLINE
typename result_of::funop9<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 , const A8
@@ -1171,12 +1241,14 @@
typedef void proto_child3; typedef void proto_child4; typedef void proto_child5; typedef void proto_child6; typedef void proto_child7; typedef void proto_child8; typedef void proto_child9;
+ BOOST_FORCEINLINE
expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
expr &proto_base()
{
return *this;
@@ -1185,6 +1257,7 @@
template<typename A0 , typename A1 , typename A2>
+ BOOST_FORCEINLINE
static expr const make(A0 const &a0 , A1 const &a1 , A2 const &a2)
{
expr that = {a0 , a1 , a2};
@@ -1197,6 +1270,7 @@
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, expr const &>
@@ -1216,6 +1290,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -1233,6 +1308,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -1252,6 +1328,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -1269,6 +1346,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -1293,6 +1371,7 @@
+ BOOST_FORCEINLINE
proto::expr<proto::tag::function, list1<expr const &>, 1> const
operator ()() const
{
@@ -1302,6 +1381,7 @@
template<typename A0>
+ BOOST_FORCEINLINE
typename result_of::funop1<
expr const
, default_domain , const A0
@@ -1316,6 +1396,7 @@
template<typename A0 , typename A1>
+ BOOST_FORCEINLINE
typename result_of::funop2<
expr const
, default_domain , const A0 , const A1
@@ -1330,6 +1411,7 @@
template<typename A0 , typename A1 , typename A2>
+ BOOST_FORCEINLINE
typename result_of::funop3<
expr const
, default_domain , const A0 , const A1 , const A2
@@ -1344,6 +1426,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3>
+ BOOST_FORCEINLINE
typename result_of::funop4<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3
@@ -1358,6 +1441,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
+ BOOST_FORCEINLINE
typename result_of::funop5<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4
@@ -1372,6 +1456,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
+ BOOST_FORCEINLINE
typename result_of::funop6<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5
@@ -1386,6 +1471,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
+ BOOST_FORCEINLINE
typename result_of::funop7<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6
@@ -1400,6 +1486,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
+ BOOST_FORCEINLINE
typename result_of::funop8<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7
@@ -1414,6 +1501,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
+ BOOST_FORCEINLINE
typename result_of::funop9<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 , const A8
@@ -1471,12 +1559,14 @@
typedef void proto_child4; typedef void proto_child5; typedef void proto_child6; typedef void proto_child7; typedef void proto_child8; typedef void proto_child9;
+ BOOST_FORCEINLINE
expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
expr &proto_base()
{
return *this;
@@ -1485,6 +1575,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3>
+ BOOST_FORCEINLINE
static expr const make(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3)
{
expr that = {a0 , a1 , a2 , a3};
@@ -1497,6 +1588,7 @@
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, expr const &>
@@ -1516,6 +1608,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -1533,6 +1626,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -1552,6 +1646,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -1569,6 +1664,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -1593,6 +1689,7 @@
+ BOOST_FORCEINLINE
proto::expr<proto::tag::function, list1<expr const &>, 1> const
operator ()() const
{
@@ -1602,6 +1699,7 @@
template<typename A0>
+ BOOST_FORCEINLINE
typename result_of::funop1<
expr const
, default_domain , const A0
@@ -1616,6 +1714,7 @@
template<typename A0 , typename A1>
+ BOOST_FORCEINLINE
typename result_of::funop2<
expr const
, default_domain , const A0 , const A1
@@ -1630,6 +1729,7 @@
template<typename A0 , typename A1 , typename A2>
+ BOOST_FORCEINLINE
typename result_of::funop3<
expr const
, default_domain , const A0 , const A1 , const A2
@@ -1644,6 +1744,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3>
+ BOOST_FORCEINLINE
typename result_of::funop4<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3
@@ -1658,6 +1759,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
+ BOOST_FORCEINLINE
typename result_of::funop5<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4
@@ -1672,6 +1774,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
+ BOOST_FORCEINLINE
typename result_of::funop6<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5
@@ -1686,6 +1789,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
+ BOOST_FORCEINLINE
typename result_of::funop7<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6
@@ -1700,6 +1804,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
+ BOOST_FORCEINLINE
typename result_of::funop8<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7
@@ -1714,6 +1819,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
+ BOOST_FORCEINLINE
typename result_of::funop9<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 , const A8
@@ -1771,12 +1877,14 @@
typedef void proto_child5; typedef void proto_child6; typedef void proto_child7; typedef void proto_child8; typedef void proto_child9;
+ BOOST_FORCEINLINE
expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
expr &proto_base()
{
return *this;
@@ -1785,6 +1893,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
+ BOOST_FORCEINLINE
static expr const make(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4)
{
expr that = {a0 , a1 , a2 , a3 , a4};
@@ -1797,6 +1906,7 @@
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, expr const &>
@@ -1816,6 +1926,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -1833,6 +1944,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -1852,6 +1964,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -1869,6 +1982,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -1893,6 +2007,7 @@
+ BOOST_FORCEINLINE
proto::expr<proto::tag::function, list1<expr const &>, 1> const
operator ()() const
{
@@ -1902,6 +2017,7 @@
template<typename A0>
+ BOOST_FORCEINLINE
typename result_of::funop1<
expr const
, default_domain , const A0
@@ -1916,6 +2032,7 @@
template<typename A0 , typename A1>
+ BOOST_FORCEINLINE
typename result_of::funop2<
expr const
, default_domain , const A0 , const A1
@@ -1930,6 +2047,7 @@
template<typename A0 , typename A1 , typename A2>
+ BOOST_FORCEINLINE
typename result_of::funop3<
expr const
, default_domain , const A0 , const A1 , const A2
@@ -1944,6 +2062,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3>
+ BOOST_FORCEINLINE
typename result_of::funop4<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3
@@ -1958,6 +2077,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
+ BOOST_FORCEINLINE
typename result_of::funop5<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4
@@ -1972,6 +2092,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
+ BOOST_FORCEINLINE
typename result_of::funop6<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5
@@ -1986,6 +2107,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
+ BOOST_FORCEINLINE
typename result_of::funop7<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6
@@ -2000,6 +2122,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
+ BOOST_FORCEINLINE
typename result_of::funop8<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7
@@ -2014,6 +2137,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
+ BOOST_FORCEINLINE
typename result_of::funop9<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 , const A8
@@ -2071,12 +2195,14 @@
typedef void proto_child6; typedef void proto_child7; typedef void proto_child8; typedef void proto_child9;
+ BOOST_FORCEINLINE
expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
expr &proto_base()
{
return *this;
@@ -2085,6 +2211,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
+ BOOST_FORCEINLINE
static expr const make(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5)
{
expr that = {a0 , a1 , a2 , a3 , a4 , a5};
@@ -2097,6 +2224,7 @@
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, expr const &>
@@ -2116,6 +2244,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -2133,6 +2262,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -2152,6 +2282,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -2169,6 +2300,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -2193,6 +2325,7 @@
+ BOOST_FORCEINLINE
proto::expr<proto::tag::function, list1<expr const &>, 1> const
operator ()() const
{
@@ -2202,6 +2335,7 @@
template<typename A0>
+ BOOST_FORCEINLINE
typename result_of::funop1<
expr const
, default_domain , const A0
@@ -2216,6 +2350,7 @@
template<typename A0 , typename A1>
+ BOOST_FORCEINLINE
typename result_of::funop2<
expr const
, default_domain , const A0 , const A1
@@ -2230,6 +2365,7 @@
template<typename A0 , typename A1 , typename A2>
+ BOOST_FORCEINLINE
typename result_of::funop3<
expr const
, default_domain , const A0 , const A1 , const A2
@@ -2244,6 +2380,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3>
+ BOOST_FORCEINLINE
typename result_of::funop4<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3
@@ -2258,6 +2395,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
+ BOOST_FORCEINLINE
typename result_of::funop5<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4
@@ -2272,6 +2410,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
+ BOOST_FORCEINLINE
typename result_of::funop6<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5
@@ -2286,6 +2425,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
+ BOOST_FORCEINLINE
typename result_of::funop7<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6
@@ -2300,6 +2440,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
+ BOOST_FORCEINLINE
typename result_of::funop8<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7
@@ -2314,6 +2455,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
+ BOOST_FORCEINLINE
typename result_of::funop9<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 , const A8
@@ -2371,12 +2513,14 @@
typedef void proto_child7; typedef void proto_child8; typedef void proto_child9;
+ BOOST_FORCEINLINE
expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
expr &proto_base()
{
return *this;
@@ -2385,6 +2529,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
+ BOOST_FORCEINLINE
static expr const make(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6)
{
expr that = {a0 , a1 , a2 , a3 , a4 , a5 , a6};
@@ -2397,6 +2542,7 @@
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, expr const &>
@@ -2416,6 +2562,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -2433,6 +2580,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -2452,6 +2600,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -2469,6 +2618,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -2493,6 +2643,7 @@
+ BOOST_FORCEINLINE
proto::expr<proto::tag::function, list1<expr const &>, 1> const
operator ()() const
{
@@ -2502,6 +2653,7 @@
template<typename A0>
+ BOOST_FORCEINLINE
typename result_of::funop1<
expr const
, default_domain , const A0
@@ -2516,6 +2668,7 @@
template<typename A0 , typename A1>
+ BOOST_FORCEINLINE
typename result_of::funop2<
expr const
, default_domain , const A0 , const A1
@@ -2530,6 +2683,7 @@
template<typename A0 , typename A1 , typename A2>
+ BOOST_FORCEINLINE
typename result_of::funop3<
expr const
, default_domain , const A0 , const A1 , const A2
@@ -2544,6 +2698,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3>
+ BOOST_FORCEINLINE
typename result_of::funop4<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3
@@ -2558,6 +2713,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
+ BOOST_FORCEINLINE
typename result_of::funop5<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4
@@ -2572,6 +2728,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
+ BOOST_FORCEINLINE
typename result_of::funop6<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5
@@ -2586,6 +2743,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
+ BOOST_FORCEINLINE
typename result_of::funop7<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6
@@ -2600,6 +2758,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
+ BOOST_FORCEINLINE
typename result_of::funop8<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7
@@ -2614,6 +2773,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
+ BOOST_FORCEINLINE
typename result_of::funop9<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 , const A8
@@ -2671,12 +2831,14 @@
typedef void proto_child8; typedef void proto_child9;
+ BOOST_FORCEINLINE
expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
expr &proto_base()
{
return *this;
@@ -2685,6 +2847,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
+ BOOST_FORCEINLINE
static expr const make(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6 , A7 const &a7)
{
expr that = {a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7};
@@ -2697,6 +2860,7 @@
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, expr const &>
@@ -2716,6 +2880,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -2733,6 +2898,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -2752,6 +2918,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -2769,6 +2936,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -2793,6 +2961,7 @@
+ BOOST_FORCEINLINE
proto::expr<proto::tag::function, list1<expr const &>, 1> const
operator ()() const
{
@@ -2802,6 +2971,7 @@
template<typename A0>
+ BOOST_FORCEINLINE
typename result_of::funop1<
expr const
, default_domain , const A0
@@ -2816,6 +2986,7 @@
template<typename A0 , typename A1>
+ BOOST_FORCEINLINE
typename result_of::funop2<
expr const
, default_domain , const A0 , const A1
@@ -2830,6 +3001,7 @@
template<typename A0 , typename A1 , typename A2>
+ BOOST_FORCEINLINE
typename result_of::funop3<
expr const
, default_domain , const A0 , const A1 , const A2
@@ -2844,6 +3016,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3>
+ BOOST_FORCEINLINE
typename result_of::funop4<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3
@@ -2858,6 +3031,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
+ BOOST_FORCEINLINE
typename result_of::funop5<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4
@@ -2872,6 +3046,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
+ BOOST_FORCEINLINE
typename result_of::funop6<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5
@@ -2886,6 +3061,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
+ BOOST_FORCEINLINE
typename result_of::funop7<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6
@@ -2900,6 +3076,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
+ BOOST_FORCEINLINE
typename result_of::funop8<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7
@@ -2914,6 +3091,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
+ BOOST_FORCEINLINE
typename result_of::funop9<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 , const A8
@@ -2971,12 +3149,14 @@
typedef void proto_child9;
+ BOOST_FORCEINLINE
expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
expr &proto_base()
{
return *this;
@@ -2985,6 +3165,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
+ BOOST_FORCEINLINE
static expr const make(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6 , A7 const &a7 , A8 const &a8)
{
expr that = {a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8};
@@ -2997,6 +3178,7 @@
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, expr const &>
@@ -3016,6 +3198,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -3033,6 +3216,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -3052,6 +3236,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -3069,6 +3254,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -3093,6 +3279,7 @@
+ BOOST_FORCEINLINE
proto::expr<proto::tag::function, list1<expr const &>, 1> const
operator ()() const
{
@@ -3102,6 +3289,7 @@
template<typename A0>
+ BOOST_FORCEINLINE
typename result_of::funop1<
expr const
, default_domain , const A0
@@ -3116,6 +3304,7 @@
template<typename A0 , typename A1>
+ BOOST_FORCEINLINE
typename result_of::funop2<
expr const
, default_domain , const A0 , const A1
@@ -3130,6 +3319,7 @@
template<typename A0 , typename A1 , typename A2>
+ BOOST_FORCEINLINE
typename result_of::funop3<
expr const
, default_domain , const A0 , const A1 , const A2
@@ -3144,6 +3334,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3>
+ BOOST_FORCEINLINE
typename result_of::funop4<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3
@@ -3158,6 +3349,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
+ BOOST_FORCEINLINE
typename result_of::funop5<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4
@@ -3172,6 +3364,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
+ BOOST_FORCEINLINE
typename result_of::funop6<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5
@@ -3186,6 +3379,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
+ BOOST_FORCEINLINE
typename result_of::funop7<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6
@@ -3200,6 +3394,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
+ BOOST_FORCEINLINE
typename result_of::funop8<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7
@@ -3214,6 +3409,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
+ BOOST_FORCEINLINE
typename result_of::funop9<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 , const A8
@@ -3271,12 +3467,14 @@
+ BOOST_FORCEINLINE
expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
expr &proto_base()
{
return *this;
@@ -3285,6 +3483,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9>
+ BOOST_FORCEINLINE
static expr const make(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6 , A7 const &a7 , A8 const &a8 , A9 const &a9)
{
expr that = {a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9};
@@ -3297,6 +3496,7 @@
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, expr const &>
@@ -3316,6 +3516,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -3333,6 +3534,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -3352,6 +3554,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -3369,6 +3572,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -3393,6 +3597,7 @@
+ BOOST_FORCEINLINE
proto::expr<proto::tag::function, list1<expr const &>, 1> const
operator ()() const
{
@@ -3402,6 +3607,7 @@
template<typename A0>
+ BOOST_FORCEINLINE
typename result_of::funop1<
expr const
, default_domain , const A0
@@ -3416,6 +3622,7 @@
template<typename A0 , typename A1>
+ BOOST_FORCEINLINE
typename result_of::funop2<
expr const
, default_domain , const A0 , const A1
@@ -3430,6 +3637,7 @@
template<typename A0 , typename A1 , typename A2>
+ BOOST_FORCEINLINE
typename result_of::funop3<
expr const
, default_domain , const A0 , const A1 , const A2
@@ -3444,6 +3652,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3>
+ BOOST_FORCEINLINE
typename result_of::funop4<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3
@@ -3458,6 +3667,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
+ BOOST_FORCEINLINE
typename result_of::funop5<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4
@@ -3472,6 +3682,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
+ BOOST_FORCEINLINE
typename result_of::funop6<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5
@@ -3486,6 +3697,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
+ BOOST_FORCEINLINE
typename result_of::funop7<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6
@@ -3500,6 +3712,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
+ BOOST_FORCEINLINE
typename result_of::funop8<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7
@@ -3514,6 +3727,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
+ BOOST_FORCEINLINE
typename result_of::funop9<
expr const
, default_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 , const A8
Modified: branches/release/boost/proto/detail/preprocessed/expr_variadic.hpp
==============================================================================
--- branches/release/boost/proto/detail/preprocessed/expr_variadic.hpp (original)
+++ branches/release/boost/proto/detail/preprocessed/expr_variadic.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -51,12 +51,14 @@
typedef void proto_child1; typedef void proto_child2; typedef void proto_child3; typedef void proto_child4; typedef void proto_child5; typedef void proto_child6; typedef void proto_child7; typedef void proto_child8; typedef void proto_child9;
+ BOOST_FORCEINLINE
expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
expr &proto_base()
{
return *this;
@@ -65,6 +67,7 @@
template<typename A0>
+ BOOST_FORCEINLINE
static expr const make(A0 &a0)
{
return detail::make_terminal(a0, static_cast<expr *>(0), static_cast<proto_args *>(0));
@@ -72,6 +75,7 @@
template<typename A0>
+ BOOST_FORCEINLINE
static expr const make(A0 const &a0)
{
return detail::make_terminal(a0, static_cast<expr *>(0), static_cast<proto_args *>(0));
@@ -83,6 +87,7 @@
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, expr const &>
@@ -102,6 +107,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -119,6 +125,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -136,6 +143,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, typename result_of::as_child<A>::type>
@@ -153,6 +161,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, typename result_of::as_child<A const>::type>
@@ -172,6 +181,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -189,6 +199,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -206,6 +217,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr &, typename result_of::as_child<A>::type>
@@ -223,6 +235,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr &, typename result_of::as_child<A const>::type>
@@ -247,6 +260,7 @@
template<typename ...A>
+ BOOST_FORCEINLINE
typename result_of::funop<
expr const(A const &...)
, expr
@@ -263,6 +277,7 @@
template<typename ...A>
+ BOOST_FORCEINLINE
typename result_of::funop<
expr(A const &...)
, expr
@@ -322,12 +337,14 @@
typedef void proto_child1; typedef void proto_child2; typedef void proto_child3; typedef void proto_child4; typedef void proto_child5; typedef void proto_child6; typedef void proto_child7; typedef void proto_child8; typedef void proto_child9;
+ BOOST_FORCEINLINE
expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
expr &proto_base()
{
return *this;
@@ -336,6 +353,7 @@
template<typename A0>
+ BOOST_FORCEINLINE
static expr const make(A0 const &a0)
{
expr that = {a0};
@@ -352,6 +370,7 @@
+ BOOST_FORCEINLINE
operator address_of_hack_type_() const
{
return boost::addressof(this->child0);
@@ -360,6 +379,7 @@
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, expr const &>
@@ -379,6 +399,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -396,6 +417,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -415,6 +437,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -432,6 +455,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -456,6 +480,7 @@
template<typename ...A>
+ BOOST_FORCEINLINE
typename result_of::funop<
expr const(A const &...)
, expr
@@ -515,12 +540,14 @@
typedef void proto_child2; typedef void proto_child3; typedef void proto_child4; typedef void proto_child5; typedef void proto_child6; typedef void proto_child7; typedef void proto_child8; typedef void proto_child9;
+ BOOST_FORCEINLINE
expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
expr &proto_base()
{
return *this;
@@ -529,6 +556,7 @@
template<typename A0 , typename A1>
+ BOOST_FORCEINLINE
static expr const make(A0 const &a0 , A1 const &a1)
{
expr that = {a0 , a1};
@@ -541,6 +569,7 @@
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, expr const &>
@@ -560,6 +589,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -577,6 +607,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -596,6 +627,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -613,6 +645,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -637,6 +670,7 @@
template<typename ...A>
+ BOOST_FORCEINLINE
typename result_of::funop<
expr const(A const &...)
, expr
@@ -696,12 +730,14 @@
typedef void proto_child3; typedef void proto_child4; typedef void proto_child5; typedef void proto_child6; typedef void proto_child7; typedef void proto_child8; typedef void proto_child9;
+ BOOST_FORCEINLINE
expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
expr &proto_base()
{
return *this;
@@ -710,6 +746,7 @@
template<typename A0 , typename A1 , typename A2>
+ BOOST_FORCEINLINE
static expr const make(A0 const &a0 , A1 const &a1 , A2 const &a2)
{
expr that = {a0 , a1 , a2};
@@ -722,6 +759,7 @@
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, expr const &>
@@ -741,6 +779,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -758,6 +797,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -777,6 +817,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -794,6 +835,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -818,6 +860,7 @@
template<typename ...A>
+ BOOST_FORCEINLINE
typename result_of::funop<
expr const(A const &...)
, expr
@@ -877,12 +920,14 @@
typedef void proto_child4; typedef void proto_child5; typedef void proto_child6; typedef void proto_child7; typedef void proto_child8; typedef void proto_child9;
+ BOOST_FORCEINLINE
expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
expr &proto_base()
{
return *this;
@@ -891,6 +936,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3>
+ BOOST_FORCEINLINE
static expr const make(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3)
{
expr that = {a0 , a1 , a2 , a3};
@@ -903,6 +949,7 @@
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, expr const &>
@@ -922,6 +969,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -939,6 +987,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -958,6 +1007,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -975,6 +1025,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -999,6 +1050,7 @@
template<typename ...A>
+ BOOST_FORCEINLINE
typename result_of::funop<
expr const(A const &...)
, expr
@@ -1058,12 +1110,14 @@
typedef void proto_child5; typedef void proto_child6; typedef void proto_child7; typedef void proto_child8; typedef void proto_child9;
+ BOOST_FORCEINLINE
expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
expr &proto_base()
{
return *this;
@@ -1072,6 +1126,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
+ BOOST_FORCEINLINE
static expr const make(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4)
{
expr that = {a0 , a1 , a2 , a3 , a4};
@@ -1084,6 +1139,7 @@
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, expr const &>
@@ -1103,6 +1159,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -1120,6 +1177,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -1139,6 +1197,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -1156,6 +1215,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -1180,6 +1240,7 @@
template<typename ...A>
+ BOOST_FORCEINLINE
typename result_of::funop<
expr const(A const &...)
, expr
@@ -1239,12 +1300,14 @@
typedef void proto_child6; typedef void proto_child7; typedef void proto_child8; typedef void proto_child9;
+ BOOST_FORCEINLINE
expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
expr &proto_base()
{
return *this;
@@ -1253,6 +1316,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
+ BOOST_FORCEINLINE
static expr const make(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5)
{
expr that = {a0 , a1 , a2 , a3 , a4 , a5};
@@ -1265,6 +1329,7 @@
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, expr const &>
@@ -1284,6 +1349,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -1301,6 +1367,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -1320,6 +1387,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -1337,6 +1405,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -1361,6 +1430,7 @@
template<typename ...A>
+ BOOST_FORCEINLINE
typename result_of::funop<
expr const(A const &...)
, expr
@@ -1420,12 +1490,14 @@
typedef void proto_child7; typedef void proto_child8; typedef void proto_child9;
+ BOOST_FORCEINLINE
expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
expr &proto_base()
{
return *this;
@@ -1434,6 +1506,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
+ BOOST_FORCEINLINE
static expr const make(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6)
{
expr that = {a0 , a1 , a2 , a3 , a4 , a5 , a6};
@@ -1446,6 +1519,7 @@
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, expr const &>
@@ -1465,6 +1539,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -1482,6 +1557,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -1501,6 +1577,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -1518,6 +1595,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -1542,6 +1620,7 @@
template<typename ...A>
+ BOOST_FORCEINLINE
typename result_of::funop<
expr const(A const &...)
, expr
@@ -1601,12 +1680,14 @@
typedef void proto_child8; typedef void proto_child9;
+ BOOST_FORCEINLINE
expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
expr &proto_base()
{
return *this;
@@ -1615,6 +1696,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
+ BOOST_FORCEINLINE
static expr const make(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6 , A7 const &a7)
{
expr that = {a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7};
@@ -1627,6 +1709,7 @@
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, expr const &>
@@ -1646,6 +1729,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -1663,6 +1747,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -1682,6 +1767,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -1699,6 +1785,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -1723,6 +1810,7 @@
template<typename ...A>
+ BOOST_FORCEINLINE
typename result_of::funop<
expr const(A const &...)
, expr
@@ -1782,12 +1870,14 @@
typedef void proto_child9;
+ BOOST_FORCEINLINE
expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
expr &proto_base()
{
return *this;
@@ -1796,6 +1886,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
+ BOOST_FORCEINLINE
static expr const make(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6 , A7 const &a7 , A8 const &a8)
{
expr that = {a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8};
@@ -1808,6 +1899,7 @@
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, expr const &>
@@ -1827,6 +1919,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -1844,6 +1937,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -1863,6 +1957,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -1880,6 +1975,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -1904,6 +2000,7 @@
template<typename ...A>
+ BOOST_FORCEINLINE
typename result_of::funop<
expr const(A const &...)
, expr
@@ -1963,12 +2060,14 @@
+ BOOST_FORCEINLINE
expr const &proto_base() const
{
return *this;
}
+ BOOST_FORCEINLINE
expr &proto_base()
{
return *this;
@@ -1977,6 +2076,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9>
+ BOOST_FORCEINLINE
static expr const make(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6 , A7 const &a7 , A8 const &a8 , A9 const &a9)
{
expr that = {a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9};
@@ -1989,6 +2089,7 @@
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr &, expr const &>
@@ -2008,6 +2109,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -2025,6 +2127,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::assign
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -2044,6 +2147,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A>::type>
@@ -2061,6 +2165,7 @@
template<typename A>
+ BOOST_FORCEINLINE
proto::expr<
proto::tag::subscript
, list2<expr const &, typename result_of::as_child<A const>::type>
@@ -2085,6 +2190,7 @@
template<typename ...A>
+ BOOST_FORCEINLINE
typename result_of::funop<
expr const(A const &...)
, expr
Modified: branches/release/boost/proto/detail/preprocessed/extends_funop.hpp
==============================================================================
--- branches/release/boost/proto/detail/preprocessed/extends_funop.hpp (original)
+++ branches/release/boost/proto/detail/preprocessed/extends_funop.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -6,13 +6,13 @@
// Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
template<typename Sig> struct result { typedef typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop< Sig , proto_derived_expr , proto_domain >::type ) >::type const type; };
- typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop0< proto_derived_expr const , proto_domain >::type ) >::type const operator ()() const { typedef boost::proto::result_of::funop0< proto_derived_expr const , proto_domain > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) ) ); } typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop0< proto_derived_expr , proto_domain >::type ) >::type const operator ()() { typedef boost::proto::result_of::funop0< proto_derived_expr , proto_domain > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr *>(this) ) ); }
- template<typename A0> typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop1< proto_derived_expr const , proto_domain , const A0 >::type ) >::type const operator ()(A0 const &a0) const { typedef boost::proto::result_of::funop1< proto_derived_expr const , proto_domain , const A0 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 ) ); } template<typename A0> typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop1< proto_derived_expr , proto_domain , const A0 >::type ) >::type const operator ()(A0 const &a0) { typedef boost::proto::result_of::funop1< proto_derived_expr , proto_domain , const A0 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr *>(this) , a0 ) ); }
- template<typename A0 , typename A1> typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop2< proto_derived_expr const , proto_domain , const A0 , const A1 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1) const { typedef boost::proto::result_of::funop2< proto_derived_expr const , proto_domain , const A0 , const A1 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 ) ); } template<typename A0 , typename A1> typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop2< proto_derived_expr , proto_domain , const A0 , const A1 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1) { typedef boost::proto::result_of::funop2< proto_derived_expr , proto_domain , const A0 , const A1 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr *>(this) , a0 , a1 ) ); }
- template<typename A0 , typename A1 , typename A2> typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop3< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2) const { typedef boost::proto::result_of::funop3< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 , a2 ) ); } template<typename A0 , typename A1 , typename A2> typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop3< proto_derived_expr , proto_domain , const A0 , const A1 , const A2 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2) { typedef boost::proto::result_of::funop3< proto_derived_expr , proto_domain , const A0 , const A1 , const A2 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr *>(
this) , a0 , a1 , a2 ) ); }
- template<typename A0 , typename A1 , typename A2 , typename A3> typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop4< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3) const { typedef boost::proto::result_of::funop4< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 , a2 , a3 ) ); } template<typename A0 , typename A1 , typename A2 , typename A3> typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop4< proto_derived_expr , proto_domain , const A0 , const A1 , const A2 , const A3 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3) { typedef boost::proto::result_of::funop4< proto_derived_expr , proto_domain , const A0 , const A
1 , const A2 , const A3 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr *>(this) , a0 , a1 , a2 , a3 ) ); }
- template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4> typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop5< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4) const { typedef boost::proto::result_of::funop5< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 , a2 , a3 , a4 ) ); } template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4> typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop5< proto_derived_expr , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4) {
typedef boost::proto::result_of::funop5< proto_derived_expr , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr *>(this) , a0 , a1 , a2 , a3 , a4 ) ); }
- template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5> typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop6< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5) const { typedef boost::proto::result_of::funop6< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 , a2 , a3 , a4 , a5 ) ); } template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5> typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop6< proto_derived_expr , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 >::type ) >::type const operat
or ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5) { typedef boost::proto::result_of::funop6< proto_derived_expr , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr *>(this) , a0 , a1 , a2 , a3 , a4 , a5 ) ); }
- template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6> typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop7< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6) const { typedef boost::proto::result_of::funop7< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 , a2 , a3 , a4 , a5 , a6 ) ); } template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6> typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop7< proto_derived_expr , proto_domain , const A0 , const A1 , co
nst A2 , const A3 , const A4 , const A5 , const A6 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6) { typedef boost::proto::result_of::funop7< proto_derived_expr , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr *>(this) , a0 , a1 , a2 , a3 , a4 , a5 , a6 ) ); }
- template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7> typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop8< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6 , A7 const &a7) const { typedef boost::proto::result_of::funop8< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 ) ); } template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7> typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of
::funop8< proto_derived_expr , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6 , A7 const &a7) { typedef boost::proto::result_of::funop8< proto_derived_expr , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr *>(this) , a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 ) ); }
- template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8> typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop9< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 , const A8 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6 , A7 const &a7 , A8 const &a8) const { typedef boost::proto::result_of::funop9< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 , const A8 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 ) ); } template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8> typename BO
OST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop9< proto_derived_expr , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 , const A8 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6 , A7 const &a7 , A8 const &a8) { typedef boost::proto::result_of::funop9< proto_derived_expr , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 , const A8 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr *>(this) , a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 ) ); }
+ BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop0< proto_derived_expr const , proto_domain >::type ) >::type const operator ()() const { typedef boost::proto::result_of::funop0< proto_derived_expr const , proto_domain > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) ) ); } BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop0< proto_derived_expr , proto_domain >::type ) >::type const operator ()() { typedef boost::proto::result_of::funop0< proto_derived_expr , proto_domain > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr *>(this) ) ); }
+ template<typename A0> BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop1< proto_derived_expr const , proto_domain , const A0 >::type ) >::type const operator ()(A0 const &a0) const { typedef boost::proto::result_of::funop1< proto_derived_expr const , proto_domain , const A0 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 ) ); } template<typename A0> BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop1< proto_derived_expr , proto_domain , const A0 >::type ) >::type const operator ()(A0 const &a0) { typedef boost::proto::result_of::funop1< proto_derived_expr , proto_domain , const A0 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr *>(this) , a0 ) ); }
+ template<typename A0 , typename A1> BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop2< proto_derived_expr const , proto_domain , const A0 , const A1 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1) const { typedef boost::proto::result_of::funop2< proto_derived_expr const , proto_domain , const A0 , const A1 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 ) ); } template<typename A0 , typename A1> BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop2< proto_derived_expr , proto_domain , const A0 , const A1 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1) { typedef boost::proto::result_of::funop2< proto_derived_expr , proto_domain , const A0 , const A1 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr *>(this) , a0 , a1 ) ); }
+ template<typename A0 , typename A1 , typename A2> BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop3< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2) const { typedef boost::proto::result_of::funop3< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 , a2 ) ); } template<typename A0 , typename A1 , typename A2> BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop3< proto_derived_expr , proto_domain , const A0 , const A1 , const A2 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2) { typedef boost::proto::result_of::funop3< proto_derived_expr , proto_domain , const A0 , const A1 , const A2 > funop; return proto_generator()( funop::call(
*static_cast<proto_derived_expr *>(this) , a0 , a1 , a2 ) ); }
+ template<typename A0 , typename A1 , typename A2 , typename A3> BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop4< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3) const { typedef boost::proto::result_of::funop4< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 , a2 , a3 ) ); } template<typename A0 , typename A1 , typename A2 , typename A3> BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop4< proto_derived_expr , proto_domain , const A0 , const A1 , const A2 , const A3 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3) { typedef boost::proto::result_of::funop4< proto_derived_expr
, proto_domain , const A0 , const A1 , const A2 , const A3 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr *>(this) , a0 , a1 , a2 , a3 ) ); }
+ template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4> BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop5< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4) const { typedef boost::proto::result_of::funop5< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 , a2 , a3 , a4 ) ); } template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4> BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop5< proto_derived_expr , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const
&a2 , A3 const &a3 , A4 const &a4) { typedef boost::proto::result_of::funop5< proto_derived_expr , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr *>(this) , a0 , a1 , a2 , a3 , a4 ) ); }
+ template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5> BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop6< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5) const { typedef boost::proto::result_of::funop6< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 , a2 , a3 , a4 , a5 ) ); } template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5> BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop6< proto_derived_expr , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , con
st A5 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5) { typedef boost::proto::result_of::funop6< proto_derived_expr , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr *>(this) , a0 , a1 , a2 , a3 , a4 , a5 ) ); }
+ template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6> BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop7< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6) const { typedef boost::proto::result_of::funop7< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 , a2 , a3 , a4 , a5 , a6 ) ); } template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6> BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop7< proto_derived_expr , pro
to_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6) { typedef boost::proto::result_of::funop7< proto_derived_expr , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr *>(this) , a0 , a1 , a2 , a3 , a4 , a5 , a6 ) ); }
+ template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7> BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop8< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6 , A7 const &a7) const { typedef boost::proto::result_of::funop8< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 ) ); } template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7> BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generat
or( typename boost::proto::result_of::funop8< proto_derived_expr , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6 , A7 const &a7) { typedef boost::proto::result_of::funop8< proto_derived_expr , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr *>(this) , a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 ) ); }
+ template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8> BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop9< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 , const A8 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6 , A7 const &a7 , A8 const &a8) const { typedef boost::proto::result_of::funop9< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 , const A8 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 ) ); } template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typena
me A8> BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop9< proto_derived_expr , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 , const A8 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6 , A7 const &a7 , A8 const &a8) { typedef boost::proto::result_of::funop9< proto_derived_expr , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 , const A8 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr *>(this) , a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 ) ); }
Modified: branches/release/boost/proto/detail/preprocessed/extends_funop_const.hpp
==============================================================================
--- branches/release/boost/proto/detail/preprocessed/extends_funop_const.hpp (original)
+++ branches/release/boost/proto/detail/preprocessed/extends_funop_const.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -6,13 +6,13 @@
// Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
template<typename Sig> struct result { typedef typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop< Sig , proto_derived_expr , proto_domain >::type ) >::type const type; };
- typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop0< proto_derived_expr const , proto_domain >::type ) >::type const operator ()() const { typedef boost::proto::result_of::funop0< proto_derived_expr const , proto_domain > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) ) ); }
- template<typename A0> typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop1< proto_derived_expr const , proto_domain , const A0 >::type ) >::type const operator ()(A0 const &a0) const { typedef boost::proto::result_of::funop1< proto_derived_expr const , proto_domain , const A0 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 ) ); }
- template<typename A0 , typename A1> typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop2< proto_derived_expr const , proto_domain , const A0 , const A1 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1) const { typedef boost::proto::result_of::funop2< proto_derived_expr const , proto_domain , const A0 , const A1 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 ) ); }
- template<typename A0 , typename A1 , typename A2> typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop3< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2) const { typedef boost::proto::result_of::funop3< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 , a2 ) ); }
- template<typename A0 , typename A1 , typename A2 , typename A3> typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop4< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3) const { typedef boost::proto::result_of::funop4< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 , a2 , a3 ) ); }
- template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4> typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop5< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4) const { typedef boost::proto::result_of::funop5< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 , a2 , a3 , a4 ) ); }
- template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5> typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop6< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5) const { typedef boost::proto::result_of::funop6< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 , a2 , a3 , a4 , a5 ) ); }
- template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6> typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop7< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6) const { typedef boost::proto::result_of::funop7< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 , a2 , a3 , a4 , a5 , a6 ) ); }
- template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7> typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop8< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6 , A7 const &a7) const { typedef boost::proto::result_of::funop8< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 ) ); }
- template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8> typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop9< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 , const A8 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6 , A7 const &a7 , A8 const &a8) const { typedef boost::proto::result_of::funop9< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 , const A8 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 ) ); }
+ BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop0< proto_derived_expr const , proto_domain >::type ) >::type const operator ()() const { typedef boost::proto::result_of::funop0< proto_derived_expr const , proto_domain > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) ) ); }
+ template<typename A0> BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop1< proto_derived_expr const , proto_domain , const A0 >::type ) >::type const operator ()(A0 const &a0) const { typedef boost::proto::result_of::funop1< proto_derived_expr const , proto_domain , const A0 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 ) ); }
+ template<typename A0 , typename A1> BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop2< proto_derived_expr const , proto_domain , const A0 , const A1 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1) const { typedef boost::proto::result_of::funop2< proto_derived_expr const , proto_domain , const A0 , const A1 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 ) ); }
+ template<typename A0 , typename A1 , typename A2> BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop3< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2) const { typedef boost::proto::result_of::funop3< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 , a2 ) ); }
+ template<typename A0 , typename A1 , typename A2 , typename A3> BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop4< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3) const { typedef boost::proto::result_of::funop4< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 , a2 , a3 ) ); }
+ template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4> BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop5< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4) const { typedef boost::proto::result_of::funop5< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 , a2 , a3 , a4 ) ); }
+ template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5> BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop6< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5) const { typedef boost::proto::result_of::funop6< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 , a2 , a3 , a4 , a5 ) ); }
+ template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6> BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop7< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6) const { typedef boost::proto::result_of::funop7< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 , a2 , a3 , a4 , a5 , a6 ) ); }
+ template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7> BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop8< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6 , A7 const &a7) const { typedef boost::proto::result_of::funop8< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 ) ); }
+ template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8> BOOST_FORCEINLINE typename BOOST_PROTO_RESULT_OF< proto_generator( typename boost::proto::result_of::funop9< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 , const A8 >::type ) >::type const operator ()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6 , A7 const &a7 , A8 const &a8) const { typedef boost::proto::result_of::funop9< proto_derived_expr const , proto_domain , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 , const A8 > funop; return proto_generator()( funop::call( *static_cast<proto_derived_expr const *>(this) , a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 ) ); }
Modified: branches/release/boost/proto/detail/preprocessed/funop.hpp
==============================================================================
--- branches/release/boost/proto/detail/preprocessed/funop.hpp (original)
+++ branches/release/boost/proto/detail/preprocessed/funop.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -18,6 +18,7 @@
>
>::type type;
+ BOOST_FORCEINLINE
static type const call(
Expr &e
@@ -53,6 +54,7 @@
, typename proto::result_of::as_child<A0, Domain>::type
>
>::type type;
+ BOOST_FORCEINLINE
static type const call(
Expr &e
, A0 &a0
@@ -88,6 +90,7 @@
, typename proto::result_of::as_child<A0, Domain>::type , typename proto::result_of::as_child<A1, Domain>::type
>
>::type type;
+ BOOST_FORCEINLINE
static type const call(
Expr &e
, A0 &a0 , A1 &a1
@@ -123,6 +126,7 @@
, typename proto::result_of::as_child<A0, Domain>::type , typename proto::result_of::as_child<A1, Domain>::type , typename proto::result_of::as_child<A2, Domain>::type
>
>::type type;
+ BOOST_FORCEINLINE
static type const call(
Expr &e
, A0 &a0 , A1 &a1 , A2 &a2
@@ -158,6 +162,7 @@
, typename proto::result_of::as_child<A0, Domain>::type , typename proto::result_of::as_child<A1, Domain>::type , typename proto::result_of::as_child<A2, Domain>::type , typename proto::result_of::as_child<A3, Domain>::type
>
>::type type;
+ BOOST_FORCEINLINE
static type const call(
Expr &e
, A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3
@@ -193,6 +198,7 @@
, typename proto::result_of::as_child<A0, Domain>::type , typename proto::result_of::as_child<A1, Domain>::type , typename proto::result_of::as_child<A2, Domain>::type , typename proto::result_of::as_child<A3, Domain>::type , typename proto::result_of::as_child<A4, Domain>::type
>
>::type type;
+ BOOST_FORCEINLINE
static type const call(
Expr &e
, A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4
@@ -228,6 +234,7 @@
, typename proto::result_of::as_child<A0, Domain>::type , typename proto::result_of::as_child<A1, Domain>::type , typename proto::result_of::as_child<A2, Domain>::type , typename proto::result_of::as_child<A3, Domain>::type , typename proto::result_of::as_child<A4, Domain>::type , typename proto::result_of::as_child<A5, Domain>::type
>
>::type type;
+ BOOST_FORCEINLINE
static type const call(
Expr &e
, A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5
@@ -263,6 +270,7 @@
, typename proto::result_of::as_child<A0, Domain>::type , typename proto::result_of::as_child<A1, Domain>::type , typename proto::result_of::as_child<A2, Domain>::type , typename proto::result_of::as_child<A3, Domain>::type , typename proto::result_of::as_child<A4, Domain>::type , typename proto::result_of::as_child<A5, Domain>::type , typename proto::result_of::as_child<A6, Domain>::type
>
>::type type;
+ BOOST_FORCEINLINE
static type const call(
Expr &e
, A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5 , A6 &a6
@@ -298,6 +306,7 @@
, typename proto::result_of::as_child<A0, Domain>::type , typename proto::result_of::as_child<A1, Domain>::type , typename proto::result_of::as_child<A2, Domain>::type , typename proto::result_of::as_child<A3, Domain>::type , typename proto::result_of::as_child<A4, Domain>::type , typename proto::result_of::as_child<A5, Domain>::type , typename proto::result_of::as_child<A6, Domain>::type , typename proto::result_of::as_child<A7, Domain>::type
>
>::type type;
+ BOOST_FORCEINLINE
static type const call(
Expr &e
, A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5 , A6 &a6 , A7 &a7
@@ -333,6 +342,7 @@
, typename proto::result_of::as_child<A0, Domain>::type , typename proto::result_of::as_child<A1, Domain>::type , typename proto::result_of::as_child<A2, Domain>::type , typename proto::result_of::as_child<A3, Domain>::type , typename proto::result_of::as_child<A4, Domain>::type , typename proto::result_of::as_child<A5, Domain>::type , typename proto::result_of::as_child<A6, Domain>::type , typename proto::result_of::as_child<A7, Domain>::type , typename proto::result_of::as_child<A8, Domain>::type
>
>::type type;
+ BOOST_FORCEINLINE
static type const call(
Expr &e
, A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5 , A6 &a6 , A7 &a7 , A8 &a8
Modified: branches/release/boost/proto/detail/preprocessed/generate_by_value.hpp
==============================================================================
--- branches/release/boost/proto/detail/preprocessed/generate_by_value.hpp (original)
+++ branches/release/boost/proto/detail/preprocessed/generate_by_value.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -20,6 +20,7 @@
dst_args;
typedef proto::expr<Tag, src_args, 1> src_type;
typedef proto::expr<Tag, dst_args, 1> type;
+ BOOST_FORCEINLINE
static type const call(src_type const &e)
{
type that = {
@@ -43,6 +44,7 @@
dst_args;
typedef proto::basic_expr<Tag, src_args, 1> src_type;
typedef proto::basic_expr<Tag, dst_args, 1> type;
+ BOOST_FORCEINLINE
static type const call(src_type const &e)
{
type that = {
@@ -66,6 +68,7 @@
dst_args;
typedef proto::expr<Tag, src_args, 2> src_type;
typedef proto::expr<Tag, dst_args, 2> type;
+ BOOST_FORCEINLINE
static type const call(src_type const &e)
{
type that = {
@@ -89,6 +92,7 @@
dst_args;
typedef proto::basic_expr<Tag, src_args, 2> src_type;
typedef proto::basic_expr<Tag, dst_args, 2> type;
+ BOOST_FORCEINLINE
static type const call(src_type const &e)
{
type that = {
@@ -112,6 +116,7 @@
dst_args;
typedef proto::expr<Tag, src_args, 3> src_type;
typedef proto::expr<Tag, dst_args, 3> type;
+ BOOST_FORCEINLINE
static type const call(src_type const &e)
{
type that = {
@@ -135,6 +140,7 @@
dst_args;
typedef proto::basic_expr<Tag, src_args, 3> src_type;
typedef proto::basic_expr<Tag, dst_args, 3> type;
+ BOOST_FORCEINLINE
static type const call(src_type const &e)
{
type that = {
@@ -158,6 +164,7 @@
dst_args;
typedef proto::expr<Tag, src_args, 4> src_type;
typedef proto::expr<Tag, dst_args, 4> type;
+ BOOST_FORCEINLINE
static type const call(src_type const &e)
{
type that = {
@@ -181,6 +188,7 @@
dst_args;
typedef proto::basic_expr<Tag, src_args, 4> src_type;
typedef proto::basic_expr<Tag, dst_args, 4> type;
+ BOOST_FORCEINLINE
static type const call(src_type const &e)
{
type that = {
@@ -204,6 +212,7 @@
dst_args;
typedef proto::expr<Tag, src_args, 5> src_type;
typedef proto::expr<Tag, dst_args, 5> type;
+ BOOST_FORCEINLINE
static type const call(src_type const &e)
{
type that = {
@@ -227,6 +236,7 @@
dst_args;
typedef proto::basic_expr<Tag, src_args, 5> src_type;
typedef proto::basic_expr<Tag, dst_args, 5> type;
+ BOOST_FORCEINLINE
static type const call(src_type const &e)
{
type that = {
@@ -250,6 +260,7 @@
dst_args;
typedef proto::expr<Tag, src_args, 6> src_type;
typedef proto::expr<Tag, dst_args, 6> type;
+ BOOST_FORCEINLINE
static type const call(src_type const &e)
{
type that = {
@@ -273,6 +284,7 @@
dst_args;
typedef proto::basic_expr<Tag, src_args, 6> src_type;
typedef proto::basic_expr<Tag, dst_args, 6> type;
+ BOOST_FORCEINLINE
static type const call(src_type const &e)
{
type that = {
@@ -296,6 +308,7 @@
dst_args;
typedef proto::expr<Tag, src_args, 7> src_type;
typedef proto::expr<Tag, dst_args, 7> type;
+ BOOST_FORCEINLINE
static type const call(src_type const &e)
{
type that = {
@@ -319,6 +332,7 @@
dst_args;
typedef proto::basic_expr<Tag, src_args, 7> src_type;
typedef proto::basic_expr<Tag, dst_args, 7> type;
+ BOOST_FORCEINLINE
static type const call(src_type const &e)
{
type that = {
@@ -342,6 +356,7 @@
dst_args;
typedef proto::expr<Tag, src_args, 8> src_type;
typedef proto::expr<Tag, dst_args, 8> type;
+ BOOST_FORCEINLINE
static type const call(src_type const &e)
{
type that = {
@@ -365,6 +380,7 @@
dst_args;
typedef proto::basic_expr<Tag, src_args, 8> src_type;
typedef proto::basic_expr<Tag, dst_args, 8> type;
+ BOOST_FORCEINLINE
static type const call(src_type const &e)
{
type that = {
@@ -388,6 +404,7 @@
dst_args;
typedef proto::expr<Tag, src_args, 9> src_type;
typedef proto::expr<Tag, dst_args, 9> type;
+ BOOST_FORCEINLINE
static type const call(src_type const &e)
{
type that = {
@@ -411,6 +428,7 @@
dst_args;
typedef proto::basic_expr<Tag, src_args, 9> src_type;
typedef proto::basic_expr<Tag, dst_args, 9> type;
+ BOOST_FORCEINLINE
static type const call(src_type const &e)
{
type that = {
@@ -434,6 +452,7 @@
dst_args;
typedef proto::expr<Tag, src_args, 10> src_type;
typedef proto::expr<Tag, dst_args, 10> type;
+ BOOST_FORCEINLINE
static type const call(src_type const &e)
{
type that = {
@@ -457,6 +476,7 @@
dst_args;
typedef proto::basic_expr<Tag, src_args, 10> src_type;
typedef proto::basic_expr<Tag, dst_args, 10> type;
+ BOOST_FORCEINLINE
static type const call(src_type const &e)
{
type that = {
Modified: branches/release/boost/proto/detail/preprocessed/make_expr.hpp
==============================================================================
--- branches/release/boost/proto/detail/preprocessed/make_expr.hpp (original)
+++ branches/release/boost/proto/detail/preprocessed/make_expr.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -8,6 +8,7 @@
template<typename Tag , typename A0 , typename A1>
+ BOOST_FORCEINLINE
typename lazy_disable_if<
is_domain<A0>
, result_of::make_expr<
@@ -26,6 +27,7 @@
template<typename Tag, typename Domain , typename C0 , typename C1>
+ BOOST_FORCEINLINE
typename result_of::make_expr<
Tag
, Domain
@@ -42,6 +44,7 @@
template<typename Tag , typename A0 , typename A1 , typename A2>
+ BOOST_FORCEINLINE
typename lazy_disable_if<
is_domain<A0>
, result_of::make_expr<
@@ -60,6 +63,7 @@
template<typename Tag, typename Domain , typename C0 , typename C1 , typename C2>
+ BOOST_FORCEINLINE
typename result_of::make_expr<
Tag
, Domain
@@ -76,6 +80,7 @@
template<typename Tag , typename A0 , typename A1 , typename A2 , typename A3>
+ BOOST_FORCEINLINE
typename lazy_disable_if<
is_domain<A0>
, result_of::make_expr<
@@ -94,6 +99,7 @@
template<typename Tag, typename Domain , typename C0 , typename C1 , typename C2 , typename C3>
+ BOOST_FORCEINLINE
typename result_of::make_expr<
Tag
, Domain
@@ -110,6 +116,7 @@
template<typename Tag , typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
+ BOOST_FORCEINLINE
typename lazy_disable_if<
is_domain<A0>
, result_of::make_expr<
@@ -128,6 +135,7 @@
template<typename Tag, typename Domain , typename C0 , typename C1 , typename C2 , typename C3 , typename C4>
+ BOOST_FORCEINLINE
typename result_of::make_expr<
Tag
, Domain
@@ -144,6 +152,7 @@
template<typename Tag , typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
+ BOOST_FORCEINLINE
typename lazy_disable_if<
is_domain<A0>
, result_of::make_expr<
@@ -162,6 +171,7 @@
template<typename Tag, typename Domain , typename C0 , typename C1 , typename C2 , typename C3 , typename C4 , typename C5>
+ BOOST_FORCEINLINE
typename result_of::make_expr<
Tag
, Domain
@@ -178,6 +188,7 @@
template<typename Tag , typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
+ BOOST_FORCEINLINE
typename lazy_disable_if<
is_domain<A0>
, result_of::make_expr<
@@ -196,6 +207,7 @@
template<typename Tag, typename Domain , typename C0 , typename C1 , typename C2 , typename C3 , typename C4 , typename C5 , typename C6>
+ BOOST_FORCEINLINE
typename result_of::make_expr<
Tag
, Domain
@@ -212,6 +224,7 @@
template<typename Tag , typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
+ BOOST_FORCEINLINE
typename lazy_disable_if<
is_domain<A0>
, result_of::make_expr<
@@ -230,6 +243,7 @@
template<typename Tag, typename Domain , typename C0 , typename C1 , typename C2 , typename C3 , typename C4 , typename C5 , typename C6 , typename C7>
+ BOOST_FORCEINLINE
typename result_of::make_expr<
Tag
, Domain
@@ -246,6 +260,7 @@
template<typename Tag , typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
+ BOOST_FORCEINLINE
typename lazy_disable_if<
is_domain<A0>
, result_of::make_expr<
@@ -264,6 +279,7 @@
template<typename Tag, typename Domain , typename C0 , typename C1 , typename C2 , typename C3 , typename C4 , typename C5 , typename C6 , typename C7 , typename C8>
+ BOOST_FORCEINLINE
typename result_of::make_expr<
Tag
, Domain
@@ -280,6 +296,7 @@
template<typename Tag , typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9>
+ BOOST_FORCEINLINE
typename lazy_disable_if<
is_domain<A0>
, result_of::make_expr<
@@ -298,6 +315,7 @@
template<typename Tag, typename Domain , typename C0 , typename C1 , typename C2 , typename C3 , typename C4 , typename C5 , typename C6 , typename C7 , typename C8 , typename C9>
+ BOOST_FORCEINLINE
typename result_of::make_expr<
Tag
, Domain
Modified: branches/release/boost/proto/detail/preprocessed/make_expr_.hpp
==============================================================================
--- branches/release/boost/proto/detail/preprocessed/make_expr_.hpp (original)
+++ branches/release/boost/proto/detail/preprocessed/make_expr_.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -18,6 +18,7 @@
, void , void , void , void , void , void , void , void , void , void>
{
typedef typename proto::detail::protoify<A, Domain>::result_type result_type;
+ BOOST_FORCEINLINE
result_type operator()(typename add_reference<A>::type a) const
{
return proto::detail::protoify<A, Domain>()(a);
@@ -40,6 +41,7 @@
typedef typename base_expr<Domain, Tag, proto_args>::type expr_type;
typedef typename Domain::proto_generator proto_generator;
typedef typename proto_generator::template result<proto_generator(expr_type)>::type result_type;
+ BOOST_FORCEINLINE
result_type operator()(typename add_reference<A0 >::type a0) const
{
expr_type const that = {
@@ -69,6 +71,7 @@
typedef typename base_expr<Domain, Tag, proto_args>::type expr_type;
typedef typename Domain::proto_generator proto_generator;
typedef typename proto_generator::template result<proto_generator(expr_type)>::type result_type;
+ BOOST_FORCEINLINE
result_type operator()(typename add_reference<A0 >::type a0 , typename add_reference<A1 >::type a1) const
{
expr_type const that = {
@@ -98,6 +101,7 @@
typedef typename base_expr<Domain, Tag, proto_args>::type expr_type;
typedef typename Domain::proto_generator proto_generator;
typedef typename proto_generator::template result<proto_generator(expr_type)>::type result_type;
+ BOOST_FORCEINLINE
result_type operator()(typename add_reference<A0 >::type a0 , typename add_reference<A1 >::type a1 , typename add_reference<A2 >::type a2) const
{
expr_type const that = {
@@ -127,6 +131,7 @@
typedef typename base_expr<Domain, Tag, proto_args>::type expr_type;
typedef typename Domain::proto_generator proto_generator;
typedef typename proto_generator::template result<proto_generator(expr_type)>::type result_type;
+ BOOST_FORCEINLINE
result_type operator()(typename add_reference<A0 >::type a0 , typename add_reference<A1 >::type a1 , typename add_reference<A2 >::type a2 , typename add_reference<A3 >::type a3) const
{
expr_type const that = {
@@ -156,6 +161,7 @@
typedef typename base_expr<Domain, Tag, proto_args>::type expr_type;
typedef typename Domain::proto_generator proto_generator;
typedef typename proto_generator::template result<proto_generator(expr_type)>::type result_type;
+ BOOST_FORCEINLINE
result_type operator()(typename add_reference<A0 >::type a0 , typename add_reference<A1 >::type a1 , typename add_reference<A2 >::type a2 , typename add_reference<A3 >::type a3 , typename add_reference<A4 >::type a4) const
{
expr_type const that = {
@@ -185,6 +191,7 @@
typedef typename base_expr<Domain, Tag, proto_args>::type expr_type;
typedef typename Domain::proto_generator proto_generator;
typedef typename proto_generator::template result<proto_generator(expr_type)>::type result_type;
+ BOOST_FORCEINLINE
result_type operator()(typename add_reference<A0 >::type a0 , typename add_reference<A1 >::type a1 , typename add_reference<A2 >::type a2 , typename add_reference<A3 >::type a3 , typename add_reference<A4 >::type a4 , typename add_reference<A5 >::type a5) const
{
expr_type const that = {
@@ -214,6 +221,7 @@
typedef typename base_expr<Domain, Tag, proto_args>::type expr_type;
typedef typename Domain::proto_generator proto_generator;
typedef typename proto_generator::template result<proto_generator(expr_type)>::type result_type;
+ BOOST_FORCEINLINE
result_type operator()(typename add_reference<A0 >::type a0 , typename add_reference<A1 >::type a1 , typename add_reference<A2 >::type a2 , typename add_reference<A3 >::type a3 , typename add_reference<A4 >::type a4 , typename add_reference<A5 >::type a5 , typename add_reference<A6 >::type a6) const
{
expr_type const that = {
@@ -243,6 +251,7 @@
typedef typename base_expr<Domain, Tag, proto_args>::type expr_type;
typedef typename Domain::proto_generator proto_generator;
typedef typename proto_generator::template result<proto_generator(expr_type)>::type result_type;
+ BOOST_FORCEINLINE
result_type operator()(typename add_reference<A0 >::type a0 , typename add_reference<A1 >::type a1 , typename add_reference<A2 >::type a2 , typename add_reference<A3 >::type a3 , typename add_reference<A4 >::type a4 , typename add_reference<A5 >::type a5 , typename add_reference<A6 >::type a6 , typename add_reference<A7 >::type a7) const
{
expr_type const that = {
@@ -272,6 +281,7 @@
typedef typename base_expr<Domain, Tag, proto_args>::type expr_type;
typedef typename Domain::proto_generator proto_generator;
typedef typename proto_generator::template result<proto_generator(expr_type)>::type result_type;
+ BOOST_FORCEINLINE
result_type operator()(typename add_reference<A0 >::type a0 , typename add_reference<A1 >::type a1 , typename add_reference<A2 >::type a2 , typename add_reference<A3 >::type a3 , typename add_reference<A4 >::type a4 , typename add_reference<A5 >::type a5 , typename add_reference<A6 >::type a6 , typename add_reference<A7 >::type a7 , typename add_reference<A8 >::type a8) const
{
expr_type const that = {
@@ -301,6 +311,7 @@
typedef typename base_expr<Domain, Tag, proto_args>::type expr_type;
typedef typename Domain::proto_generator proto_generator;
typedef typename proto_generator::template result<proto_generator(expr_type)>::type result_type;
+ BOOST_FORCEINLINE
result_type operator()(typename add_reference<A0 >::type a0 , typename add_reference<A1 >::type a1 , typename add_reference<A2 >::type a2 , typename add_reference<A3 >::type a3 , typename add_reference<A4 >::type a4 , typename add_reference<A5 >::type a5 , typename add_reference<A6 >::type a6 , typename add_reference<A7 >::type a7 , typename add_reference<A8 >::type a8 , typename add_reference<A9 >::type a9) const
{
expr_type const that = {
Modified: branches/release/boost/proto/detail/preprocessed/make_expr_funop.hpp
==============================================================================
--- branches/release/boost/proto/detail/preprocessed/make_expr_funop.hpp (original)
+++ branches/release/boost/proto/detail/preprocessed/make_expr_funop.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -19,6 +19,7 @@
template<typename A0 , typename A1>
+ BOOST_FORCEINLINE
typename result_of::make_expr<
Tag
, Domain
@@ -46,6 +47,7 @@
template<typename A0 , typename A1 , typename A2>
+ BOOST_FORCEINLINE
typename result_of::make_expr<
Tag
, Domain
@@ -73,6 +75,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3>
+ BOOST_FORCEINLINE
typename result_of::make_expr<
Tag
, Domain
@@ -100,6 +103,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
+ BOOST_FORCEINLINE
typename result_of::make_expr<
Tag
, Domain
@@ -127,6 +131,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
+ BOOST_FORCEINLINE
typename result_of::make_expr<
Tag
, Domain
@@ -154,6 +159,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
+ BOOST_FORCEINLINE
typename result_of::make_expr<
Tag
, Domain
@@ -181,6 +187,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
+ BOOST_FORCEINLINE
typename result_of::make_expr<
Tag
, Domain
@@ -208,6 +215,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
+ BOOST_FORCEINLINE
typename result_of::make_expr<
Tag
, Domain
@@ -235,6 +243,7 @@
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9>
+ BOOST_FORCEINLINE
typename result_of::make_expr<
Tag
, Domain
Modified: branches/release/boost/proto/detail/preprocessed/memfun_funop.hpp
==============================================================================
--- branches/release/boost/proto/detail/preprocessed/memfun_funop.hpp (original)
+++ branches/release/boost/proto/detail/preprocessed/memfun_funop.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -6,60 +6,70 @@
// Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
template<typename A0>
+ BOOST_FORCEINLINE
result_type operator()(A0 const &a0) const
{
BOOST_PROTO_USE_GET_POINTER();
return (BOOST_PROTO_GET_POINTER(V, obj) ->* pmf)(a0);
}
template<typename A0 , typename A1>
+ BOOST_FORCEINLINE
result_type operator()(A0 const &a0 , A1 const &a1) const
{
BOOST_PROTO_USE_GET_POINTER();
return (BOOST_PROTO_GET_POINTER(V, obj) ->* pmf)(a0 , a1);
}
template<typename A0 , typename A1 , typename A2>
+ BOOST_FORCEINLINE
result_type operator()(A0 const &a0 , A1 const &a1 , A2 const &a2) const
{
BOOST_PROTO_USE_GET_POINTER();
return (BOOST_PROTO_GET_POINTER(V, obj) ->* pmf)(a0 , a1 , a2);
}
template<typename A0 , typename A1 , typename A2 , typename A3>
+ BOOST_FORCEINLINE
result_type operator()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3) const
{
BOOST_PROTO_USE_GET_POINTER();
return (BOOST_PROTO_GET_POINTER(V, obj) ->* pmf)(a0 , a1 , a2 , a3);
}
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
+ BOOST_FORCEINLINE
result_type operator()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4) const
{
BOOST_PROTO_USE_GET_POINTER();
return (BOOST_PROTO_GET_POINTER(V, obj) ->* pmf)(a0 , a1 , a2 , a3 , a4);
}
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
+ BOOST_FORCEINLINE
result_type operator()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5) const
{
BOOST_PROTO_USE_GET_POINTER();
return (BOOST_PROTO_GET_POINTER(V, obj) ->* pmf)(a0 , a1 , a2 , a3 , a4 , a5);
}
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
+ BOOST_FORCEINLINE
result_type operator()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6) const
{
BOOST_PROTO_USE_GET_POINTER();
return (BOOST_PROTO_GET_POINTER(V, obj) ->* pmf)(a0 , a1 , a2 , a3 , a4 , a5 , a6);
}
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
+ BOOST_FORCEINLINE
result_type operator()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6 , A7 const &a7) const
{
BOOST_PROTO_USE_GET_POINTER();
return (BOOST_PROTO_GET_POINTER(V, obj) ->* pmf)(a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7);
}
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
+ BOOST_FORCEINLINE
result_type operator()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6 , A7 const &a7 , A8 const &a8) const
{
BOOST_PROTO_USE_GET_POINTER();
return (BOOST_PROTO_GET_POINTER(V, obj) ->* pmf)(a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8);
}
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9>
+ BOOST_FORCEINLINE
result_type operator()(A0 const &a0 , A1 const &a1 , A2 const &a2 , A3 const &a3 , A4 const &a4 , A5 const &a5 , A6 const &a6 , A7 const &a7 , A8 const &a8 , A9 const &a9) const
{
BOOST_PROTO_USE_GET_POINTER();
Modified: branches/release/boost/proto/detail/preprocessed/traits.hpp
==============================================================================
--- branches/release/boost/proto/detail/preprocessed/traits.hpp (original)
+++ branches/release/boost/proto/detail/preprocessed/traits.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -44,6 +44,7 @@
typedef typename detail::expr_traits<typename Expr::proto_child0>::reference type;
+ BOOST_FORCEINLINE
static type call(Expr &e)
{
return e.proto_base().child0;
@@ -65,6 +66,7 @@
typedef typename detail::expr_traits<typename Expr::proto_child0>::const_reference type;
+ BOOST_FORCEINLINE
static type call(Expr const &e)
{
return e.proto_base().child0;
@@ -184,6 +186,7 @@
typedef typename detail::expr_traits<typename Expr::proto_child1>::reference type;
+ BOOST_FORCEINLINE
static type call(Expr &e)
{
return e.proto_base().child1;
@@ -205,6 +208,7 @@
typedef typename detail::expr_traits<typename Expr::proto_child1>::const_reference type;
+ BOOST_FORCEINLINE
static type call(Expr const &e)
{
return e.proto_base().child1;
@@ -324,6 +328,7 @@
typedef typename detail::expr_traits<typename Expr::proto_child2>::reference type;
+ BOOST_FORCEINLINE
static type call(Expr &e)
{
return e.proto_base().child2;
@@ -345,6 +350,7 @@
typedef typename detail::expr_traits<typename Expr::proto_child2>::const_reference type;
+ BOOST_FORCEINLINE
static type call(Expr const &e)
{
return e.proto_base().child2;
@@ -464,6 +470,7 @@
typedef typename detail::expr_traits<typename Expr::proto_child3>::reference type;
+ BOOST_FORCEINLINE
static type call(Expr &e)
{
return e.proto_base().child3;
@@ -485,6 +492,7 @@
typedef typename detail::expr_traits<typename Expr::proto_child3>::const_reference type;
+ BOOST_FORCEINLINE
static type call(Expr const &e)
{
return e.proto_base().child3;
@@ -604,6 +612,7 @@
typedef typename detail::expr_traits<typename Expr::proto_child4>::reference type;
+ BOOST_FORCEINLINE
static type call(Expr &e)
{
return e.proto_base().child4;
@@ -625,6 +634,7 @@
typedef typename detail::expr_traits<typename Expr::proto_child4>::const_reference type;
+ BOOST_FORCEINLINE
static type call(Expr const &e)
{
return e.proto_base().child4;
@@ -744,6 +754,7 @@
typedef typename detail::expr_traits<typename Expr::proto_child5>::reference type;
+ BOOST_FORCEINLINE
static type call(Expr &e)
{
return e.proto_base().child5;
@@ -765,6 +776,7 @@
typedef typename detail::expr_traits<typename Expr::proto_child5>::const_reference type;
+ BOOST_FORCEINLINE
static type call(Expr const &e)
{
return e.proto_base().child5;
@@ -884,6 +896,7 @@
typedef typename detail::expr_traits<typename Expr::proto_child6>::reference type;
+ BOOST_FORCEINLINE
static type call(Expr &e)
{
return e.proto_base().child6;
@@ -905,6 +918,7 @@
typedef typename detail::expr_traits<typename Expr::proto_child6>::const_reference type;
+ BOOST_FORCEINLINE
static type call(Expr const &e)
{
return e.proto_base().child6;
@@ -1024,6 +1038,7 @@
typedef typename detail::expr_traits<typename Expr::proto_child7>::reference type;
+ BOOST_FORCEINLINE
static type call(Expr &e)
{
return e.proto_base().child7;
@@ -1045,6 +1060,7 @@
typedef typename detail::expr_traits<typename Expr::proto_child7>::const_reference type;
+ BOOST_FORCEINLINE
static type call(Expr const &e)
{
return e.proto_base().child7;
@@ -1164,6 +1180,7 @@
typedef typename detail::expr_traits<typename Expr::proto_child8>::reference type;
+ BOOST_FORCEINLINE
static type call(Expr &e)
{
return e.proto_base().child8;
@@ -1185,6 +1202,7 @@
typedef typename detail::expr_traits<typename Expr::proto_child8>::const_reference type;
+ BOOST_FORCEINLINE
static type call(Expr const &e)
{
return e.proto_base().child8;
@@ -1304,6 +1322,7 @@
typedef typename detail::expr_traits<typename Expr::proto_child9>::reference type;
+ BOOST_FORCEINLINE
static type call(Expr &e)
{
return e.proto_base().child9;
@@ -1325,6 +1344,7 @@
typedef typename detail::expr_traits<typename Expr::proto_child9>::const_reference type;
+ BOOST_FORCEINLINE
static type call(Expr const &e)
{
return e.proto_base().child9;
@@ -1435,6 +1455,7 @@
typedef typename detail::expr_traits<typename Expr::proto_child10>::reference type;
+ BOOST_FORCEINLINE
static type call(Expr &e)
{
return e.proto_base().child10;
@@ -1456,6 +1477,7 @@
typedef typename detail::expr_traits<typename Expr::proto_child10>::const_reference type;
+ BOOST_FORCEINLINE
static type call(Expr const &e)
{
return e.proto_base().child10;
Modified: branches/release/boost/proto/detail/preprocessed/unpack_expr_.hpp
==============================================================================
--- branches/release/boost/proto/detail/preprocessed/unpack_expr_.hpp (original)
+++ branches/release/boost/proto/detail/preprocessed/unpack_expr_.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -24,6 +24,7 @@
, Domain
>::result_type
type;
+ BOOST_FORCEINLINE
static type const call(Sequence const &sequence)
{
return proto::detail::protoify<terminal_type, Domain>()(fusion::at_c<0>(sequence));
@@ -45,6 +46,7 @@
typedef typename base_expr<Domain, Tag, proto_args>::type expr_type;
typedef typename Domain::proto_generator proto_generator;
typedef typename proto_generator::template result<proto_generator(expr_type)>::type type;
+ BOOST_FORCEINLINE
static type const call(Sequence const &sequence)
{
fusion_iterator0 it0 = fusion::begin(sequence);
@@ -69,6 +71,7 @@
>
other;
typedef typename other::type type;
+ BOOST_FORCEINLINE
static type const call(Sequence const &sequence)
{
return other::call(sequence);
@@ -86,6 +89,7 @@
typedef typename base_expr<Domain, Tag, proto_args>::type expr_type;
typedef typename Domain::proto_generator proto_generator;
typedef typename proto_generator::template result<proto_generator(expr_type)>::type type;
+ BOOST_FORCEINLINE
static type const call(Sequence const &sequence)
{
fusion_iterator0 it0 = fusion::begin(sequence); fusion_iterator1 it1 = fusion::next(it0);
@@ -110,6 +114,7 @@
>
other;
typedef typename other::type type;
+ BOOST_FORCEINLINE
static type const call(Sequence const &sequence)
{
return other::call(sequence);
@@ -127,6 +132,7 @@
typedef typename base_expr<Domain, Tag, proto_args>::type expr_type;
typedef typename Domain::proto_generator proto_generator;
typedef typename proto_generator::template result<proto_generator(expr_type)>::type type;
+ BOOST_FORCEINLINE
static type const call(Sequence const &sequence)
{
fusion_iterator0 it0 = fusion::begin(sequence); fusion_iterator1 it1 = fusion::next(it0); fusion_iterator2 it2 = fusion::next(it1);
@@ -151,6 +157,7 @@
>
other;
typedef typename other::type type;
+ BOOST_FORCEINLINE
static type const call(Sequence const &sequence)
{
return other::call(sequence);
@@ -168,6 +175,7 @@
typedef typename base_expr<Domain, Tag, proto_args>::type expr_type;
typedef typename Domain::proto_generator proto_generator;
typedef typename proto_generator::template result<proto_generator(expr_type)>::type type;
+ BOOST_FORCEINLINE
static type const call(Sequence const &sequence)
{
fusion_iterator0 it0 = fusion::begin(sequence); fusion_iterator1 it1 = fusion::next(it0); fusion_iterator2 it2 = fusion::next(it1); fusion_iterator3 it3 = fusion::next(it2);
@@ -192,6 +200,7 @@
>
other;
typedef typename other::type type;
+ BOOST_FORCEINLINE
static type const call(Sequence const &sequence)
{
return other::call(sequence);
@@ -209,6 +218,7 @@
typedef typename base_expr<Domain, Tag, proto_args>::type expr_type;
typedef typename Domain::proto_generator proto_generator;
typedef typename proto_generator::template result<proto_generator(expr_type)>::type type;
+ BOOST_FORCEINLINE
static type const call(Sequence const &sequence)
{
fusion_iterator0 it0 = fusion::begin(sequence); fusion_iterator1 it1 = fusion::next(it0); fusion_iterator2 it2 = fusion::next(it1); fusion_iterator3 it3 = fusion::next(it2); fusion_iterator4 it4 = fusion::next(it3);
@@ -233,6 +243,7 @@
>
other;
typedef typename other::type type;
+ BOOST_FORCEINLINE
static type const call(Sequence const &sequence)
{
return other::call(sequence);
@@ -250,6 +261,7 @@
typedef typename base_expr<Domain, Tag, proto_args>::type expr_type;
typedef typename Domain::proto_generator proto_generator;
typedef typename proto_generator::template result<proto_generator(expr_type)>::type type;
+ BOOST_FORCEINLINE
static type const call(Sequence const &sequence)
{
fusion_iterator0 it0 = fusion::begin(sequence); fusion_iterator1 it1 = fusion::next(it0); fusion_iterator2 it2 = fusion::next(it1); fusion_iterator3 it3 = fusion::next(it2); fusion_iterator4 it4 = fusion::next(it3); fusion_iterator5 it5 = fusion::next(it4);
@@ -274,6 +286,7 @@
>
other;
typedef typename other::type type;
+ BOOST_FORCEINLINE
static type const call(Sequence const &sequence)
{
return other::call(sequence);
@@ -291,6 +304,7 @@
typedef typename base_expr<Domain, Tag, proto_args>::type expr_type;
typedef typename Domain::proto_generator proto_generator;
typedef typename proto_generator::template result<proto_generator(expr_type)>::type type;
+ BOOST_FORCEINLINE
static type const call(Sequence const &sequence)
{
fusion_iterator0 it0 = fusion::begin(sequence); fusion_iterator1 it1 = fusion::next(it0); fusion_iterator2 it2 = fusion::next(it1); fusion_iterator3 it3 = fusion::next(it2); fusion_iterator4 it4 = fusion::next(it3); fusion_iterator5 it5 = fusion::next(it4); fusion_iterator6 it6 = fusion::next(it5);
@@ -315,6 +329,7 @@
>
other;
typedef typename other::type type;
+ BOOST_FORCEINLINE
static type const call(Sequence const &sequence)
{
return other::call(sequence);
@@ -332,6 +347,7 @@
typedef typename base_expr<Domain, Tag, proto_args>::type expr_type;
typedef typename Domain::proto_generator proto_generator;
typedef typename proto_generator::template result<proto_generator(expr_type)>::type type;
+ BOOST_FORCEINLINE
static type const call(Sequence const &sequence)
{
fusion_iterator0 it0 = fusion::begin(sequence); fusion_iterator1 it1 = fusion::next(it0); fusion_iterator2 it2 = fusion::next(it1); fusion_iterator3 it3 = fusion::next(it2); fusion_iterator4 it4 = fusion::next(it3); fusion_iterator5 it5 = fusion::next(it4); fusion_iterator6 it6 = fusion::next(it5); fusion_iterator7 it7 = fusion::next(it6);
@@ -356,6 +372,7 @@
>
other;
typedef typename other::type type;
+ BOOST_FORCEINLINE
static type const call(Sequence const &sequence)
{
return other::call(sequence);
@@ -373,6 +390,7 @@
typedef typename base_expr<Domain, Tag, proto_args>::type expr_type;
typedef typename Domain::proto_generator proto_generator;
typedef typename proto_generator::template result<proto_generator(expr_type)>::type type;
+ BOOST_FORCEINLINE
static type const call(Sequence const &sequence)
{
fusion_iterator0 it0 = fusion::begin(sequence); fusion_iterator1 it1 = fusion::next(it0); fusion_iterator2 it2 = fusion::next(it1); fusion_iterator3 it3 = fusion::next(it2); fusion_iterator4 it4 = fusion::next(it3); fusion_iterator5 it5 = fusion::next(it4); fusion_iterator6 it6 = fusion::next(it5); fusion_iterator7 it7 = fusion::next(it6); fusion_iterator8 it8 = fusion::next(it7);
@@ -397,6 +415,7 @@
>
other;
typedef typename other::type type;
+ BOOST_FORCEINLINE
static type const call(Sequence const &sequence)
{
return other::call(sequence);
@@ -414,6 +433,7 @@
typedef typename base_expr<Domain, Tag, proto_args>::type expr_type;
typedef typename Domain::proto_generator proto_generator;
typedef typename proto_generator::template result<proto_generator(expr_type)>::type type;
+ BOOST_FORCEINLINE
static type const call(Sequence const &sequence)
{
fusion_iterator0 it0 = fusion::begin(sequence); fusion_iterator1 it1 = fusion::next(it0); fusion_iterator2 it2 = fusion::next(it1); fusion_iterator3 it3 = fusion::next(it2); fusion_iterator4 it4 = fusion::next(it3); fusion_iterator5 it5 = fusion::next(it4); fusion_iterator6 it6 = fusion::next(it5); fusion_iterator7 it7 = fusion::next(it6); fusion_iterator8 it8 = fusion::next(it7); fusion_iterator9 it9 = fusion::next(it8);
@@ -438,6 +458,7 @@
>
other;
typedef typename other::type type;
+ BOOST_FORCEINLINE
static type const call(Sequence const &sequence)
{
return other::call(sequence);
Modified: branches/release/boost/proto/detail/traits.hpp
==============================================================================
--- branches/release/boost/proto/detail/traits.hpp (original)
+++ branches/release/boost/proto/detail/traits.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -182,6 +182,7 @@
/// INTERNAL ONLY
///
+ BOOST_FORCEINLINE
static type call(Expr &e)
{
return e.proto_base().BOOST_PP_CAT(child, N);
@@ -207,6 +208,7 @@
/// INTERNAL ONLY
///
+ BOOST_FORCEINLINE
static type call(Expr const &e)
{
return e.proto_base().BOOST_PP_CAT(child, N);
Modified: branches/release/boost/proto/detail/unpack_expr_.hpp
==============================================================================
--- branches/release/boost/proto/detail/unpack_expr_.hpp (original)
+++ branches/release/boost/proto/detail/unpack_expr_.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -107,6 +107,7 @@
>::result_type
type;
+ BOOST_FORCEINLINE
static type const call(Sequence const &sequence)
{
return proto::detail::protoify<terminal_type, Domain>()(fusion::at_c<0>(sequence));
@@ -155,6 +156,7 @@
typedef typename Domain::proto_generator proto_generator;
typedef typename proto_generator::template result<proto_generator(expr_type)>::type type;
+ BOOST_FORCEINLINE
static type const call(Sequence const &sequence)
{
BOOST_PROTO_FUSION_ITERATORS(N)
@@ -183,6 +185,7 @@
typedef typename other::type type;
+ BOOST_FORCEINLINE
static type const call(Sequence const &sequence)
{
return other::call(sequence);
Modified: branches/release/boost/proto/domain.hpp
==============================================================================
--- branches/release/boost/proto/domain.hpp (original)
+++ branches/release/boost/proto/domain.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -142,6 +142,7 @@
BOOST_PROTO_CALLABLE()
typedef typename remove_const<T>::type result_type;
+ BOOST_FORCEINLINE
result_type operator()(T &e) const
{
return e;
@@ -185,6 +186,7 @@
BOOST_PROTO_CALLABLE()
typedef T &result_type;
+ BOOST_FORCEINLINE
result_type operator()(T &e) const
{
return e;
Modified: branches/release/boost/proto/expr.hpp
==============================================================================
--- branches/release/boost/proto/expr.hpp (original)
+++ branches/release/boost/proto/expr.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -58,6 +58,7 @@
};
template<typename T, typename Expr, typename Arg0>
+ BOOST_FORCEINLINE
Expr make_terminal(T &t, Expr *, proto::term<Arg0> *)
{
Expr that = {t};
@@ -65,6 +66,7 @@
}
template<typename T, typename Expr, typename Arg0, std::size_t N>
+ BOOST_FORCEINLINE
Expr make_terminal(T (&t)[N], Expr *, proto::term<Arg0[N]> *)
{
Expr that;
@@ -76,6 +78,7 @@
}
template<typename T, typename Expr, typename Arg0, std::size_t N>
+ BOOST_FORCEINLINE
Expr make_terminal(T const(&t)[N], Expr *, proto::term<Arg0[N]> *)
{
Expr that;
@@ -129,6 +132,7 @@
{
BOOST_PROTO_UNEXPR()
+ BOOST_FORCEINLINE
explicit unexpr(Expr const &e)
: Expr(e)
{}
Modified: branches/release/boost/proto/extends.hpp
==============================================================================
--- branches/release/boost/proto/extends.hpp (original)
+++ branches/release/boost/proto/extends.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -75,6 +75,7 @@
///
#define BOOST_PROTO_DEFINE_FUN_OP_IMPL_(Z, N, DATA, Const) \
BOOST_PP_IF(N, BOOST_PROTO_TEMPLATE_YES_, BOOST_PROTO_TEMPLATE_NO_)(Z, N) \
+ BOOST_FORCEINLINE \
typename BOOST_PROTO_RESULT_OF< \
proto_generator( \
typename boost::proto::result_of::BOOST_PP_CAT(funop, N)< \
@@ -104,6 +105,7 @@
///
#define BOOST_PROTO_DEFINE_FUN_OP_VARIADIC_IMPL_(Const) \
template<typename... A> \
+ BOOST_FORCEINLINE \
typename BOOST_PROTO_RESULT_OF< \
proto_generator( \
typename boost::proto::result_of::funop< \
@@ -174,22 +176,26 @@
typedef boost::proto::tag::proto_expr fusion_tag; \
BOOST_PP_REPEAT(BOOST_PROTO_MAX_ARITY, BOOST_PROTO_EXTENDS_CHILD, ~) \
\
+ BOOST_FORCEINLINE \
static proto_derived_expr const make(Expr const &e) \
{ \
proto_derived_expr that = {e}; \
return that; \
} \
\
+ BOOST_FORCEINLINE \
proto_base_expr &proto_base() \
{ \
return this->proto_expr_.proto_base(); \
} \
\
+ BOOST_FORCEINLINE \
proto_base_expr const &proto_base() const \
{ \
return this->proto_expr_.proto_base(); \
} \
\
+ BOOST_FORCEINLINE \
operator proto_address_of_hack_type_() const \
{ \
return boost::addressof(this->proto_base().child0); \
@@ -203,6 +209,7 @@
#define BOOST_PROTO_EXTENDS_COPY_ASSIGN_IMPL_(This, Const, Typename) \
BOOST_PROTO_DISABLE_MSVC_C4522 \
+ BOOST_FORCEINLINE \
Typename() BOOST_PROTO_RESULT_OF< \
Typename() This::proto_generator( \
Typename() boost::proto::base_expr< \
@@ -252,6 +259,7 @@
///
#define BOOST_PROTO_EXTENDS_ASSIGN_IMPL_(ThisConst, ThatConst) \
template<typename A> \
+ BOOST_FORCEINLINE \
typename BOOST_PROTO_RESULT_OF< \
proto_generator( \
typename boost::proto::base_expr< \
@@ -318,6 +326,7 @@
///
#define BOOST_PROTO_EXTENDS_SUBSCRIPT_IMPL_(ThisConst, ThatConst) \
template<typename A> \
+ BOOST_FORCEINLINE \
typename BOOST_PROTO_RESULT_OF< \
proto_generator( \
typename boost::proto::base_expr< \
@@ -492,14 +501,17 @@
>
struct extends
{
+ BOOST_FORCEINLINE
extends()
: proto_expr_()
{}
+ BOOST_FORCEINLINE
extends(extends const &that)
: proto_expr_(that.proto_expr_)
{}
+ BOOST_FORCEINLINE
extends(Expr const &expr_)
: proto_expr_(expr_)
{}
@@ -520,14 +532,17 @@
template<typename Expr, typename Derived, typename Domain>
struct extends<Expr, Derived, Domain, 0>
{
+ BOOST_FORCEINLINE
extends()
: proto_expr_()
{}
+ BOOST_FORCEINLINE
extends(extends const &that)
: proto_expr_(that.proto_expr_)
{}
+ BOOST_FORCEINLINE
extends(Expr const &expr_)
: proto_expr_(expr_)
{}
@@ -574,18 +589,21 @@
#include <boost/proto/detail/extends_funop.hpp>
#undef BOOST_PROTO_NO_WAVE_OUTPUT
+ BOOST_FORCEINLINE
proto_base_expr const proto_base() const
{
proto_base_expr that = {this->child0(), this->child1()};
return that;
}
+ BOOST_FORCEINLINE
proto_child0 child0() const
{
using std::size_t;
return *(This *)((char *)this - BOOST_PROTO_OFFSETOF(This, proto_member_union_start_));
}
+ BOOST_FORCEINLINE
proto_child1 child1() const
{
static expr<tag::terminal, term<Fun>, 0> const that = {Fun()};
Modified: branches/release/boost/proto/generate.hpp
==============================================================================
--- branches/release/boost/proto/generate.hpp (original)
+++ branches/release/boost/proto/generate.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -43,6 +43,7 @@
>
type;
+ BOOST_FORCEINLINE
static type const call(proto::expr<Tag, term<Arg>, 0> const &e)
{
type that = {e.child0};
@@ -61,6 +62,7 @@
>
type;
+ BOOST_FORCEINLINE
static type const call(proto::basic_expr<Tag, term<Arg>, 0> const &e)
{
type that = {e.child0};
@@ -108,6 +110,7 @@
/// \param expr A Proto expression
/// \return expr
template<typename Expr>
+ BOOST_FORCEINLINE
#ifdef BOOST_PROTO_STRICT_RESULT_OF
Expr
#else
@@ -170,6 +173,7 @@
/// \param expr A Proto expression
/// \return Extends<Expr>(expr)
template<typename Expr>
+ BOOST_FORCEINLINE
Extends<Expr> operator ()(Expr const &e) const
{
return Extends<Expr>(e);
@@ -216,6 +220,7 @@
/// \param expr The expression to wrap
/// \return <tt>Extends\<Expr\> that = {expr}; return that;</tt>
template<typename Expr>
+ BOOST_FORCEINLINE
Extends<Expr> operator ()(Expr const &e) const
{
Extends<Expr> that = {e};
@@ -269,6 +274,7 @@
/// \param expr The expression to modify.
/// \return <tt>deep_copy(expr)</tt>
template<typename Expr>
+ BOOST_FORCEINLINE
typename result<by_value_generator(Expr)>::type operator ()(Expr const &e) const
{
return detail::by_value_generator_<Expr>::call(e);
@@ -326,6 +332,7 @@
/// \param expr The expression to modify.
/// \return Second()(First()(expr))
template<typename Expr>
+ BOOST_FORCEINLINE
typename result<compose_generators(Expr)>::type operator ()(Expr const &e) const
{
return Second()(First()(e));
Modified: branches/release/boost/proto/make_expr.hpp
==============================================================================
--- branches/release/boost/proto/make_expr.hpp (original)
+++ branches/release/boost/proto/make_expr.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -282,6 +282,7 @@
///
/// \return <tt>proto::make_expr\<Tag, Domain\>(a0,...aN)</tt>
template<typename A0>
+ BOOST_FORCEINLINE
typename result_of::make_expr<
Tag
, Domain
@@ -351,6 +352,7 @@
/// \param sequence A Fusion Forward Sequence
/// \return <tt>proto::unpack_expr\<Tag, Domain\>(sequence)</tt>
template<typename Sequence>
+ BOOST_FORCEINLINE
typename result_of::unpack_expr<Tag, Domain, Sequence const>::type const
operator ()(Sequence const &sequence) const
{
@@ -387,6 +389,7 @@
///
/// \return <tt>Domain()(make_\<Tag\>(wrap_(a0),...wrap_(aN)))</tt>.
template<typename Tag, typename A0>
+ BOOST_FORCEINLINE
typename lazy_disable_if<
is_domain<A0>
, result_of::make_expr<
@@ -406,6 +409,7 @@
/// \overload
///
template<typename Tag, typename Domain, typename C0>
+ BOOST_FORCEINLINE
typename result_of::make_expr<
Tag
, Domain
@@ -451,6 +455,7 @@
/// \return <tt>Domain()(make_\<Tag\>(wrap_\<0\>(s),...wrap_\<N-1\>(s)))</tt>,
/// where N is the size of \c Sequence.
template<typename Tag, typename Sequence>
+ BOOST_FORCEINLINE
typename lazy_disable_if<
is_domain<Sequence>
, result_of::unpack_expr<Tag, Sequence const>
@@ -468,6 +473,7 @@
/// \overload
///
template<typename Tag, typename Domain, typename Sequence2>
+ BOOST_FORCEINLINE
typename result_of::unpack_expr<Tag, Domain, Sequence2 const>::type const
unpack_expr(Sequence2 const &sequence2)
{
Modified: branches/release/boost/proto/operators.hpp
==============================================================================
--- branches/release/boost/proto/operators.hpp (original)
+++ branches/release/boost/proto/operators.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -100,6 +100,7 @@
#define BOOST_PROTO_DEFINE_UNARY_OPERATOR(OP, TAG, TRAIT, DOMAIN, POST) \
template<typename Arg> \
+ BOOST_FORCEINLINE \
typename boost::proto::detail::enable_unary< \
DOMAIN \
, DOMAIN::proto_grammar \
@@ -113,6 +114,7 @@
} \
\
template<typename Arg> \
+ BOOST_FORCEINLINE \
typename boost::proto::detail::enable_unary< \
DOMAIN \
, DOMAIN::proto_grammar \
@@ -128,6 +130,7 @@
#define BOOST_PROTO_DEFINE_BINARY_OPERATOR(OP, TAG, TRAIT, DOMAIN) \
template<typename Left, typename Right> \
+ BOOST_FORCEINLINE \
typename boost::proto::detail::enable_binary< \
DOMAIN \
, DOMAIN::proto_grammar \
@@ -142,6 +145,7 @@
} \
\
template<typename Left, typename Right> \
+ BOOST_FORCEINLINE \
typename boost::proto::detail::enable_binary< \
DOMAIN \
, DOMAIN::proto_grammar \
@@ -156,6 +160,7 @@
} \
\
template<typename Left, typename Right> \
+ BOOST_FORCEINLINE \
typename boost::proto::detail::enable_binary< \
DOMAIN \
, DOMAIN::proto_grammar \
@@ -170,6 +175,7 @@
} \
\
template<typename Left, typename Right> \
+ BOOST_FORCEINLINE \
typename boost::proto::detail::enable_binary< \
DOMAIN \
, DOMAIN::proto_grammar \
@@ -188,6 +194,7 @@
#define BOOST_PROTO_DEFINE_UNARY_OPERATOR(OP, TAG, TRAIT, DOMAIN, POST) \
template<typename Arg> \
+ BOOST_FORCEINLINE \
typename boost::proto::detail::enable_unary< \
DOMAIN \
, DOMAIN::proto_grammar \
@@ -203,6 +210,7 @@
#define BOOST_PROTO_DEFINE_BINARY_OPERATOR(OP, TAG, TRAIT, DOMAIN) \
template<typename Left, typename Right> \
+ BOOST_FORCEINLINE \
typename boost::proto::detail::enable_binary< \
DOMAIN \
, DOMAIN::proto_grammar \
@@ -283,6 +291,7 @@
// if_else, for the non-overloadable ternary conditional operator ?:
template<typename A0, typename A1, typename A2>
+ BOOST_FORCEINLINE
typename result_of::make_expr<
tag::if_else_
, deduce_domain
Modified: branches/release/boost/proto/traits.hpp
==============================================================================
--- branches/release/boost/proto/traits.hpp (original)
+++ branches/release/boost/proto/traits.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -394,6 +394,7 @@
/// \pre <tt>matches\<Expr, terminal\<T\> \>::value</tt> is \c true.
/// \return \c e
/// \throw nothrow
+ BOOST_FORCEINLINE
#ifdef BOOST_PROTO_STRICT_RESULT_OF
result_type
#else
@@ -464,6 +465,7 @@
/// \pre <tt>matches\<Expr, nullary_expr\<Tag, T\> \>::value</tt> is \c true.
/// \return \c e
/// \throw nothrow
+ BOOST_FORCEINLINE
#ifdef BOOST_PROTO_STRICT_RESULT_OF
result_type
#else
@@ -655,6 +657,7 @@
/// \param t The object to wrap.
/// \return <tt>proto::as_expr\<Domain\>(t)</tt>
template<typename T>
+ BOOST_FORCEINLINE
typename add_const<typename result<as_expr(T &)>::type>::type
operator ()(T &t) const
{
@@ -664,6 +667,7 @@
/// \overload
///
template<typename T>
+ BOOST_FORCEINLINE
typename add_const<typename result<as_expr(T const &)>::type>::type
operator ()(T const &t) const
{
@@ -672,6 +676,7 @@
#if BOOST_WORKAROUND(BOOST_MSVC, == 1310)
template<typename T, std::size_t N_>
+ BOOST_FORCEINLINE
typename add_const<typename result<as_expr(T (&)[N_])>::type>::type
operator ()(T (&t)[N_]) const
{
@@ -679,6 +684,7 @@
}
template<typename T, std::size_t N_>
+ BOOST_FORCEINLINE
typename add_const<typename result<as_expr(T const (&)[N_])>::type>::type
operator ()(T const (&t)[N_]) const
{
@@ -714,6 +720,7 @@
/// \param t The object to wrap.
/// \return <tt>proto::as_child\<Domain\>(t)</tt>
template<typename T>
+ BOOST_FORCEINLINE
typename add_const<typename result<as_child(T &)>::type>::type
operator ()(T &t) const
{
@@ -723,6 +730,7 @@
/// \overload
///
template<typename T>
+ BOOST_FORCEINLINE
typename add_const<typename result<as_child(T const &)>::type>::type
operator ()(T const &t) const
{
@@ -753,6 +761,7 @@
/// \return <tt>proto::child_c\<N\>(expr)</tt>
/// \throw nothrow
template<typename Expr>
+ BOOST_FORCEINLINE
typename result_of::child_c<Expr &, N>::type
operator ()(Expr &e) const
{
@@ -762,6 +771,7 @@
/// \overload
///
template<typename Expr>
+ BOOST_FORCEINLINE
typename result_of::child_c<Expr const &, N>::type
operator ()(Expr const &e) const
{
@@ -796,6 +806,7 @@
/// \return <tt>proto::child\<N\>(expr)</tt>
/// \throw nothrow
template<typename Expr>
+ BOOST_FORCEINLINE
typename result_of::child<Expr &, N>::type
operator ()(Expr &e) const
{
@@ -805,6 +816,7 @@
/// \overload
///
template<typename Expr>
+ BOOST_FORCEINLINE
typename result_of::child<Expr const &, N>::type
operator ()(Expr const &e) const
{
@@ -834,6 +846,7 @@
/// \return <tt>proto::value(expr)</tt>
/// \throw nothrow
template<typename Expr>
+ BOOST_FORCEINLINE
typename result_of::value<Expr &>::type
operator ()(Expr &e) const
{
@@ -843,6 +856,7 @@
/// \overload
///
template<typename Expr>
+ BOOST_FORCEINLINE
typename result_of::value<Expr const &>::type
operator ()(Expr const &e) const
{
@@ -872,6 +886,7 @@
/// \return <tt>proto::left(expr)</tt>
/// \throw nothrow
template<typename Expr>
+ BOOST_FORCEINLINE
typename result_of::left<Expr &>::type
operator ()(Expr &e) const
{
@@ -881,6 +896,7 @@
/// \overload
///
template<typename Expr>
+ BOOST_FORCEINLINE
typename result_of::left<Expr const &>::type
operator ()(Expr const &e) const
{
@@ -910,6 +926,7 @@
/// \return <tt>proto::right(expr)</tt>
/// \throw nothrow
template<typename Expr>
+ BOOST_FORCEINLINE
typename result_of::right<Expr &>::type
operator ()(Expr &e) const
{
@@ -917,6 +934,7 @@
}
template<typename Expr>
+ BOOST_FORCEINLINE
typename result_of::right<Expr const &>::type
operator ()(Expr const &e) const
{
@@ -948,6 +966,7 @@
///
/// \param t The object to wrap.
template<typename T>
+ BOOST_FORCEINLINE
typename add_const<typename result_of::as_expr<T, default_domain>::type>::type
as_expr(T &t BOOST_PROTO_DISABLE_IF_IS_CONST(T) BOOST_PROTO_DISABLE_IF_IS_FUNCTION(T))
{
@@ -957,6 +976,7 @@
/// \overload
///
template<typename T>
+ BOOST_FORCEINLINE
typename add_const<typename result_of::as_expr<T const, default_domain>::type>::type
as_expr(T const &t)
{
@@ -966,6 +986,7 @@
/// \overload
///
template<typename Domain, typename T>
+ BOOST_FORCEINLINE
typename add_const<typename result_of::as_expr<T, Domain>::type>::type
as_expr(T &t BOOST_PROTO_DISABLE_IF_IS_CONST(T) BOOST_PROTO_DISABLE_IF_IS_FUNCTION(T))
{
@@ -975,6 +996,7 @@
/// \overload
///
template<typename Domain, typename T>
+ BOOST_FORCEINLINE
typename add_const<typename result_of::as_expr<T const, Domain>::type>::type
as_expr(T const &t)
{
@@ -1001,6 +1023,7 @@
///
/// \param t The object to wrap.
template<typename T>
+ BOOST_FORCEINLINE
typename add_const<typename result_of::as_child<T, default_domain>::type>::type
as_child(T &t BOOST_PROTO_DISABLE_IF_IS_CONST(T) BOOST_PROTO_DISABLE_IF_IS_FUNCTION(T))
{
@@ -1010,6 +1033,7 @@
/// \overload
///
template<typename T>
+ BOOST_FORCEINLINE
typename add_const<typename result_of::as_child<T const, default_domain>::type>::type
as_child(T const &t)
{
@@ -1019,6 +1043,7 @@
/// \overload
///
template<typename Domain, typename T>
+ BOOST_FORCEINLINE
typename add_const<typename result_of::as_child<T, Domain>::type>::type
as_child(T &t BOOST_PROTO_DISABLE_IF_IS_CONST(T) BOOST_PROTO_DISABLE_IF_IS_FUNCTION(T))
{
@@ -1028,6 +1053,7 @@
/// \overload
///
template<typename Domain, typename T>
+ BOOST_FORCEINLINE
typename add_const<typename result_of::as_child<T const, Domain>::type>::type
as_child(T const &t)
{
@@ -1048,6 +1074,7 @@
/// \throw nothrow
/// \return A reference to the Nth child
template<typename N, typename Expr>
+ BOOST_FORCEINLINE
typename result_of::child<Expr &, N>::type
child(Expr &e BOOST_PROTO_DISABLE_IF_IS_CONST(Expr))
{
@@ -1057,6 +1084,7 @@
/// \overload
///
template<typename N, typename Expr>
+ BOOST_FORCEINLINE
typename result_of::child<Expr const &, N>::type
child(Expr const &e)
{
@@ -1066,6 +1094,7 @@
/// \overload
///
template<typename Expr2>
+ BOOST_FORCEINLINE
typename detail::expr_traits<typename Expr2::proto_base_expr::proto_child0>::reference
child(Expr2 &expr2 BOOST_PROTO_DISABLE_IF_IS_CONST(Expr2))
{
@@ -1075,6 +1104,7 @@
/// \overload
///
template<typename Expr2>
+ BOOST_FORCEINLINE
typename detail::expr_traits<typename Expr2::proto_base_expr::proto_child0>::const_reference
child(Expr2 const &expr2)
{
@@ -1092,6 +1122,7 @@
/// \throw nothrow
/// \return A reference to the Nth child
template<long N, typename Expr>
+ BOOST_FORCEINLINE
typename result_of::child_c<Expr &, N>::type
child_c(Expr &e BOOST_PROTO_DISABLE_IF_IS_CONST(Expr))
{
@@ -1101,6 +1132,7 @@
/// \overload
///
template<long N, typename Expr>
+ BOOST_FORCEINLINE
typename result_of::child_c<Expr const &, N>::type
child_c(Expr const &e)
{
@@ -1119,6 +1151,7 @@
/// \throw nothrow
/// \return A reference to the terminal's value
template<typename Expr>
+ BOOST_FORCEINLINE
typename result_of::value<Expr &>::type
value(Expr &e BOOST_PROTO_DISABLE_IF_IS_CONST(Expr))
{
@@ -1128,6 +1161,7 @@
/// \overload
///
template<typename Expr>
+ BOOST_FORCEINLINE
typename result_of::value<Expr const &>::type
value(Expr const &e)
{
@@ -1146,6 +1180,7 @@
/// \throw nothrow
/// \return A reference to the left child
template<typename Expr>
+ BOOST_FORCEINLINE
typename result_of::left<Expr &>::type
left(Expr &e BOOST_PROTO_DISABLE_IF_IS_CONST(Expr))
{
@@ -1155,6 +1190,7 @@
/// \overload
///
template<typename Expr>
+ BOOST_FORCEINLINE
typename result_of::left<Expr const &>::type
left(Expr const &e)
{
@@ -1173,6 +1209,7 @@
/// \throw nothrow
/// \return A reference to the right child
template<typename Expr>
+ BOOST_FORCEINLINE
typename result_of::right<Expr &>::type
right(Expr &e BOOST_PROTO_DISABLE_IF_IS_CONST(Expr))
{
@@ -1182,6 +1219,7 @@
/// \overload
///
template<typename Expr>
+ BOOST_FORCEINLINE
typename result_of::right<Expr const &>::type
right(Expr const &e)
{
Modified: branches/release/boost/proto/transform/call.hpp
==============================================================================
--- branches/release/boost/proto/transform/call.hpp (original)
+++ branches/release/boost/proto/transform/call.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -92,6 +92,7 @@
{
typedef typename BOOST_PROTO_RESULT_OF<Fun()>::type result_type;
+ BOOST_FORCEINLINE
result_type operator()(
typename impl2::expr_param
, typename impl2::state_param
@@ -140,6 +141,8 @@
{
typedef typename when<_, A0>::template impl<Expr, State, Data>::result_type a0;
typedef typename detail::poly_function_traits<Fun, Fun(a0)>::result_type result_type;
+
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl2::expr_param e
, typename impl2::state_param s
@@ -158,6 +161,8 @@
{
typedef typename when<_, A0>::template impl<Expr, State, Data>::result_type a0;
typedef typename Fun::template impl<a0, State, Data>::result_type result_type;
+
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl2::expr_param e
, typename impl2::state_param s
@@ -210,6 +215,8 @@
typedef typename when<_, A0>::template impl<Expr, State, Data>::result_type a0;
typedef typename when<_, A1>::template impl<Expr, State, Data>::result_type a1;
typedef typename detail::poly_function_traits<Fun, Fun(a0, a1)>::result_type result_type;
+
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl2::expr_param e
, typename impl2::state_param s
@@ -230,6 +237,8 @@
typedef typename when<_, A0>::template impl<Expr, State, Data>::result_type a0;
typedef typename when<_, A1>::template impl<Expr, State, Data>::result_type a1;
typedef typename Fun::template impl<a0, a1, Data>::result_type result_type;
+
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl2::expr_param e
, typename impl2::state_param s
@@ -290,6 +299,8 @@
typedef typename when<_, A1>::template impl<Expr, State, Data>::result_type a1;
typedef typename when<_, A2>::template impl<Expr, State, Data>::result_type a2;
typedef typename detail::poly_function_traits<Fun, Fun(a0, a1, a2)>::result_type result_type;
+
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl2::expr_param e
, typename impl2::state_param s
@@ -312,6 +323,8 @@
typedef typename when<_, A1>::template impl<Expr, State, Data>::result_type a1;
typedef typename when<_, A2>::template impl<Expr, State, Data>::result_type a2;
typedef typename Fun::template impl<a0, a1, a2>::result_type result_type;
+
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl2::expr_param e
, typename impl2::state_param s
Modified: branches/release/boost/proto/transform/detail/call.hpp
==============================================================================
--- branches/release/boost/proto/transform/detail/call.hpp (original)
+++ branches/release/boost/proto/transform/detail/call.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -69,6 +69,7 @@
/// \param e The current expression
/// \param s The current state
/// \param d An arbitrary data
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
Modified: branches/release/boost/proto/transform/detail/construct_funop.hpp
==============================================================================
--- branches/release/boost/proto/transform/detail/construct_funop.hpp (original)
+++ branches/release/boost/proto/transform/detail/construct_funop.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -33,6 +33,7 @@
#define N BOOST_PP_ITERATION()
template<BOOST_PP_ENUM_PARAMS(N, typename A)>
+ BOOST_FORCEINLINE
Type operator ()(BOOST_PP_ENUM_BINARY_PARAMS(N, A, &a)) const
{
return Type(BOOST_PP_ENUM_PARAMS(N, a));
Modified: branches/release/boost/proto/transform/detail/construct_pod_funop.hpp
==============================================================================
--- branches/release/boost/proto/transform/detail/construct_pod_funop.hpp (original)
+++ branches/release/boost/proto/transform/detail/construct_pod_funop.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -33,6 +33,7 @@
#define N BOOST_PP_ITERATION()
template<BOOST_PP_ENUM_PARAMS(N, typename A)>
+ BOOST_FORCEINLINE
Type operator ()(BOOST_PP_ENUM_BINARY_PARAMS(N, A, &a)) const
{
Type that = {BOOST_PP_ENUM_PARAMS(N, a)};
Modified: branches/release/boost/proto/transform/detail/make.hpp
==============================================================================
--- branches/release/boost/proto/transform/detail/make.hpp (original)
+++ branches/release/boost/proto/transform/detail/make.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -108,6 +108,7 @@
typedef proto::expr<T, A, N> result_type;
template<BOOST_PP_ENUM_PARAMS(BOOST_PP_MAX(N, 1), typename A)>
+ BOOST_FORCEINLINE
result_type operator ()(BOOST_PP_ENUM_BINARY_PARAMS(BOOST_PP_MAX(N, 1), A, &a)) const
{
return result_type::make(BOOST_PP_ENUM_PARAMS(BOOST_PP_MAX(N, 1), a));
@@ -120,6 +121,7 @@
typedef proto::basic_expr<T, A, N> result_type;
template<BOOST_PP_ENUM_PARAMS(BOOST_PP_MAX(N, 1), typename A)>
+ BOOST_FORCEINLINE
result_type operator ()(BOOST_PP_ENUM_BINARY_PARAMS(BOOST_PP_MAX(N, 1), A, &a)) const
{
return result_type::make(BOOST_PP_ENUM_PARAMS(BOOST_PP_MAX(N, 1), a));
@@ -127,6 +129,7 @@
};
template<typename Type BOOST_PP_ENUM_TRAILING_PARAMS(N, typename A)>
+ BOOST_FORCEINLINE
Type construct(BOOST_PP_ENUM_BINARY_PARAMS(N, A, &a))
{
return construct_<Type>()(BOOST_PP_ENUM_PARAMS(N, a));
@@ -155,6 +158,7 @@
/// \param e The current expression
/// \param s The current state
/// \param d An arbitrary data
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
Modified: branches/release/boost/proto/transform/detail/make_gcc_workaround.hpp
==============================================================================
--- branches/release/boost/proto/transform/detail/make_gcc_workaround.hpp (original)
+++ branches/release/boost/proto/transform/detail/make_gcc_workaround.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -58,6 +58,7 @@
{
typedef proto::expr<Tag, Args, Arity> result_type;
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -80,6 +81,7 @@
{
typedef proto::basic_expr<Tag, Args, Arity> result_type;
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
Modified: branches/release/boost/proto/transform/detail/pass_through_impl.hpp
==============================================================================
--- branches/release/boost/proto/transform/detail/pass_through_impl.hpp (original)
+++ branches/release/boost/proto/transform/detail/pass_through_impl.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -73,6 +73,7 @@
typedef typename unref_expr::proto_generator proto_generator;
typedef typename BOOST_PROTO_RESULT_OF<proto_generator(expr_type)>::type const result_type;
+ BOOST_FORCEINLINE
result_type const operator ()(
typename pass_through_impl::expr_param e
, typename pass_through_impl::state_param s
Modified: branches/release/boost/proto/transform/detail/preprocessed/call.hpp
==============================================================================
--- branches/release/boost/proto/transform/detail/preprocessed/call.hpp (original)
+++ branches/release/boost/proto/transform/detail/preprocessed/call.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -24,6 +24,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -54,6 +55,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -84,6 +86,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -114,6 +117,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -144,6 +148,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -174,6 +179,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -204,6 +210,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
Modified: branches/release/boost/proto/transform/detail/preprocessed/construct_funop.hpp
==============================================================================
--- branches/release/boost/proto/transform/detail/preprocessed/construct_funop.hpp (original)
+++ branches/release/boost/proto/transform/detail/preprocessed/construct_funop.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -6,51 +6,61 @@
// Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
template<typename A0>
+ BOOST_FORCEINLINE
Type operator ()(A0 &a0) const
{
return Type(a0);
}
template<typename A0 , typename A1>
+ BOOST_FORCEINLINE
Type operator ()(A0 &a0 , A1 &a1) const
{
return Type(a0 , a1);
}
template<typename A0 , typename A1 , typename A2>
+ BOOST_FORCEINLINE
Type operator ()(A0 &a0 , A1 &a1 , A2 &a2) const
{
return Type(a0 , a1 , a2);
}
template<typename A0 , typename A1 , typename A2 , typename A3>
+ BOOST_FORCEINLINE
Type operator ()(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3) const
{
return Type(a0 , a1 , a2 , a3);
}
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
+ BOOST_FORCEINLINE
Type operator ()(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4) const
{
return Type(a0 , a1 , a2 , a3 , a4);
}
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
+ BOOST_FORCEINLINE
Type operator ()(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5) const
{
return Type(a0 , a1 , a2 , a3 , a4 , a5);
}
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
+ BOOST_FORCEINLINE
Type operator ()(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5 , A6 &a6) const
{
return Type(a0 , a1 , a2 , a3 , a4 , a5 , a6);
}
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
+ BOOST_FORCEINLINE
Type operator ()(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5 , A6 &a6 , A7 &a7) const
{
return Type(a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7);
}
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
+ BOOST_FORCEINLINE
Type operator ()(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5 , A6 &a6 , A7 &a7 , A8 &a8) const
{
return Type(a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8);
}
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9>
+ BOOST_FORCEINLINE
Type operator ()(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5 , A6 &a6 , A7 &a7 , A8 &a8 , A9 &a9) const
{
return Type(a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9);
Modified: branches/release/boost/proto/transform/detail/preprocessed/construct_pod_funop.hpp
==============================================================================
--- branches/release/boost/proto/transform/detail/preprocessed/construct_pod_funop.hpp (original)
+++ branches/release/boost/proto/transform/detail/preprocessed/construct_pod_funop.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -6,60 +6,70 @@
// Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
template<typename A0>
+ BOOST_FORCEINLINE
Type operator ()(A0 &a0) const
{
Type that = {a0};
return that;
}
template<typename A0 , typename A1>
+ BOOST_FORCEINLINE
Type operator ()(A0 &a0 , A1 &a1) const
{
Type that = {a0 , a1};
return that;
}
template<typename A0 , typename A1 , typename A2>
+ BOOST_FORCEINLINE
Type operator ()(A0 &a0 , A1 &a1 , A2 &a2) const
{
Type that = {a0 , a1 , a2};
return that;
}
template<typename A0 , typename A1 , typename A2 , typename A3>
+ BOOST_FORCEINLINE
Type operator ()(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3) const
{
Type that = {a0 , a1 , a2 , a3};
return that;
}
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
+ BOOST_FORCEINLINE
Type operator ()(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4) const
{
Type that = {a0 , a1 , a2 , a3 , a4};
return that;
}
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
+ BOOST_FORCEINLINE
Type operator ()(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5) const
{
Type that = {a0 , a1 , a2 , a3 , a4 , a5};
return that;
}
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
+ BOOST_FORCEINLINE
Type operator ()(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5 , A6 &a6) const
{
Type that = {a0 , a1 , a2 , a3 , a4 , a5 , a6};
return that;
}
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
+ BOOST_FORCEINLINE
Type operator ()(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5 , A6 &a6 , A7 &a7) const
{
Type that = {a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7};
return that;
}
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
+ BOOST_FORCEINLINE
Type operator ()(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5 , A6 &a6 , A7 &a7 , A8 &a8) const
{
Type that = {a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8};
return that;
}
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9>
+ BOOST_FORCEINLINE
Type operator ()(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5 , A6 &a6 , A7 &a7 , A8 &a8 , A9 &a9) const
{
Type that = {a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9};
Modified: branches/release/boost/proto/transform/detail/preprocessed/make.hpp
==============================================================================
--- branches/release/boost/proto/transform/detail/preprocessed/make.hpp (original)
+++ branches/release/boost/proto/transform/detail/preprocessed/make.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -20,6 +20,7 @@
{
typedef proto::expr<T, A, 0> result_type;
template<typename A0>
+ BOOST_FORCEINLINE
result_type operator ()(A0 &a0) const
{
return result_type::make(a0);
@@ -30,12 +31,14 @@
{
typedef proto::basic_expr<T, A, 0> result_type;
template<typename A0>
+ BOOST_FORCEINLINE
result_type operator ()(A0 &a0) const
{
return result_type::make(a0);
}
};
template<typename Type >
+ BOOST_FORCEINLINE
Type construct()
{
return construct_<Type>()();
@@ -61,6 +64,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -118,6 +122,7 @@
{
typedef proto::expr<T, A, 1> result_type;
template<typename A0>
+ BOOST_FORCEINLINE
result_type operator ()(A0 &a0) const
{
return result_type::make(a0);
@@ -128,12 +133,14 @@
{
typedef proto::basic_expr<T, A, 1> result_type;
template<typename A0>
+ BOOST_FORCEINLINE
result_type operator ()(A0 &a0) const
{
return result_type::make(a0);
}
};
template<typename Type , typename A0>
+ BOOST_FORCEINLINE
Type construct(A0 &a0)
{
return construct_<Type>()(a0);
@@ -159,6 +166,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -216,6 +224,7 @@
{
typedef proto::expr<T, A, 2> result_type;
template<typename A0 , typename A1>
+ BOOST_FORCEINLINE
result_type operator ()(A0 &a0 , A1 &a1) const
{
return result_type::make(a0 , a1);
@@ -226,12 +235,14 @@
{
typedef proto::basic_expr<T, A, 2> result_type;
template<typename A0 , typename A1>
+ BOOST_FORCEINLINE
result_type operator ()(A0 &a0 , A1 &a1) const
{
return result_type::make(a0 , a1);
}
};
template<typename Type , typename A0 , typename A1>
+ BOOST_FORCEINLINE
Type construct(A0 &a0 , A1 &a1)
{
return construct_<Type>()(a0 , a1);
@@ -257,6 +268,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -314,6 +326,7 @@
{
typedef proto::expr<T, A, 3> result_type;
template<typename A0 , typename A1 , typename A2>
+ BOOST_FORCEINLINE
result_type operator ()(A0 &a0 , A1 &a1 , A2 &a2) const
{
return result_type::make(a0 , a1 , a2);
@@ -324,12 +337,14 @@
{
typedef proto::basic_expr<T, A, 3> result_type;
template<typename A0 , typename A1 , typename A2>
+ BOOST_FORCEINLINE
result_type operator ()(A0 &a0 , A1 &a1 , A2 &a2) const
{
return result_type::make(a0 , a1 , a2);
}
};
template<typename Type , typename A0 , typename A1 , typename A2>
+ BOOST_FORCEINLINE
Type construct(A0 &a0 , A1 &a1 , A2 &a2)
{
return construct_<Type>()(a0 , a1 , a2);
@@ -355,6 +370,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -412,6 +428,7 @@
{
typedef proto::expr<T, A, 4> result_type;
template<typename A0 , typename A1 , typename A2 , typename A3>
+ BOOST_FORCEINLINE
result_type operator ()(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3) const
{
return result_type::make(a0 , a1 , a2 , a3);
@@ -422,12 +439,14 @@
{
typedef proto::basic_expr<T, A, 4> result_type;
template<typename A0 , typename A1 , typename A2 , typename A3>
+ BOOST_FORCEINLINE
result_type operator ()(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3) const
{
return result_type::make(a0 , a1 , a2 , a3);
}
};
template<typename Type , typename A0 , typename A1 , typename A2 , typename A3>
+ BOOST_FORCEINLINE
Type construct(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3)
{
return construct_<Type>()(a0 , a1 , a2 , a3);
@@ -453,6 +472,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -510,6 +530,7 @@
{
typedef proto::expr<T, A, 5> result_type;
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
+ BOOST_FORCEINLINE
result_type operator ()(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4) const
{
return result_type::make(a0 , a1 , a2 , a3 , a4);
@@ -520,12 +541,14 @@
{
typedef proto::basic_expr<T, A, 5> result_type;
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
+ BOOST_FORCEINLINE
result_type operator ()(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4) const
{
return result_type::make(a0 , a1 , a2 , a3 , a4);
}
};
template<typename Type , typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
+ BOOST_FORCEINLINE
Type construct(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4)
{
return construct_<Type>()(a0 , a1 , a2 , a3 , a4);
@@ -551,6 +574,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -608,6 +632,7 @@
{
typedef proto::expr<T, A, 6> result_type;
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
+ BOOST_FORCEINLINE
result_type operator ()(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5) const
{
return result_type::make(a0 , a1 , a2 , a3 , a4 , a5);
@@ -618,12 +643,14 @@
{
typedef proto::basic_expr<T, A, 6> result_type;
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
+ BOOST_FORCEINLINE
result_type operator ()(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5) const
{
return result_type::make(a0 , a1 , a2 , a3 , a4 , a5);
}
};
template<typename Type , typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
+ BOOST_FORCEINLINE
Type construct(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5)
{
return construct_<Type>()(a0 , a1 , a2 , a3 , a4 , a5);
@@ -649,6 +676,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -706,6 +734,7 @@
{
typedef proto::expr<T, A, 7> result_type;
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
+ BOOST_FORCEINLINE
result_type operator ()(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5 , A6 &a6) const
{
return result_type::make(a0 , a1 , a2 , a3 , a4 , a5 , a6);
@@ -716,12 +745,14 @@
{
typedef proto::basic_expr<T, A, 7> result_type;
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
+ BOOST_FORCEINLINE
result_type operator ()(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5 , A6 &a6) const
{
return result_type::make(a0 , a1 , a2 , a3 , a4 , a5 , a6);
}
};
template<typename Type , typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
+ BOOST_FORCEINLINE
Type construct(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5 , A6 &a6)
{
return construct_<Type>()(a0 , a1 , a2 , a3 , a4 , a5 , a6);
@@ -747,6 +778,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -804,6 +836,7 @@
{
typedef proto::expr<T, A, 8> result_type;
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
+ BOOST_FORCEINLINE
result_type operator ()(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5 , A6 &a6 , A7 &a7) const
{
return result_type::make(a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7);
@@ -814,12 +847,14 @@
{
typedef proto::basic_expr<T, A, 8> result_type;
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
+ BOOST_FORCEINLINE
result_type operator ()(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5 , A6 &a6 , A7 &a7) const
{
return result_type::make(a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7);
}
};
template<typename Type , typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
+ BOOST_FORCEINLINE
Type construct(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5 , A6 &a6 , A7 &a7)
{
return construct_<Type>()(a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7);
@@ -845,6 +880,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -902,6 +938,7 @@
{
typedef proto::expr<T, A, 9> result_type;
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
+ BOOST_FORCEINLINE
result_type operator ()(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5 , A6 &a6 , A7 &a7 , A8 &a8) const
{
return result_type::make(a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8);
@@ -912,12 +949,14 @@
{
typedef proto::basic_expr<T, A, 9> result_type;
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
+ BOOST_FORCEINLINE
result_type operator ()(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5 , A6 &a6 , A7 &a7 , A8 &a8) const
{
return result_type::make(a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8);
}
};
template<typename Type , typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
+ BOOST_FORCEINLINE
Type construct(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5 , A6 &a6 , A7 &a7 , A8 &a8)
{
return construct_<Type>()(a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8);
@@ -943,6 +982,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -1000,6 +1040,7 @@
{
typedef proto::expr<T, A, 10> result_type;
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9>
+ BOOST_FORCEINLINE
result_type operator ()(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5 , A6 &a6 , A7 &a7 , A8 &a8 , A9 &a9) const
{
return result_type::make(a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9);
@@ -1010,12 +1051,14 @@
{
typedef proto::basic_expr<T, A, 10> result_type;
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9>
+ BOOST_FORCEINLINE
result_type operator ()(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5 , A6 &a6 , A7 &a7 , A8 &a8 , A9 &a9) const
{
return result_type::make(a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9);
}
};
template<typename Type , typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9>
+ BOOST_FORCEINLINE
Type construct(A0 &a0 , A1 &a1 , A2 &a2 , A3 &a3 , A4 &a4 , A5 &a5 , A6 &a6 , A7 &a7 , A8 &a8 , A9 &a9)
{
return construct_<Type>()(a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9);
@@ -1041,6 +1084,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
Modified: branches/release/boost/proto/transform/detail/preprocessed/make_gcc_workaround.hpp
==============================================================================
--- branches/release/boost/proto/transform/detail/preprocessed/make_gcc_workaround.hpp (original)
+++ branches/release/boost/proto/transform/detail/preprocessed/make_gcc_workaround.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -15,6 +15,7 @@
struct impl : transform_impl<Expr, State, Data>
{
typedef proto::expr<Tag, Args, Arity> result_type;
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -35,6 +36,7 @@
struct impl : transform_impl<Expr, State, Data>
{
typedef proto::basic_expr<Tag, Args, Arity> result_type;
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -56,6 +58,7 @@
struct impl : transform_impl<Expr, State, Data>
{
typedef proto::expr<Tag, Args, Arity> result_type;
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -76,6 +79,7 @@
struct impl : transform_impl<Expr, State, Data>
{
typedef proto::basic_expr<Tag, Args, Arity> result_type;
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -97,6 +101,7 @@
struct impl : transform_impl<Expr, State, Data>
{
typedef proto::expr<Tag, Args, Arity> result_type;
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -117,6 +122,7 @@
struct impl : transform_impl<Expr, State, Data>
{
typedef proto::basic_expr<Tag, Args, Arity> result_type;
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -138,6 +144,7 @@
struct impl : transform_impl<Expr, State, Data>
{
typedef proto::expr<Tag, Args, Arity> result_type;
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -158,6 +165,7 @@
struct impl : transform_impl<Expr, State, Data>
{
typedef proto::basic_expr<Tag, Args, Arity> result_type;
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -179,6 +187,7 @@
struct impl : transform_impl<Expr, State, Data>
{
typedef proto::expr<Tag, Args, Arity> result_type;
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -199,6 +208,7 @@
struct impl : transform_impl<Expr, State, Data>
{
typedef proto::basic_expr<Tag, Args, Arity> result_type;
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -220,6 +230,7 @@
struct impl : transform_impl<Expr, State, Data>
{
typedef proto::expr<Tag, Args, Arity> result_type;
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -240,6 +251,7 @@
struct impl : transform_impl<Expr, State, Data>
{
typedef proto::basic_expr<Tag, Args, Arity> result_type;
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -261,6 +273,7 @@
struct impl : transform_impl<Expr, State, Data>
{
typedef proto::expr<Tag, Args, Arity> result_type;
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -281,6 +294,7 @@
struct impl : transform_impl<Expr, State, Data>
{
typedef proto::basic_expr<Tag, Args, Arity> result_type;
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -302,6 +316,7 @@
struct impl : transform_impl<Expr, State, Data>
{
typedef proto::expr<Tag, Args, Arity> result_type;
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -322,6 +337,7 @@
struct impl : transform_impl<Expr, State, Data>
{
typedef proto::basic_expr<Tag, Args, Arity> result_type;
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -343,6 +359,7 @@
struct impl : transform_impl<Expr, State, Data>
{
typedef proto::expr<Tag, Args, Arity> result_type;
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -363,6 +380,7 @@
struct impl : transform_impl<Expr, State, Data>
{
typedef proto::basic_expr<Tag, Args, Arity> result_type;
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -384,6 +402,7 @@
struct impl : transform_impl<Expr, State, Data>
{
typedef proto::expr<Tag, Args, Arity> result_type;
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -404,6 +423,7 @@
struct impl : transform_impl<Expr, State, Data>
{
typedef proto::basic_expr<Tag, Args, Arity> result_type;
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -425,6 +445,7 @@
struct impl : transform_impl<Expr, State, Data>
{
typedef proto::expr<Tag, Args, Arity> result_type;
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -445,6 +466,7 @@
struct impl : transform_impl<Expr, State, Data>
{
typedef proto::basic_expr<Tag, Args, Arity> result_type;
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
Modified: branches/release/boost/proto/transform/detail/preprocessed/pass_through_impl.hpp
==============================================================================
--- branches/release/boost/proto/transform/detail/preprocessed/pass_through_impl.hpp (original)
+++ branches/release/boost/proto/transform/detail/preprocessed/pass_through_impl.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -23,6 +23,7 @@
expr_type;
typedef typename unref_expr::proto_generator proto_generator;
typedef typename BOOST_PROTO_RESULT_OF<proto_generator(expr_type)>::type const result_type;
+ BOOST_FORCEINLINE
result_type const operator ()(
typename pass_through_impl::expr_param e
, typename pass_through_impl::state_param s
@@ -55,6 +56,7 @@
expr_type;
typedef typename unref_expr::proto_generator proto_generator;
typedef typename BOOST_PROTO_RESULT_OF<proto_generator(expr_type)>::type const result_type;
+ BOOST_FORCEINLINE
result_type const operator ()(
typename pass_through_impl::expr_param e
, typename pass_through_impl::state_param s
@@ -87,6 +89,7 @@
expr_type;
typedef typename unref_expr::proto_generator proto_generator;
typedef typename BOOST_PROTO_RESULT_OF<proto_generator(expr_type)>::type const result_type;
+ BOOST_FORCEINLINE
result_type const operator ()(
typename pass_through_impl::expr_param e
, typename pass_through_impl::state_param s
@@ -119,6 +122,7 @@
expr_type;
typedef typename unref_expr::proto_generator proto_generator;
typedef typename BOOST_PROTO_RESULT_OF<proto_generator(expr_type)>::type const result_type;
+ BOOST_FORCEINLINE
result_type const operator ()(
typename pass_through_impl::expr_param e
, typename pass_through_impl::state_param s
@@ -151,6 +155,7 @@
expr_type;
typedef typename unref_expr::proto_generator proto_generator;
typedef typename BOOST_PROTO_RESULT_OF<proto_generator(expr_type)>::type const result_type;
+ BOOST_FORCEINLINE
result_type const operator ()(
typename pass_through_impl::expr_param e
, typename pass_through_impl::state_param s
@@ -183,6 +188,7 @@
expr_type;
typedef typename unref_expr::proto_generator proto_generator;
typedef typename BOOST_PROTO_RESULT_OF<proto_generator(expr_type)>::type const result_type;
+ BOOST_FORCEINLINE
result_type const operator ()(
typename pass_through_impl::expr_param e
, typename pass_through_impl::state_param s
@@ -215,6 +221,7 @@
expr_type;
typedef typename unref_expr::proto_generator proto_generator;
typedef typename BOOST_PROTO_RESULT_OF<proto_generator(expr_type)>::type const result_type;
+ BOOST_FORCEINLINE
result_type const operator ()(
typename pass_through_impl::expr_param e
, typename pass_through_impl::state_param s
@@ -247,6 +254,7 @@
expr_type;
typedef typename unref_expr::proto_generator proto_generator;
typedef typename BOOST_PROTO_RESULT_OF<proto_generator(expr_type)>::type const result_type;
+ BOOST_FORCEINLINE
result_type const operator ()(
typename pass_through_impl::expr_param e
, typename pass_through_impl::state_param s
@@ -279,6 +287,7 @@
expr_type;
typedef typename unref_expr::proto_generator proto_generator;
typedef typename BOOST_PROTO_RESULT_OF<proto_generator(expr_type)>::type const result_type;
+ BOOST_FORCEINLINE
result_type const operator ()(
typename pass_through_impl::expr_param e
, typename pass_through_impl::state_param s
@@ -311,6 +320,7 @@
expr_type;
typedef typename unref_expr::proto_generator proto_generator;
typedef typename BOOST_PROTO_RESULT_OF<proto_generator(expr_type)>::type const result_type;
+ BOOST_FORCEINLINE
result_type const operator ()(
typename pass_through_impl::expr_param e
, typename pass_through_impl::state_param s
Modified: branches/release/boost/proto/transform/detail/preprocessed/when.hpp
==============================================================================
--- branches/release/boost/proto/transform/detail/preprocessed/when.hpp (original)
+++ branches/release/boost/proto/transform/detail/preprocessed/when.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -62,6 +62,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -129,6 +130,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -196,6 +198,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -263,6 +266,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -330,6 +334,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -397,6 +402,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -464,6 +470,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -531,6 +538,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -598,6 +606,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -665,6 +674,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
@@ -732,6 +742,7 @@
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
Modified: branches/release/boost/proto/transform/detail/when.hpp
==============================================================================
--- branches/release/boost/proto/transform/detail/when.hpp (original)
+++ branches/release/boost/proto/transform/detail/when.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -93,6 +93,7 @@
/// \param d An arbitrary data
/// \pre <tt>matches\<Expr, Grammar\>::value</tt> is \c true
/// \return <tt>which()(e, s, d)</tt>
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param e
, typename impl::state_param s
Modified: branches/release/boost/proto/transform/impl.hpp
==============================================================================
--- branches/release/boost/proto/transform/impl.hpp (original)
+++ branches/release/boost/proto/transform/impl.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -30,6 +30,7 @@
}; \
\
template<typename Expr> \
+ BOOST_FORCEINLINE \
typename boost::proto::detail::apply_transform<transform_type(Expr &)>::result_type \
operator ()(Expr &e) const \
{ \
@@ -38,6 +39,7 @@
} \
\
template<typename Expr, typename State> \
+ BOOST_FORCEINLINE \
typename boost::proto::detail::apply_transform<transform_type(Expr &, State &)>::result_type \
operator ()(Expr &e, State &s) const \
{ \
@@ -46,6 +48,7 @@
} \
\
template<typename Expr, typename State> \
+ BOOST_FORCEINLINE \
typename boost::proto::detail::apply_transform<transform_type(Expr &, State const &)>::result_type \
operator ()(Expr &e, State const &s) const \
{ \
@@ -54,6 +57,7 @@
} \
\
template<typename Expr, typename State, typename Data> \
+ BOOST_FORCEINLINE \
typename boost::proto::detail::apply_transform<transform_type(Expr &, State &, Data &)>::result_type \
operator ()(Expr &e, State &s, Data &d) const \
{ \
@@ -61,6 +65,7 @@
} \
\
template<typename Expr, typename State, typename Data> \
+ BOOST_FORCEINLINE \
typename boost::proto::detail::apply_transform<transform_type(Expr &, State const &, Data &)>::result_type \
operator ()(Expr &e, State const &s, Data &d) const \
{ \
@@ -84,6 +89,7 @@
}; \
\
template<typename Expr> \
+ BOOST_FORCEINLINE \
typename boost::proto::detail::apply_transform<transform_type(Expr const &)>::result_type \
operator ()(Expr &&e) const \
{ \
@@ -92,6 +98,7 @@
} \
\
template<typename Expr, typename State> \
+ BOOST_FORCEINLINE \
typename boost::proto::detail::apply_transform<transform_type(Expr const &, State const &)>::result_type \
operator ()(Expr &&e, State &&s) const \
{ \
@@ -100,6 +107,7 @@
} \
\
template<typename Expr, typename State, typename Data> \
+ BOOST_FORCEINLINE \
typename boost::proto::detail::apply_transform<transform_type(Expr const &, State const &, Data const &)>::result_type \
operator ()(Expr &&e, State &&s, Data &&d) const \
{ \
Modified: branches/release/boost/proto/transform/make.hpp
==============================================================================
--- branches/release/boost/proto/transform/make.hpp (original)
+++ branches/release/boost/proto/transform/make.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -117,6 +117,7 @@
{
typedef Type result_type;
+ BOOST_FORCEINLINE
Type operator ()() const
{
return Type();
@@ -131,6 +132,7 @@
{
typedef Type result_type;
+ BOOST_FORCEINLINE
Type operator ()() const
{
return Type();
@@ -231,6 +233,7 @@
typedef typename detail::make_if_<Object, Expr, State, Data>::type result_type;
/// \return <tt>result_type()</tt>
+ BOOST_FORCEINLINE
result_type operator ()(
typename impl::expr_param
, typename impl::state_param
Modified: branches/release/boost/proto/transform/pass_through.hpp
==============================================================================
--- branches/release/boost/proto/transform/pass_through.hpp (original)
+++ branches/release/boost/proto/transform/pass_through.hpp 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -47,6 +47,7 @@
/// \param e An expression
/// \return \c e
/// \throw nothrow
+ BOOST_FORCEINLINE
#ifdef BOOST_PROTO_STRICT_RESULT_OF
result_type
#else
Modified: branches/release/libs/proto/preprocess/wave.cfg
==============================================================================
--- branches/release/libs/proto/preprocess/wave.cfg (original)
+++ branches/release/libs/proto/preprocess/wave.cfg 2011-12-17 14:17:38 EST (Sat, 17 Dec 2011)
@@ -1,6 +1,7 @@
-DBOOST_PROTO_DONT_USE_PREPROCESSED_FILES
-DBOOST_PROTO_CREATE_PREPROCESSED_FILES
-D_WIN32
+-NBOOST_FORCEINLINE
-SC:\boost\org\trunk
-S"C:\Program Files\Microsoft Visual Studio 10.0\VC\include"
-S.
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