From f93c41b1be6232d1c524a9e8a9ef234664aa32c8 Mon Sep 17 00:00:00 2001 From: George Karpenkov Date: Wed, 6 Jan 2016 11:27:58 +0100 Subject: [PATCH] Since classes are non-final "instanceof" check is better in #equals --- src/api/java/AST.java | 3 +-- src/api/java/FuncDecl.java | 3 +-- src/api/java/Sort.java | 3 +-- src/api/java/Symbol.java | 3 +-- 4 files changed, 4 insertions(+), 8 deletions(-) diff --git a/src/api/java/AST.java b/src/api/java/AST.java index b57246356..e84dc8c81 100644 --- a/src/api/java/AST.java +++ b/src/api/java/AST.java @@ -32,9 +32,8 @@ public class AST extends Z3Object implements Comparable @Override public boolean equals(Object o) { - if (o == null) return false; if (o == this) return true; - if (o.getClass() != this.getClass()) return false; + if (!(o instanceof AST)) return false; AST casted = (AST) o; return diff --git a/src/api/java/FuncDecl.java b/src/api/java/FuncDecl.java index 878ce84cc..301978c44 100644 --- a/src/api/java/FuncDecl.java +++ b/src/api/java/FuncDecl.java @@ -32,9 +32,8 @@ public class FuncDecl extends AST @Override public boolean equals(Object o) { - if (o == null) return false; if (o == this) return true; - if (o.getClass() != this.getClass()) return false; + if (!(o instanceof FuncDecl)) return false; FuncDecl other = (FuncDecl) o; return diff --git a/src/api/java/Sort.java b/src/api/java/Sort.java index c92432ad3..e30e0b8b3 100644 --- a/src/api/java/Sort.java +++ b/src/api/java/Sort.java @@ -31,9 +31,8 @@ public class Sort extends AST @Override public boolean equals(Object o) { - if (o == null) return false; if (o == this) return true; - if (o.getClass() != this.getClass()) return false; + if (!(o instanceof Sort)) return false; Sort other = (Sort) o; return (getContext().nCtx() == other.getContext().nCtx()) && diff --git a/src/api/java/Symbol.java b/src/api/java/Symbol.java index 60b60dbdf..beeaebb69 100644 --- a/src/api/java/Symbol.java +++ b/src/api/java/Symbol.java @@ -52,9 +52,8 @@ public class Symbol extends Z3Object @Override public boolean equals(Object o) { - if (o == null) return false; if (o == this) return true; - if (o.getClass() != this.getClass()) return false; + if (!(o instanceof Symbol)) return false; Symbol other = (Symbol) o; return this.getNativeObject() == other.getNativeObject(); }