From c53c7817451b44d4cfd62cc9b39f3415d58dd784 Mon Sep 17 00:00:00 2001 From: Andreas Kling Date: Mon, 27 Jan 2025 21:09:12 +0100 Subject: [PATCH] LibWeb: Inline CSSStyleValue::to_keyword() Shaves 120 ms of loading time off of https://wpt.fyi/ --- Libraries/LibWeb/Animations/KeyframeEffect.cpp | 1 + Libraries/LibWeb/CSS/CSSStyleValue.cpp | 7 ------- Libraries/LibWeb/CSS/FontFaceSet.cpp | 1 + Libraries/LibWeb/CSS/Parser/RuleParsing.cpp | 1 + Libraries/LibWeb/CSS/StyleInvalidation.cpp | 1 + Libraries/LibWeb/CSS/StyleValues/CSSColorValue.cpp | 1 + Libraries/LibWeb/CSS/StyleValues/CSSKeywordValue.h | 7 +++++++ Libraries/LibWeb/CSS/StyleValues/CSSRGB.cpp | 1 + Libraries/LibWeb/CSS/StyleValues/ShorthandStyleValue.cpp | 1 + 9 files changed, 14 insertions(+), 7 deletions(-) diff --git a/Libraries/LibWeb/Animations/KeyframeEffect.cpp b/Libraries/LibWeb/Animations/KeyframeEffect.cpp index 3b918045949..f9c49e49c93 100644 --- a/Libraries/LibWeb/Animations/KeyframeEffect.cpp +++ b/Libraries/LibWeb/Animations/KeyframeEffect.cpp @@ -13,6 +13,7 @@ #include #include #include +#include #include #include #include diff --git a/Libraries/LibWeb/CSS/CSSStyleValue.cpp b/Libraries/LibWeb/CSS/CSSStyleValue.cpp index 78cd08d113c..3f33633515e 100644 --- a/Libraries/LibWeb/CSS/CSSStyleValue.cpp +++ b/Libraries/LibWeb/CSS/CSSStyleValue.cpp @@ -364,13 +364,6 @@ bool CSSStyleValue::has_auto() const return is_keyword() && as_keyword().keyword() == Keyword::Auto; } -Keyword CSSStyleValue::to_keyword() const -{ - if (is_keyword()) - return as_keyword().keyword(); - return Keyword::Invalid; -} - int CSSStyleValue::to_font_weight() const { if (is_keyword()) { diff --git a/Libraries/LibWeb/CSS/FontFaceSet.cpp b/Libraries/LibWeb/CSS/FontFaceSet.cpp index 4bf25662d65..10363a17e1c 100644 --- a/Libraries/LibWeb/CSS/FontFaceSet.cpp +++ b/Libraries/LibWeb/CSS/FontFaceSet.cpp @@ -14,6 +14,7 @@ #include #include #include +#include #include #include #include diff --git a/Libraries/LibWeb/CSS/Parser/RuleParsing.cpp b/Libraries/LibWeb/CSS/Parser/RuleParsing.cpp index 0daa2d48b09..84b2a80a846 100644 --- a/Libraries/LibWeb/CSS/Parser/RuleParsing.cpp +++ b/Libraries/LibWeb/CSS/Parser/RuleParsing.cpp @@ -26,6 +26,7 @@ #include #include #include +#include #include #include #include diff --git a/Libraries/LibWeb/CSS/StyleInvalidation.cpp b/Libraries/LibWeb/CSS/StyleInvalidation.cpp index 3e1c80f3024..291339d1183 100644 --- a/Libraries/LibWeb/CSS/StyleInvalidation.cpp +++ b/Libraries/LibWeb/CSS/StyleInvalidation.cpp @@ -6,6 +6,7 @@ #include #include +#include namespace Web::CSS { diff --git a/Libraries/LibWeb/CSS/StyleValues/CSSColorValue.cpp b/Libraries/LibWeb/CSS/StyleValues/CSSColorValue.cpp index 99aa9173251..da532d48bfb 100644 --- a/Libraries/LibWeb/CSS/StyleValues/CSSColorValue.cpp +++ b/Libraries/LibWeb/CSS/StyleValues/CSSColorValue.cpp @@ -10,6 +10,7 @@ #include "CSSColorValue.h" #include #include +#include #include #include #include diff --git a/Libraries/LibWeb/CSS/StyleValues/CSSKeywordValue.h b/Libraries/LibWeb/CSS/StyleValues/CSSKeywordValue.h index ba1b4c0ddb0..874996ffafb 100644 --- a/Libraries/LibWeb/CSS/StyleValues/CSSKeywordValue.h +++ b/Libraries/LibWeb/CSS/StyleValues/CSSKeywordValue.h @@ -66,4 +66,11 @@ private: Keyword m_keyword { Keyword::Invalid }; }; +inline Keyword CSSStyleValue::to_keyword() const +{ + if (is_keyword()) + return static_cast(*this).keyword(); + return Keyword::Invalid; +} + } diff --git a/Libraries/LibWeb/CSS/StyleValues/CSSRGB.cpp b/Libraries/LibWeb/CSS/StyleValues/CSSRGB.cpp index 6ba63f5e902..5829fc5dd49 100644 --- a/Libraries/LibWeb/CSS/StyleValues/CSSRGB.cpp +++ b/Libraries/LibWeb/CSS/StyleValues/CSSRGB.cpp @@ -7,6 +7,7 @@ #include "CSSRGB.h" #include #include +#include #include #include #include diff --git a/Libraries/LibWeb/CSS/StyleValues/ShorthandStyleValue.cpp b/Libraries/LibWeb/CSS/StyleValues/ShorthandStyleValue.cpp index 9193b660c5c..e3cb593fd32 100644 --- a/Libraries/LibWeb/CSS/StyleValues/ShorthandStyleValue.cpp +++ b/Libraries/LibWeb/CSS/StyleValues/ShorthandStyleValue.cpp @@ -8,6 +8,7 @@ #include "ShorthandStyleValue.h" #include #include +#include #include #include #include