mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 19:27:35 +00:00
Everywhere: Remove redundant inequality comparison operators
C++20 can automatically synthesize `operator!=` from `operator==`, so there is no point in writing such functions by hand if all they do is call through to `operator==`. This fixes a compile error with compilers that implement P2468 (Clang 16 currently). This paper restores the C++17 behavior that if both `T::operator==(U)` and `T::operator!=(U)` exist, `U == T` won't be rewritten in reverse to call `T::operator==(U)`. Removing `!=` operators makes the rewriting possible again. See https://reviews.llvm.org/D134529#3853062
This commit is contained in:
parent
4e406b0730
commit
4296425bd8
40 changed files with 1 additions and 180 deletions
|
@ -310,11 +310,6 @@ public:
|
|||
[&](StringView view) { return view == cstring; });
|
||||
}
|
||||
|
||||
bool operator!=(char const* cstring) const
|
||||
{
|
||||
return !(*this == cstring);
|
||||
}
|
||||
|
||||
bool operator==(String const& string) const
|
||||
{
|
||||
return m_view.visit(
|
||||
|
@ -333,11 +328,6 @@ public:
|
|||
[&](StringView view) { return view == string; });
|
||||
}
|
||||
|
||||
bool operator!=(StringView other) const
|
||||
{
|
||||
return !(*this == other);
|
||||
}
|
||||
|
||||
bool operator==(Utf32View const& other) const
|
||||
{
|
||||
return m_view.visit(
|
||||
|
@ -349,11 +339,6 @@ public:
|
|||
[&](StringView view) { return view == RegexStringView { other }.to_string(); });
|
||||
}
|
||||
|
||||
bool operator!=(Utf32View const& other) const
|
||||
{
|
||||
return !(*this == other);
|
||||
}
|
||||
|
||||
bool operator==(Utf16View const& other) const
|
||||
{
|
||||
return m_view.visit(
|
||||
|
@ -363,11 +348,6 @@ public:
|
|||
[&](StringView view) { return view == RegexStringView { other }.to_string(); });
|
||||
}
|
||||
|
||||
bool operator!=(Utf16View const& other) const
|
||||
{
|
||||
return !(*this == other);
|
||||
}
|
||||
|
||||
bool operator==(Utf8View const& other) const
|
||||
{
|
||||
return m_view.visit(
|
||||
|
@ -377,11 +357,6 @@ public:
|
|||
[&](StringView view) { return other.as_string() == view; });
|
||||
}
|
||||
|
||||
bool operator!=(Utf8View const& other) const
|
||||
{
|
||||
return !(*this == other);
|
||||
}
|
||||
|
||||
bool equals(RegexStringView other) const
|
||||
{
|
||||
return other.m_view.visit([this](auto const& view) { return operator==(view); });
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue