diff options
| author | Benjamin J. Culkin <bjculkin@mix.wvu.edu> | 2018-09-16 21:12:35 -0300 |
|---|---|---|
| committer | Benjamin J. Culkin <bjculkin@mix.wvu.edu> | 2018-09-16 21:12:35 -0300 |
| commit | 2f96f49c2d2c8679841c790e9dd7d9f1b6f3fed1 (patch) | |
| tree | 23cfb315743bbb5c1c8fa749e75aba8a54e3a2f7 /base/src/main/java/bjc/utils/esodata | |
| parent | 92c56c5918a0858aad32cc9ee0fb3eee99ebd007 (diff) | |
Large update
A large update, this contains much debugging of the CL FORMAT routines,
as well as a few other minor changes.
Diffstat (limited to 'base/src/main/java/bjc/utils/esodata')
| -rw-r--r-- | base/src/main/java/bjc/utils/esodata/SingleTape.java | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/base/src/main/java/bjc/utils/esodata/SingleTape.java b/base/src/main/java/bjc/utils/esodata/SingleTape.java index d57bc7f..be9d64b 100644 --- a/base/src/main/java/bjc/utils/esodata/SingleTape.java +++ b/base/src/main/java/bjc/utils/esodata/SingleTape.java @@ -79,6 +79,8 @@ public class SingleTape<T> implements Tape<T> { @Override public T item() { + if (pos < 0 || pos >= backing.size()) return null; + return backing.get(pos); } @@ -150,13 +152,12 @@ public class SingleTape<T> implements Tape<T> { @Override public boolean right(final int amt) { - if(pos + amt >= backing.size() - 1) { + if(pos + amt > backing.size()) { if(autoExtend) { while(pos + amt >= backing.size() - 1) { backing.add(null); } - } else - return false; + } else return false; } pos += amt; |
