LibWeb: Use FlyString for local font sources

The next commit will make it so we always have a FlyString, so this lets
us keep using it instead of turning it into a String.
This commit is contained in:
Sam Atkins 2025-03-24 17:04:12 +00:00 committed by Andreas Kling
parent f8536fc48a
commit 93a2c9946f
Notes: github-actions[bot] 2025-03-25 07:55:01 +00:00
4 changed files with 4 additions and 4 deletions

View file

@ -68,7 +68,7 @@ String CSSFontFaceRule::serialized() const
if (source.local_or_url.has<URL::URL>()) {
serialize_a_url(builder, source.local_or_url.get<URL::URL>().to_string());
} else {
builder.appendff("local({})", source.local_or_url.get<String>());
builder.appendff("local({})", source.local_or_url.get<FlyString>());
}
// NOTE: No spec currently exists for format()

View file

@ -19,7 +19,7 @@ namespace Web::CSS {
class ParsedFontFace {
public:
struct Source {
Variant<String, URL::URL> local_or_url;
Variant<FlyString, URL::URL> local_or_url;
// FIXME: Do we need to keep this around, or is it only needed to discard unwanted formats during parsing?
Optional<FlyString> format;
};

View file

@ -672,7 +672,7 @@ Vector<ParsedFontFace::Source> Parser::parse_font_face_src(TokenStream<T>& compo
if (first.function().value.is_empty()) {
continue;
}
supported_sources.empend(first.function().value.first().to_string(), Optional<FlyString> {});
supported_sources.empend(FlyString { first.function().value.first().to_string() }, Optional<FlyString> {});
continue;
}

View file

@ -715,7 +715,7 @@ void dump_font_face_rule(StringBuilder& builder, CSS::CSSFontFaceRule const& rul
if (source.local_or_url.has<URL::URL>())
builder.appendff("url={}, format={}\n", source.local_or_url.get<URL::URL>(), source.format.value_or("???"_string));
else
builder.appendff("local={}\n", source.local_or_url.get<AK::String>());
builder.appendff("local={}\n", source.local_or_url.get<FlyString>());
}
indent(builder, indent_levels + 1);