boost::lexer::basic_rules< CharT > Class Template Reference

#include <rules.hpp>

List of all members.

Public Types

typedef std::vector< std::size_t > id_vector
typedef std::deque< id_vectorid_vector_deque
typedef std::basic_string< CharT > string
typedef std::deque< stringstring_deque
typedef std::deque< string_dequestring_deque_deque
typedef std::set< stringstring_set
typedef std::pair< string, stringstring_pair
typedef std::deque< string_pairstring_pair_deque
typedef std::map< string,
std::size_t > 
string_size_t_map
typedef std::pair< string,
std::size_t > 
string_size_t_pair

Public Member Functions

 basic_rules (const regex_flags flags_=dot_not_newline, std::size_t(*counter_ptr_)()=0)
void clear ()
void clear (const CharT *state_name_)
void flags (const regex_flags flags_)
regex_flags flags () const
std::size_t next_unique_id ()
std::locale imbue (std::locale &locale_)
const std::locale & locale () const
std::size_t state (const CharT *name_) const
const CharT * state (const std::size_t index_) const
std::size_t add_state (const CharT *name_)
void add_macro (const CharT *name_, const CharT *regex_)
void add_macro (const CharT *name_, const CharT *regex_start_, const CharT *regex_end_)
void add_macro (const CharT *name_, const string &regex_)
void add_macros (const basic_rules< CharT > &rules_)
void merge_macros (const basic_rules< CharT > &rules_)
std::size_t add (const CharT *regex_, const std::size_t id_)
std::size_t add (const CharT *regex_start_, const CharT *regex_end_, const std::size_t id_)
std::size_t add (const string &regex_, const std::size_t id_)
std::size_t add (const CharT *curr_state_, const CharT *regex_, const CharT *new_state_)
std::size_t add (const CharT *curr_state_, const CharT *regex_start_, const CharT *regex_end_, const CharT *new_state_)
std::size_t add (const CharT *curr_state_, const string &regex_, const CharT *new_state_)
std::size_t add (const CharT *curr_state_, const CharT *regex_, const std::size_t id_, const CharT *new_state_)
std::size_t add (const CharT *curr_state_, const CharT *regex_start_, const CharT *regex_end_, const std::size_t id_, const CharT *new_state_)
std::size_t add (const CharT *curr_state_, const string &regex_, const std::size_t id_, const CharT *new_state_)
void add (const CharT *source_, const basic_rules< CharT > &rules_, const CharT *dest_, const CharT *to_=detail::strings< CharT >::dot())
const string_size_t_mapstatemap () const
const string_pair_dequemacrodeque () const
const string_deque_dequeregexes () const
const id_vector_dequeids () const
const id_vector_dequeunique_ids () const
const id_vector_dequestates () const
bool empty () const

Static Public Member Functions

static const CharT * initial ()

Private Member Functions

std::size_t add (const CharT *curr_state_, const string &regex_, const std::size_t id_, const CharT *new_state_, const bool check_, const std::size_t uid_=npos)
void validate (const CharT *name_) const
void check_for_invalid_id (const std::size_t id_) const

Private Attributes

string_size_t_map _statemap
string_pair_deque _macrodeque
string_set _macroset
string_deque_deque _regexes
id_vector_deque _ids
id_vector_deque _unique_ids
id_vector_deque _states
regex_flags _flags
std::size_t _counter
std::size_t(* _counter_ptr )()
std::locale _locale
string_deque _lexer_state_names

template<typename CharT>
class boost::lexer::basic_rules< CharT >


Member Typedef Documentation

template<typename CharT>
typedef std::vector<std::size_t> boost::lexer::basic_rules< CharT >::id_vector

template<typename CharT>
typedef std::deque<id_vector> boost::lexer::basic_rules< CharT >::id_vector_deque

template<typename CharT>
typedef std::basic_string<CharT> boost::lexer::basic_rules< CharT >::string

template<typename CharT>
typedef std::deque<string> boost::lexer::basic_rules< CharT >::string_deque

