summaryrefslogtreecommitdiff
path: root/BJC-Utils2/src/main/java/bjc/utils/esodata/SpaghettiStack.java
diff options
context:
space:
mode:
authorbjculkin <bjculkin@mix.wvu.edu>2017-03-16 14:35:14 -0400
committerbjculkin <bjculkin@mix.wvu.edu>2017-03-16 14:35:14 -0400
commitf5ad671ebc6ae3e0c3a3d93976eca3f483185d14 (patch)
treec4cdf1016f3c9ffefbcb958df4a1873eb9729f86 /BJC-Utils2/src/main/java/bjc/utils/esodata/SpaghettiStack.java
parent026fdcb3fa9f42ad1db0eb5b9d532865f6ddc80b (diff)
Stack updates.
Diffstat (limited to 'BJC-Utils2/src/main/java/bjc/utils/esodata/SpaghettiStack.java')
-rw-r--r--BJC-Utils2/src/main/java/bjc/utils/esodata/SpaghettiStack.java14
1 files changed, 14 insertions, 0 deletions
diff --git a/BJC-Utils2/src/main/java/bjc/utils/esodata/SpaghettiStack.java b/BJC-Utils2/src/main/java/bjc/utils/esodata/SpaghettiStack.java
index c5e338b..fdf9cc8 100644
--- a/BJC-Utils2/src/main/java/bjc/utils/esodata/SpaghettiStack.java
+++ b/BJC-Utils2/src/main/java/bjc/utils/esodata/SpaghettiStack.java
@@ -1,5 +1,8 @@
package bjc.utils.esodata;
+import java.util.Arrays;
+import java.util.stream.Stream;
+
/*
* Implements a spaghetti stack, which is a stack that is branched off of a
* parent stack.
@@ -52,4 +55,15 @@ class SpaghettiStack<T> extends Stack<T> {
public boolean empty() {
return backing.empty() && parent.empty();
}
+
+ @Override
+ public String toString() {
+ return "[base=" + parent.toString() + ", own=" + backing.toString() + "]";
+ }
+
+ @SuppressWarnings("unchecked")
+ @Override
+ public T[] toArray() {
+ return (T[]) Stream.concat(Arrays.stream(parent.toArray()), Arrays.stream(backing.toArray())).toArray();
+ }
}