Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:50:19

0001 #if !defined(BOOST_PROTO_DONT_USE_PREPROCESSED_FILES)
0002 
0003     #include <boost/proto/context/detail/preprocessed/null_eval.hpp>
0004 
0005 #elif !defined(BOOST_PP_IS_ITERATING)
0006 
0007     #define BOOST_PROTO_EVAL_N(Z, N, DATA)                                                          \
0008         proto::eval(proto::child_c<N>(expr), ctx);                                                  \
0009         /**/
0010 
0011     #if defined(__WAVE__) && defined(BOOST_PROTO_CREATE_PREPROCESSED_FILES)
0012         #pragma wave option(preserve: 2, line: 0, output: "preprocessed/null_eval.hpp")
0013     #endif
0014 
0015     ///////////////////////////////////////////////////////////////////////////////
0016     /// \file null_eval.hpp
0017     /// Contains specializations of the null_eval\<\> class template.
0018     //
0019     //  Copyright 2008 Eric Niebler. Distributed under the Boost
0020     //  Software License, Version 1.0. (See accompanying file
0021     //  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
0022 
0023     #if defined(__WAVE__) && defined(BOOST_PROTO_CREATE_PREPROCESSED_FILES)
0024         #pragma wave option(preserve: 1)
0025     #endif
0026 
0027     #define BOOST_PP_ITERATION_PARAMS_1                                                             \
0028         (3, (1, BOOST_PROTO_MAX_ARITY, <boost/proto/context/detail/null_eval.hpp>))
0029     #include BOOST_PP_ITERATE()
0030 
0031     #if defined(__WAVE__) && defined(BOOST_PROTO_CREATE_PREPROCESSED_FILES)
0032         #pragma wave option(output: null)
0033     #endif
0034 
0035     #undef BOOST_PROTO_EVAL_N
0036 
0037 #else
0038 
0039     #define N BOOST_PP_ITERATION()
0040 
0041     template<typename Expr, typename Context>
0042     struct null_eval<Expr, Context, N>
0043     {
0044         typedef void result_type;
0045 
0046         void operator ()(Expr &expr, Context &ctx) const
0047         {
0048             BOOST_PP_REPEAT(N, BOOST_PROTO_EVAL_N, ~)
0049         }
0050     };
0051 
0052     #undef N
0053 
0054 #endif