From 0bf98e614f8ce41994280fabf07738c5c22404bf Mon Sep 17 00:00:00 2001 From: Kim Alvefur Date: Thu, 16 Mar 2017 19:09:57 +0100 Subject: util.array: Add O(n) equality check metamethod --- util/array.lua | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'util/array.lua') diff --git a/util/array.lua b/util/array.lua index ea520f6b..05fa97ca 100644 --- a/util/array.lua +++ b/util/array.lua @@ -33,6 +33,19 @@ function array_mt.__add(a1, a2) return res:append(a1):append(a2); end +function array_mt.__eq(a, b) + if #a == #b then + for i = 1, #a do + if a[i] ~= b[i] then + return false; + end + end + else + return false; + end + return true; +end + setmetatable(array, { __call = new_array }); -- Read-only methods -- cgit v1.2.3