ATLAS Offline Software
|
Lexer which turns a token stream into a stream of unambigous symbols to be used by a parser. More...
#include <SelectionExprParser.h>
Classes | |
struct | Symbol |
Struct grouping together the type and original string representation of a symbol. More... | |
Public Types | |
enum | Type { AND = 0, OR, LEFT, RIGHT, NOT, TRUE_LITERAL, FALSE_LITERAL, VAR, END } |
Enum over the possible symbols that can be extracted from the token stream. More... | |
Public Member Functions | |
Lexer (const std::string &s) | |
Constructor from a strig. More... | |
Lexer (const Lexer &)=delete | |
Disable copying of this class. More... | |
Lexer (Lexer &&)=default | |
Default move-constructor behaviour. More... | |
Symbol | nextSymbol () |
Generate a new symbol from the token sequence. More... | |
Private Attributes | |
std::string | m_string |
Tokenizer | m_tokenizer |
Tokenizer::iterator | m_iterator |
Lexer which turns a token stream into a stream of unambigous symbols to be used by a parser.
Definition at line 38 of file SelectionExprParser.h.
Enum over the possible symbols that can be extracted from the token stream.
Enumerator | |
---|---|
AND | |
OR | |
LEFT | |
RIGHT | |
NOT | |
TRUE_LITERAL | |
FALSE_LITERAL | |
VAR | |
END |
Definition at line 50 of file SelectionExprParser.h.
CP::DetailSelectionExprParser::Lexer::Lexer | ( | const std::string & | s | ) |
Constructor from a strig.
Definition at line 48 of file SelectionExprParser.cxx.
|
default |
Default move-constructor behaviour.
auto CP::DetailSelectionExprParser::Lexer::nextSymbol | ( | ) |
Generate a new symbol from the token sequence.
Definition at line 52 of file SelectionExprParser.cxx.
|
private |
Definition at line 75 of file SelectionExprParser.h.
|
private |
Definition at line 73 of file SelectionExprParser.h.
|
private |
Definition at line 74 of file SelectionExprParser.h.