Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: d5bf8c0fa5494958062e3049de89f96568311e41
https://github.com/WebKit/WebKit/commit/d5bf8c0fa5494958062e3049de89f96568311e41
Author: Sam Weinig <[email protected]>
Date: 2025-11-28 (Fri, 28 Nov 2025)
Changed paths:
M Source/WebCore/css/CSSProperties.json
M Source/WebCore/css/scripts/process-css-properties.py
M Source/WebCore/css/scripts/test/TestCSSProperties.json
M
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/CSSPropertyNames.gperf
M
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/CSSPropertyNames.h
M
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/CSSPropertyParsing.cpp
M
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/CSSStyleProperties+PropertyNames.idl
M
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/RenderStyleInlinesGenerated.h
M
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/RenderStyleSettersGenerated.h
M
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleBuilderGenerated.cpp
M
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleExtractorGenerated.cpp
M
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleInterpolationWrapperMap.cpp
M
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StylePropertyShorthandFunctions.cpp
M Source/WebCore/rendering/style/RenderStyle.cpp
M Source/WebCore/rendering/style/RenderStyle.h
M Source/WebCore/rendering/style/RenderStyleInlines.h
M Source/WebCore/rendering/style/RenderStyleSetters.h
M Source/WebCore/style/values/backgrounds/StyleBorderImage.h
M Source/WebCore/style/values/masking/StyleMaskBorder.h
M Tools/Scripts/webkitpy/style/checkers/jsonchecker.py
Log Message:
-----------
[RenderStyleGen] Extend getter/setter generation to more cases
https://bugs.webkit.org/show_bug.cgi?id=303215
Reviewed by Darin Adler.
Extends initial generation of RenderStyle property getters and setters
by introducing a few new codegen options.
- Updated existing option, 'render-style-storage-kind', now supports a
new type 'raw', for types that have fromRaw/toRaw conversions.
- Added new options, 'render-style-getter-custom'/'render-style-setter-custom'
(and 'render-style-initial-custom' for the future) to allow opting out
of generation for just part of the property. This is currently needed
for 'outline-offset', 'outline-width', and 'border-*-width' and
'column-rule-width', which have all additional logic.
- Added new option, 'render-style-storage-name', to allow specifying a string
for the name of the storage member variable. By default, this is equal to
the name of the getter.
- Added new option, 'render-style-storage-container', to specify one of
a few kinds of behaviors for leaf container of the property. The supported
values are:
- 'data': the default, and what you get if nothing is specified. Will
access the leaf container assuming it is within a DataRef.
- 'struct': Will access the leaf container assuming it is a struct.
Basic examples include all the values stored on the NonInheritedFlags
and InheritedFlags structs, but more complex nested cases work as well.
- 'rect-edges': Assume the leaf container is RectEdges-like, using the
logical-property-group resolver associated with the property as the
accessor name.
- 'rect-corners': Assume the leaf container is RectCorners-like, using the
logical-property-group resolver associated with the property as the
accessor name.
* Source/WebCore/css/CSSProperties.json:
* Source/WebCore/css/scripts/process-css-properties.py:
* Source/WebCore/css/scripts/test/TestCSSProperties.json:
*
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/CSSPropertyNames.gperf:
* Source/WebCore/css/scripts/test/TestCSSPropertiesResults/CSSPropertyNames.h:
*
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/CSSPropertyParsing.cpp:
*
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/CSSStyleProperties+PropertyNames.idl:
*
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/RenderStyleInlinesGenerated.h:
*
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/RenderStyleSettersGenerated.h:
*
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleBuilderGenerated.cpp:
*
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleExtractorGenerated.cpp:
*
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleInterpolationWrapperMap.cpp:
*
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StylePropertyShorthandFunctions.cpp:
* Source/WebCore/rendering/style/RenderStyle.cpp:
* Source/WebCore/rendering/style/RenderStyle.h:
* Source/WebCore/rendering/style/RenderStyleInlines.h:
* Source/WebCore/rendering/style/RenderStyleSetters.h:
* Source/WebCore/style/values/backgrounds/StyleBorderImage.h:
* Source/WebCore/style/values/masking/StyleMaskBorder.h:
* Tools/Scripts/webkitpy/style/checkers/jsonchecker.py:
Canonical link: https://commits.webkit.org/303632@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications