aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libs/kstd/kstd/bits/basic_string.hpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/libs/kstd/kstd/bits/basic_string.hpp b/libs/kstd/kstd/bits/basic_string.hpp
index c13b821..e55bfbb 100644
--- a/libs/kstd/kstd/bits/basic_string.hpp
+++ b/libs/kstd/kstd/bits/basic_string.hpp
@@ -1082,11 +1082,21 @@ namespace kstd
[[nodiscard]] constexpr friend auto operator==(basic_string const & lhs, const_pointer rhs) noexcept -> bool
{
+ if (rhs == nullptr)
+ {
+ os::panic("Tried to compare a string with nullptr");
+ }
+
return lhs == std::basic_string_view<value_type, traits_type>{rhs};
}
[[nodiscard]] constexpr friend auto operator==(const_pointer lhs, basic_string const & rhs) noexcept -> bool
{
+ if (rhs == nullptr)
+ {
+ os::panic("Tried to compare a string with nullptr");
+ }
+
return std::basic_string_view<value_type, traits_type>{lhs} == rhs;
}
@@ -1109,11 +1119,21 @@ namespace kstd
[[nodiscard]] constexpr friend auto operator<=>(basic_string const & lhs, const_pointer rhs) noexcept
{
+ if (rhs == nullptr)
+ {
+ os::panic("Tried to compare a string with nullptr");
+ }
+
return lhs <=> std::basic_string_view<value_type, traits_type>{rhs};
}
[[nodiscard]] constexpr friend auto operator<=>(const_pointer lhs, basic_string const & rhs) noexcept
{
+ if (rhs == nullptr)
+ {
+ os::panic("Tried to compare a string with nullptr");
+ }
+
return std::basic_string_view<value_type, traits_type>{lhs} <=> rhs;
}