template<typename CharT>
typedef std::deque<string_deque> boost::lexer::basic_rules< CharT >::string_deque_deque

template<typename CharT>
typedef std::set<string> boost::lexer::basic_rules< CharT >::string_set

template<typename CharT>
typedef std::pair<string, string> boost::lexer::basic_rules< CharT >::string_pair

template<typename CharT>
typedef std::deque<string_pair> boost::lexer::basic_rules< CharT >::string_pair_deque

template<typename CharT>
typedef std::map<string, std::size_t> boost::lexer::basic_rules< CharT >::string_size_t_map

template<typename CharT>
typedef std::pair<string, std::size_t> boost::lexer::basic_rules< CharT >::string_size_t_pair


Constructor & Destructor Documentation

template<typename CharT>
boost::lexer::basic_rules< CharT >::basic_rules ( const regex_flags  flags_ = dot_not_newline,
std::size_t(*)()  counter_ptr_ = 0 
) [inline]


Member Function Documentation

template<typename CharT>
void boost::lexer::basic_rules< CharT >::clear (  )  [inline]

template<typename CharT>
void boost::lexer::basic_rules< CharT >::clear ( const CharT *  state_name_  )  [inline]

template<typename CharT>
void boost::lexer::basic_rules< CharT >::flags ( const regex_flags  flags_  )  [inline]

template<typename CharT>
regex_flags boost::lexer::basic_rules< CharT >::flags (  )  const [inline]

template<typename CharT>
std::size_t boost::lexer::basic_rules< CharT >::next_unique_id (  )  [inline]

template<typename CharT>
std::locale boost::lexer::basic_rules< CharT >::imbue ( std::locale &  locale_  )  [inline]

template<typename CharT>
const std::locale& boost::lexer::basic_rules< CharT >::locale (  )  const [inline]

template<typename CharT>
std::size_t boost::lexer::basic_rules< CharT >::state ( const CharT *  name_  )  const [inline]

template<typename CharT>
const CharT* boost::lexer::basic_rules< CharT >::state ( const std::size_t  index_  )  const [inline]

template<typename CharT>
std::size_t boost::lexer::basic_rules< CharT >::add_state ( const CharT *  name_  )  [inline]

template<typename CharT>
void boost::lexer::basic_rules< CharT >::add_macro ( const CharT *  name_,
const CharT *  regex_ 
) [inline]

template<typename CharT>
void boost::lexer::basic_rules< CharT >::add_macro ( const CharT *  name_,
const CharT *  regex_start_,
const CharT *  regex_end_ 
) [inline]

template<typename CharT>
void boost::lexer::basic_rules< CharT >::add_macro ( const CharT *  name_,
const string regex_ 
) [inline]

template<typename CharT>
void boost::lexer::basic_rules< CharT >::add_macros ( const basic_rules< CharT > &  rules_  )  [inline]

template<typename CharT>
void boost::lexer::basic_rules< CharT >::merge_macros ( const basic_rules< CharT > &  rules_  )  [inline]

template<typename CharT>
std::size_t boost::lexer::basic_rules< CharT >::add ( const CharT *  regex_,
const std::size_t  id_ 
) [inline]

template<typename CharT>
std::size_t boost::lexer::basic_rules< CharT >::add ( const CharT *  regex_start_,
const CharT *  regex_end_,
const std::size_t  id_ 
) [inline]

template<typename CharT>
std::size_t boost::lexer::basic_rules< CharT >::add ( const string regex_,
const std::size_t  id_ 
) [inline]

template<typename CharT>
std::size_t boost::lexer::basic_rules< CharT >::add ( const CharT *  curr_state_,
const CharT *  regex_,
const CharT *  new_state_ 
) [inline]

template<typename CharT>
std::size_t boost::lexer::basic_rules< CharT >::add ( const CharT *  curr_state_,
const CharT *  regex_start_,
const CharT *  regex_end_,
const CharT *  new_state_ 
) [inline]

