From a8703fe10bfeefcf07f44733986a602a3bc6ad4d Mon Sep 17 00:00:00 2001 From: David Vacca Date: Sun, 17 Feb 2019 11:03:13 -0800 Subject: [PATCH] Implement equality for RedableNativeArray Summary: This diff implements equality on RedableNativeArray objects. This relies on the Arrays.deepEquals method Reviewed By: kathryngray Differential Revision: D14022108 fbshipit-source-id: 48b59529a9060a2bddba5fc8e3681c922ec31be4 --- .../facebook/react/bridge/ReadableNativeArray.java | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeArray.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeArray.java index 94acf671b9d..a67e8ba24d9 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeArray.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeArray.java @@ -172,6 +172,20 @@ public class ReadableNativeArray extends NativeArray implements ReadableArray { return DynamicFromArray.create(this, index); } + @Override + public int hashCode() { + return getLocalArray().hashCode(); + } + + @Override + public boolean equals(Object obj) { + if (!(obj instanceof ReadableNativeArray)) { + return false; + } + ReadableNativeArray other = (ReadableNativeArray) obj; + return Arrays.deepEquals(getLocalArray(), other.getLocalArray()); + } + @Override public @Nonnull ArrayList toArrayList() { ArrayList arrayList = new ArrayList<>();