/*============================================================================= 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 namespace boost { namespace spirit { template struct argument; template struct attribute_context; namespace expression { template struct argument : phoenix::expression::terminal > { typedef typename phoenix::expression::terminal< spirit::argument >::type type; static type make() { type const e = {{{}}}; return e; } }; template struct attribute_context : phoenix::expression::terminal > { typedef typename phoenix::expression::terminal< spirit::attribute_context >::type type; static type make() { type const e = {{{}}}; return e; } }; } }} namespace boost { namespace phoenix { namespace result_of { template struct is_nullary > > : mpl::false_ {}; template struct is_nullary > > : mpl::false_ {}; } template struct is_custom_terminal > : mpl::true_ {}; template struct is_custom_terminal > : mpl::true_ {}; template struct custom_terminal > : proto::call< v2_eval( proto::make()> , proto::call< functional::env(proto::_state) > ) > {}; template struct custom_terminal > : proto::call< v2_eval( proto::make()> , proto::call< functional::env(proto::_state) > ) > {}; }} #endif