[webkit-changes] [WebKit/WebKit] e7d1fc: Generate pseudo class & pseudo element maps from a...
Tim Nguyen
noreply at github.com
Mon Jan 1 00:31:01 PST 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: e7d1fc99f36d6b36ad8d9cbf0e5b8728ab1e5855
https://github.com/WebKit/WebKit/commit/e7d1fc99f36d6b36ad8d9cbf0e5b8728ab1e5855
Author: Tim Nguyen <ntim at apple.com>
Date: 2024-01-01 (Mon, 01 Jan 2024)
Changed paths:
M Source/WebCore/CMakeLists.txt
M Source/WebCore/DerivedSources-input.xcfilelist
M Source/WebCore/DerivedSources.make
M Source/WebCore/WebCore.xcodeproj/project.pbxproj
A Source/WebCore/css/CSSPseudoSelectors.json
R Source/WebCore/css/SelectorPseudoClassAndCompatibilityElementMap.in
R Source/WebCore/css/SelectorPseudoElementMap.in
R Source/WebCore/css/makeSelectorPseudoClassAndCompatibilityElementMap.py
R Source/WebCore/css/makeSelectorPseudoElementsMap.py
A Source/WebCore/css/process-css-pseudo-selectors.py
Log Message:
-----------
Generate pseudo class & pseudo element maps from a single JSON file
https://bugs.webkit.org/show_bug.cgi?id=266956
rdar://120333899
Reviewed by Darin Adler.
Instead of using two seperate `.in` files to store pseudo class / element data, use a single `.json` file.
This allows:
- storing the data in a more structured fashion
- storing more data than the `.in` files can hold, opening up the way to more code generation
* Source/WebCore/CMakeLists.txt:
* Source/WebCore/DerivedSources-input.xcfilelist:
* Source/WebCore/DerivedSources.make:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/css/CSSPseudoSelectors.json: Added.
* Source/WebCore/css/SelectorPseudoClassAndCompatibilityElementMap.in: Removed.
* Source/WebCore/css/SelectorPseudoElementMap.in: Removed.
* Source/WebCore/css/makeSelectorPseudoClassAndCompatibilityElementMap.py: Removed.
* Source/WebCore/css/makeSelectorPseudoElementsMap.py: Removed.
* Source/WebCore/css/process-css-pseudo-selectors.py: Added.
(Writer):
(Writer.__init__):
(Writer._current_indent):
(Writer.write):
(Writer.write_block):
(Writer.write_lines):
(Writer.newline):
(Writer.Indent):
(Writer.Indent.__init__):
(Writer.Indent.__enter__):
(Writer.Indent.__exit__):
(Writer.indent):
(key_is_true):
(expand_ifdef_condition):
(format_name_for_enum_class):
(format_name_for_enum_class.format):
(GPerfMappingGenerator):
(GPerfMappingGenerator.__init__):
(GPerfMappingGenerator.is_pseudo_selector_enabled):
(GPerfMappingGenerator.generate_pseudo_class_and_compatibility_element_map):
(GPerfMappingGenerator.generate_pseudo_class_and_compatibility_element_map.in):
(GPerfMappingGenerator.generate_pseudo_element_map):
(GPerfOutputGenerator):
(GPerfOutputGenerator.__init__):
(GPerfOutputGenerator.write_copyright_header):
Canonical link: https://commits.webkit.org/272549@main
More information about the webkit-changes
mailing list