Age | Commit message (Collapse) | Author |
|
|
|
* now using range for-loops during Tree printing
* inroduced popNode helper method which helps to simplify the Tree construction implementation
|
|
* SimpleParser optionally acceps a pointer to an ConstantMap containing string keys mapping to values
* Constants are handled in their own ConstantNode class derived from the standard Node class
* Operator precedence is now determined separated from the TokenType using a new PrecedenceLevel enum
** Conversion between tokens and their PrecedenceLevel is possible using the new utility function getPrecedence
* Added additional test cases for constant identifier resolutions
|
|
* OperatorNode class now uses TokenType for internal operator storage and logic selection
* print-Method resolves the TokenType back into its character representation
|
|
* Made implementation more expressive by replacing the integer priority with an strictly typed enum called TokenType
** Made removal of character comparisons from tree construction and lexer possible
* As a side effect distinct numbers had to be assigned to each token
** Operators of same priority do not have identical numbers anymore
|
|
* Enabled tree to generate itself
** Main work is now done during tree construction
* Moved lexer and getPriority utility functions into separate compilation unit
|