diff options
author | Vlad Voicu <vladv@rosedu.org> | 2012-03-02 10:01:11 (GMT) |
---|---|---|
committer | vlad <vlad@tyrion.(none)> | 2012-10-13 13:55:44 (GMT) |
commit | b21e43357c66df6824536793bf41bbd1cbdf1a72 (patch) | |
tree | a23ee2adda43c27aa1b720f524e368991264182c /3rdParty/Boost/src/boost/proto/detail/expr1.hpp | |
parent | 58efe2c43e54a3d868784a6968e52674309e2310 (diff) | |
download | swift-contrib-b21e43357c66df6824536793bf41bbd1cbdf1a72.zip swift-contrib-b21e43357c66df6824536793bf41bbd1cbdf1a72.tar.bz2 |
Added spirit to bundled boost
Diffstat (limited to '3rdParty/Boost/src/boost/proto/detail/expr1.hpp')
-rw-r--r-- | 3rdParty/Boost/src/boost/proto/detail/expr1.hpp | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/3rdParty/Boost/src/boost/proto/detail/expr1.hpp b/3rdParty/Boost/src/boost/proto/detail/expr1.hpp new file mode 100644 index 0000000..ee50dd3 --- /dev/null +++ b/3rdParty/Boost/src/boost/proto/detail/expr1.hpp @@ -0,0 +1,47 @@ +/////////////////////////////////////////////////////////////////////////////// +// expr1.hpp +// Contains definition of expr\<\>::operator() overloads. +// +// Copyright 2008 Eric Niebler. 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) + +#ifndef BOOST_PP_IS_ITERATING +#error Do not include this file directly +#endif + +#define N BOOST_PP_ITERATION() + + /// \overload + /// + template<BOOST_PP_ENUM_PARAMS(N, typename A)> + typename result_of::BOOST_PP_CAT(funop, N)< + expr const + , default_domain BOOST_PP_ENUM_TRAILING_PARAMS(N, const A) + >::type const + operator ()(BOOST_PP_ENUM_BINARY_PARAMS(N, A, const &a)) const + { + return result_of::BOOST_PP_CAT(funop, N)< + expr const + , default_domain BOOST_PP_ENUM_TRAILING_PARAMS(N, const A) + >::call(*this BOOST_PP_ENUM_TRAILING_PARAMS(N, a)); + } + + #ifdef BOOST_PROTO_DEFINE_TERMINAL + /// \overload + /// + template<BOOST_PP_ENUM_PARAMS(N, typename A)> + typename result_of::BOOST_PP_CAT(funop, N)< + expr + , default_domain BOOST_PP_ENUM_TRAILING_PARAMS(N, const A) + >::type const + operator ()(BOOST_PP_ENUM_BINARY_PARAMS(N, A, const &a)) + { + return result_of::BOOST_PP_CAT(funop, N)< + expr + , default_domain BOOST_PP_ENUM_TRAILING_PARAMS(N, const A) + >::call(*this BOOST_PP_ENUM_TRAILING_PARAMS(N, a)); + } + #endif + +#undef N |