summaryrefslogtreecommitdiff
path: root/src/core/parser/stack/Stack.cpp
AgeCommit message (Collapse)Author
2016-04-25Implement non-greedy behaviour for short tokensAndreas Stöckel
2016-04-25Introduce HandlerInfo::hadData flagAndreas Stöckel
2016-04-25Pass "greedy" flag to Handler::startTokenAndreas Stöckel
2016-04-25Pass "isImplicit" flag to Handler::fieldStartAndreas Stöckel
2016-04-25Add greedy flag to TokenDescriptor and SyntaxDescriptor and set it ↵Andreas Stöckel
correctly. Shorten Stack "checkTokensAreUnambiguous" method
2016-04-25Issue an error messages if tokens are ambiguousAndreas Stöckel
2016-04-25Reimplement closeToken handlingAndreas Stöckel
Idea: Only start unrolling anything on the parser stack if an element that matches the given close token is found. This requires the endToken method in DocumentChildHandler to search for the given descriptor that might be ended. While performing this search, only a specified number of "explicit" structures/fields opened by the Stack class may be skipped (those with implicit default fields). Added an integration test ("python_code") which requires this new (hopefully sane) behaviour.
2016-04-25Improve error messageAndreas Stöckel
2016-04-25Fix crash bug when unrolling in the token handler empties the parser stackAndreas Stöckel
2016-04-25fixed a bug in the DocumentHandler which lead to problems in case of empty ↵Benjamin Paassen
explicit fields.
2016-04-25Remove unneeded variableAndreas Stöckel
2016-04-25Do not treat commands with user defined open/close syntax as range command, ↵Andreas Stöckel
if the close token is a special (whitespace) token as this produces unintuitive behaviour
2016-04-25First implementation of user defined syntax, many features still missing and ↵Andreas Stöckel
probably many bugs * Implement startToken and endToken in DocumentChildHandler * Implement pushScopeToken, which pushes tokens for the element that is currently on top of the Scope stack onto the token stack * Implement rollbackPath() method (was really needed once in the development process, but only used in one place for now) * Push and pop tokens from stack whenever a new explicit field or command is created/ended. Take advantage of the fact, that the tokens for transparent structures are always included in the token list * Remember pending close tokens in the HandlerInfo structure in StackImpl * Implement handleToken() in StackImpl * Implement readToken() method used by readData() and data() in StackImpl * Check whether there still is data available in handleData() * Plus many more changes in the affected files...
2016-04-25Remove "inherit" flag in TokenStack, add tiny unit test for TokenStack, ↵Andreas Stöckel
temporarily remove pushTokens and popTokens calls from DocumentChildHandler
2016-04-25Add not yet implemented "inherit" flag to the Stack classAndreas Stöckel
2016-04-25Fix crash when an undefined annotation is met in the inputAndreas Stöckel
2015-03-04Prepared implementation of user defined tokensAndreas Stöckel
2015-03-04fixed a bug in Stack.cpp which lead to wrong annotation handling if the ↵Benjamin Paassen
annotation has no content.
2015-03-03Implemented annotation handlingAndreas Stöckel
2015-03-03Finished stack and adapted all unit testsAndreas Stöckel
2015-03-03Started restructuring and adapting Stack class, reenabled unit tests (does ↵Andreas Stöckel
not compile right now)
2015-03-02Added range flag to HandlerInfoAndreas Stöckel
2015-03-02Storing type and name in the HandlerData once again, using a TokenAndreas Stöckel
2015-03-02Implemented new "start" methods in the Handler instancesAndreas Stöckel
2015-03-02Got Stack compiling againAndreas Stöckel
2015-03-02Got all handlers compling againAndreas Stöckel
2015-03-02Adapted Stack interface (Stack.cpp is a mess right now and does not compile)Andreas Stöckel
2015-02-25start of branch, commit log will be rewrittenAndreas Stöckel
2015-02-18fixed a bug with empty fields.Benjamin Paassen
2015-02-17Fix for issue #79 -- do not create implicit default fields for invalid commandsAndreas Stöckel
2015-02-17Improved handling of and error messages in tha case of too many fields for a ↵Andreas Stöckel
command. Adapted StackTest to the new behaviour and added new unit test. Fixed bug #76
2015-02-16Allowing numeric argument keys for static handlersAndreas Stöckel
2015-02-16Fixed problem with fieldEnd closing implicit fields and added unit testAndreas Stöckel
2015-02-15Slightly adapted Handler instances to new Handler, once again passing ↵Andreas Stöckel
non-const references to data and start, using "parseGenericString" in DocumentHandler for resolving non-string values, added unit test for testing whether "end()" is not called if "start()" fails.
2015-02-15Implemented most of the desired behaviour of the Stack class, added unit testsAndreas Stöckel
2015-02-15Renamed StateStack to StackAndreas Stöckel
2015-02-15Renamed parser/generic to parser/stack and made filenames much shorterAndreas Stöckel