|
wibble 1.1
|
#include <parse.h>

Public Types | |
| typedef std::deque< char > | Window |
Public Member Functions | |
| void | shift () |
| bool | eof () |
| std::string | window (unsigned n) |
| bool | ensure_window (unsigned n) |
| void | consume (int n) |
| void | consume (const std::string &s) |
| void | consume (const Token &t) |
| void | keep (typename Token::Id id, const std::string &data) |
| template<typename I > | |
| bool | match (I begin, I end) |
| void | match (const std::string &data, typename Token::Id id) |
| void | match (Regexp &r, typename Token::Id id) |
| void | match (int(*first)(int), int(*rest)(int), typename Token::Id id) |
| void | match (const std::string &from, const std::string &to, typename Token::Id id) |
| void | skipWhitespace () |
| Token | decide () |
| Lexer (Stream &s) | |
Public Attributes | |
| Stream & | stream |
| Window | _window |
| Position | current |
| Token | _match |
| typedef std::deque< char > wibble::Lexer< Token, Stream >::Window |
|
inline |
|
inline |
References wibble::Lexer< Token, Stream >::consume().
References wibble::Lexer< Token, Stream >::consume().
|
inline |
References wibble::Lexer< Token, Stream >::_window, wibble::Position::column, wibble::Lexer< Token, Stream >::current, and wibble::Position::line.
Referenced by wibble::Lexer< Token, Stream >::consume(), wibble::Lexer< Token, Stream >::consume(), wibble::Lexer< Token, Stream >::decide(), and wibble::Lexer< Token, Stream >::skipWhitespace().
|
inline |
References wibble::Lexer< Token, Stream >::_window, wibble::Lexer< Token, Stream >::shift(), and wibble::Lexer< Token, Stream >::stream.
Referenced by wibble::Lexer< Token, Stream >::match(), wibble::Lexer< Token, Stream >::match(), wibble::Lexer< Token, Stream >::match(), and wibble::Lexer< Token, Stream >::window().
References wibble::Lexer< Token, Stream >::_window, and wibble::Lexer< Token, Stream >::stream.
Referenced by wibble::Lexer< Token, Stream >::skipWhitespace().
|
inline |
References wibble::Lexer< Token, Stream >::_match, wibble::Lexer< Token, Stream >::current, and wibble::Token< _Id >::data.
Referenced by wibble::Lexer< Token, Stream >::match(), wibble::Lexer< Token, Stream >::match(), wibble::Lexer< Token, Stream >::match(), and wibble::Lexer< Token, Stream >::match().
References wibble::Lexer< Token, Stream >::_window, assert, and wibble::Lexer< Token, Stream >::stream.
Referenced by wibble::Lexer< Token, Stream >::ensure_window().
|
inline |
|
inline |
References wibble::Lexer< Token, Stream >::_window, assert, and wibble::Lexer< Token, Stream >::ensure_window().
Referenced by wibble::Lexer< Token, Stream >::match(), wibble::Lexer< Token, Stream >::match(), wibble::Lexer< Token, Stream >::match(), and wibble::Lexer< Token, Stream >::skipWhitespace().
Referenced by wibble::Lexer< Token, Stream >::decide(), and wibble::Lexer< Token, Stream >::keep().
Referenced by wibble::Lexer< Token, Stream >::consume(), wibble::Lexer< Token, Stream >::ensure_window(), wibble::Lexer< Token, Stream >::eof(), wibble::Lexer< Token, Stream >::match(), wibble::Lexer< Token, Stream >::match(), wibble::Lexer< Token, Stream >::match(), wibble::Lexer< Token, Stream >::shift(), and wibble::Lexer< Token, Stream >::window().
Referenced by wibble::Lexer< Token, Stream >::consume(), and wibble::Lexer< Token, Stream >::keep().