Browse Source

LibGfx/Point: Add hash trait for Point<T>

Mustafa Quraish 3 years ago
parent
commit
522f0841fd
1 changed files with 9 additions and 0 deletions
  1. 9 0
      Userland/Libraries/LibGfx/Point.h

+ 9 - 0
Userland/Libraries/LibGfx/Point.h

@@ -267,3 +267,12 @@ bool encode(Encoder&, Gfx::IntPoint const&);
 bool decode(Decoder&, Gfx::IntPoint&);
 bool decode(Decoder&, Gfx::IntPoint&);
 
 
 }
 }
+
+template<typename T>
+struct AK::Traits<Gfx::Point<T>> : public AK::GenericTraits<Gfx::Point<T>> {
+    static constexpr bool is_trivial() { return false; }
+    static unsigned hash(Gfx::Point<T> const& point)
+    {
+        return pair_int_hash(AK::Traits<T>::hash(point.x()), AK::Traits<T>::hash(point.y()));
+    }
+};