|
@@ -95,7 +95,15 @@ public class LispElement<E> {
|
|
|
|
|
|
@Override
|
|
|
public boolean equals(Object obj) {
|
|
|
- return this.value.equals(obj);
|
|
|
+ if(this == obj) {
|
|
|
+ return true;
|
|
|
+ } else if(obj == null) {
|
|
|
+ return false;
|
|
|
+ } else if(obj instanceof LispElement) {
|
|
|
+ LispElement<?> other = (LispElement<?>) obj;
|
|
|
+ return this.value.equals(other.value);
|
|
|
+ }
|
|
|
+ return false;
|
|
|
}
|
|
|
|
|
|
@Override
|