template<typename CharT>
std::size_t boost::lexer::basic_rules< CharT >::add ( const CharT *  curr_state_,
const string regex_,
const CharT *  new_state_ 
) [inline]

template<typename CharT>
std::size_t boost::lexer::basic_rules< CharT >::add ( const CharT *  curr_state_,
const CharT *  regex_,
const std::size_t  id_,
const CharT *  new_state_ 
) [inline]

template<typename CharT>
std::size_t boost::lexer::basic_rules< CharT >::add ( const CharT *  curr_state_,
const CharT *  regex_start_,
const CharT *  regex_end_,
const std::size_t  id_,
const CharT *  new_state_ 
) [inline]

template<typename CharT>
std::size_t boost::lexer::basic_rules< CharT >::add ( const CharT *  curr_state_,
const string regex_,
const std::size_t  id_,
const CharT *  new_state_ 
) [inline]

template<typename CharT>
void boost::lexer::basic_rules< CharT >::add ( const CharT *  source_,
const basic_rules< CharT > &  rules_,
const CharT *  dest_,
const CharT *  to_ = detail::strings<CharT>::dot () 
) [inline]

template<typename CharT>
const string_size_t_map& boost::lexer::basic_rules< CharT >::statemap (  )  const [inline]

template<typename CharT>
const string_pair_deque& boost::lexer::basic_rules< CharT >::macrodeque (  )  const [inline]

template<typename CharT>
const string_deque_deque& boost::lexer::basic_rules< CharT >::regexes (  )  const [inline]

template<typename CharT>
const id_vector_deque& boost::lexer::basic_rules< CharT >::ids (  )  const [inline]

template<typename CharT>
const id_vector_deque& boost::lexer::basic_rules< CharT >::unique_ids (  )  const [inline]

template<typename CharT>
const id_vector_deque& boost::lexer::basic_rules< CharT >::states (  )  const [inline]

template<typename CharT>
bool boost::lexer::basic_rules< CharT >::empty (  )  const [inline]

template<typename CharT>
static const CharT* boost::lexer::basic_rules< CharT >::initial (  )  [inline, static]

template<typename CharT>
std::size_t boost::lexer::basic_rules< CharT >::add ( const CharT *  curr_state_,
const string regex_,
const std::size_t  id_,
const CharT *  new_state_,
const bool  check_,
const std::size_t  uid_ = npos 
) [inline, private]

template<typename CharT>
void boost::lexer::basic_rules< CharT >::validate ( const CharT *  name_  )  const [inline, private]

template<typename CharT>
void boost::lexer::basic_rules< CharT >::check_for_invalid_id ( const std::size_t  id_  )  const [inline, private]


Member Data Documentation

template<typename CharT>
string_size_t_map boost::lexer::basic_rules< CharT >::_statemap [private]

template<typename CharT>
string_pair_deque boost::lexer::basic_rules< CharT >::_macrodeque [private]

template<typename CharT>
string_set boost::lexer::basic_rules< CharT >::_macroset [private]

template<typename CharT>
string_deque_deque boost::lexer::basic_rules< CharT >::_regexes [private]

template<typename CharT>
id_vector_deque boost::lexer::basic_rules< CharT >::_ids [private]

template<typename CharT>
id_vector_deque boost::lexer::basic_rules< CharT >::_unique_ids [private]

template<typename CharT>
id_vector_deque boost::lexer::basic_rules< CharT >::_states [private]

template<typename CharT>
regex_flags boost::lexer::basic_rules< CharT >::_flags [private]

template<typename CharT>
std::size_t boost::lexer::basic_rules< CharT >::_counter [private]

template<typename CharT>
std::size_t(* boost::lexer::basic_rules< CharT >::_counter_ptr)() [private]

template<typename CharT>
std::locale boost::lexer::basic_rules< CharT >::_locale [private]

template<typename CharT>
string_deque boost::lexer::basic_rules< CharT >::_lexer_state_names [private]


The documentation for this class was generated from the following file:
Generated on Fri Jul 30 03:00:10 2010 for rphp by  doxygen 1.5.4