summaryrefslogtreecommitdiff
path: root/JPratt/src/main/java/bjc/pratt/tokens/StringTokenStream.java
diff options
context:
space:
mode:
Diffstat (limited to 'JPratt/src/main/java/bjc/pratt/tokens/StringTokenStream.java')
-rw-r--r--JPratt/src/main/java/bjc/pratt/tokens/StringTokenStream.java5
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