Clean up `hashCode`/`equals` in `IntVersion`.
Avoid creating a boxed `Long`, and add the typical fast-path for reference equality.
PiperOrigin-RevId: 418983086
diff --git a/src/main/java/com/google/devtools/build/skyframe/IntVersion.java b/src/main/java/com/google/devtools/build/skyframe/IntVersion.java
index 3f3761a..10e2c97 100644
--- a/src/main/java/com/google/devtools/build/skyframe/IntVersion.java
+++ b/src/main/java/com/google/devtools/build/skyframe/IntVersion.java
@@ -48,16 +48,19 @@
@Override
public int hashCode() {
- return Long.valueOf(val).hashCode();
+ return Long.hashCode(val);
}
@Override
public boolean equals(Object obj) {
- if (obj instanceof IntVersion) {
- IntVersion other = (IntVersion) obj;
- return other.val == val;
+ if (this == obj) {
+ return true;
}
- return false;
+ if (!(obj instanceof IntVersion)) {
+ return false;
+ }
+ IntVersion other = (IntVersion) obj;
+ return other.val == val;
}
@Override