Public Types | |
| 
typedef KRatExpToken< typename  Element< S, T >::monoid_elt_value_t, typename Element< S, T >::semiring_elt_value_t >  | krat_exp_token_t | 
| typedef std::list< krat_exp_token_t > | token_stream_t | 
Public Member Functions | |
| Lexer (bool trace=false) | |
| void | lex_error (const std::string &msg="Lex error.") | 
| Put the lexer into an error state.  | |
| void | lex (const std::string &in, const Element< S, T > &e) | 
| Perform lexing.   | |
| bool | error () const | 
| Return true when an error occured.  | |
| const std::string & | error_msg () const | 
| Return the error message.  | |
| krat_exp_token_t | first () const | 
| Return the first token.  | |
| krat_exp_token_t | second () const | 
| Return the second token.  | |
| void | eat () | 
| Shift tokens.   | |
| void | set_trace (bool trace) | 
Protected Attributes | |
| token_stream_t | tokens_ | 
| bool | trace_ | 
| std::string | error_msg_ | 
| bool | error_ | 
Parser 
Definition at line 237 of file krat_exp_parser.hxx.
      
  | 
  ||||||||||||
| 
 Perform lexing. 
 
 Definition at line 270 of file krat_exp_parser.hxx. References Lexer::error_, vcsn::misc::escaped(), Lexer::lex_error(), vcsn::parse_weight(), vcsn::parse_word(), KRatExpToken::reset(), Element::structure(), Lexer::tokens_, and vcsn::misc::usual_escaped_characters(). Referenced by vcsn::algebra::parse().  | 
  
      
  | 
  
| 
 Shift tokens. Remove the first token from the token stream. So second becames first, third becames second, and so on... Definition at line 362 of file krat_exp_parser.hxx. References Lexer::tokens_, and Lexer::trace_.  | 
  
 1.4.6