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

#include <nonterminal_fwd.hpp>

Inheritance diagram for boost::spirit::karma::grammar< OutputIterator, T1, T2, T3, T4 >:
Collaboration diagram for boost::spirit::karma::grammar< OutputIterator, T1, T2, T3, T4 >:

Classes

struct  attribute
 

Public Types

typedef OutputIterator iterator_type
 
typedef rule< OutputIterator,
T1, T2, T3, T4 > 
start_type
 
typedef start_type::properties properties
 
typedef start_type::sig_type sig_type
 
typedef start_type::locals_type locals_type
 
typedef start_type::delimiter_type delimiter_type
 
typedef start_type::encoding_type encoding_type
 
typedef grammar
< OutputIterator, T1, T2, T3,
T4 > 
base_type
 
typedef reference< start_type
const > 
reference_
 
typedef proto::terminal
< reference_ >::type 
terminal
 
typedef
detail::output_iterator
< OutputIterator, properties
output_iterator
 
typedef start_type parameterized_subject_type
 
typedef grammar
< OutputIterator, T1, T2, T3,
T4 > 
derived_type
 
typedef karma::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 Delimiter , typename Attribute >
bool generate (output_iterator &sink, Context &context, Delimiter const &delim, Attribute const &attr) const
 
template<typename Context >
info what (Context &) const
 
start_type const & get_parameterized_subject () const
 
grammar< OutputIterator, 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 OutputIterator , typename T1 , typename T2 , typename T3 , typename T4 >
typedef grammar<OutputIterator, T1, T2, T3, T4> boost::spirit::karma::grammar< OutputIterator, T1, T2, T3, T4 >::base_type
template<typename OutputIterator , typename T1 , typename T2 , typename T3 , typename T4 >
typedef start_type::delimiter_type boost::spirit::karma::grammar< OutputIterator, T1, T2, T3, T4 >::delimiter_type
typedef grammar< OutputIterator, T1, T2, T3, T4 > boost::spirit::karma::generator< grammar< OutputIterator, T1, T2, T3, T4 > >::derived_type
inherited
typedef karma::domain boost::spirit::karma::generator< grammar< OutputIterator, T1, T2, T3, T4 > >::domain
inherited
template<typename OutputIterator , typename T1 , typename T2 , typename T3 , typename T4 >
typedef start_type::encoding_type boost::spirit::karma::grammar< OutputIterator, T1, T2, T3, T4 >::encoding_type
template<typename OutputIterator , typename T1 , typename T2 , typename T3 , typename T4 >
typedef OutputIterator boost::spirit::karma::grammar< OutputIterator, T1, T2, T3, T4 >::iterator_type
template<typename OutputIterator , typename T1 , typename T2 , typename T3 , typename T4 >
typedef start_type::locals_type boost::spirit::karma::grammar< OutputIterator, T1, T2, T3, T4 >::locals_type
template<typename OutputIterator , typename T1 , typename T2 , typename T3 , typename T4 >
typedef detail::output_iterator<OutputIterator, properties> boost::spirit::karma::grammar< OutputIterator, T1, T2, T3, T4 >::output_iterator
template<typename OutputIterator , typename T1 , typename T2 , typename T3 , typename T4 >
typedef start_type boost::spirit::karma::grammar< OutputIterator, T1, T2, T3, T4 >::parameterized_subject_type
template<typename OutputIterator , typename T1 , typename T2 , typename T3 , typename T4 >
typedef start_type::properties boost::spirit::karma::grammar< OutputIterator, T1, T2, T3, T4 >::properties
template<typename OutputIterator , typename T1 , typename T2 , typename T3 , typename T4 >
typedef reference<start_type const> boost::spirit::karma::grammar< OutputIterator, T1, T2, T3, T4 >::reference_
template<typename OutputIterator , typename T1 , typename T2 , typename T3 , typename T4 >
typedef start_type::sig_type boost::spirit::karma::grammar< OutputIterator, T1, T2, T3, T4 >::sig_type
template<typename OutputIterator , typename T1 , typename T2 , typename T3 , typename T4 >
typedef rule<OutputIterator, T1, T2, T3, T4> boost::spirit::karma::grammar< OutputIterator, T1, T2, T3, T4 >::start_type
template<typename OutputIterator , typename T1 , typename T2 , typename T3 , typename T4 >
typedef proto::terminal<reference_>::type boost::spirit::karma::grammar< OutputIterator, T1, T2, T3, T4 >::terminal

Constructor & Destructor Documentation

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

Member Function Documentation

grammar< OutputIterator, T1, T2, T3, T4 > const& boost::spirit::karma::generator< grammar< OutputIterator, T1, T2, T3, T4 > >::derived ( ) const
inlineinherited
template<typename OutputIterator , typename T1 , typename T2 , typename T3 , typename T4 >
template<typename Context , typename Delimiter , typename Attribute >
bool boost::spirit::karma::grammar< OutputIterator, T1, T2, T3, T4 >::generate ( output_iterator sink,
Context &  context,
Delimiter const &  delim,
Attribute const &  attr 
) const
inline
template<typename OutputIterator , typename T1 , typename T2 , typename T3 , typename T4 >
start_type const& boost::spirit::karma::grammar< OutputIterator, T1, T2, T3, T4 >::get_parameterized_subject ( ) const
inline
template<typename OutputIterator , typename T1 , typename T2 , typename T3 , typename T4 >
std::string boost::spirit::karma::grammar< OutputIterator, T1, T2, T3, T4 >::name ( ) const
inline
template<typename OutputIterator , typename T1 , typename T2 , typename T3 , typename T4 >
void boost::spirit::karma::grammar< OutputIterator, T1, T2, T3, T4 >::name ( std::string const &  str)
inline
template<typename OutputIterator , typename T1 , typename T2 , typename T3 , typename T4 >
template<typename Context >
info boost::spirit::karma::grammar< OutputIterator, T1, T2, T3, T4 >::what ( Context &  ) const
inline

Member Data Documentation

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

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