diff options
Diffstat (limited to 'JPratt/src/main/java/bjc/pratt/tokens/StringTokenStream.java')
| -rw-r--r-- | JPratt/src/main/java/bjc/pratt/tokens/StringTokenStream.java | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/JPratt/src/main/java/bjc/pratt/tokens/StringTokenStream.java b/JPratt/src/main/java/bjc/pratt/tokens/StringTokenStream.java index 8c7fcec..70876f2 100644 --- a/JPratt/src/main/java/bjc/pratt/tokens/StringTokenStream.java +++ b/JPratt/src/main/java/bjc/pratt/tokens/StringTokenStream.java @@ -33,6 +33,9 @@ public class StringTokenStream extends TokenStream<String, String> { @Override public Token<String, String> current() { + // Prime stream if necessary + if (curr == null) + return next(); return curr; } @@ -70,6 +73,8 @@ public class StringTokenStream extends TokenStream<String, String> { @Override public void rollback() { iter.rollback(); + + curr = iter.current(); } @Override |
