From 2b9ac0c0a26b2c32277f3e17e12f69c2ec27bd4f Mon Sep 17 00:00:00 2001 From: Andreas Stöckel Date: Wed, 4 Mar 2015 21:43:36 +0100 Subject: Prepared implementation of user defined tokens --- src/core/parser/stack/TokenStack.cpp | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) (limited to 'src/core/parser/stack/TokenStack.cpp') diff --git a/src/core/parser/stack/TokenStack.cpp b/src/core/parser/stack/TokenStack.cpp index ac1d94e..b6fc6e1 100644 --- a/src/core/parser/stack/TokenStack.cpp +++ b/src/core/parser/stack/TokenStack.cpp @@ -18,6 +18,8 @@ #include "TokenStack.hpp" +#include + namespace ousia { namespace parser_stack { @@ -26,17 +28,17 @@ void TokenStack::pushTokens(const std::vector &tokens) stack.push_back(tokens); } -void TokenStack::popTokens() { stack.pop_back(); } +void TokenStack::popTokens() { + stack.pop_back(); +} TokenSet TokenStack::tokens() const { - if (stack.empty() && parentStack != nullptr) { - return parentStack->tokens(); - } - TokenSet res; - for (const SyntaxDescriptor &descr : stack.back()) { - descr.insertIntoTokenSet(res); + if (!stack.empty()) { + for (const SyntaxDescriptor &descr : stack.back()) { + descr.insertIntoTokenSet(res); + } } return res; } -- cgit v1.2.3