Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
terminal.hpp File Reference
#include <boost/spirit/include/phoenix_core.hpp>
#include <boost/spirit/include/phoenix_function.hpp>
#include <boost/proto/proto.hpp>
#include <boost/fusion/include/void.hpp>
#include <boost/spirit/home/support/meta_compiler.hpp>
#include <boost/spirit/home/support/detail/make_vector.hpp>
#include <boost/spirit/home/support/unused.hpp>
#include <boost/spirit/home/support/detail/is_spirit_tag.hpp>
#include <boost/preprocessor/tuple/elem.hpp>
#include <boost/spirit/home/support/terminal_expression.hpp>
Include dependency graph for terminal.hpp:
This graph shows which files directly or indirectly include this file:

Classes

struct  boost::spirit::terminal_ex< Terminal, Args >
 
struct  boost::spirit::lazy_terminal< Terminal, Actor, Arity >
 
struct  boost::spirit::use_lazy_terminal< Domain, Terminal, Arity, Enable >
 
struct  boost::spirit::use_lazy_directive< Domain, Terminal, Arity, Enable >
 
struct  boost::spirit::terminal< Terminal >
 
struct  boost::spirit::use_terminal< Domain, terminal< Terminal > >
 
struct  boost::spirit::use_terminal< Domain, lazy_terminal< Terminal, Actor, Arity > >
 
struct  boost::spirit::use_directive< Domain, lazy_terminal< Terminal, Actor, Arity > >
 
struct  boost::spirit::make_lazy< F, A0, A1, A2, Unused >
 
struct  boost::spirit::make_lazy< F, A0 >
 
struct  boost::spirit::make_lazy< F, A0, A1 >
 
struct  boost::spirit::make_lazy< F, A0, A1, A2 >
 
struct  boost::spirit::detail::bool_< C >
 
struct  boost::spirit::detail::bool_< true >
 
struct  boost::spirit::detail::bool_< false >
 
struct  boost::spirit::detail::contains_actor< A0, A1, A2 >
 
struct  boost::spirit::detail::to_lazy_arg< A >
 
struct  boost::spirit::detail::to_lazy_arg< const A >
 
struct  boost::spirit::detail::to_lazy_arg< A & >
 
struct  boost::spirit::detail::to_lazy_arg< unused_type >
 
struct  boost::spirit::detail::to_nonlazy_arg< A >
 
struct  boost::spirit::detail::to_nonlazy_arg< const A >
 
struct  boost::spirit::detail::to_nonlazy_arg< A & >
 
struct  boost::spirit::detail::to_nonlazy_arg< unused_type >
 
struct  boost::spirit::terminal< Terminal >
 
struct  boost::spirit::terminal< Terminal >::result_helper< Lazy, A0, A1, A2 >
 
struct  boost::spirit::terminal< Terminal >::result_helper< false, A0, A1, A2 >
 
struct  boost::spirit::terminal< Terminal >::result_helper< true, A0, A1, A2 >
 
struct  boost::spirit::terminal< Terminal >::result< A0, A1, A2 >
 
struct  boost::spirit::terminal< Terminal >::result< This(A0)>
 
struct  boost::spirit::terminal< Terminal >::result< This(A0, A1)>
 
struct  boost::spirit::terminal< Terminal >::result< This(A0, A1, A2)>
 
struct  boost::spirit::result_of::terminal< Tag >
 
struct  boost::spirit::result_of::terminal< Tag(A0)>
 
struct  boost::spirit::result_of::terminal< Tag(A0, A1)>
 
struct  boost::spirit::result_of::terminal< Tag(A0, A1, A2)>
 
struct  boost::spirit::tag::stateful_tag< Data, Tag, DataTag1, DataTag2 >
 
struct  boost::spirit::stateful_tag_type< Data, Tag, DataTag1, DataTag2 >
 
struct  boost::spirit::detail::get_stateful_data< StatefulTag >
 
struct  boost::phoenix::is_custom_terminal< Tag, typename Tag::is_spirit_tag >
 
struct  boost::phoenix::custom_terminal< Tag, typename Tag::is_spirit_tag >
 

Namespaces

 boost
 Duration formatting facet for input.
 
 boost::spirit
 
 boost::spirit::detail
 
 boost::spirit::result_of
 
 boost::spirit::tag
 
 boost::phoenix
 

Macros

#define BOOST_SPIRIT_TERMINAL_X(x, y)   ((x, y)) BOOST_SPIRIT_TERMINAL_Y
 
#define BOOST_SPIRIT_TERMINAL_Y(x, y)   ((x, y)) BOOST_SPIRIT_TERMINAL_X
 
#define BOOST_SPIRIT_TERMINAL_X0
 
#define BOOST_SPIRIT_TERMINAL_Y0
 
#define BOOST_SPIRIT_TERMINAL_NAME(name, type_name)
 
#define BOOST_SPIRIT_TERMINAL(name)
 
#define BOOST_SPIRIT_DEFINE_TERMINALS_NAME_A(r, _, names)
 
