![]() System : Linux absol.cf 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, Directory : /usr/include/boost/spirit/home/support/ |
Upload File : |
/*============================================================================= Copyright (c) 2011 Thomas Heller Copyright (c) 2001-2011 Hartmut Kaiser Copyright (c) 2011 Thomas Heller 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) ==============================================================================*/ #if !defined(BOOST_SPIRIT_ARGUMENT_MARCH_22_2011_0939PM) #define BOOST_SPIRIT_ARGUMENT_MARCH_22_2011_0939PM #include <boost/spirit/include/phoenix_core.hpp> namespace boost { namespace spirit { template <int N> struct argument; template <typename Dummy> struct attribute_context; namespace expression { template <int N> struct argument : phoenix::expression::terminal<spirit::argument<N> > { typedef typename phoenix::expression::terminal< spirit::argument<N> >::type type; static type make() { type const e = {{{}}}; return e; } }; template <typename Dummy> struct attribute_context : phoenix::expression::terminal<spirit::attribute_context<Dummy> > { typedef typename phoenix::expression::terminal< spirit::attribute_context<Dummy> >::type type; static type make() { type const e = {{{}}}; return e; } }; } }} namespace boost { namespace phoenix { namespace result_of { template <typename Dummy> struct is_nullary<custom_terminal<spirit::attribute_context<Dummy> > > : mpl::false_ {}; template <int N> struct is_nullary<custom_terminal<spirit::argument<N> > > : mpl::false_ {}; } template <typename Dummy> struct is_custom_terminal<spirit::attribute_context<Dummy> > : mpl::true_ {}; template <int N> struct is_custom_terminal<spirit::argument<N> > : mpl::true_ {}; template <typename Dummy> struct custom_terminal<spirit::attribute_context<Dummy> > : proto::call< v2_eval( proto::make<spirit::attribute_context<Dummy>()> , proto::call< functional::env(proto::_state) > ) > {}; template <int N> struct custom_terminal<spirit::argument<N> > : proto::call< v2_eval( proto::make<spirit::argument<N>()> , proto::call< functional::env(proto::_state) > ) > {}; }} #endif