#include <dfa_re_node_builder.hh>
Inheritance diagram for DfaReNodeBuilder:
Public Methods | |
DfaReNodeBuilder (PropRegistry ®istry_) | |
virtual ReNode* | createOrNode (ReNode *pre, ReNode *post, const Position &pos) |
virtual ReNode* | createCatNode (ReNode *pre, ReNode *post, const Position &pos) |
virtual ReNode* | createPlusNode (ReNode *in, const Position &pos) |
virtual ReNode* | createOptionalNode (ReNode *in, const Position &pos) |
virtual ReNode* | createStarNode (ReNode *in, const Position &pos) |
virtual ReNode* | createStringLiteralNode (const string &s, const Position &pos) |
virtual ReNode* | createCharListNode (bool negated, const vector< CharClassDescriptor > &chars, const Position &pos) |
DfaSourceRe* | createEotNode (int tokId, const Position &pos) |
Protected Methods | |
DfaSourceRe* | createCharNode (unsigned char match, const Position &pos) |
Private Attributes | |
PropRegistry& | registry |
bool | caseSensitive |
|
Definition at line 53 of file dfa_re_node_builder.hh. |
|
Creates a new "|" node with children pre and post. Reimplemented from IReNodeBuilder. Definition at line 60 of file dfa_re_node_builder.cc. Referenced by ScannerSpec::updateStates().
|
|
Creates a new concatenation node with children pre and post. Reimplemented from IReNodeBuilder. Definition at line 68 of file dfa_re_node_builder.cc. |
|
Creates a new "+" node whose operand is in. Reimplemented from IReNodeBuilder. Definition at line 76 of file dfa_re_node_builder.cc. |
|
Creates a new "?" node whose operand in. Reimplemented from IReNodeBuilder. Definition at line 84 of file dfa_re_node_builder.cc. |
|
Creates a "*" node whose operand is in. Reimplemented from IReNodeBuilder. Definition at line 91 of file dfa_re_node_builder.cc. |
|
Creates a node that matches the gicen string literal s. Reimplemented from IReNodeBuilder. Definition at line 97 of file dfa_re_node_builder.cc. |
|
Creates a new node that matches the characters classes given in \s chars or, if negated is true, the characters that do not belong to the classes in chars. Reimplemented from IReNodeBuilder. Definition at line 111 of file dfa_re_node_builder.cc. |
|
Creates a new reEotNode that signals the end of the token with the given id. Definition at line 140 of file dfa_re_node_builder.cc. |
|
This is where the "CASE_SENSITIVE" option is implemented. This method does char node(s) construction according to the given option. If the scanner is case-insensitive, for the character 'a' it will actually create the nodes for expression 'a' | 'A'. Definition at line 146 of file dfa_re_node_builder.cc. Referenced by createCharListNode(), and createStringLiteralNode().
|
|
Definition at line 93 of file dfa_re_node_builder.hh. |
|
Caches the CASE_SENSITIVE property from the registry. Definition at line 98 of file dfa_re_node_builder.hh. |