From ec9627573527b776cefe0078718c5f50270385de Mon Sep 17 00:00:00 2001 From: Jens Bendisposto <jens@bendisposto.de> Date: Tue, 6 May 2014 11:38:22 +0200 Subject: [PATCH] Part of the fix for PROB-295 --- build.gradle | 2 +- src/main/resources/org/sablecc/sablecc/lexer.txt | 10 ++++++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/build.gradle b/build.gradle index b59e781..4a35495 100644 --- a/build.gradle +++ b/build.gradle @@ -3,7 +3,7 @@ apply plugin: 'eclipse' apply plugin: 'maven' -project.version = '3.2.7-SNAPSHOT' +project.version = '3.2.8' project.group = 'de.stups' repositories { diff --git a/src/main/resources/org/sablecc/sablecc/lexer.txt b/src/main/resources/org/sablecc/sablecc/lexer.txt index 4073827..e0908c0 100644 --- a/src/main/resources/org/sablecc/sablecc/lexer.txt +++ b/src/main/resources/org/sablecc/sablecc/lexer.txt @@ -46,9 +46,14 @@ public class Lexer implements ITokenListContainer private final StringBuffer text = new StringBuffer(); private List<IToken> tokenList; + private final Queue<IToken> nextList = new LinkedBlockingQueue<IToken>(); private IToken tok; + public Queue<IToken> getNextList() { + return nextList; + } + public List<IToken> getTokenList() { return tokenList; } @@ -74,6 +79,7 @@ public class Lexer implements ITokenListContainer filter(); if (token != null) { getTokenList().add(token); + nextList.add(token); } } @@ -92,7 +98,7 @@ public class Lexer implements ITokenListContainer filterWrap(); } - return this.token; + return (Token) nextList.peek(); } public Token next() throws LexerException, IOException @@ -103,7 +109,7 @@ public class Lexer implements ITokenListContainer filterWrap(); } - Token result = this.token; + Token result = (Token) nextList.poll(); this.setToken(null); return result; } -- GitLab