1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 06:57:44 +00:00

AK+Everywhere: Remove the null state of DeprecatedString

This commit removes DeprecatedString's "null" state, and replaces all
its users with one of the following:
- A normal, empty DeprecatedString
- Optional<DeprecatedString>

Note that null states of DeprecatedFlyString/StringView/etc are *not*
affected by this commit. However, DeprecatedString::empty() is now
considered equal to a null StringView.
This commit is contained in:
Ali Mohammad Pur 2023-10-10 15:00:58 +03:30 committed by Ali Mohammad Pur
parent daf6d8173c
commit aeee98b3a1
189 changed files with 597 additions and 652 deletions

View file

@ -42,7 +42,11 @@ public:
size_t num_groups() const { return m_groups.size(); }
DeprecatedString read_entry(DeprecatedString const& group, DeprecatedString const& key, DeprecatedString const& default_value = DeprecatedString()) const;
DeprecatedString read_entry(DeprecatedString const& group, DeprecatedString const& key, DeprecatedString const& default_value = {}) const
{
return read_entry_optional(group, key).value_or(default_value);
}
Optional<DeprecatedString> read_entry_optional(DeprecatedString const& group, DeprecatedString const& key) const;
bool read_bool_entry(DeprecatedString const& group, DeprecatedString const& key, bool default_value = false) const;
template<Integral T = int>
@ -52,9 +56,9 @@ public:
return default_value;
if constexpr (IsSigned<T>)
return read_entry(group, key).to_int<T>().value_or(default_value);
return read_entry(group, key, "").to_int<T>().value_or(default_value);
else
return read_entry(group, key).to_uint<T>().value_or(default_value);
return read_entry(group, key, "").to_uint<T>().value_or(default_value);
}
void write_entry(DeprecatedString const& group, DeprecatedString const& key, DeprecatedString const& value);