diff --git a/include/core/String.hpp b/include/core/String.hpp index 7826fcb6..ff3a307a 100644 --- a/include/core/String.hpp +++ b/include/core/String.hpp @@ -49,15 +49,15 @@ public: wchar_t operator[](const int idx) const; void operator=(const String &s); - bool operator==(const String &s); - bool operator!=(const String &s); - String operator+(const String &s); + bool operator==(const String &s) const; + bool operator!=(const String &s) const; + String operator+(const String &s) const; void operator+=(const String &s); void operator+=(const wchar_t c); - bool operator<(const String &s); - bool operator<=(const String &s); - bool operator>(const String &s); - bool operator>=(const String &s); + bool operator<(const String &s) const; + bool operator<=(const String &s) const; + bool operator>(const String &s) const; + bool operator>=(const String &s) const; operator NodePath() const; diff --git a/src/core/String.cpp b/src/core/String.cpp index 737c0408..f85fa04a 100644 --- a/src/core/String.cpp +++ b/src/core/String.cpp @@ -115,15 +115,15 @@ void String::operator=(const String &s) { godot::api->godot_string_new_copy(&_godot_string, &s._godot_string); } -bool String::operator==(const String &s) { +bool String::operator==(const String &s) const { return godot::api->godot_string_operator_equal(&_godot_string, &s._godot_string); } -bool String::operator!=(const String &s) { +bool String::operator!=(const String &s) const { return !(*this == s); } -String String::operator+(const String &s) { +String String::operator+(const String &s) const { String new_string = *this; new_string._godot_string = godot::api->godot_string_operator_plus(&new_string._godot_string, &s._godot_string); @@ -138,20 +138,20 @@ void String::operator+=(const wchar_t c) { // @Todo } -bool String::operator<(const String &s) { +bool String::operator<(const String &s) const { return godot::api->godot_string_operator_less(&_godot_string, &s._godot_string); } -bool String::operator<=(const String &s) { +bool String::operator<=(const String &s) const { return godot::api->godot_string_operator_less(&_godot_string, &s._godot_string) || (*this == s); } -bool String::operator>(const String &s) { +bool String::operator>(const String &s) const { return !(*this <= s); } -bool String::operator>=(const String &s) { +bool String::operator>=(const String &s) const { return !(*this < s); }