aboutsummaryrefslogtreecommitdiffhomepage
path: root/third_party/checker_framework_dataflow/java/org/checkerframework/dataflow/util/HashCodeUtils.java
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/checker_framework_dataflow/java/org/checkerframework/dataflow/util/HashCodeUtils.java')
-rw-r--r--third_party/checker_framework_dataflow/java/org/checkerframework/dataflow/util/HashCodeUtils.java102
1 files changed, 0 insertions, 102 deletions
diff --git a/third_party/checker_framework_dataflow/java/org/checkerframework/dataflow/util/HashCodeUtils.java b/third_party/checker_framework_dataflow/java/org/checkerframework/dataflow/util/HashCodeUtils.java
deleted file mode 100644
index f898e3c9b4..0000000000
--- a/third_party/checker_framework_dataflow/java/org/checkerframework/dataflow/util/HashCodeUtils.java
+++ /dev/null
@@ -1,102 +0,0 @@
-package org.checkerframework.dataflow.util;
-
-/**
- * Utility class to implement the {@code hashCode} method.
- *
- * @author Stefan Heule
- */
-public class HashCodeUtils {
-
- /** Odd prime number. */
- private static int prime = 31;
-
- /** Seed. */
- private static int seed = 17;
-
- /** Add a boolean value to a given hash. */
- public static int hash(int hash, boolean item) {
- return hash * prime + (item ? 1 : 0);
- }
-
- /** Add a char value to a given hash. */
- public static int hash(int hash, char item) {
- return hash * prime + item;
- }
-
- /** Add an int value to a given hash. */
- public static int hash(int hash, int item) {
- return hash * prime + item;
- }
-
- /** Add a long value to a given hash. */
- public static int hash(int hash, long item) {
- return hash * prime + (int) (item ^ (item >>> 32));
- }
-
- /** Add a float value to a given hash. */
- public static int hash(int hash, float item) {
- return hash * prime + Float.floatToIntBits(item);
- }
-
- /** Add a double value to a given hash. */
- public static int hash(int hash, double item) {
- long l = Double.doubleToLongBits(item);
- return seed * prime + (int) (l ^ (l >>> 32));
- }
-
- /** Add an object to a given hash. */
- public static int hash(int hash, Object item) {
- if (item == null) {
- return hash * prime;
- }
- return hash * prime + item.hashCode();
- }
-
- /** Hash a boolean value. */
- public static int hash(boolean item) {
- return (item ? 1 : 0);
- }
-
- /** Hash a char value. */
- public static int hash(char item) {
- return item;
- }
-
- /** Hash an int value. */
- public static int hash(int item) {
- return item;
- }
-
- /** Hash a long value. */
- public static int hash(long item) {
- return (int) (item ^ (item >>> 32));
- }
-
- /** Hash a float value. */
- public static int hash(float item) {
- return Float.floatToIntBits(item);
- }
-
- /** Hash a double value. */
- public static int hash(double item) {
- long l = Double.doubleToLongBits(item);
- return (int) (l ^ (l >>> 32));
- }
-
- /** Hash an object. */
- public static int hash(Object item) {
- if (item == null) {
- return 0;
- }
- return item.hashCode();
- }
-
- /** Hash multiple objects. */
- public static int hash(Object... items) {
- int result = seed;
- for (Object item : items) {
- result = result * prime + (item == null ? 0 : item.hashCode());
- }
- return result;
- }
-}