From f5999a35773938caf0d1fed5d56f930d641a5b58 Mon Sep 17 00:00:00 2001 From: js6pak Date: Thu, 8 Apr 2021 22:01:50 +0200 Subject: [PATCH] Add Il2CppEqualityComparer --- Reactor/Il2CppEqualityComparer.cs | 38 +++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 Reactor/Il2CppEqualityComparer.cs diff --git a/Reactor/Il2CppEqualityComparer.cs b/Reactor/Il2CppEqualityComparer.cs new file mode 100644 index 0000000..a52ea15 --- /dev/null +++ b/Reactor/Il2CppEqualityComparer.cs @@ -0,0 +1,38 @@ +using System.Collections.Generic; +using Il2CppSystem.Runtime.CompilerServices; + +namespace Reactor +{ + public sealed class Il2CppEqualityComparer : IEqualityComparer where T : Il2CppSystem.Object + { + private static Il2CppEqualityComparer _instance; + + public static Il2CppEqualityComparer Instance + { + get + { + _instance ??= new Il2CppEqualityComparer(); + return _instance; + } + } + + private Il2CppEqualityComparer() + { + } + + public int GetHashCode(T value) + { + return RuntimeHelpers.GetHashCode(value); + } + + public bool Equals(T left, T right) + { + if (left == null || right == null) + { + return left == null && right == null; + } + + return left.Equals(right); + } + } +}