Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::spirit::qi::grammar< Iterator, T1, T2, T3, T4 > Struct Template Reference

#include <nonterminal_fwd.hpp>

Inheritance diagram for boost::spirit::qi::grammar< Iterator, T1, T2, T3, T4 >:
Collaboration diagram for boost::spirit::qi::grammar< Iterator, T1, T2, T3, T4 >:

Classes

struct  attribute
 

Public Types

typedef Iterator iterator_type
 
typedef rule< Iterator, T1, T2,
T3, T4 > 
start_type
 
typedef start_type::sig_type sig_type
 
typedef start_type::locals_type locals_type
 
typedef start_type::skipper_type skipper_type
 
typedef start_type::encoding_type encoding_type
 
typedef grammar< Iterator, T1,
T2, T3, T4 > 
base_type
 
typedef reference< start_type
const > 
reference_
 
typedef proto::terminal
< reference_ >::type 
terminal
 
typedef start_type parameterized_subject_type
 
typedef grammar< Iterator, T1,
T2, T3, T4 > 
derived_type
 
typedef qi::domain domain
 

Public Member Functions

 grammar (start_type const &start, std::string const &name="unnamed-grammar")
 
template<typename Iterator_ , typename T1_ , typename T2_ , typename T3_ , typename T4_ >
 grammar (rule< Iterator_, T1_, T2_, T3_, T4_ > const &, std::string const &="unnamed-grammar")
 
std::string name () const
 
void name (std::string const &str)
 
template<typename Context , typename Skipper , typename Attribute >
bool parse (Iterator &first, Iterator const &last, Context &context, Skipper const &skipper, Attribute &attr_) const
 
template<typename Context >
info what (Context &) const
 
start_type const & get_parameterized_subject () const
 
grammar< Iterator, T1, T2, T3,
T4 >const & 
derived () const
 

Public Attributes

std::string name_
 

Static Public Attributes

static size_t const params_size = start_type::params_size
 

Member Typedef Documentation

template<typename Iterator , typename T1 , typename T2 , typename T3 , typename T4 >
typedef grammar<Iterator, T1, T2, T3, T4> boost::spirit::qi::grammar< Iterator, T1, T2, T3, T4 >::base_type
typedef grammar< Iterator, T1, T2, T3, T4 > boost::spirit::qi::parser< grammar< Iterator, T1, T2, T3, T4 > >::derived_type
inherited
typedef qi::domain boost::spirit::qi::parser< grammar< Iterator, T1, T2, T3, T4 > >::domain
inherited
template<typename Iterator , typename T1 , typename T2 , typename T3 , typename T4 >
typedef start_type::encoding_type boost::spirit::qi::grammar< Iterator, T1, T2, T3, T4 >::encoding_type
template<typename Iterator , typename T1 , typename T2 , typename T3 , typename T4 >
typedef Iterator boost::spirit::qi::grammar< Iterator, T1, T2, T3, T4 >::iterator_type
template<typename Iterator , typename T1 , typename T2 , typename T3 , typename T4 >
typedef start_type::locals_type boost::spirit::qi::grammar< Iterator, T1, T2, T3, T4 >::locals_type
template<typename Iterator , typename T1 , typename T2 , typename T3 , typename T4 >
typedef start_type boost::spirit::qi::grammar< Iterator, T1, T2, T3, T4 >::parameterized_subject_type
template<typename Iterator , typename T1 , typename T2 , typename T3 , typename T4 >
typedef reference<start_type const> boost::spirit::qi::grammar< Iterator, T1, T2, T3, T4 >::reference_
template<typename Iterator , typename T1 , typename T2 , typename T3 , typename T4 >
typedef start_type::sig_type boost::spirit::qi::grammar< Iterator, T1, T2, T3, T4 >::sig_type
template<typename Iterator , typename T1 , typename T2 , typename T3 , typename T4 >
typedef start_type::skipper_type boost::spirit::qi::grammar< Iterator, T1, T2, T3, T4 >::skipper_type
template<typename Iterator , typename T1 , typename T2 , typename T3 , typename T4 >
typedef rule<Iterator, T1, T2, T3, T4> boost::spirit::qi::grammar< Iterator, T1, T2, T3, T4 >::start_type
template<typename Iterator , typename T1 , typename T2 , typename T3 , typename T4 >
typedef proto::terminal<reference_>::type boost::spirit::qi::grammar< Iterator, T1, T2, T3, T4 >::terminal

Constructor & Destructor Documentation

template<typename Iterator , typename T1 , typename T2 , typename T3 , typename T4 >
boost::spirit::qi::grammar< Iterator, T1, T2, T3, T4 >::grammar ( start_type const &  start,
std::string const &  name = "unnamed-grammar< Iterator, T1, T2, T3, T4 >" 
)
inline
template<typename Iterator , typename T1 , typename T2 , typename T3 , typename T4 >
template<typename Iterator_ , typename T1_ , typename T2_ , typename T3_ , typename T4_ >
boost::spirit::qi::grammar< Iterator, T1, T2, T3, T4 >::grammar ( rule< Iterator_, T1_, T2_, T3_, T4_ > const &  ,
std::string const &  = "unnamed-grammar< Iterator, T1, T2, T3, T4 >" 
)
inline

Member Function Documentation

grammar< Iterator, T1, T2, T3, T4 > const& boost::spirit::qi::parser< grammar< Iterator, T1, T2, T3, T4 > >::derived ( ) const
inlineinherited
template<typename Iterator , typename T1 , typename T2 , typename T3 , typename T4 >
start_type const& boost::spirit::qi::grammar< Iterator, T1, T2, T3, T4 >::get_parameterized_subject ( ) const
inline
template<typename Iterator , typename T1 , typename T2 , typename T3 , typename T4 >
std::string boost::spirit::qi::grammar< Iterator, T1, T2, T3, T4 >::name ( ) const
inline
template<typename Iterator , typename T1 , typename T2 , typename T3 , typename T4 >
void boost::spirit::qi::grammar< Iterator, T1, T2, T3, T4 >::name ( std::string const &  str)
inline
template<typename Iterator , typename T1 , typename T2 , typename T3 , typename T4 >
template<typename Context , typename Skipper , typename Attribute >
bool boost::spirit::qi::grammar< Iterator, T1, T2, T3, T4 >::parse ( Iterator &  first,
Iterator const &  last,
Context &  context,
Skipper const &  skipper,
Attribute &  attr_ 
) const
inline
template<typename Iterator , typename T1 , typename T2 , typename T3 , typename T4 >
template<typename Context >
info boost::spirit::qi::grammar< Iterator, T1, T2, T3, T4 >::what ( Context &  ) const
inline

Member Data Documentation

template<typename Iterator , typename T1 , typename T2 , typename T3 , typename T4 >
std::string boost::spirit::qi::grammar< Iterator, T1, T2, T3, T4 >::name_
template<typename Iterator , typename T1 , typename T2 , typename T3 , typename T4 >
size_t const boost::spirit::qi::grammar< Iterator, T1, T2, T3, T4 >::params_size = start_type::params_size
static

The documentation for this struct was generated from the following file: