annotate DEPENDENCIES/generic/include/boost/lambda/core.hpp @ 125:34e428693f5d vext

Vext -> Repoint
author Chris Cannam
date Thu, 14 Jun 2018 11:15:39 +0100
parents 2665513ce2d3
children
rev   line source
Chris@16 1 // -- core.hpp -- Boost Lambda Library -------------------------------------
Chris@16 2 //
Chris@16 3 // Copyright (C) 2000 Gary Powell (powellg@amazon.com)
Chris@16 4 // Copyright (C) 1999, 2000 Jaakko Jarvi (jaakko.jarvi@cs.utu.fi)
Chris@16 5 //
Chris@16 6 // Distributed under the Boost Software License, Version 1.0. (See
Chris@16 7 // accompanying file LICENSE_1_0.txt or copy at
Chris@16 8 // http://www.boost.org/LICENSE_1_0.txt)
Chris@16 9 //
Chris@16 10 // For more information, see www.boost.org
Chris@16 11 //
Chris@16 12 // Includes the core of LL, without any real features for client:
Chris@16 13 //
Chris@16 14 // tuples, lambda functors, return type deduction templates,
Chris@16 15 // argument substitution mechanism (select functions)
Chris@16 16 //
Chris@16 17 // Some functionality comes as well:
Chris@16 18 // Assignment and subscript operators, as well as function
Chris@16 19 // call operator for placeholder variables.
Chris@16 20 // -------------------------------------------------------------------------
Chris@16 21
Chris@16 22 #ifndef BOOST_LAMBDA_CORE_HPP
Chris@16 23 #define BOOST_LAMBDA_CORE_HPP
Chris@16 24
Chris@16 25 #include "boost/type_traits/transform_traits.hpp"
Chris@16 26 #include "boost/type_traits/cv_traits.hpp"
Chris@16 27
Chris@16 28 #include "boost/tuple/tuple.hpp"
Chris@16 29
Chris@16 30 // inject some of the tuple names into lambda
Chris@16 31 namespace boost {
Chris@16 32 namespace lambda {
Chris@16 33
Chris@16 34 using ::boost::tuples::tuple;
Chris@16 35 using ::boost::tuples::null_type;
Chris@16 36
Chris@16 37 } // lambda
Chris@16 38 } // boost
Chris@16 39
Chris@16 40 #include "boost/lambda/detail/lambda_config.hpp"
Chris@16 41 #include "boost/lambda/detail/lambda_fwd.hpp"
Chris@16 42
Chris@16 43 #include "boost/lambda/detail/arity_code.hpp"
Chris@16 44 #include "boost/lambda/detail/actions.hpp"
Chris@16 45
Chris@16 46 #include "boost/lambda/detail/lambda_traits.hpp"
Chris@16 47
Chris@16 48 #include "boost/lambda/detail/function_adaptors.hpp"
Chris@16 49 #include "boost/lambda/detail/return_type_traits.hpp"
Chris@16 50
Chris@16 51 #include "boost/lambda/detail/select_functions.hpp"
Chris@16 52
Chris@16 53 #include "boost/lambda/detail/lambda_functor_base.hpp"
Chris@16 54
Chris@16 55 #include "boost/lambda/detail/lambda_functors.hpp"
Chris@16 56
Chris@16 57 #include "boost/lambda/detail/ret.hpp"
Chris@16 58
Chris@16 59 namespace boost {
Chris@16 60 namespace lambda {
Chris@16 61
Chris@16 62 namespace {
Chris@16 63
Chris@16 64 // These are constants types and need to be initialised
Chris@16 65 boost::lambda::placeholder1_type free1 = boost::lambda::placeholder1_type();
Chris@16 66 boost::lambda::placeholder2_type free2 = boost::lambda::placeholder2_type();
Chris@16 67 boost::lambda::placeholder3_type free3 = boost::lambda::placeholder3_type();
Chris@16 68
Chris@16 69 boost::lambda::placeholder1_type& _1 = free1;
Chris@16 70 boost::lambda::placeholder2_type& _2 = free2;
Chris@16 71 boost::lambda::placeholder3_type& _3 = free3;
Chris@16 72 // _1, _2, ... naming scheme by Peter Dimov
Chris@16 73 } // unnamed
Chris@16 74
Chris@16 75 } // lambda
Chris@16 76 } // boost
Chris@16 77
Chris@16 78
Chris@16 79 #endif //BOOST_LAMBDA_CORE_HPP