Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::spirit::lex::lexertl::static_lexer< Token, LexerTables, Iterator, Functor > Class Template Reference

#include <static_lexer.hpp>

Inheritance diagram for boost::spirit::lex::lexertl::static_lexer< Token, LexerTables, Iterator, Functor >:

Public Types

typedef
boost::detail::iterator_traits
< Iterator >::value_type 
char_type
 
typedef std::basic_string
< char_type
string_type
 
typedef Token token_type
 
typedef Token::id_type id_type
 
typedef iterator< Functor > iterator_type
 

Public Member Functions

 operator safe_bool () const
 
template<typename Iterator_ >
iterator_type begin (Iterator_ &first, Iterator_ const &last, char_type const *initial_state=0) const
 
iterator_type end () const
 
std::size_t add_token (char_type const *, char_type, std::size_t, char_type const *)
 
std::size_t add_token (char_type const *, string_type const &, std::size_t, char_type const *)
 
void add_pattern (char_type const *, string_type const &, string_type const &)
 
void clear (char_type const *)
 
std::size_t add_state (char_type const *state)
 
string_type initial_state () const
 
template<typename F >
void add_action (id_type unique_id, std::size_t state, F act)
 
bool init_dfa (bool minimize=false) const
 

Protected Member Functions

 static_lexer (unsigned int)
 

Member Typedef Documentation

template<typename Token = token<>, typename LexerTables = static_::lexer, typename Iterator = typename Token::iterator_type, typename Functor = functor<Token, detail::static_data, Iterator>>
typedef boost::detail::iterator_traits<Iterator>::value_type boost::spirit::lex::lexertl::static_lexer< Token, LexerTables, Iterator, Functor >::char_type
template<typename Token = token<>, typename LexerTables = static_::lexer, typename Iterator = typename Token::iterator_type, typename Functor = functor<Token, detail::static_data, Iterator>>
typedef Token::id_type boost::spirit::lex::lexertl::static_lexer< Token, LexerTables, Iterator, Functor >::id_type
template<typename Token = token<>, typename LexerTables = static_::lexer, typename Iterator = typename Token::iterator_type, typename Functor = functor<Token, detail::static_data, Iterator>>
typedef iterator<Functor> boost::spirit::lex::lexertl::static_lexer< Token, LexerTables, Iterator, Functor >::iterator_type
template<typename Token = token<>, typename LexerTables = static_::lexer, typename Iterator = typename Token::iterator_type, typename Functor = functor<Token, detail::static_data, Iterator>>
typedef std::basic_string<char_type> boost::spirit::lex::lexertl::static_lexer< Token, LexerTables, Iterator, Functor >::string_type
template<typename Token = token<>, typename LexerTables = static_::lexer, typename Iterator = typename Token::iterator_type, typename Functor = functor<Token, detail::static_data, Iterator>>
typedef Token boost::spirit::lex::lexertl::static_lexer< Token, LexerTables, Iterator, Functor >::token_type

Constructor & Destructor Documentation

template<typename Token = token<>, typename LexerTables = static_::lexer, typename Iterator = typename Token::iterator_type, typename Functor = functor<Token, detail::static_data, Iterator>>
boost::spirit::lex::lexertl::static_lexer< Token, LexerTables, Iterator, Functor >::static_lexer ( unsigned  int)
inlineprotected

Member Function Documentation

template<typename Token = token<>, typename LexerTables = static_::lexer, typename Iterator = typename Token::iterator_type, typename Functor = functor<Token, detail::static_data, Iterator>>
template<typename F >
void boost::spirit::lex::lexertl::static_lexer< Token, LexerTables, Iterator, Functor >::add_action ( id_type  unique_id,
std::size_t  state,
act 
)
inline
template<typename Token = token<>, typename LexerTables = static_::lexer, typename Iterator = typename Token::iterator_type, typename Functor = functor<Token, detail::static_data, Iterator>>
void boost::spirit::lex::lexertl::static_lexer< Token, LexerTables, Iterator, Functor >::add_pattern ( char_type const *  ,
string_type const &  ,
string_type const &   
)
inline
template<typename Token = token<>, typename LexerTables = static_::lexer, typename Iterator = typename Token::iterator_type, typename Functor = functor<Token, detail::static_data, Iterator>>
std::size_t boost::spirit::lex::lexertl::static_lexer< Token, LexerTables, Iterator, Functor >::add_state ( char_type const *  state)
inline
template<typename Token = token<>, typename LexerTables = static_::lexer, typename Iterator = typename Token::iterator_type, typename Functor = functor<Token, detail::static_data, Iterator>>
std::size_t boost::spirit::lex::lexertl::static_lexer< Token, LexerTables, Iterator, Functor >::add_token ( char_type const *  ,
char_type  ,
std::size_t  ,
char_type const *   
)
inline
template<typename Token = token<>, typename LexerTables = static_::lexer, typename Iterator = typename Token::iterator_type, typename Functor = functor<Token, detail::static_data, Iterator>>
std::size_t boost::spirit::lex::lexertl::static_lexer< Token, LexerTables, Iterator, Functor >::add_token ( char_type const *  ,
string_type const &  ,
std::size_t  ,
char_type const *   
)
inline
template<typename Token = token<>, typename LexerTables = static_::lexer, typename Iterator = typename Token::iterator_type, typename Functor = functor<Token, detail::static_data, Iterator>>
template<typename Iterator_ >
iterator_type boost::spirit::lex::lexertl::static_lexer< Token, LexerTables, Iterator, Functor >::begin ( Iterator_ &  first,
Iterator_ const &  last,
char_type const *  initial_state = 0 
) const
inline
template<typename Token = token<>, typename LexerTables = static_::lexer, typename Iterator = typename Token::iterator_type, typename Functor = functor<Token, detail::static_data, Iterator>>
void boost::spirit::lex::lexertl::static_lexer< Token, LexerTables, Iterator, Functor >::clear ( char_type const *  )
inline
template<typename Token = token<>, typename LexerTables = static_::lexer, typename Iterator = typename Token::iterator_type, typename Functor = functor<Token, detail::static_data, Iterator>>
iterator_type boost::spirit::lex::lexertl::static_lexer< Token, LexerTables, Iterator, Functor >::end ( void  ) const
inline
template<typename Token = token<>, typename LexerTables = static_::lexer, typename Iterator = typename Token::iterator_type, typename Functor = functor<Token, detail::static_data, Iterator>>
bool boost::spirit::lex::lexertl::static_lexer< Token, LexerTables, Iterator, Functor >::init_dfa ( bool  minimize = false) const
inline
template<typename Token = token<>, typename LexerTables = static_::lexer, typename Iterator = typename Token::iterator_type, typename Functor = functor<Token, detail::static_data, Iterator>>
string_type boost::spirit::lex::lexertl::static_lexer< Token, LexerTables, Iterator, Functor >::initial_state ( ) const
inline
template<typename Token = token<>, typename LexerTables = static_::lexer, typename Iterator = typename Token::iterator_type, typename Functor = functor<Token, detail::static_data, Iterator>>
boost::spirit::lex::lexertl::static_lexer< Token, LexerTables, Iterator, Functor >::operator safe_bool ( ) const
inline

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