From 338b2b16b6934d27dc4cd536fb5527b71985de4f Mon Sep 17 00:00:00 2001 From: bjculkin Date: Fri, 17 Mar 2017 19:46:55 -0400 Subject: Add more toString/hashCode/equals --- .../java/bjc/utils/esodata/SpaghettiStack.java | 30 ++++++++++++++++++++++ 1 file changed, 30 insertions(+) (limited to 'BJC-Utils2/src/main/java/bjc/utils/esodata/SpaghettiStack.java') 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 fdf9cc8..c4c469f 100644 --- a/BJC-Utils2/src/main/java/bjc/utils/esodata/SpaghettiStack.java +++ b/BJC-Utils2/src/main/java/bjc/utils/esodata/SpaghettiStack.java @@ -66,4 +66,34 @@ class SpaghettiStack extends Stack { public T[] toArray() { return (T[]) Stream.concat(Arrays.stream(parent.toArray()), Arrays.stream(backing.toArray())).toArray(); } + + @Override + public int hashCode() { + final int prime = 31; + + int result = 1; + result = prime * result + ((backing == null) ? 0 : backing.hashCode()); + result = prime * result + ((parent == null) ? 0 : parent.hashCode()); + + return result; + } + + @Override + public boolean equals(Object obj) { + if(this == obj) return true; + if(obj == null) return false; + if(getClass() != obj.getClass()) return false; + + SpaghettiStack other = (SpaghettiStack) obj; + + if(backing == null) { + if(other.backing != null) return false; + } else if(!backing.equals(other.backing)) return false; + + if(parent == null) { + if(other.parent != null) return false; + } else if(!parent.equals(other.parent)) return false; + + return true; + } } -- cgit v1.2.3