Color::COLORS array with pre-defined colors

- allows iterating over pre-defined colors easily
This commit is contained in:
Dmitry Stepanov
2024-04-28 23:40:46 +03:00
parent 45b2fe7f62
commit 194a5c9155
+143
View File
@@ -431,6 +431,149 @@ impl Color {
pub const GAINSBORO: Self = Self::opaque(220, 220, 220);
pub const WHITE_SMOKE: Self = Self::opaque(245, 245, 245);
pub const COLORS: [Self; 140] = [
Self::TRANSPARENT,
Self::WHITE,
Self::BLACK,
Self::RED,
Self::GREEN,
Self::BLUE,
Self::MAROON,
Self::DARK_RED,
Self::BROWN,
Self::FIREBRICK,
Self::CRIMSON,
Self::TOMATO,
Self::CORAL,
Self::INDIAN_RED,
Self::LIGHT_CORAL,
Self::DARK_SALMON,
Self::SALMON,
Self::LIGHT_SALMON,
Self::ORANGE_RED,
Self::DARK_ORANGE,
Self::ORANGE,
Self::GOLD,
Self::DARK_GOLDEN_ROD,
Self::GOLDEN_ROD,
Self::PALE_GOLDEN_ROD,
Self::DARK_KHAKI,
Self::KHAKI,
Self::OLIVE,
Self::YELLOW,
Self::YELLOW_GREEN,
Self::DARK_OLIVE_GREEN,
Self::OLIVE_DRAB,
Self::LAWN_GREEN,
Self::CHARTREUSE,
Self::GREEN_YELLOW,
Self::DARK_GREEN,
Self::FOREST_GREEN,
Self::LIME,
Self::LIME_GREEN,
Self::LIGHT_GREEN,
Self::PALE_GREEN,
Self::DARK_SEA_GREEN,
Self::MEDIUM_SPRING_GREEN,
Self::SPRING_GREEN,
Self::SEA_GREEN,
Self::MEDIUM_AQUA_MARINE,
Self::MEDIUM_SEA_GREEN,
Self::LIGHT_SEA_GREEN,
Self::DARK_SLATE_GRAY,
Self::TEAL,
Self::DARK_CYAN,
Self::AQUA,
Self::CYAN,
Self::LIGHT_CYAN,
Self::DARK_TURQUOISE,
Self::TURQUOISE,
Self::MEDIUM_TURQUOISE,
Self::PALE_TURQUOISE,
Self::AQUA_MARINE,
Self::POWDER_BLUE,
Self::CADET_BLUE,
Self::STEEL_BLUE,
Self::CORN_FLOWER_BLUE,
Self::DEEP_SKY_BLUE,
Self::DODGER_BLUE,
Self::LIGHT_BLUE,
Self::SKY_BLUE,
Self::LIGHT_SKY_BLUE,
Self::MIDNIGHT_BLUE,
Self::NAVY,
Self::DARK_BLUE,
Self::MEDIUM_BLUE,
Self::ROYAL_BLUE,
Self::BLUE_VIOLET,
Self::INDIGO,
Self::DARK_SLATE_BLUE,
Self::SLATE_BLUE,
Self::MEDIUM_SLATE_BLUE,
Self::MEDIUM_PURPLE,
Self::DARK_MAGENTA,
Self::DARK_VIOLET,
Self::DARK_ORCHID,
Self::MEDIUM_ORCHID,
Self::PURPLE,
Self::THISTLE,
Self::PLUM,
Self::VIOLET,
Self::MAGENTA,
Self::ORCHID,
Self::MEDIUM_VIOLET_RED,
Self::PALE_VIOLET_RED,
Self::DEEP_PINK,
Self::HOT_PINK,
Self::LIGHT_PINK,
Self::PINK,
Self::ANTIQUE_WHITE,
Self::BEIGE,
Self::BISQUE,
Self::BLANCHED_ALMOND,
Self::WHEAT,
Self::CORN_SILK,
Self::LEMON_CHIFFON,
Self::LIGHT_GOLDEN_ROD_YELLOW,
Self::LIGHT_YELLOW,
Self::SADDLE_BROWN,
Self::SIENNA,
Self::CHOCOLATE,
Self::PERU,
Self::SANDY_BROWN,
Self::BURLY_WOOD,
Self::TAN,
Self::ROSY_BROWN,
Self::MOCCASIN,
Self::NAVAJO_WHITE,
Self::PEACH_PUFF,
Self::MISTY_ROSE,
Self::LAVENDER_BLUSH,
Self::LINEN,
Self::OLD_LACE,
Self::PAPAYA_WHIP,
Self::SEA_SHELL,
Self::MINT_CREAM,
Self::SLATE_GRAY,
Self::LIGHT_SLATE_GRAY,
Self::LIGHT_STEEL_BLUE,
Self::LAVENDER,
Self::FLORAL_WHITE,
Self::ALICE_BLUE,
Self::GHOST_WHITE,
Self::HONEYDEW,
Self::IVORY,
Self::AZURE,
Self::SNOW,
Self::DIM_GRAY,
Self::GRAY,
Self::DARK_GRAY,
Self::SILVER,
Self::LIGHT_GRAY,
Self::GAINSBORO,
Self::WHITE_SMOKE,
];
#[inline]
pub const fn opaque(r: u8, g: u8, b: u8) -> Self {
Self { r, g, b, a: 255 }