LibWeb: Allow using Origin as a HashMap key

This commit is contained in:
Andreas Kling 2022-02-08 19:39:47 +01:00
commit a856cf8d4c
Notes: sideshowbarker 2024-07-17 19:08:59 +09:00

View file

@ -33,6 +33,9 @@ public:
&& port() == other.port();
}
bool operator==(Origin const& other) const { return is_same(other); }
bool operator!=(Origin const& other) const { return !is_same(other); }
private:
String m_protocol;
String m_host;
@ -40,3 +43,13 @@ private:
};
}
namespace AK {
template<>
struct Traits<Web::Origin> : public GenericTraits<Web::Origin> {
static unsigned hash(Web::Origin const& origin)
{
return pair_int_hash(origin.protocol().hash(), pair_int_hash(int_hash(origin.port()), origin.host().hash()));
}
};
} // namespace AK