diff --git a/Userland/Libraries/LibWeb/CSS/Parser/ComponentValue.cpp b/Userland/Libraries/LibWeb/CSS/Parser/ComponentValue.cpp index 5768a8dd68..fec362999e 100644 --- a/Userland/Libraries/LibWeb/CSS/Parser/ComponentValue.cpp +++ b/Userland/Libraries/LibWeb/CSS/Parser/ComponentValue.cpp @@ -29,7 +29,7 @@ ComponentValue::~ComponentValue() = default; DeprecatedString ComponentValue::to_deprecated_string() const { return m_value.visit( - [](Token const& token) { return token.to_deprecated_string(); }, + [](Token const& token) { return token.to_string().release_value_but_fixme_should_propagate_errors().to_deprecated_string(); }, [](NonnullRefPtr const& block) { return block->to_deprecated_string(); }, [](NonnullRefPtr const& function) { return function->to_deprecated_string(); }); } diff --git a/Userland/Libraries/LibWeb/CSS/Parser/Parser.cpp b/Userland/Libraries/LibWeb/CSS/Parser/Parser.cpp index d0e9b82dee..c10e6086c3 100644 --- a/Userland/Libraries/LibWeb/CSS/Parser/Parser.cpp +++ b/Userland/Libraries/LibWeb/CSS/Parser/Parser.cpp @@ -562,7 +562,7 @@ Parser::ParseErrorOr Parser::parse_pseudo_simple_selec } // FIXME: Support multiple, comma-separated, language ranges. Vector languages; - languages.append(pseudo_function.values().first().token().to_deprecated_string()); + languages.append(pseudo_function.values().first().token().to_string().release_value_but_fixme_should_propagate_errors().to_deprecated_string()); return Selector::SimpleSelector { .type = Selector::SimpleSelector::Type::PseudoClass, .value = Selector::SimpleSelector::PseudoClass { diff --git a/Userland/Libraries/LibWeb/CSS/Parser/Token.cpp b/Userland/Libraries/LibWeb/CSS/Parser/Token.cpp index c4c16581fd..3cd484f227 100644 --- a/Userland/Libraries/LibWeb/CSS/Parser/Token.cpp +++ b/Userland/Libraries/LibWeb/CSS/Parser/Token.cpp @@ -11,68 +11,68 @@ namespace Web::CSS::Parser { -DeprecatedString Token::to_deprecated_string() const +ErrorOr Token::to_string() const { StringBuilder builder; switch (m_type) { case Type::EndOfFile: - return ""; + return String {}; case Type::Ident: - return serialize_an_identifier(ident()); + return String::from_utf8(serialize_an_identifier(ident())); case Type::Function: - return DeprecatedString::formatted("{}(", serialize_an_identifier(function())); + return String::formatted("{}(", serialize_an_identifier(function())); case Type::AtKeyword: - return DeprecatedString::formatted("@{}", serialize_an_identifier(at_keyword())); + return String::formatted("@{}", serialize_an_identifier(at_keyword())); case Type::Hash: { switch (m_hash_type) { case HashType::Id: - return DeprecatedString::formatted("#{}", serialize_an_identifier(hash_value())); + return String::formatted("#{}", serialize_an_identifier(hash_value())); case HashType::Unrestricted: - return DeprecatedString::formatted("#{}", hash_value()); + return String::formatted("#{}", hash_value()); } VERIFY_NOT_REACHED(); } case Type::String: - return serialize_a_string(string()); + return String::from_utf8(serialize_a_string(string())); case Type::BadString: - return ""; + return String {}; case Type::Url: - return serialize_a_url(url()); + return String::from_utf8(serialize_a_url(url())); case Type::BadUrl: - return "url()"; + return String::from_utf8("url()"sv); case Type::Delim: - return DeprecatedString(m_value.bytes_as_string_view()); + return String { m_value }; case Type::Number: - return DeprecatedString::number(m_number_value.value()); + return String::number(m_number_value.value()); case Type::Percentage: - return DeprecatedString::formatted("{}%", m_number_value.value()); + return String::formatted("{}%", m_number_value.value()); case Type::Dimension: - return DeprecatedString::formatted("{}{}", m_number_value.value(), dimension_unit()); + return String::formatted("{}{}", m_number_value.value(), dimension_unit()); case Type::Whitespace: - return " "; + return String::from_utf8_short_string(" "sv); case Type::CDO: - return ""; + return String::from_utf8_short_string("-->"sv); case Type::Colon: - return ":"; + return String::from_utf8_short_string(":"sv); case Type::Semicolon: - return ";"; + return String::from_utf8_short_string(";"sv); case Type::Comma: - return ","; + return String::from_utf8_short_string(","sv); case Type::OpenSquare: - return "["; + return String::from_utf8_short_string("["sv); case Type::CloseSquare: - return "]"; + return String::from_utf8_short_string("]"sv); case Type::OpenParen: - return "("; + return String::from_utf8_short_string("("sv); case Type::CloseParen: - return ")"; + return String::from_utf8_short_string(")"sv); case Type::OpenCurly: - return "{"; + return String::from_utf8_short_string("{"sv); case Type::CloseCurly: - return "}"; + return String::from_utf8_short_string("}"sv); case Type::Invalid: default: VERIFY_NOT_REACHED(); diff --git a/Userland/Libraries/LibWeb/CSS/Parser/Token.h b/Userland/Libraries/LibWeb/CSS/Parser/Token.h index afcd4149b8..c3e6ae2c1f 100644 --- a/Userland/Libraries/LibWeb/CSS/Parser/Token.h +++ b/Userland/Libraries/LibWeb/CSS/Parser/Token.h @@ -145,7 +145,7 @@ public: StringView bracket_string() const; StringView bracket_mirror_string() const; - DeprecatedString to_deprecated_string() const; + ErrorOr to_string() const; ErrorOr to_debug_string() const; Position const& start_position() const { return m_start_position; }