summaryrefslogtreecommitdiff
path: root/BJC-Utils2/src/main/java/bjc/utils/esodata/Tape.java
diff options
context:
space:
mode:
Diffstat (limited to 'BJC-Utils2/src/main/java/bjc/utils/esodata/Tape.java')
-rw-r--r--BJC-Utils2/src/main/java/bjc/utils/esodata/Tape.java30
1 files changed, 30 insertions, 0 deletions
diff --git a/BJC-Utils2/src/main/java/bjc/utils/esodata/Tape.java b/BJC-Utils2/src/main/java/bjc/utils/esodata/Tape.java
index 4ead829..9d50b63 100644
--- a/BJC-Utils2/src/main/java/bjc/utils/esodata/Tape.java
+++ b/BJC-Utils2/src/main/java/bjc/utils/esodata/Tape.java
@@ -14,6 +14,36 @@ public class Tape<T> {
return backing.get(pos);
}
+ public int size() {
+ return backing.size();
+ }
+
+ public void item(T itm) {
+ backing.set(pos, itm);
+ }
+
+ public void append(T itm) {
+ backing.add(itm);
+ }
+
+ // Add an item before the current
+ public void insert(T itm) {
+ backing.add(pos, itm);
+ }
+
+ public T remove() {
+ if(pos != 0) pos -= 1;
+ return backing.remove(pos);
+ }
+
+ public void first() {
+ pos = 0;
+ }
+
+ public void last() {
+ pos = backing.size() - 1;
+ }
+
public boolean left() {
if(pos == 0) return false;