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
Notes: sideshowbarker 2024-07-16 20:21:48 +09:00
189 changed files with 597 additions and 652 deletions

View file

@ -45,20 +45,20 @@ void HTMLScriptElement::visit_edges(Cell::Visitor& visitor)
visitor.visit(m_preparation_time_document.ptr());
}
void HTMLScriptElement::attribute_changed(FlyString const& name, DeprecatedString const& value)
void HTMLScriptElement::attribute_changed(FlyString const& name, Optional<DeprecatedString> const& value)
{
Base::attribute_changed(name, value);
if (name == HTML::AttributeNames::crossorigin) {
if (value.is_null())
if (!value.has_value())
m_crossorigin = cors_setting_attribute_from_keyword({});
else
m_crossorigin = cors_setting_attribute_from_keyword(String::from_deprecated_string(value).release_value_but_fixme_should_propagate_errors());
m_crossorigin = cors_setting_attribute_from_keyword(String::from_deprecated_string(*value).release_value_but_fixme_should_propagate_errors());
} else if (name == HTML::AttributeNames::referrerpolicy) {
if (value.is_null())
if (!value.has_value())
m_referrer_policy.clear();
else
m_referrer_policy = ReferrerPolicy::from_string(value);
m_referrer_policy = ReferrerPolicy::from_string(*value);
}
}