1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- #ifndef BOOST_LAMBDA_FWD_HPP
- #define BOOST_LAMBDA_FWD_HPP
- namespace boost {
- namespace lambda {
- namespace detail {
- template<class T> struct generate_error;
- }
- template <int I> struct placeholder;
- template <class Func>
- struct function_adaptor;
- template <int I, class Act> class action;
- template <class Base>
- class lambda_functor;
- template <class Act, class Args>
- class lambda_functor_base;
- }
- }
- #define CALL_TEMPLATE_ARGS class A, class B, class C, class Env
- #define CALL_FORMAL_ARGS A& a, B& b, C& c, Env& env
- #define CALL_ACTUAL_ARGS a, b, c, env
- #define CALL_ACTUAL_ARGS_NO_ENV a, b, c
- #define CALL_REFERENCE_TYPES A&, B&, C&, Env&
- #define CALL_PLAIN_TYPES A, B, C, Env
- namespace boost {
- namespace lambda {
- namespace detail {
- template<class A1, class A2, class A3, class A4>
- void do_nothing(A1&, A2&, A3&, A4&) {}
- }
- }
- }
- #define CALL_USE_ARGS \
- ::boost::lambda::detail::do_nothing(a, b, c, env)
- #endif
|