From 3fc6c9dad05f0e9d225121f82b79acea9a3fdbb4 Mon Sep 17 00:00:00 2001 From: "Jorge C. Leitao" Date: Sat, 14 Aug 2021 08:45:46 +0000 Subject: [PATCH] Added PartialEqual for UnionArray --- src/array/equal/mod.rs | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/src/array/equal/mod.rs b/src/array/equal/mod.rs index 3d3433bb860..be2b1c1976c 100644 --- a/src/array/equal/mod.rs +++ b/src/array/equal/mod.rs @@ -3,10 +3,7 @@ use crate::{ types::{days_ms, NativeType}, }; -use super::{ - primitive::PrimitiveArray, Array, BinaryArray, BooleanArray, DictionaryArray, DictionaryKey, - FixedSizeBinaryArray, FixedSizeListArray, ListArray, NullArray, Offset, StructArray, Utf8Array, -}; +use super::*; mod binary; mod boolean; @@ -146,6 +143,18 @@ impl PartialEq<&dyn Array> for DictionaryArray { } } +impl PartialEq for UnionArray { + fn eq(&self, other: &Self) -> bool { + equal(self, other) + } +} + +impl PartialEq<&dyn Array> for UnionArray { + fn eq(&self, other: &&dyn Array) -> bool { + equal(self, *other) + } +} + /// Logically compares two [`Array`]s. /// Two arrays are logically equal if and only if: /// * their data types are equal