1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-26 11:17:44 +00:00

LibWeb: Add comparison operators to CSS numeric types (except Length)

This is to make it easier to bounds-check their values during parsing.
Length is left out because many length units are relative to the
context in which they are used, and so we cannot easily compare `10px`
and `1em`, for example.
This commit is contained in:
Sam Atkins 2023-05-31 14:55:18 +01:00 committed by Andreas Kling
parent 06617a982e
commit fbfce2e73e
6 changed files with 69 additions and 3 deletions

View file

@ -38,6 +38,18 @@ public:
return m_type == other.m_type && m_value == other.m_value;
}
int operator<=>(Angle const& other) const
{
auto this_degrees = to_degrees();
auto other_degrees = other.to_degrees();
if (this_degrees < other_degrees)
return -1;
if (this_degrees > other_degrees)
return 1;
return 0;
}
private:
StringView unit_name() const;