Expressions

- Implemented sequence --> infix converter.
- Added new Lexer code.
- Added Lexer unit tests.
This commit is contained in:
Paul Beckingham
2011-06-06 01:46:11 -04:00
parent 86dcec8aea
commit ed8454c202
10 changed files with 1247 additions and 70 deletions

View File

@@ -38,13 +38,24 @@ public:
Expression (Arguments&);
~Expression ();
bool eval (Task&);
void toInfix ();
void toPostfix ();
private:
void expand_sequence ();
void expand_expression ();
void expand_tag (const std::string&);
void expand_attr (const std::string&);
void expand_attmod (const std::string&);
void expand_word (const std::string&);
void expand_pattern (const std::string&);
void to_infix ();
void to_postfix ();
bool is_new_style ();
void dump (const std::string&);
private:
Arguments _original;
Arguments _sequenced;
Arguments _infix;
Arguments _postfix;
};