summaryrefslogtreecommitdiff
path: root/src/parse
diff options
context:
space:
mode:
authorVincent Sanders <vince@kyllikki.org>2021-02-12 23:48:03 +0000
committerVincent Sanders <vince@kyllikki.org>2021-02-12 23:48:03 +0000
commited2a8a561a2062fc7a5ae412e651203da9e942cf (patch)
tree7c1417a8e5062ae89baf0890a93320068c0b95ef /src/parse
parent7e7bb2cde575d6ce2c01231b7759fe30c918b400 (diff)
downloadlibcss-ed2a8a561a2062fc7a5ae412e651203da9e942cf.tar.gz
libcss-ed2a8a561a2062fc7a5ae412e651203da9e942cf.tar.bz2
Initialise the string map with a better macro
To avoid duplicating the string for every string map entry use a simple macro.
Diffstat (limited to 'src/parse')
-rw-r--r--src/parse/propstrings.c1192
1 files changed, 598 insertions, 594 deletions
diff --git a/src/parse/propstrings.c b/src/parse/propstrings.c
index 5528645..a2d9175 100644
--- a/src/parse/propstrings.c
+++ b/src/parse/propstrings.c
@@ -10,6 +10,10 @@
#include <assert.h>
+/** build string map entry with a string constant */
+#define SMAP(s) { s, (sizeof((s)) - 1) /* -1 for '\0' */ }
+
+
typedef struct stringmap_entry {
const char *data;
size_t len;
@@ -24,608 +28,608 @@ static css__propstrings_ctx css__propstrings;
/* Must be synchronised with enum in propstrings.h */
const stringmap_entry stringmap[LAST_KNOWN] = {
- { "*", SLEN("*") },
+ SMAP("*"),
- { ":", SLEN(":") },
- { ",", SLEN(",") },
- { ";", SLEN(";") },
- { "{", SLEN("{") },
- { "}", SLEN("}") },
- { "0", SLEN("0") },
+ SMAP(":"),
+ SMAP(","),
+ SMAP(";"),
+ SMAP("{"),
+ SMAP("}"),
+ SMAP("0"),
- { "charset", SLEN("charset") },
- { "import", SLEN("import") },
- { "media", SLEN("media") },
- { "namespace", SLEN("namespace") },
- { "font-face", SLEN("font-face") },
- { "page", SLEN("page") },
+ SMAP("charset"),
+ SMAP("import"),
+ SMAP("media"),
+ SMAP("namespace"),
+ SMAP("font-face"),
+ SMAP("page"),
- { "aural", SLEN("aural") },
- { "braille", SLEN("braille") },
- { "embossed", SLEN("embossed") },
- { "handheld", SLEN("handheld") },
- { "print", SLEN("print") },
- { "projection", SLEN("projection") },
- { "screen", SLEN("screen") },
- { "speech", SLEN("speech") },
- { "tty", SLEN("tty") },
- { "tv", SLEN("tv") },
- { "all", SLEN("all") },
+ SMAP("aural"),
+ SMAP("braille"),
+ SMAP("embossed"),
+ SMAP("handheld"),
+ SMAP("print"),
+ SMAP("projection"),
+ SMAP("screen"),
+ SMAP("speech"),
+ SMAP("tty"),
+ SMAP("tv"),
+ SMAP("all"),
- { "first-child", SLEN("first-child") },
- { "link", SLEN("link") },
- { "visited", SLEN("visited") },
- { "hover", SLEN("hover") },
- { "active", SLEN("active") },
- { "focus", SLEN("focus") },
- { "lang", SLEN("lang") },
- { "first", SLEN("first") },
- { "root", SLEN("root") },
- { "nth-child", SLEN("nth-child") },
- { "nth-last-child", SLEN("nth-last-child") },
- { "nth-of-type", SLEN("nth-of-type") },
- { "nth-last-of-type", SLEN("nth-last-of-type") },
- { "last-child", SLEN("last-child") },
- { "first-of-type", SLEN("first-of-type") },
- { "last-of-type", SLEN("last-of-type") },
- { "only-child", SLEN("only-child") },
- { "only-of-type", SLEN("only-of-type") },
- { "empty", SLEN("empty") },
- { "target", SLEN("target") },
- { "enabled", SLEN("enabled") },
- { "disabled", SLEN("disabled") },
- { "checked", SLEN("checked") },
- { "not", SLEN("not") },
+ SMAP("first-child"),
+ SMAP("link"),
+ SMAP("visited"),
+ SMAP("hover"),
+ SMAP("active"),
+ SMAP("focus"),
+ SMAP("lang"),
+ SMAP("first"),
+ SMAP("root"),
+ SMAP("nth-child"),
+ SMAP("nth-last-child"),
+ SMAP("nth-of-type"),
+ SMAP("nth-last-of-type"),
+ SMAP("last-child"),
+ SMAP("first-of-type"),
+ SMAP("last-of-type"),
+ SMAP("only-child"),
+ SMAP("only-of-type"),
+ SMAP("empty"),
+ SMAP("target"),
+ SMAP("enabled"),
+ SMAP("disabled"),
+ SMAP("checked"),
+ SMAP("not"),
- { "first-line", SLEN("first-line") },
- { "first-letter", SLEN("first-letter") },
- { "before", SLEN("before") },
- { "after", SLEN("after") },
+ SMAP("first-line"),
+ SMAP("first-letter"),
+ SMAP("before"),
+ SMAP("after"),
- { "align-content", SLEN("align-content") },
- { "align-items", SLEN("align-items") },
- { "align-self", SLEN("align-self") },
- { "azimuth", SLEN("azimuth") },
- { "background", SLEN("background") },
- { "background-attachment", SLEN("background-attachment") },
- { "background-color", SLEN("background-color") },
- { "background-image", SLEN("background-image") },
- { "background-position", SLEN("background-position") },
- { "background-repeat", SLEN("background-repeat") },
- { "border", SLEN("border") },
- { "border-bottom", SLEN("border-bottom") },
- { "border-bottom-color", SLEN("border-bottom-color") },
- { "border-bottom-style", SLEN("border-bottom-style") },
- { "border-bottom-width", SLEN("border-bottom-width") },
- { "border-collapse", SLEN("border-collapse") },
- { "border-color", SLEN("border-color") },
- { "border-left", SLEN("border-left") },
- { "border-left-color", SLEN("border-left-color") },
- { "border-left-style", SLEN("border-left-style") },
- { "border-left-width", SLEN("border-left-width") },
- { "border-right", SLEN("border-right") },
- { "border-right-color", SLEN("border-right-color") },
- { "border-right-style", SLEN("border-right-style") },
- { "border-right-width", SLEN("border-right-width") },
- { "border-spacing", SLEN("border-spacing") },
- { "border-style", SLEN("border-style") },
- { "border-top", SLEN("border-top") },
- { "border-top-color", SLEN("border-top-color") },
- { "border-top-style", SLEN("border-top-style") },
- { "border-top-width", SLEN("border-top-width") },
- { "border-width", SLEN("border-width") },
- { "bottom", SLEN("bottom") },
- { "box-sizing", SLEN("box-sizing") },
- { "break-after", SLEN("break-after") },
- { "break-before", SLEN("break-before") },
- { "break-inside", SLEN("break-inside") },
- { "caption-side", SLEN("caption-side") },
- { "clear", SLEN("clear") },
- { "clip", SLEN("clip") },
- { "color", SLEN("color") },
- { "columns", SLEN("columns") },
- { "column-count", SLEN("column-count") },
- { "column-fill", SLEN("column-fill") },
- { "column-gap", SLEN("column-gap") },
- { "column-rule", SLEN("column-rule") },
- { "column-rule-color", SLEN("column-rule-color") },
- { "column-rule-style", SLEN("column-rule-style") },
- { "column-rule-width", SLEN("column-rule_width") },
- { "column-span", SLEN("column-span") },
- { "column-width", SLEN("column-width") },
- { "content", SLEN("content") },
- { "counter-increment", SLEN("counter-increment") },
- { "counter-reset", SLEN("counter-reset") },
- { "cue", SLEN("cue") },
- { "cue-after", SLEN("cue-after") },
- { "cue-before", SLEN("cue-before") },
- { "cursor", SLEN("cursor") },
- { "direction", SLEN("direction") },
- { "display", SLEN("display") },
- { "elevation", SLEN("elevation") },
- { "empty-cells", SLEN("empty-cells") },
- { "flex", SLEN("flex") },
- { "flex-basis", SLEN("flex-basis") },
- { "flex-direction", SLEN("flex-direction") },
- { "flex-flow", SLEN("flex-flow") },
- { "flex-grow", SLEN("flex-grow") },
- { "flex-shrink", SLEN("flex-shrink") },
- { "flex-wrap", SLEN("flex-wrap") },
- { "float", SLEN("float") },
- { "font", SLEN("font") },
- { "font-family", SLEN("font-family") },
- { "font-size", SLEN("font-size") },
- { "font-style", SLEN("font-style") },
- { "font-variant", SLEN("font-variant") },
- { "font-weight", SLEN("font-weight") },
- { "height", SLEN("height") },
- { "justify-content", SLEN("justify-content") },
- { "left", SLEN("left") },
- { "letter-spacing", SLEN("letter-spacing") },
- { "line-height", SLEN("line-height") },
- { "list-style", SLEN("list-style") },
- { "list-style-image", SLEN("list-style-image") },
- { "list-style-position", SLEN("list-style-position") },
- { "list-style-type", SLEN("list-style-type") },
- { "margin", SLEN("margin") },
- { "margin-bottom", SLEN("margin-bottom") },
- { "margin-left", SLEN("margin-left") },
- { "margin-right", SLEN("margin-right") },
- { "margin-top", SLEN("margin-top") },
- { "max-height", SLEN("max-height") },
- { "max-width", SLEN("max-width") },
- { "min-height", SLEN("min-height") },
- { "min-width", SLEN("min-width") },
- { "opacity", SLEN("opacity") },
- { "order", SLEN("order") },
- { "orphans", SLEN("orphans") },
- { "outline", SLEN("outline") },
- { "outline-color", SLEN("outline-color") },
- { "outline-style", SLEN("outline-style") },
- { "outline-width", SLEN("outline-width") },
- { "overflow", SLEN("overflow") },
- { "overflow-x", SLEN("overflow-x") },
- { "overflow-y", SLEN("overflow-y") },
- { "padding", SLEN("padding") },
- { "padding-bottom", SLEN("padding-bottom") },
- { "padding-left", SLEN("padding-left") },
- { "padding-right", SLEN("padding-right") },
- { "padding-top", SLEN("padding-top") },
- { "page-break-after", SLEN("page-break-after") },
- { "page-break-before", SLEN("page-break-before") },
- { "page-break-inside", SLEN("page-break-inside") },
- { "pause", SLEN("pause") },
- { "pause-after", SLEN("pause-after") },
- { "pause-before", SLEN("pause-before") },
- { "pitch-range", SLEN("pitch-range") },
- { "pitch", SLEN("pitch") },
- { "play-during", SLEN("play-during") },
- { "position", SLEN("position") },
- { "quotes", SLEN("quotes") },
- { "richness", SLEN("richness") },
- { "right", SLEN("right") },
- { "speak-header", SLEN("speak-header") },
- { "speak-numeral", SLEN("speak-numeral") },
- { "speak-punctuation", SLEN("speak-punctuation") },
- { "speak", SLEN("speak") },
- { "speech-rate", SLEN("speech-rate") },
- { "stress", SLEN("stress") },
- { "table-layout", SLEN("table-layout") },
- { "text-align", SLEN("text-align") },
- { "text-decoration", SLEN("text-decoration") },
- { "text-indent", SLEN("text-indent") },
- { "text-transform", SLEN("text-transform") },
- { "top", SLEN("top") },
- { "unicode-bidi", SLEN("unicode-bidi") },
- { "vertical-align", SLEN("vertical-align") },
- { "visibility", SLEN("visibility") },
- { "voice-family", SLEN("voice-family") },
- { "volume", SLEN("volume") },
- { "white-space", SLEN("white-space") },
- { "widows", SLEN("widows") },
- { "width", SLEN("width") },
- { "word-spacing", SLEN("word-spacing") },
- { "writing-mode", SLEN("writing-mode") },
- { "z-index", SLEN("z-index") },
+ SMAP("align-content"),
+ SMAP("align-items"),
+ SMAP("align-self"),
+ SMAP("azimuth"),
+ SMAP("background"),
+ SMAP("background-attachment"),
+ SMAP("background-color"),
+ SMAP("background-image"),
+ SMAP("background-position"),
+ SMAP("background-repeat"),
+ SMAP("border"),
+ SMAP("border-bottom"),
+ SMAP("border-bottom-color"),
+ SMAP("border-bottom-style"),
+ SMAP("border-bottom-width"),
+ SMAP("border-collapse"),
+ SMAP("border-color"),
+ SMAP("border-left"),
+ SMAP("border-left-color"),
+ SMAP("border-left-style"),
+ SMAP("border-left-width"),
+ SMAP("border-right"),
+ SMAP("border-right-color"),
+ SMAP("border-right-style"),
+ SMAP("border-right-width"),
+ SMAP("border-spacing"),
+ SMAP("border-style"),
+ SMAP("border-top"),
+ SMAP("border-top-color"),
+ SMAP("border-top-style"),
+ SMAP("border-top-width"),
+ SMAP("border-width"),
+ SMAP("bottom"),
+ SMAP("box-sizing"),
+ SMAP("break-after"),
+ SMAP("break-before"),
+ SMAP("break-inside"),
+ SMAP("caption-side"),
+ SMAP("clear"),
+ SMAP("clip"),
+ SMAP("color"),
+ SMAP("columns"),
+ SMAP("column-count"),
+ SMAP("column-fill"),
+ SMAP("column-gap"),
+ SMAP("column-rule"),
+ SMAP("column-rule-color"),
+ SMAP("column-rule-style"),
+ SMAP("column-rule-width"),
+ SMAP("column-span"),
+ SMAP("column-width"),
+ SMAP("content"),
+ SMAP("counter-increment"),
+ SMAP("counter-reset"),
+ SMAP("cue"),
+ SMAP("cue-after"),
+ SMAP("cue-before"),
+ SMAP("cursor"),
+ SMAP("direction"),
+ SMAP("display"),
+ SMAP("elevation"),
+ SMAP("empty-cells"),
+ SMAP("flex"),
+ SMAP("flex-basis"),
+ SMAP("flex-direction"),
+ SMAP("flex-flow"),
+ SMAP("flex-grow"),
+ SMAP("flex-shrink"),
+ SMAP("flex-wrap"),
+ SMAP("float"),
+ SMAP("font"),
+ SMAP("font-family"),
+ SMAP("font-size"),
+ SMAP("font-style"),
+ SMAP("font-variant"),
+ SMAP("font-weight"),
+ SMAP("height"),
+ SMAP("justify-content"),
+ SMAP("left"),
+ SMAP("letter-spacing"),
+ SMAP("line-height"),
+ SMAP("list-style"),
+ SMAP("list-style-image"),
+ SMAP("list-style-position"),
+ SMAP("list-style-type"),
+ SMAP("margin"),
+ SMAP("margin-bottom"),
+ SMAP("margin-left"),
+ SMAP("margin-right"),
+ SMAP("margin-top"),
+ SMAP("max-height"),
+ SMAP("max-width"),
+ SMAP("min-height"),
+ SMAP("min-width"),
+ SMAP("opacity"),
+ SMAP("order"),
+ SMAP("orphans"),
+ SMAP("outline"),
+ SMAP("outline-color"),
+ SMAP("outline-style"),
+ SMAP("outline-width"),
+ SMAP("overflow"),
+ SMAP("overflow-x"),
+ SMAP("overflow-y"),
+ SMAP("padding"),
+ SMAP("padding-bottom"),
+ SMAP("padding-left"),
+ SMAP("padding-right"),
+ SMAP("padding-top"),
+ SMAP("page-break-after"),
+ SMAP("page-break-before"),
+ SMAP("page-break-inside"),
+ SMAP("pause"),
+ SMAP("pause-after"),
+ SMAP("pause-before"),
+ SMAP("pitch-range"),
+ SMAP("pitch"),
+ SMAP("play-during"),
+ SMAP("position"),
+ SMAP("quotes"),
+ SMAP("richness"),
+ SMAP("right"),
+ SMAP("speak-header"),
+ SMAP("speak-numeral"),
+ SMAP("speak-punctuation"),
+ SMAP("speak"),
+ SMAP("speech-rate"),
+ SMAP("stress"),
+ SMAP("table-layout"),
+ SMAP("text-align"),
+ SMAP("text-decoration"),
+ SMAP("text-indent"),
+ SMAP("text-transform"),
+ SMAP("top"),
+ SMAP("unicode-bidi"),
+ SMAP("vertical-align"),
+ SMAP("visibility"),
+ SMAP("voice-family"),
+ SMAP("volume"),
+ SMAP("white-space"),
+ SMAP("widows"),
+ SMAP("width"),
+ SMAP("word-spacing"),
+ SMAP("writing-mode"),
+ SMAP("z-index"),
- { "inherit", SLEN("inherit") },
- { "important", SLEN("important") },
- { "none", SLEN("none") },
- { "both", SLEN("both") },
- { "fixed", SLEN("fixed") },
- { "scroll", SLEN("scroll") },
- { "transparent", SLEN("transparent") },
- { "no-repeat", SLEN("no-repeat") },
- { "repeat-x", SLEN("repeat-x") },
- { "repeat-y", SLEN("repeat-y") },
- { "repeat", SLEN("repeat") },
- { "hidden", SLEN("hidden") },
- { "dotted", SLEN("dotted") },
- { "dashed", SLEN("dashed") },
- { "solid", SLEN("solid") },
- { "double", SLEN("double") },
- { "groove", SLEN("groove") },
- { "ridge", SLEN("ridge") },
- { "inset", SLEN("inset") },
- { "outset", SLEN("outset") },
- { "thin", SLEN("thin") },
- { "medium", SLEN("medium") },
- { "thick", SLEN("thick") },
- { "collapse", SLEN("collapse") },
- { "separate", SLEN("separate") },
- { "auto", SLEN("auto") },
- { "ltr", SLEN("ltr") },
- { "rtl", SLEN("rtl") },
- { "inline", SLEN("inline") },
- { "block", SLEN("block") },
- { "list-item", SLEN("list-item") },
- { "run-in", SLEN("run-in") },
- { "inline-block", SLEN("inline-block") },
- { "table", SLEN("table") },
- { "inline-table", SLEN("inline-table") },
- { "table-row-group", SLEN("table-row-group") },
- { "table-header-group", SLEN("table-header-group") },
- { "table-footer-group", SLEN("table-footer-group") },
- { "table-row", SLEN("table-row") },
- { "table-column-group", SLEN("table-column-group") },
- { "table-column", SLEN("table-column") },
- { "table-cell", SLEN("table-cell") },
- { "table-caption", SLEN("table-caption") },
- { "below", SLEN("below") },
- { "level", SLEN("level") },
- { "above", SLEN("above") },
- { "higher", SLEN("higher") },
- { "lower", SLEN("lower") },
- { "show", SLEN("show") },
- { "hide", SLEN("hide") },
- { "xx-small", SLEN("xx-small") },
- { "x-small", SLEN("x-small") },
- { "small", SLEN("small") },
- { "large", SLEN("large") },
- { "x-large", SLEN("x-large") },
- { "xx-large", SLEN("xx-large") },
- { "larger", SLEN("larger") },
- { "smaller", SLEN("smaller") },
- { "normal", SLEN("normal") },
- { "italic", SLEN("italic") },
- { "oblique", SLEN("oblique") },
- { "small-caps", SLEN("small-caps") },
- { "bold", SLEN("bold") },
- { "bolder", SLEN("bolder") },
- { "lighter", SLEN("lighter") },
- { "inside", SLEN("inside") },
- { "outside", SLEN("outside") },
- { "disc", SLEN("disc") },
- { "circle", SLEN("circle") },
- { "square", SLEN("square") },
- { "decimal", SLEN("decimal") },
- { "decimal-leading-zero", SLEN("decimal-leading-zero") },
- { "lower-roman", SLEN("lower-roman") },
- { "upper-roman", SLEN("upper-roman") },
- { "lower-greek", SLEN("lower-greek") },
- { "lower-latin", SLEN("lower-latin") },
- { "upper-latin", SLEN("upper-latin") },
- { "armenian", SLEN("armenian") },
- { "georgian", SLEN("georgian") },
- { "lower-alpha", SLEN("lower-alpha") },
- { "upper-alpha", SLEN("upper-alpha") },
- { "binary", SLEN("binary") },
- { "octal", SLEN("octal") },
- { "lower-hexadecimal", SLEN("lower-hexadecimal") },
- { "upper-hexadecimal", SLEN("upper-hexadecimal") },
- { "arabic-indic", SLEN("arabic-indic") },
- { "lower-armenian", SLEN("lower-armenian") },
- { "upper-armenian", SLEN("upper-armenian") },
- { "bengali", SLEN("bengali") },
- { "cambodian", SLEN("cambodian") },
- { "khmer", SLEN("khmer") },
- { "cjk-decimal", SLEN("cjk-decimal") },
- { "devanagari", SLEN("devanagari") },
- { "gujarati", SLEN("gujarati") },
- { "gurmukhi", SLEN("gurmukhi") },
- { "hebrew", SLEN("hebrew") },
- { "kannada", SLEN("kannada") },
- { "lao", SLEN("lao") },
- { "malayalam", SLEN("malayalam") },
- { "mongolian", SLEN("mongolian") },
- { "myanmar", SLEN("myanmar") },
- { "oriya", SLEN("oriya") },
- { "persian", SLEN("persian") },
- { "tamil", SLEN("tamil") },
- { "telugu", SLEN("telugu") },
- { "thai", SLEN("thai") },
- { "tibetan", SLEN("tibetan") },
- { "cjk-earthly-branch", SLEN("cjk-earthly-branch") },
- { "cjk-heavenly-stem", SLEN("cjk-heavenly-stem") },
- { "hiragana", SLEN("hiragana") },
- { "hiragana-iroha", SLEN("hiragana-iroha") },
- { "katakana", SLEN("katakana") },
- { "katakana-iroha", SLEN("katakana-iroha") },
- { "invert", SLEN("invert") },
- { "visible", SLEN("visible") },
- { "always", SLEN("always") },
- { "avoid", SLEN("avoid") },
- { "x-low", SLEN("x-low") },
- { "low", SLEN("low") },
- { "high", SLEN("high") },
- { "x-high", SLEN("x-high") },
- { "static", SLEN("static") },
- { "relative", SLEN("relative") },
- { "absolute", SLEN("absolute") },
- { "once", SLEN("once") },
- { "digits", SLEN("digits") },
- { "continuous", SLEN("continuous") },
- { "code", SLEN("code") },
- { "spell-out", SLEN("spell-out") },
- { "x-slow", SLEN("x-slow") },
- { "slow", SLEN("slow") },
- { "fast", SLEN("fast") },
- { "x-fast", SLEN("x-fast") },
- { "faster", SLEN("faster") },
- { "slower", SLEN("slower") },
- { "center", SLEN("center") },
- { "justify", SLEN("justify") },
- { "capitalize", SLEN("capitalize") },
- { "uppercase", SLEN("uppercase") },
- { "lowercase", SLEN("lowercase") },
- { "embed", SLEN("embed") },
- { "bidi-override", SLEN("bidi-override") },
- { "baseline", SLEN("baseline") },
- { "sub", SLEN("sub") },
- { "super", SLEN("super") },
- { "text-top", SLEN("text-top") },
- { "middle", SLEN("middle") },
- { "text-bottom", SLEN("text-bottom") },
- { "silent", SLEN("silent") },
- { "x-soft", SLEN("x-soft") },
- { "soft", SLEN("soft") },
- { "loud", SLEN("loud") },
- { "x-loud", SLEN("x-loud") },
- { "pre", SLEN("pre") },
- { "nowrap", SLEN("nowrap") },
- { "pre-wrap", SLEN("pre-wrap") },
- { "pre-line", SLEN("pre-line") },
- { "leftwards", SLEN("leftwards") },
- { "rightwards", SLEN("rightwards") },
- { "left-side", SLEN("left-side") },
- { "far-left", SLEN("far-left") },
- { "center-left", SLEN("center-left") },
- { "center-right", SLEN("center-right") },
- { "far-right", SLEN("far-right") },
- { "right-side", SLEN("right-side") },
- { "behind", SLEN("behind") },
- { "rect", SLEN("rect") },
- { "open-quote", SLEN("open-quote") },
- { "close-quote", SLEN("close-quote") },
- { "no-open-quote", SLEN("no-open-quote") },
- { "no-close-quote", SLEN("no-close-quote") },
- { "attr", SLEN("attr") },
- { "counter", SLEN("counter") },
- { "counters", SLEN("counters") },
- { "crosshair", SLEN("crosshair") },
- { "default", SLEN("default") },
- { "pointer", SLEN("pointer") },
- { "move", SLEN("move") },
- { "e-resize", SLEN("e-resize") },
- { "ne-resize", SLEN("ne-resize") },
- { "nw-resize", SLEN("nw-resize") },
- { "n-resize", SLEN("n-resize") },
- { "se-resize", SLEN("se-resize") },
- { "sw-resize", SLEN("sw-resize") },
- { "s-resize", SLEN("s-resize") },
- { "w-resize", SLEN("w-resize") },
- { "text", SLEN("text") },
- { "wait", SLEN("wait") },
- { "help", SLEN("help") },
- { "progress", SLEN("progress") },
- { "serif", SLEN("serif") },
- { "sans-serif", SLEN("sans-serif") },
- { "cursive", SLEN("cursive") },
- { "fantasy", SLEN("fantasy") },
- { "monospace", SLEN("monospace") },
- { "male", SLEN("male") },
- { "female", SLEN("female") },
- { "child", SLEN("child") },
- { "mix", SLEN("mix") },
- { "underline", SLEN("underline") },
- { "overline", SLEN("overline") },
- { "line-through", SLEN("line-through") },
- { "blink", SLEN("blink") },
- { "rgb", SLEN("rgb") },
- { "rgba", SLEN("rgba") },
- { "hsl", SLEN("hsl") },
- { "hsla", SLEN("hsla") },
- { "-libcss-left", SLEN("-libcss-left") },
- { "-libcss-center", SLEN("-libcss-center") },
- { "-libcss-right", SLEN("-libcss-right") },
- { "currentColor", SLEN("currentColor") },
- { "odd", SLEN("odd") },
- { "even", SLEN("even") },
- { "src", SLEN("src") },
- { "local", SLEN("local") },
- { "initial", SLEN("initial") },
- { "format", SLEN("format") },
- { "woff", SLEN("woff") },
- { "truetype", SLEN("truetype") },
- { "opentype", SLEN("opentype") },
- { "embedded-opentype", SLEN("embedded-opentype") },
- { "svg", SLEN("svg") },
- { "column", SLEN("column") },
- { "avoid-page", SLEN("avoid_page") },
- { "avoid-column", SLEN("avoid-column") },
- { "balance", SLEN("balance") },
- { "horizontal-tb", SLEN("horizontal-tb") },
- { "vertical-rl", SLEN("vertical-rl") },
- { "vertical-lr", SLEN("vertical-lr") },
- { "content-box", SLEN("content-box") },
- { "border-box", SLEN("border-box") },
- { "stretch", SLEN("stretch") },
- { "inline-flex", SLEN("inline-flex") },
- { "flex-start", SLEN("flex-start") },
- { "flex-end", SLEN("flex-end") },
- { "space-between", SLEN("space-between") },
- { "space-around", SLEN("space-around") },
- { "space-evenly", SLEN("space-evenly") },
- { "row", SLEN("row") },
- { "row-reverse", SLEN("row-reverse") },
- { "column-reverse", SLEN("column-reverse") },
- { "wrap", SLEN("wrap") },
- { "wrap-reverse", SLEN("wrap-reverse") },
- { "and", SLEN("and") },
- { "or", SLEN("or") },
- { "only", SLEN("only") },
- { "infinite", SLEN("infinite") },
+ SMAP("inherit"),
+ SMAP("important"),
+ SMAP("none"),
+ SMAP("both"),
+ SMAP("fixed"),
+ SMAP("scroll"),
+ SMAP("transparent"),
+ SMAP("no-repeat"),
+ SMAP("repeat-x"),
+ SMAP("repeat-y"),
+ SMAP("repeat"),
+ SMAP("hidden"),
+ SMAP("dotted"),
+ SMAP("dashed"),
+ SMAP("solid"),
+ SMAP("double"),
+ SMAP("groove"),
+ SMAP("ridge"),
+ SMAP("inset"),
+ SMAP("outset"),
+ SMAP("thin"),
+ SMAP("medium"),
+ SMAP("thick"),
+ SMAP("collapse"),
+ SMAP("separate"),
+ SMAP("auto"),
+ SMAP("ltr"),
+ SMAP("rtl"),
+ SMAP("inline"),
+ SMAP("block"),
+ SMAP("list-item"),
+ SMAP("run-in"),
+ SMAP("inline-block"),
+ SMAP("table"),
+ SMAP("inline-table"),
+ SMAP("table-row-group"),
+ SMAP("table-header-group"),
+ SMAP("table-footer-group"),
+ SMAP("table-row"),
+ SMAP("table-column-group"),
+ SMAP("table-column"),
+ SMAP("table-cell"),
+ SMAP("table-caption"),
+ SMAP("below"),
+ SMAP("level"),
+ SMAP("above"),
+ SMAP("higher"),
+ SMAP("lower"),
+ SMAP("show"),
+ SMAP("hide"),
+ SMAP("xx-small"),
+ SMAP("x-small"),
+ SMAP("small"),
+ SMAP("large"),
+ SMAP("x-large"),
+ SMAP("xx-large"),
+ SMAP("larger"),
+ SMAP("smaller"),
+ SMAP("normal"),
+ SMAP("italic"),
+ SMAP("oblique"),
+ SMAP("small-caps"),
+ SMAP("bold"),
+ SMAP("bolder"),
+ SMAP("lighter"),
+ SMAP("inside"),
+ SMAP("outside"),
+ SMAP("disc"),
+ SMAP("circle"),
+ SMAP("square"),
+ SMAP("decimal"),
+ SMAP("decimal-leading-zero"),
+ SMAP("lower-roman"),
+ SMAP("upper-roman"),
+ SMAP("lower-greek"),
+ SMAP("lower-latin"),
+ SMAP("upper-latin"),
+ SMAP("armenian"),
+ SMAP("georgian"),
+ SMAP("lower-alpha"),
+ SMAP("upper-alpha"),
+ SMAP("binary"),
+ SMAP("octal"),
+ SMAP("lower-hexadecimal"),
+ SMAP("upper-hexadecimal"),
+ SMAP("arabic-indic"),
+ SMAP("lower-armenian"),
+ SMAP("upper-armenian"),
+ SMAP("bengali"),
+ SMAP("cambodian"),
+ SMAP("khmer"),
+ SMAP("cjk-decimal"),
+ SMAP("devanagari"),
+ SMAP("gujarati"),
+ SMAP("gurmukhi"),
+ SMAP("hebrew"),
+ SMAP("kannada"),
+ SMAP("lao"),
+ SMAP("malayalam"),
+ SMAP("mongolian"),
+ SMAP("myanmar"),
+ SMAP("oriya"),
+ SMAP("persian"),
+ SMAP("tamil"),
+ SMAP("telugu"),
+ SMAP("thai"),
+ SMAP("tibetan"),
+ SMAP("cjk-earthly-branch"),
+ SMAP("cjk-heavenly-stem"),
+ SMAP("hiragana"),
+ SMAP("hiragana-iroha"),
+ SMAP("katakana"),
+ SMAP("katakana-iroha"),
+ SMAP("invert"),
+ SMAP("visible"),
+ SMAP("always"),
+ SMAP("avoid"),
+ SMAP("x-low"),
+ SMAP("low"),
+ SMAP("high"),
+ SMAP("x-high"),
+ SMAP("static"),
+ SMAP("relative"),
+ SMAP("absolute"),
+ SMAP("once"),
+ SMAP("digits"),
+ SMAP("continuous"),
+ SMAP("code"),
+ SMAP("spell-out"),
+ SMAP("x-slow"),
+ SMAP("slow"),
+ SMAP("fast"),
+ SMAP("x-fast"),
+ SMAP("faster"),
+ SMAP("slower"),
+ SMAP("center"),
+ SMAP("justify"),
+ SMAP("capitalize"),
+ SMAP("uppercase"),
+ SMAP("lowercase"),
+ SMAP("embed"),
+ SMAP("bidi-override"),
+ SMAP("baseline"),
+ SMAP("sub"),
+ SMAP("super"),
+ SMAP("text-top"),
+ SMAP("middle"),
+ SMAP("text-bottom"),
+ SMAP("silent"),
+ SMAP("x-soft"),
+ SMAP("soft"),
+ SMAP("loud"),
+ SMAP("x-loud"),
+ SMAP("pre"),
+ SMAP("nowrap"),
+ SMAP("pre-wrap"),
+ SMAP("pre-line"),
+ SMAP("leftwards"),
+ SMAP("rightwards"),
+ SMAP("left-side"),
+ SMAP("far-left"),
+ SMAP("center-left"),
+ SMAP("center-right"),
+ SMAP("far-right"),
+ SMAP("right-side"),
+ SMAP("behind"),
+ SMAP("rect"),
+ SMAP("open-quote"),
+ SMAP("close-quote"),
+ SMAP("no-open-quote"),
+ SMAP("no-close-quote"),
+ SMAP("attr"),
+ SMAP("counter"),
+ SMAP("counters"),
+ SMAP("crosshair"),
+ SMAP("default"),
+ SMAP("pointer"),
+ SMAP("move"),
+ SMAP("e-resize"),
+ SMAP("ne-resize"),
+ SMAP("nw-resize"),
+ SMAP("n-resize"),
+ SMAP("se-resize"),
+ SMAP("sw-resize"),
+ SMAP("s-resize"),
+ SMAP("w-resize"),
+ SMAP("text"),
+ SMAP("wait"),
+ SMAP("help"),
+ SMAP("progress"),
+ SMAP("serif"),
+ SMAP("sans-serif"),
+ SMAP("cursive"),
+ SMAP("fantasy"),
+ SMAP("monospace"),
+ SMAP("male"),
+ SMAP("female"),
+ SMAP("child"),
+ SMAP("mix"),
+ SMAP("underline"),
+ SMAP("overline"),
+ SMAP("line-through"),
+ SMAP("blink"),
+ SMAP("rgb"),
+ SMAP("rgba"),
+ SMAP("hsl"),
+ SMAP("hsla"),
+ SMAP("-libcss-left"),
+ SMAP("-libcss-center"),
+ SMAP("-libcss-right"),
+ SMAP("currentColor"),
+ SMAP("odd"),
+ SMAP("even"),
+ SMAP("src"),
+ SMAP("local"),
+ SMAP("initial"),
+ SMAP("format"),
+ SMAP("woff"),
+ SMAP("truetype"),
+ SMAP("opentype"),
+ SMAP("embedded-opentype"),
+ SMAP("svg"),
+ SMAP("column"),
+ SMAP("avoid-page"),
+ SMAP("avoid-column"),
+ SMAP("balance"),
+ SMAP("horizontal-tb"),
+ SMAP("vertical-rl"),
+ SMAP("vertical-lr"),
+ SMAP("content-box"),
+ SMAP("border-box"),
+ SMAP("stretch"),
+ SMAP("inline-flex"),
+ SMAP("flex-start"),
+ SMAP("flex-end"),
+ SMAP("space-between"),
+ SMAP("space-around"),
+ SMAP("space-evenly"),
+ SMAP("row"),
+ SMAP("row-reverse"),
+ SMAP("column-reverse"),
+ SMAP("wrap"),
+ SMAP("wrap-reverse"),
+ SMAP("and"),
+ SMAP("or"),
+ SMAP("only"),
+ SMAP("infinite"),
- { "aliceblue", SLEN("aliceblue") },
- { "antiquewhite", SLEN("antiquewhite") },
- { "aqua", SLEN("aqua") },
- { "aquamarine", SLEN("aquamarine") },
- { "azure", SLEN("azure") },
- { "beige", SLEN("beige") },
- { "bisque", SLEN("bisque") },
- { "black", SLEN("black") },
- { "blanchedalmond", SLEN("blanchedalmond") },
- { "blue", SLEN("blue") },
- { "blueviolet", SLEN("blueviolet") },
- { "brown", SLEN("brown") },
- { "burlywood", SLEN("burlywood") },
- { "cadetblue", SLEN("cadetblue") },
- { "chartreuse", SLEN("chartreuse") },
- { "chocolate", SLEN("chocolate") },
- { "coral", SLEN("coral") },
- { "cornflowerblue", SLEN("cornflowerblue") },
- { "cornsilk", SLEN("cornsilk") },
- { "crimson", SLEN("crimson") },
- { "cyan", SLEN("cyan") },
- { "darkblue", SLEN("darkblue") },
- { "darkcyan", SLEN("darkcyan") },
- { "darkgoldenrod", SLEN("darkgoldenrod") },
- { "darkgray", SLEN("darkgray") },
- { "darkgreen", SLEN("darkgreen") },
- { "darkgrey", SLEN("darkgrey") },
- { "darkkhaki", SLEN("darkkhaki") },
- { "darkmagenta", SLEN("darkmagenta") },
- { "darkolivegreen", SLEN("darkolivegreen") },
- { "darkorange", SLEN("darkorange") },
- { "darkorchid", SLEN("darkorchid") },
- { "darkred", SLEN("darkred") },
- { "darksalmon", SLEN("darksalmon") },
- { "darkseagreen", SLEN("darkseagreen") },
- { "darkslateblue", SLEN("darkslateblue") },
- { "darkslategray", SLEN("darkslategray") },
- { "darkslategrey", SLEN("darkslategrey") },
- { "darkturquoise", SLEN("darkturquoise") },
- { "darkviolet", SLEN("darkviolet") },
- { "deeppink", SLEN("deeppink") },
- { "deepskyblue", SLEN("deepskyblue") },
- { "dimgray", SLEN("dimgray") },
- { "dimgrey", SLEN("dimgrey") },
- { "dodgerblue", SLEN("dodgerblue") },
- { "feldspar", SLEN("feldspar") },
- { "firebrick", SLEN("firebrick") },
- { "floralwhite", SLEN("floralwhite") },
- { "forestgreen", SLEN("forestgreen") },
- { "fuchsia", SLEN("fuchsia") },
- { "gainsboro", SLEN("gainsboro") },
- { "ghostwhite", SLEN("ghostwhite") },
- { "gold", SLEN("gold") },
- { "goldenrod", SLEN("goldenrod") },
- { "gray", SLEN("gray") },
- { "green", SLEN("green") },
- { "greenyellow", SLEN("greenyellow") },
- { "grey", SLEN("grey") },
- { "honeydew", SLEN("honeydew") },
- { "hotpink", SLEN("hotpink") },
- { "indianred", SLEN("indianred") },
- { "indigo", SLEN("indigo") },
- { "ivory", SLEN("ivory") },
- { "khaki", SLEN("khaki") },
- { "lavender", SLEN("lavender") },
- { "lavenderblush", SLEN("lavenderblush") },
- { "lawngreen", SLEN("lawngreen") },
- { "lemonchiffon", SLEN("lemonchiffon") },
- { "lightblue", SLEN("lightblue") },
- { "lightcoral", SLEN("lightcoral") },
- { "lightcyan", SLEN("lightcyan") },
- { "lightgoldenrodyellow", SLEN("lightgoldenrodyellow") },
- { "lightgray", SLEN("lightgray") },
- { "lightgreen", SLEN("lightgreen") },
- { "lightgrey", SLEN("lightgrey") },
- { "lightpink", SLEN("lightpink") },
- { "lightsalmon", SLEN("lightsalmon") },
- { "lightseagreen", SLEN("lightseagreen") },
- { "lightskyblue", SLEN("lightskyblue") },
- { "lightslateblue", SLEN("lightslateblue") },
- { "lightslategray", SLEN("lightslategray") },
- { "lightslategrey", SLEN("lightslategrey") },
- { "lightsteelblue", SLEN("lightsteelblue") },
- { "lightyellow", SLEN("lightyellow") },
- { "lime", SLEN("lime") },
- { "limegreen", SLEN("limegreen") },
- { "linen", SLEN("linen") },
- { "magenta", SLEN("magenta") },
- { "maroon", SLEN("maroon") },
- { "mediumaquamarine", SLEN("mediumaquamarine") },
- { "mediumblue", SLEN("mediumblue") },
- { "mediumorchid", SLEN("mediumorchid") },
- { "mediumpurple", SLEN("mediumpurple") },
- { "mediumseagreen", SLEN("mediumseagreen") },
- { "mediumslateblue", SLEN("mediumslateblue") },
- { "mediumspringgreen", SLEN("mediumspringgreen") },
- { "mediumturquoise", SLEN("mediumturquoise") },
- { "mediumvioletred", SLEN("mediumvioletred") },
- { "midnightblue", SLEN("midnightblue") },
- { "mintcream", SLEN("mintcream") },
- { "mistyrose", SLEN("mistyrose") },
- { "moccasin", SLEN("moccasin") },
- { "navajowhite", SLEN("navajowhite") },
- { "navy", SLEN("navy") },
- { "oldlace", SLEN("oldlace") },
- { "olive", SLEN("olive") },
- { "olivedrab", SLEN("olivedrab") },
- { "orange", SLEN("orange") },
- { "orangered", SLEN("orangered") },
- { "orchid", SLEN("orchid") },
- { "palegoldenrod", SLEN("palegoldenrod") },
- { "palegreen", SLEN("palegreen") },
- { "paleturquoise", SLEN("paleturquoise") },
- { "palevioletred", SLEN("palevioletred") },
- { "papayawhip", SLEN("papayawhip") },
- { "peachpuff", SLEN("peachpuff") },
- { "peru", SLEN("peru") },
- { "pink", SLEN("pink") },
- { "plum", SLEN("plum") },
- { "powderblue", SLEN("powderblue") },
- { "purple", SLEN("purple") },
- { "red", SLEN("red") },
- { "rosybrown", SLEN("rosybrown") },
- { "royalblue", SLEN("royalblue") },
- { "saddlebrown", SLEN("saddlebrown") },
- { "salmon", SLEN("salmon") },
- { "sandybrown", SLEN("sandybrown") },
- { "seagreen", SLEN("seagreen") },
- { "seashell", SLEN("seashell") },
- { "sienna", SLEN("sienna") },
- { "silver", SLEN("silver") },
- { "skyblue", SLEN("skyblue") },
- { "slateblue", SLEN("slateblue") },
- { "slategray", SLEN("slategray") },
- { "slategrey", SLEN("slategrey") },
- { "snow", SLEN("snow") },
- { "springgreen", SLEN("springgreen") },
- { "steelblue", SLEN("steelblue") },
- { "tan", SLEN("tan") },
- { "teal", SLEN("teal") },
- { "thistle", SLEN("thistle") },
- { "tomato", SLEN("tomato") },
- { "turquoise", SLEN("turquoise") },
- { "violet", SLEN("violet") },
- { "violetred", SLEN("violetred") },
- { "wheat", SLEN("wheat") },
- { "white", SLEN("white") },
- { "whitesmoke", SLEN("whitesmoke") },
- { "yellow", SLEN("yellow") },
- { "yellowgreen", SLEN("yellowgreen") }
+ SMAP("aliceblue"),
+ SMAP("antiquewhite"),
+ SMAP("aqua"),
+ SMAP("aquamarine"),
+ SMAP("azure"),
+ SMAP("beige"),
+ SMAP("bisque"),
+ SMAP("black"),
+ SMAP("blanchedalmond"),
+ SMAP("blue"),
+ SMAP("blueviolet"),
+ SMAP("brown"),
+ SMAP("burlywood"),
+ SMAP("cadetblue"),
+ SMAP("chartreuse"),
+ SMAP("chocolate"),
+ SMAP("coral"),
+ SMAP("cornflowerblue"),
+ SMAP("cornsilk"),
+ SMAP("crimson"),
+ SMAP("cyan"),
+ SMAP("darkblue"),
+ SMAP("darkcyan"),
+ SMAP("darkgoldenrod"),
+ SMAP("darkgray"),
+ SMAP("darkgreen"),
+ SMAP("darkgrey"),
+ SMAP("darkkhaki"),
+ SMAP("darkmagenta"),
+ SMAP("darkolivegreen"),
+ SMAP("darkorange"),
+ SMAP("darkorchid"),
+ SMAP("darkred"),
+ SMAP("darksalmon"),
+ SMAP("darkseagreen"),
+ SMAP("darkslateblue"),
+ SMAP("darkslategray"),
+ SMAP("darkslategrey"),
+ SMAP("darkturquoise"),
+ SMAP("darkviolet"),
+ SMAP("deeppink"),
+ SMAP("deepskyblue"),
+ SMAP("dimgray"),
+ SMAP("dimgrey"),
+ SMAP("dodgerblue"),
+ SMAP("feldspar"),
+ SMAP("firebrick"),
+ SMAP("floralwhite"),
+ SMAP("forestgreen"),
+ SMAP("fuchsia"),
+ SMAP("gainsboro"),
+ SMAP("ghostwhite"),
+ SMAP("gold"),
+ SMAP("goldenrod"),
+ SMAP("gray"),
+ SMAP("green"),
+ SMAP("greenyellow"),
+ SMAP("grey"),
+ SMAP("honeydew"),
+ SMAP("hotpink"),
+ SMAP("indianred"),
+ SMAP("indigo"),
+ SMAP("ivory"),
+ SMAP("khaki"),
+ SMAP("lavender"),
+ SMAP("lavenderblush"),
+ SMAP("lawngreen"),
+ SMAP("lemonchiffon"),
+ SMAP("lightblue"),
+ SMAP("lightcoral"),
+ SMAP("lightcyan"),
+ SMAP("lightgoldenrodyellow"),
+ SMAP("lightgray"),
+ SMAP("lightgreen"),
+ SMAP("lightgrey"),
+ SMAP("lightpink"),
+ SMAP("lightsalmon"),
+ SMAP("lightseagreen"),
+ SMAP("lightskyblue"),
+ SMAP("lightslateblue"),
+ SMAP("lightslategray"),
+ SMAP("lightslategrey"),
+ SMAP("lightsteelblue"),
+ SMAP("lightyellow"),
+ SMAP("lime"),
+ SMAP("limegreen"),
+ SMAP("linen"),
+ SMAP("magenta"),
+ SMAP("maroon"),
+ SMAP("mediumaquamarine"),
+ SMAP("mediumblue"),
+ SMAP("mediumorchid"),
+ SMAP("mediumpurple"),
+ SMAP("mediumseagreen"),
+ SMAP("mediumslateblue"),
+ SMAP("mediumspringgreen"),
+ SMAP("mediumturquoise"),
+ SMAP("mediumvioletred"),
+ SMAP("midnightblue"),
+ SMAP("mintcream"),
+ SMAP("mistyrose"),
+ SMAP("moccasin"),
+ SMAP("navajowhite"),
+ SMAP("navy"),
+ SMAP("oldlace"),
+ SMAP("olive"),
+ SMAP("olivedrab"),
+ SMAP("orange"),
+ SMAP("orangered"),
+ SMAP("orchid"),
+ SMAP("palegoldenrod"),
+ SMAP("palegreen"),
+ SMAP("paleturquoise"),
+ SMAP("palevioletred"),
+ SMAP("papayawhip"),
+ SMAP("peachpuff"),
+ SMAP("peru"),
+ SMAP("pink"),
+ SMAP("plum"),
+ SMAP("powderblue"),
+ SMAP("purple"),
+ SMAP("red"),
+ SMAP("rosybrown"),
+ SMAP("royalblue"),
+ SMAP("saddlebrown"),
+ SMAP("salmon"),
+ SMAP("sandybrown"),
+ SMAP("seagreen"),
+ SMAP("seashell"),
+ SMAP("sienna"),
+ SMAP("silver"),
+ SMAP("skyblue"),
+ SMAP("slateblue"),
+ SMAP("slategray"),
+ SMAP("slategrey"),
+ SMAP("snow"),
+ SMAP("springgreen"),
+ SMAP("steelblue"),
+ SMAP("tan"),
+ SMAP("teal"),
+ SMAP("thistle"),
+ SMAP("tomato"),
+ SMAP("turquoise"),
+ SMAP("violet"),
+ SMAP("violetred"),
+ SMAP("wheat"),
+ SMAP("white"),
+ SMAP("whitesmoke"),
+ SMAP("yellow"),
+ SMAP("yellowgreen")
};