#define BOOST_SPIRIT_DEFINE_TERMINALS_NAME(seq)
 
#define BOOST_SPIRIT_TERMINAL_NAME_EX(name, type_name)
 
#define BOOST_SPIRIT_TERMINAL_EX(name)
 
#define BOOST_SPIRIT_DEFINE_TERMINALS_NAME_EX_A(r, _, names)
 
#define BOOST_SPIRIT_DEFINE_TERMINALS_NAME_EX(seq)
 

Macro Definition Documentation

#define BOOST_SPIRIT_DEFINE_TERMINALS_NAME (   seq)
Value:
/***/
#define BOOST_SPIRIT_TERMINAL_X(x, y)
Definition: terminal.hpp:578
#define BOOST_PP_CAT(a, b)
Definition: cat.hpp:24
#define BOOST_PP_SEQ_FOR_EACH(macro, data, seq)
Definition: for_each.hpp:28
#define BOOST_SPIRIT_DEFINE_TERMINALS_NAME_A(r, _, names)
Definition: terminal.hpp:605
#define BOOST_SPIRIT_DEFINE_TERMINALS_NAME_A (   r,
  _,
  names 
)
Value:
BOOST_PP_TUPLE_ELEM(2, 0, names), \
BOOST_PP_TUPLE_ELEM(2, 1, names) \
) \
/***/
#define BOOST_SPIRIT_TERMINAL_NAME(name, type_name)
Definition: terminal.hpp:585
#define BOOST_PP_TUPLE_ELEM(size, n, tuple)
Definition: elem.hpp:57
#define BOOST_SPIRIT_DEFINE_TERMINALS_NAME_EX (   seq)
Value:
/***/
#define BOOST_SPIRIT_TERMINAL_X(x, y)
Definition: terminal.hpp:578
#define BOOST_SPIRIT_DEFINE_TERMINALS_NAME_EX_A(r, _, names)
Definition: terminal.hpp:643
#define BOOST_PP_CAT(a, b)
Definition: cat.hpp:24
#define BOOST_PP_SEQ_FOR_EACH(macro, data, seq)
Definition: for_each.hpp:28
#define BOOST_SPIRIT_DEFINE_TERMINALS_NAME_EX_A (   r,
  _,
  names 
)
Value:
BOOST_PP_TUPLE_ELEM(2, 0, names), \
BOOST_PP_TUPLE_ELEM(2, 1, names) \
) \
/***/
#define BOOST_PP_TUPLE_ELEM(size, n, tuple)
Definition: elem.hpp:57
#define BOOST_SPIRIT_TERMINAL_NAME_EX(name, type_name)
Definition: terminal.hpp:623
#define BOOST_SPIRIT_TERMINAL (   name)
Value:
/***/
const int name
Definition: gzip.hpp:94
#define BOOST_SPIRIT_TERMINAL_NAME(name, type_name)
Definition: terminal.hpp:585
#define BOOST_SPIRIT_TERMINAL_EX (   name)
Value:
/***/
const int name
Definition: gzip.hpp:94
#define BOOST_SPIRIT_TERMINAL_NAME_EX(name, type_name)
Definition: terminal.hpp:623
#define BOOST_SPIRIT_TERMINAL_NAME (   name,
  type_name 
)
Value:
namespace tag { struct name { BOOST_SPIRIT_IS_TAG() }; } \
type_name const name = {{}}; \
inline void BOOST_PP_CAT(silence_unused_warnings_, name)() { (void) name; } \
/***/
void
Definition: is_convertible.hpp:460
boost_foreach_argument_dependent_lookup_hack tag
Definition: foreach_fwd.hpp:31
const int name
Definition: gzip.hpp:94
proto::expr< proto::tag::terminal, term< T >, 0 > type
Definition: traits.hpp:388
#define BOOST_PP_CAT(a, b)
Definition: cat.hpp:24
#define BOOST_SPIRIT_TERMINAL_NAME_EX (   name,
  type_name 
)
Value:
namespace tag { struct name { BOOST_SPIRIT_IS_TAG() }; } \
type_name const name = type_name(); \
inline void BOOST_PP_CAT(silence_unused_warnings_, name)() { (void) name; } \
/***/
void
Definition: is_convertible.hpp:460
boost_foreach_argument_dependent_lookup_hack tag
Definition: foreach_fwd.hpp:31
Definition: terminal.hpp:69
const int name
Definition: gzip.hpp:94
#define BOOST_PP_CAT(a, b)
Definition: cat.hpp:24
#define BOOST_SPIRIT_TERMINAL_X (   x,
 
)    ((x, y)) BOOST_SPIRIT_TERMINAL_Y
#define BOOST_SPIRIT_TERMINAL_X0
#define BOOST_SPIRIT_TERMINAL_Y (   x,
 
)    ((x, y)) BOOST_SPIRIT_TERMINAL_X
#define BOOST_SPIRIT_TERMINAL_Y0