aboutsummaryrefslogtreecommitdiff
path: root/src/utils.cc
AgeCommit message (Collapse)Author
2014-03-04Did some refactoring to improve readabilityAdrian Kummerländer
* now using range for-loops during Tree printing * inroduced popNode helper method which helps to simplify the Tree construction implementation
2013-10-20Implemented constant identifier functionalityAdrian Kummerländer
* 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
2013-10-19Merge branch 'master' into feature_constantsAdrian Kummerländer
Conflicts: src/tree.cc src/utils.cc
2013-10-19Improvement: Replaced "priority" with TokenTypeAdrian Kummerländer
* 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
2013-10-19POC: alphabetic constantsAdrian Kummerländer
* New priority for alphabetic characters * Overloaded OperandNode constructor * Currently not usable, only basic proof of concept
2013-09-26Code restructuring of tree and parsing logicAdrian Kummerländer
* Enabled tree to generate itself ** Main work is now done during tree construction * Moved lexer and getPriority utility functions into separate compilation unit