Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:39:07

0001 //  lambda_fwd.hpp - Boost Lambda Library -------------------------------
0002 
0003 // Copyright (C) 1999, 2000 Jaakko Jarvi (jaakko.jarvi@cs.utu.fi)
0004 //
0005 // Distributed under the Boost Software License, Version 1.0. (See
0006 // accompanying file LICENSE_1_0.txt or copy at
0007 // http://www.boost.org/LICENSE_1_0.txt)
0008 //
0009 // For more information, see www.boost.org
0010 
0011 // -------------------------------------------------------
0012 
0013 #ifndef BOOST_LAMBDA_FWD_HPP
0014 #define BOOST_LAMBDA_FWD_HPP
0015 
0016 namespace boost { 
0017 namespace lambda { 
0018 
0019 namespace detail {
0020 
0021 template<class T> struct generate_error;
0022 
0023 }   
0024 // -- placeholders --------------------------------------------
0025 
0026 template <int I> struct placeholder;
0027 
0028 // function_adaptors
0029 template <class Func> 
0030 struct function_adaptor;
0031 
0032 template <int I, class Act> class action;
0033 
0034 template <class Base> 
0035 class lambda_functor;
0036 
0037 template <class Act, class Args> 
0038 class lambda_functor_base;
0039 
0040 } // namespace lambda
0041 } // namespace boost
0042 
0043 
0044 //  #define CALL_TEMPLATE_ARGS class A, class Env
0045 //  #define CALL_FORMAL_ARGS A& a, Env& env
0046 //  #define CALL_ACTUAL_ARGS a, env
0047 //  #define CALL_ACTUAL_ARGS_NO_ENV a
0048 //  #define CALL_REFERENCE_TYPES A&, Env&
0049 //  #define CALL_PLAIN_TYPES A, Env
0050 #define CALL_TEMPLATE_ARGS class A, class B, class C, class Env
0051 #define CALL_FORMAL_ARGS A& a, B& b, C& c, Env& env
0052 #define CALL_ACTUAL_ARGS a, b, c, env
0053 #define CALL_ACTUAL_ARGS_NO_ENV a, b, c
0054 #define CALL_REFERENCE_TYPES A&, B&, C&, Env&
0055 #define CALL_PLAIN_TYPES A, B, C, Env
0056 
0057 namespace boost {
0058 namespace lambda {
0059 namespace detail {
0060 
0061 template<class A1, class A2, class A3, class A4>
0062 void do_nothing(A1&, A2&, A3&, A4&) {}
0063 
0064 } // detail
0065 } // lambda
0066 } // boost
0067 
0068 // prevent the warnings from unused arguments
0069 #define CALL_USE_ARGS \
0070 ::boost::lambda::detail::do_nothing(a, b, c, env)
0071 
0072 
0073 
0074 #endif