From d578f5ac373b7d1b251094290d69435c70606921 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Marcos?= Date: Wed, 15 Jan 2025 16:31:21 -0300 Subject: [PATCH] Simplify static expression to a constant (#23193) Release Notes: - N/A --- crates/project/src/color_extractor.rs | 82 +++++++++++++-------------- 1 file changed, 40 insertions(+), 42 deletions(-) diff --git a/crates/project/src/color_extractor.rs b/crates/project/src/color_extractor.rs index f44246da4c10daf0ec7bccf3328c438857059b94..5473da88af5bee6e66b005956366a289478f7ee4 100644 --- a/crates/project/src/color_extractor.rs +++ b/crates/project/src/color_extractor.rs @@ -141,48 +141,46 @@ mod tests { use gpui::rgba; use lsp::{CompletionItem, CompletionItemKind}; - pub static COLOR_TABLE: LazyLock)>> = LazyLock::new(|| { - vec![ - // -- Invalid -- - // Invalid hex - ("f0f", None), - ("#fof", None), - // Extra field - ("rgb(255, 0, 0, 0.0)", None), - ("hsl(120, 0, 0, 0.0)", None), - // Missing field - ("rgba(255, 0, 0)", None), - ("hsla(120, 0, 0)", None), - // No decimal after zero - ("rgba(255, 0, 0, 0)", None), - ("hsla(120, 0, 0, 0)", None), - // Decimal after one - ("rgba(255, 0, 0, 1.0)", None), - ("hsla(120, 0, 0, 1.0)", None), - // HEX (sRGB) - ("#f0f", Some(0xFF00FFFF)), - ("#ff0000", Some(0xFF0000FF)), - // RGB / RGBA (sRGB) - ("rgb(255, 0, 0)", Some(0xFF0000FF)), - ("rgba(255, 0, 0, 0.4)", Some(0xFF000066)), - ("rgba(255, 0, 0, 1)", Some(0xFF0000FF)), - ("rgb(20%, 0%, 0%)", Some(0x330000FF)), - ("rgba(20%, 0%, 0%, 1)", Some(0x330000FF)), - ("rgb(0%, 20%, 0%)", Some(0x003300FF)), - ("rgba(0%, 20%, 0%, 1)", Some(0x003300FF)), - ("rgb(0%, 0%, 20%)", Some(0x000033FF)), - ("rgba(0%, 0%, 20%, 1)", Some(0x000033FF)), - // HSL / HSLA (sRGB) - ("hsl(0, 100%, 50%)", Some(0xFF0000FF)), - ("hsl(120, 100%, 50%)", Some(0x00FF00FF)), - ("hsla(0, 100%, 50%, 0.0)", Some(0xFF000000)), - ("hsla(0, 100%, 50%, 0.4)", Some(0xFF000066)), - ("hsla(0, 100%, 50%, 1)", Some(0xFF0000FF)), - ("hsla(120, 100%, 50%, 0.0)", Some(0x00FF0000)), - ("hsla(120, 100%, 50%, 0.4)", Some(0x00FF0066)), - ("hsla(120, 100%, 50%, 1)", Some(0x00FF00FF)), - ] - }); + pub const COLOR_TABLE: &[(&'static str, Option)] = &[ + // -- Invalid -- + // Invalid hex + ("f0f", None), + ("#fof", None), + // Extra field + ("rgb(255, 0, 0, 0.0)", None), + ("hsl(120, 0, 0, 0.0)", None), + // Missing field + ("rgba(255, 0, 0)", None), + ("hsla(120, 0, 0)", None), + // No decimal after zero + ("rgba(255, 0, 0, 0)", None), + ("hsla(120, 0, 0, 0)", None), + // Decimal after one + ("rgba(255, 0, 0, 1.0)", None), + ("hsla(120, 0, 0, 1.0)", None), + // HEX (sRGB) + ("#f0f", Some(0xFF00FFFF)), + ("#ff0000", Some(0xFF0000FF)), + // RGB / RGBA (sRGB) + ("rgb(255, 0, 0)", Some(0xFF0000FF)), + ("rgba(255, 0, 0, 0.4)", Some(0xFF000066)), + ("rgba(255, 0, 0, 1)", Some(0xFF0000FF)), + ("rgb(20%, 0%, 0%)", Some(0x330000FF)), + ("rgba(20%, 0%, 0%, 1)", Some(0x330000FF)), + ("rgb(0%, 20%, 0%)", Some(0x003300FF)), + ("rgba(0%, 20%, 0%, 1)", Some(0x003300FF)), + ("rgb(0%, 0%, 20%)", Some(0x000033FF)), + ("rgba(0%, 0%, 20%, 1)", Some(0x000033FF)), + // HSL / HSLA (sRGB) + ("hsl(0, 100%, 50%)", Some(0xFF0000FF)), + ("hsl(120, 100%, 50%)", Some(0x00FF00FF)), + ("hsla(0, 100%, 50%, 0.0)", Some(0xFF000000)), + ("hsla(0, 100%, 50%, 0.4)", Some(0xFF000066)), + ("hsla(0, 100%, 50%, 1)", Some(0xFF0000FF)), + ("hsla(120, 100%, 50%, 0.0)", Some(0x00FF0000)), + ("hsla(120, 100%, 50%, 0.4)", Some(0x00FF0066)), + ("hsla(120, 100%, 50%, 1)", Some(0x00FF00FF)), + ]; #[test] fn can_extract_from_label() {