aboutsummaryrefslogtreecommitdiff
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
2014-03-02Switched build system to cmakeAdrian Kummerländer
* cmake offers a more straight forward and easier understandable way of building this project
2013-10-29Added previously missing parser.ccAdrian Kummerländer
2013-10-20Modified README to match recently added featuresAdrian Kummerländer
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-20Enabled C++11 for clc and test applicationsAdrian Kummerländer
2013-10-19Merged Node factory-methods into template methodAdrian Kummerländer
Added ConstantNode blueprint
2013-10-19Switched OperatorNode to TokenTypeAdrian Kummerländer
* OperatorNode class now uses TokenType for internal operator storage and logic selection * print-Method resolves the TokenType back into its character representation
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-10-19Fixed undefined behavior of tree constructionAdrian Kummerländer
* Invalid input syntax led to undefined behavior when accessing the top element of an empty stack ** Fixed by introducing a new "topNodeFrom" function which throws an exeption in the case that the given std::stack reference is empty
2013-10-19Added simple input loop to clcAdrian Kummerländer
2013-09-27Modified Makefile to generate shared libraryAdrian Kummerländer
* library is called libSimpleParser.so * parser was renamed to clc * test and clc are using the shared library
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
2013-07-29Coding style improvementsAdrian Kummerländer
2013-07-28Added MIT licenseAdrian Kummerländer
2013-01-11Included previously missing exceptions headerAdrian Kummerländer
2013-01-06Added a basic readme fileAdrian Kummerländer
2013-01-05Made existing Graphviz tree generation availableAdrian Kummerländer
to the libary user by providing a new plain "exportTree" function
2013-01-05Deprecated parser class in favour of plain functions; Internal lexer,Adrian Kummerländer
priority determination and tree building functions were hidden in unnamed namespace
2013-01-05Moved node classes into separate compilation unit; File extension changeAdrian Kummerländer
2013-01-05Folder structure change; Further improvements of parser codeAdrian Kummerländer
2013-01-05Fixes for ugly style used in my early C++ daysAdrian Kummerländer
2012-10-12Added gtest based test cases to be executed after every compileAdrian Kummerländer
2012-04-22Fixed a bug which was preventing the lexer from working correctlyAdrian Kummerländer
2012-04-15Removed all memory leaks detected by valgrindAdrian Kummerländer
2012-04-14Updated MakefileAdrian Kummerländer
2012-03-10Enabled full precision output of resultsAdrian Kummerländer
2012-03-10Moved static_cast needed for accessing the specific solve methods of the two ↵Adrian Kummerländer
derivatives of Node into a template function
2012-03-04Got rid of boost dependencyAdrian Kummerländer
2011-11-20Added support for signed numbersAdrian Kummerländer
2011-11-18Inital commitAdrian Kummerländer