1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- /*=============================================================================
- Copyright (c) 2001-2007 Joel de Guzman
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- ==============================================================================*/
- #if !BOOST_PHOENIX_IS_ITERATING
- #include <boost/phoenix/core/expression.hpp>
- #include <boost/phoenix/core/detail/function_eval.hpp>
- namespace boost { namespace phoenix {
- template <typename F>
- inline
- typename detail::expression::function_eval<F>::type const
- bind(F f)
- {
- return detail::expression::function_eval<F>::make(f);
- }
- #if !defined(BOOST_PHOENIX_DONT_USE_PREPROCESSED_FILES)
- #include <boost/phoenix/bind/detail/cpp03/preprocessed/bind_function_object.hpp>
- #else
- #if defined(__WAVE__) && defined (BOOST_PHOENIX_CREATE_PREPROCESSED_FILES)
- #pragma wave option(preserve: 2, line: 0, output: "preprocessed/bind_function_object_" BOOST_PHOENIX_LIMIT_STR ".hpp")
- #endif
- /*=============================================================================
- Copyright (c) 2001-2007 Joel de Guzman
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- ==============================================================================*/
- #if defined(__WAVE__) && defined(BOOST_PHOENIX_CREATE_PREPROCESSED_FILES)
- #pragma wave option(preserve: 1)
- #endif
- #define BOOST_PHOENIX_ITERATION_PARAMS \
- (3, (1, BOOST_PP_DEC(BOOST_PHOENIX_ACTOR_LIMIT), \
- <boost/phoenix/bind/detail/cpp03/bind_function_object.hpp>))
- #include BOOST_PHOENIX_ITERATE()
- #if defined(__WAVE__) && defined (BOOST_PHOENIX_CREATE_PREPROCESSED_FILES)
- #pragma wave option(output: null)
- #endif
- #endif
- }}
- #else
- template <
- typename F
- , BOOST_PHOENIX_typename_A
- >
- inline
- typename detail::expression::function_eval<
- F
- , BOOST_PHOENIX_A
- >::type const
- bind(F f, BOOST_PHOENIX_A_const_ref_a)
- {
- return
- detail::expression::function_eval<F, BOOST_PHOENIX_A>::make(
- f
- , BOOST_PHOENIX_a
- );
- }
- #endif
|