瀏覽代碼

AK: Vector use Traits<T>::equals in find

Use Traits<T>::equals for equality checking in search
functions instead of  operator==
Muhammad Zahalqa 4 年之前
父節點
當前提交
125ea6a214
共有 1 個文件被更改,包括 4 次插入4 次删除
  1. 4 4
      AK/Vector.h

+ 4 - 4
AK/Vector.h

@@ -249,7 +249,7 @@ public:
     bool contains_slow(const T& value) const
     {
         for (size_t i = 0; i < size(); ++i) {
-            if (at(i) == value)
+            if (Traits<T>::equals(at(i), value))
                 return true;
         }
         return false;
@@ -612,18 +612,18 @@ public:
 
     ConstIterator find(const T& value) const
     {
-        return find([&](auto& other) { return value == other; });
+        return find([&](auto& other) { return Traits<T>::equals(value, other); });
     }
 
     Iterator find(const T& value)
     {
-        return find([&](auto& other) { return value == other; });
+        return find([&](auto& other) { return Traits<T>::equals(value, other); });
     }
 
     Optional<size_t> find_first_index(const T& value)
     {
         for (size_t i = 0; i < m_size; ++i) {
-            if (value == at(i))
+            if (Traits<T>::equals(value, at(i)))
                 return i;
         }
         return {};