Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
rule.hpp File Reference
#include <boost/spirit/home/x3/nonterminal/detail/rule.hpp>
#include <boost/type_traits/is_same.hpp>
#include <boost/spirit/home/x3/support/context.hpp>
#include <boost/preprocessor/variadic/to_seq.hpp>
#include <boost/preprocessor/variadic/elem.hpp>
#include <boost/preprocessor/seq/for_each.hpp>
#include <typeinfo>
Include dependency graph for rule.hpp:
This graph shows which files directly or indirectly include this file:

Classes

struct  boost::spirit::x3::identity< ID >
 
struct  boost::spirit::x3::rule_definition< ID, RHS, Attribute, force_attribute_ >
 
struct  boost::spirit::x3::rule< ID, Attribute >
 
struct  boost::spirit::x3::traits::is_rule< T, Enable >
 
struct  boost::spirit::x3::traits::is_rule< rule< ID, Attribute > >
 
struct  boost::spirit::x3::traits::is_rule< rule_definition< ID, RHS, Attribute, force_attribute > >
 
struct  boost::spirit::x3::get_info< T, typename enable_if< traits::is_rule< T > >::type >
 

Namespaces

 boost
 Duration formatting facet for input.
 
 boost::spirit
 
 boost::spirit::x3
 
 boost::spirit::x3::traits
 

Macros

#define BOOST_SPIRIT_DECLARE_(r, data, rule_type)
 
#define BOOST_SPIRIT_DECLARE(...)
 
#define BOOST_SPIRIT_DEFINE_(r, data, def)
 
#define BOOST_SPIRIT_DEFINE(...)
 
#define BOOST_SPIRIT_INSTANTIATE(rule_type, Iterator, Context)
 

Functions

template<typename ID , typename Attribute , typename Iterator , typename Context , typename ActualAttribute >
detail::default_parse_rule_result boost::spirit::x3::parse_rule (rule< ID, Attribute > rule_, Iterator &first, Iterator const &last, Context const &context, ActualAttribute &attr)
 

Macro Definition Documentation

#define BOOST_SPIRIT_DECLARE (   ...)
Value:
BOOST_SPIRIT_DECLARE_, _, BOOST_PP_VARIADIC_TO_SEQ(__VA_ARGS__)) \
/***/
#define BOOST_PP_SEQ_FOR_EACH(macro, data, seq)
Definition: for_each.hpp:28
#define BOOST_SPIRIT_DECLARE_(r, data, rule_type)
Definition: rule.hpp:147
#define BOOST_SPIRIT_DECLARE_ (   r,
  data,
  rule_type 
)
Value:
template <typename Iterator, typename Context, typename Attribute> \
bool parse_rule( \
rule_type rule_ \
, Iterator& first, Iterator const& last \
, Context const& context, Attribute& attr); \
/***/
result_of::context< Env const &, Actions const & >::type const context(Env const &env, Actions const &actions)
Definition: environment.hpp:217
function< op::first >::type const first
first is a lazy PolymorphicFunctionObject for accessing the first element of a std::pair<> in an xpre...
Definition: regex_actions.hpp:978
uint32_t rule_type
Flags used with word boundary analysis – the type of the word, line or sentence boundary found...
Definition: types.hpp:51
edge_iterator last
Definition: two_graphs_common_spanning_trees.hpp:631
attr_gen const attr
Definition: attr.hpp:132
detail::default_parse_rule_result parse_rule(rule< ID, Attribute > rule_, Iterator &first, Iterator const &last, Context const &context, ActualAttribute &attr)
Definition: rule.hpp:34
#define BOOST_SPIRIT_DEFINE (   ...)
Value:
BOOST_SPIRIT_DEFINE_, _, BOOST_PP_VARIADIC_TO_SEQ(__VA_ARGS__)) \
/***/
#define BOOST_SPIRIT_DEFINE_(r, data, def)
Definition: rule.hpp:159
#define BOOST_PP_SEQ_FOR_EACH(macro, data, seq)
Definition: for_each.hpp:28
#define BOOST_SPIRIT_DEFINE_ (   r,
  data,
  def 
)
Value:
template <typename Iterator, typename Context, typename Attribute> \
inline bool parse_rule( \
decltype(def)::lhs_type rule_ \
, Iterator& first, Iterator const& last \
, Context const& context, Attribute& attr) \
{ \
auto const& def_ = (def); \
return def_.parse(first, last, context, unused, attr); \
} \
/***/
result_of::context< Env const &, Actions const & >::type const context(Env const &env, Actions const &actions)
Definition: environment.hpp:217
unused_type const unused
Definition: unused.hpp:76
void def(char const *name, Signature)
Definition: python.hpp:454
function< op::first >::type const first
first is a lazy PolymorphicFunctionObject for accessing the first element of a std::pair<> in an xpre...
Definition: regex_actions.hpp:978
unused_type const unused
Definition: unused.hpp:67
edge_iterator last
Definition: two_graphs_common_spanning_trees.hpp:631
attr_gen const attr
Definition: attr.hpp:132
detail::default_parse_rule_result parse_rule(rule< ID, Attribute > rule_, Iterator &first, Iterator const &last, Context const &context, ActualAttribute &attr)
Definition: rule.hpp:34
#define BOOST_SPIRIT_INSTANTIATE (   rule_type,
  Iterator,
  Context 
)
Value:
template bool parse_rule<Iterator, Context, rule_type::attribute_type>( \
rule_type rule_ \
, Iterator& first, Iterator const& last \
, Context const& context, rule_type::attribute_type& attr); \
/***/
result_of::context< Env const &, Actions const & >::type const context(Env const &env, Actions const &actions)
Definition: environment.hpp:217
function< op::first >::type const first
first is a lazy PolymorphicFunctionObject for accessing the first element of a std::pair<> in an xpre...
Definition: regex_actions.hpp:978
uint32_t rule_type
Flags used with word boundary analysis – the type of the word, line or sentence boundary found...
Definition: types.hpp:51
edge_iterator last
Definition: two_graphs_common_spanning_trees.hpp:631
attr_gen const attr
Definition: attr.hpp:132