[css-lists] Add list-style-type: <string>

This patch extends the syntax of the list-style-type property to accept
arbitrary string values in order to customize the marker contents.

I have followed the same approach as https://crrev.com/c/879135 did for
the display property. When a string is specified for list-style-type,
the patch sets it to a special EListStyleType::kString, and the string
is stored in an extra field. As a result of this split, list-style-type
doesn't use as much auto generated code now, e.g. EListStyleType is not
automatically generated.

Intent to Implement and Ship: list-style-type: <string>
https://groups.google.com/a/chromium.org/forum/#!topic/blink-dev/GojYpoeDbqc

Spec: https://drafts.csswg.org/css-lists/#valdef-list-style-type-string

Bug: 687946

TEST=third_party/blink/web_tests/external/wpt/css/css-lists/list-style-type-string-002.html
TEST=third_party/blink/web_tests/external/wpt/css/css-lists/list-style-type-string-003.html
TEST=third_party/blink/web_tests/external/wpt/css/css-lists/list-style-type-string-004.html
TEST=third_party/blink/web_tests/external/wpt/css/css-lists/list-style-type-string-005a.html
TEST=third_party/blink/web_tests/external/wpt/css/css-lists/list-style-type-string-005b.html
TEST=third_party/blink/web_tests/external/wpt/css/css-lists/list-style-type-string-006.html
TEST=third_party/blink/web_tests/external/wpt/css/css-lists/parsing/list-style-type-computed.html
TEST=third_party/blink/web_tests/external/wpt/css/css-lists/parsing/list-style-type-valid.html
TEST=third_party/blink/web_tests/external/wpt/css/vendor-imports/mozilla/mozilla-central-reftests/lists-3/list-style-type-string-001a.html
TEST=third_party/blink/web_tests/external/wpt/css/vendor-imports/mozilla/mozilla-central-reftests/lists-3/list-style-type-string-001b.html

This patch makes some ::marker tests in css-pseudo fail, but this is
expected because ::marker has not been implemented yet.

Change-Id: I5743b99bc1a8e66679235874623c82650860ea29
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1841472
Commit-Queue: Oriol Brufau <obrufau@igalia.com>
Reviewed-by: Morten Stenshorne <mstensho@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Reviewed-by: Rune Lillesveen <futhark@chromium.org>
Cr-Commit-Position: refs/heads/master@{#704563}
28 files changed