[webkit-changes] [WebKit/WebKit] 278623: Simplify css primitive parsers by creating a stron...

Sam Weinig noreply at github.com
Wed May 8 11:53:51 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 27862391346cb4703757a860478d07f255cf5b57
      https://github.com/WebKit/WebKit/commit/27862391346cb4703757a860478d07f255cf5b57
  Author: Sam Weinig <weinig at apple.com>
  Date:   2024-05-08 (Wed, 08 May 2024)

  Changed paths:
    M Source/WebCore/Sources.txt
    M Source/WebCore/WebCore.xcodeproj/project.pbxproj
    R Source/WebCore/css/CSSFontVariantLigaturesParser.h
    R Source/WebCore/css/CSSFontVariantNumericParser.h
    M Source/WebCore/css/calc/CSSCalcSymbolTable.cpp
    M Source/WebCore/css/calc/CSSCalcSymbolTable.h
    M Source/WebCore/css/color/CSSColorDescriptors.h
    M Source/WebCore/css/parser/CSSCalcParser.cpp
    M Source/WebCore/css/parser/CSSCalcParser.h
    A Source/WebCore/css/parser/CSSFontVariantLigaturesParser.h
    A Source/WebCore/css/parser/CSSFontVariantNumericParser.h
    M Source/WebCore/css/parser/CSSPropertyParser.cpp
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Angle.cpp
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Angle.h
    A Source/WebCore/css/parser/CSSPropertyParserConsumer+AngleDefinitions.h
    A Source/WebCore/css/parser/CSSPropertyParserConsumer+CSSPrimitiveValueResolver.cpp
    A Source/WebCore/css/parser/CSSPropertyParserConsumer+CSSPrimitiveValueResolver.h
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Color.cpp
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Integer.cpp
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Integer.h
    A Source/WebCore/css/parser/CSSPropertyParserConsumer+IntegerDefinitions.h
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Length.cpp
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Length.h
    A Source/WebCore/css/parser/CSSPropertyParserConsumer+LengthDefinitions.h
    R Source/WebCore/css/parser/CSSPropertyParserConsumer+Meta.h
    A Source/WebCore/css/parser/CSSPropertyParserConsumer+MetaConsumer.h
    A Source/WebCore/css/parser/CSSPropertyParserConsumer+MetaConsumerDefinitions.h
    A Source/WebCore/css/parser/CSSPropertyParserConsumer+MetaResolver.h
    A Source/WebCore/css/parser/CSSPropertyParserConsumer+MetaTransformer.h
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+None.cpp
    R Source/WebCore/css/parser/CSSPropertyParserConsumer+None.h
    A Source/WebCore/css/parser/CSSPropertyParserConsumer+NoneDefinitions.h
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Number.cpp
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Number.h
    A Source/WebCore/css/parser/CSSPropertyParserConsumer+NumberDefinitions.h
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Percent.cpp
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Percent.h
    A Source/WebCore/css/parser/CSSPropertyParserConsumer+PercentDefinitions.h
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Primitives.cpp
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Primitives.h
    A Source/WebCore/css/parser/CSSPropertyParserConsumer+RawResolver.cpp
    A Source/WebCore/css/parser/CSSPropertyParserConsumer+RawResolver.h
    A Source/WebCore/css/parser/CSSPropertyParserConsumer+RawTypes.h
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Resolution.cpp
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Resolution.h
    A Source/WebCore/css/parser/CSSPropertyParserConsumer+ResolutionDefinitions.h
    A Source/WebCore/css/parser/CSSPropertyParserConsumer+Symbol.cpp
    A Source/WebCore/css/parser/CSSPropertyParserConsumer+SymbolDefinitions.h
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Time.cpp
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Time.h
    A Source/WebCore/css/parser/CSSPropertyParserConsumer+TimeDefinitions.h
    M Source/WebCore/css/parser/CSSPropertyParserHelpers.cpp
    M Source/WebCore/css/parser/CSSPropertyParserHelpers.h
    M Source/WebCore/css/process-css-properties.py
    M Source/WebCore/css/query/GenericMediaQueryParser.cpp
    M Source/WebCore/page/IntersectionObserver.cpp

  Log Message:
  -----------
  Simplify css primitive parsers by creating a strong split between consuming and resolving
https://bugs.webkit.org/show_bug.cgi?id=273592

Reviewed by Antti Koivisto.

The current primitive consumers for CSS property values combine both consuming (the part
where a token is read and the token range moves forward) and resolving into a value (the
part that does things like, create a CSSPrimitiveValue, or divide the value by 100). This
leads us to have a bunch of duplicate code for each primitive type. For example, for
consuming an angle, we have two complete sets of consumers:

struct AngleRawKnownTokenTypeFunctionConsumer;
struct AngleRawKnownTokenTypeDimensionConsumer;
struct AngleRawKnownTokenTypeNumberConsumer;
struct AngleCSSPrimitiveValueWithCalcWithKnownTokenTypeFunctionConsumer;
struct AngleCSSPrimitiveValueWithCalcWithKnownTokenTypeDimensionConsumer;
struct AngleCSSPrimitiveValueWithCalcWithKnownTokenTypeNumberConsumer;

While the latter CSSPrimitiveValue producing ones can in some cases use the raw value ones,
it is still a lot of unnecessary extra code.

Further more, for each combination of primitive types (e.g. consumePercentOrNumber(...),
we require a consumer struct (PercentOrNumberConsumer) to be declared and manually specified.

This change refactors the consumers so we only require one consume function per-tokentype
per-primitive (so, angle would only need the top three), and combination consumers are
entirely generated based on the inputs.

This is done by having each value specialize the ConsumerDefinition struct, using the
associated "Raw" value struct as the uniqueness token, and declare a single set of token
specific consumers. For instance, for angle the consumer definition is:

    template<> struct ConsumerDefinition<AngleRaw> {
        using type = brigand::list<AngleRaw, UnevaluatedCalc<AngleRaw>>;

        using FunctionToken = AngleKnownTokenTypeFunctionConsumer;
        using DimensionToken = AngleKnownTokenTypeDimensionConsumer;
        using NumberToken = AngleKnownTokenTypeNumberConsumer;
    };

In addition to the per-token consumers, a `type` is also required, which declares the
possible set of return values those consumers can return. In a further refactor this
`type` should go away, as we can compute it at compile time from the consumers. This
structs and the per-token consumer structs are in a new associated header suffixed
with "Definitions.h", as they can bring in more headers than most callers will want,
and can be included very judiciously in only the implementation files than need them.

To consume an angle, a user calls:

    auto result = MetaConsumer<AngleRaw>::consume(range, symbolTable, options);

`result` will have the type `std::variant<AngleRaw, UnevaluatedCalc<AngleRaw>>`
(`UnevaluatedCalc` contains a CSSCalcValue, and exists to make it statically
clear which category of calc was consumed).

To consume an angle or percent, a user calls:

    auto result = MetaConsumer<AngleRaw, PercentRaw>::consume(range, symbolTable, options);

`result` will have the type `std::variant<AngleRaw, UnevaluatedCalc<AngleRaw>, PercentRaw, UnevaluatedCalc<PercentRaw>>`.

These result types are not what callers usually want, so the next step is to
resolve these to either a raw value or generate the appropriate CSSPrimitiveValue
from it. For that, there are two "resolvers", `RawResolver` and `CSSPrimitiveValueResolver`
(they are built using a shared `MetaResolver`). To use them, you follow the same
pattern, passing the result of the MetaConsumer:

   auto raw = RawResolver<AngleRaw, PercentRaw>::resolve(range, symbolTable, options);

Since many of the existing callers want to both consumer and resolve in one shot,
the resolvers have a convenience `consumeAndResolve` function which calls the
MetaConsumer for you.

Currently the resolvers a monolithic. Eventually, we should move them to work
more like the consumers, with type specific resolving happening via specialization.

With this structured approach, we can also remove many of the "consumeFooOrBarOrBaz()"
trampoline functions that were only used by the Color consumer code, and instead the
color consumer calls the MetaConsumer directly using the raw types from the descriptor.

* Source/WebCore/Sources.txt:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/css/calc/CSSCalcSymbolTable.cpp:
(WebCore::CSSCalcSymbolTable::contains const):
* Source/WebCore/css/calc/CSSCalcSymbolTable.h:
* Source/WebCore/css/parser/CSSFontVariantLigaturesParser.h: Renamed from Source/WebCore/css/CSSFontVariantLigaturesParser.h.
(WebCore::CSSFontVariantLigaturesParser::consumeLigature):
(WebCore::CSSFontVariantLigaturesParser::finalizeValue):
* Source/WebCore/css/parser/CSSFontVariantNumericParser.h: Renamed from Source/WebCore/css/CSSFontVariantNumericParser.h.
(WebCore::CSSFontVariantNumericParser::consumeNumeric):
(WebCore::CSSFontVariantNumericParser::finalizeValue):
* Source/WebCore/css/parser/CSSPropertyParser.cpp:
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Angle.cpp:
(WebCore::CSSPropertyParserHelpers::validatedRange):
(WebCore::CSSPropertyParserHelpers::AngleKnownTokenTypeFunctionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::AngleKnownTokenTypeDimensionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::AngleKnownTokenTypeNumberConsumer::consume):
(WebCore::CSSPropertyParserHelpers::consumeAngleRaw):
(WebCore::CSSPropertyParserHelpers::consumeAngle):
(WebCore::CSSPropertyParserHelpers::consumeAngleOrPercent):
(WebCore::CSSPropertyParserHelpers::consumeAngleOrNumberOrNoneRaw):
(WebCore::CSSPropertyParserHelpers::consumeAngleOrNumberOrNoneRawAllowingSymbolTableIdent):
(WebCore::CSSPropertyParserHelpers::consumeAngleOrNumberOrNone):
(WebCore::CSSPropertyParserHelpers::consumeAngleOrNumberOrNoneAllowingSymbolTableIdent):
(WebCore::CSSPropertyParserHelpers::AngleRawKnownTokenTypeFunctionConsumer::consume): Deleted.
(WebCore::CSSPropertyParserHelpers::AngleRawKnownTokenTypeDimensionConsumer::consume): Deleted.
(WebCore::CSSPropertyParserHelpers::AngleRawKnownTokenTypeNumberConsumer::consume): Deleted.
(WebCore::CSSPropertyParserHelpers::AngleCSSPrimitiveValueWithCalcWithKnownTokenTypeFunctionConsumer::consume): Deleted.
(WebCore::CSSPropertyParserHelpers::AngleCSSPrimitiveValueWithCalcWithKnownTokenTypeDimensionConsumer::consume): Deleted.
(WebCore::CSSPropertyParserHelpers::AngleCSSPrimitiveValueWithCalcWithKnownTokenTypeNumberConsumer::consume): Deleted.
(WebCore::CSSPropertyParserHelpers::AngleOrNumberRawKnownTokenTypeIdentConsumer::consume): Deleted.
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Angle.h:
(WebCore::CSSPropertyParserHelpers::consumeAngleOrNumberOrNoneRaw): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeAngleOrNumberOrNoneRawAllowingSymbolTableIdent): Deleted.
* Source/WebCore/css/parser/CSSPropertyParserConsumer+AngleDefinitions.h: Copied from Source/WebCore/css/parser/CSSPropertyParserConsumer+Resolution.h.
* Source/WebCore/css/parser/CSSPropertyParserConsumer+CSSPrimitiveValueResolver.cpp: Added.
(WebCore::CSSPropertyParserHelpers::CSSPrimitiveValueResolverBase::resolve):
* Source/WebCore/css/parser/CSSPropertyParserConsumer+CSSPrimitiveValueResolver.h: Added.
(WebCore::CSSPropertyParserHelpers::CSSPrimitiveValueResolverBase::resolve):
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Color.cpp:
(WebCore::CSSPropertyParserHelpers::consumeRGBOrHSLLegacyOptionalAlphaRaw):
(WebCore::CSSPropertyParserHelpers::consumeOptionalAlphaRaw):
(WebCore::CSSPropertyParserHelpers::consumeOptionalAlphaRawAllowingSymbolTableIdent):
(WebCore::CSSPropertyParserHelpers::normalizeRGBFunctionComponent):
(WebCore::CSSPropertyParserHelpers::parseRelativeRGBParametersRaw):
(WebCore::CSSPropertyParserHelpers::parseNonRelativeRGBParametersLegacyRaw):
(WebCore::CSSPropertyParserHelpers::parseNonRelativeRGBParametersModernRaw):
(WebCore::CSSPropertyParserHelpers::parseNonRelativeRGBParametersRaw):
(WebCore::CSSPropertyParserHelpers::colorByResolvingHSLComponentsModern):
(WebCore::CSSPropertyParserHelpers::parseRelativeHSLParametersRaw):
(WebCore::CSSPropertyParserHelpers::parseNonRelativeHSLParametersModernRaw):
(WebCore::CSSPropertyParserHelpers::parseRelativeHWBParametersRaw):
(WebCore::CSSPropertyParserHelpers::parseNonRelativeHWBParametersRaw):
(WebCore::CSSPropertyParserHelpers::parseRelativeLabParametersRaw):
(WebCore::CSSPropertyParserHelpers::parseNonRelativeLabParametersRaw):
(WebCore::CSSPropertyParserHelpers::parseRelativeLCHParametersRaw):
(WebCore::CSSPropertyParserHelpers::parseNonRelativeLCHParametersRaw):
(WebCore::CSSPropertyParserHelpers::parseRelativeColorFunctionForRGBTypes):
(WebCore::CSSPropertyParserHelpers::parseColorFunctionForRGBTypesRaw):
(WebCore::CSSPropertyParserHelpers::parseRelativeColorFunctionForXYZTypes):
(WebCore::CSSPropertyParserHelpers::parseColorFunctionForXYZTypesRaw):
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Integer.cpp:
(WebCore::CSSPropertyParserHelpers::consumeIntegerTypeRaw):
(WebCore::CSSPropertyParserHelpers::consumeIntegerType):
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Integer.h:
(WebCore::CSSPropertyParserHelpers::computeMinimumValue): Deleted.
(WebCore::CSSPropertyParserHelpers::IntegerTypeRawKnownTokenTypeFunctionConsumer::consume): Deleted.
(WebCore::CSSPropertyParserHelpers::IntegerTypeRawKnownTokenTypeNumberConsumer::consume): Deleted.
(WebCore::CSSPropertyParserHelpers::IntegerTypeKnownTokenTypeFunctionConsumer::consume): Deleted.
(WebCore::CSSPropertyParserHelpers::IntegerTypeKnownTokenTypeNumberConsumer::consume): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeIntegerTypeRaw): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeIntegerType): Deleted.
* Source/WebCore/css/parser/CSSPropertyParserConsumer+IntegerDefinitions.h: Added.
(WebCore::CSSPropertyParserHelpers::IntegerKnownTokenTypeFunctionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::IntegerKnownTokenTypeNumberConsumer::consume):
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Length.cpp:
(WebCore::CSSPropertyParserHelpers::validatedRange):
(WebCore::CSSPropertyParserHelpers::LengthKnownTokenTypeFunctionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::LengthKnownTokenTypeDimensionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::LengthKnownTokenTypeNumberConsumer::consume):
(WebCore::CSSPropertyParserHelpers::consumeLength):
(WebCore::CSSPropertyParserHelpers::consumeLengthOrPercentRaw):
(WebCore::CSSPropertyParserHelpers::consumeLengthOrPercent):
(WebCore::CSSPropertyParserHelpers::validatedLengthRaw): Deleted.
(WebCore::CSSPropertyParserHelpers::LengthRawKnownTokenTypeFunctionConsumer::consume): Deleted.
(WebCore::CSSPropertyParserHelpers::LengthRawKnownTokenTypeDimensionConsumer::consume): Deleted.
(WebCore::CSSPropertyParserHelpers::LengthRawKnownTokenTypeNumberConsumer::consume): Deleted.
(WebCore::CSSPropertyParserHelpers::LengthCSSPrimitiveValueWithCalcWithKnownTokenTypeFunctionConsumer::consume): Deleted.
(WebCore::CSSPropertyParserHelpers::LengthCSSPrimitiveValueWithCalcWithKnownTokenTypeDimensionConsumer::consume): Deleted.
(WebCore::CSSPropertyParserHelpers::LengthCSSPrimitiveValueWithCalcWithKnownTokenTypeNumberConsumer::consume): Deleted.
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Length.h:
(WebCore::CSSPropertyParserHelpers::shouldAcceptUnitlessValue): Deleted.
* Source/WebCore/css/parser/CSSPropertyParserConsumer+LengthDefinitions.h: Copied from Source/WebCore/css/parser/CSSPropertyParserConsumer+Resolution.h.
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Meta.h: Removed.
* Source/WebCore/css/parser/CSSPropertyParserConsumer+MetaConsumer.h: Added.
(WebCore::CSSPropertyParserHelpers::MetaConsumerUnroller::consume):
(WebCore::CSSPropertyParserHelpers::MetaConsumer::consume):
* Source/WebCore/css/parser/CSSPropertyParserConsumer+MetaConsumerDefinitions.h: Copied from Source/WebCore/css/parser/CSSPropertyParserConsumer+None.cpp.
* Source/WebCore/css/parser/CSSPropertyParserConsumer+MetaResolver.h: Copied from Source/WebCore/css/parser/CSSPropertyParserConsumer+None.h.
(WebCore::CSSPropertyParserHelpers::MetaResolver::resolve):
(WebCore::CSSPropertyParserHelpers::MetaResolver::consumeAndResolve):
* Source/WebCore/css/parser/CSSPropertyParserConsumer+MetaTransformer.h: Copied from Source/WebCore/css/parser/CSSPropertyParserConsumer+None.h.
(WebCore::CSSPropertyParserHelpers::transformRaw):
(WebCore::CSSPropertyParserHelpers::RawVariantTransformerBase::transform):
(WebCore::CSSPropertyParserHelpers::PercentOrNumberDividedBy100Transformer::transform):
* Source/WebCore/css/parser/CSSPropertyParserConsumer+None.cpp:
(WebCore::CSSPropertyParserHelpers::validatedNoneRaw):
(WebCore::CSSPropertyParserHelpers::NoneKnownTokenTypeIdentConsumer::consume):
(WebCore::CSSPropertyParserHelpers::NoneRawKnownTokenTypeIdentConsumer::consume): Deleted.
* Source/WebCore/css/parser/CSSPropertyParserConsumer+None.h:
* Source/WebCore/css/parser/CSSPropertyParserConsumer+NoneDefinitions.h: Copied from Source/WebCore/css/parser/CSSPropertyParserConsumer+None.h.
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Number.cpp:
(WebCore::CSSPropertyParserHelpers::validatedRange):
(WebCore::CSSPropertyParserHelpers::NumberKnownTokenTypeFunctionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::NumberKnownTokenTypeNumberConsumer::consume):
(WebCore::CSSPropertyParserHelpers::consumeNumberRaw):
(WebCore::CSSPropertyParserHelpers::consumeNumber):
(WebCore::CSSPropertyParserHelpers::consumeNumberOrNoneRaw):
(WebCore::CSSPropertyParserHelpers::validatedNumberRaw): Deleted.
(WebCore::CSSPropertyParserHelpers::NumberRawKnownTokenTypeFunctionConsumer::consume): Deleted.
(WebCore::CSSPropertyParserHelpers::NumberRawKnownTokenTypeNumberConsumer::consume): Deleted.
(WebCore::CSSPropertyParserHelpers::NumberRawKnownTokenTypeIdentConsumer::consume): Deleted.
(WebCore::CSSPropertyParserHelpers::NumberCSSPrimitiveValueWithCalcWithKnownTokenTypeFunctionConsumer::consume): Deleted.
(WebCore::CSSPropertyParserHelpers::NumberCSSPrimitiveValueWithCalcWithKnownTokenTypeNumberConsumer::consume): Deleted.
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Number.h:
(WebCore::CSSPropertyParserHelpers::consumeNumberOrNoneRaw): Deleted.
* Source/WebCore/css/parser/CSSPropertyParserConsumer+NumberDefinitions.h: Copied from Source/WebCore/css/parser/CSSPropertyParserConsumer+None.h.
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Percent.cpp:
(WebCore::CSSPropertyParserHelpers::validatedRange):
(WebCore::CSSPropertyParserHelpers::PercentKnownTokenTypeFunctionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::PercentKnownTokenTypePercentConsumer::consume):
(WebCore::CSSPropertyParserHelpers::consumePercentRaw):
(WebCore::CSSPropertyParserHelpers::consumePercent):
(WebCore::CSSPropertyParserHelpers::consumePercentOrNumber):
(WebCore::CSSPropertyParserHelpers::consumePercentDividedBy100OrNumber):
(WebCore::CSSPropertyParserHelpers::consumePercentOrNumberOrNone):
(WebCore::CSSPropertyParserHelpers::consumePercentOrNumberOrNoneAllowingSymbolTableIdent):
(WebCore::CSSPropertyParserHelpers::consumePercentOrNumberRaw):
(WebCore::CSSPropertyParserHelpers::consumePercentOrNumberOrNoneRaw):
(WebCore::CSSPropertyParserHelpers::consumePercentOrNumberOrNoneRawAllowingSymbolTableIdent):
(WebCore::CSSPropertyParserHelpers::consumePercentOrNoneRaw):
(WebCore::CSSPropertyParserHelpers::validatedPercentRaw): Deleted.
(WebCore::CSSPropertyParserHelpers::PercentRawKnownTokenTypeFunctionConsumer::consume): Deleted.
(WebCore::CSSPropertyParserHelpers::PercentRawKnownTokenTypePercentConsumer::consume): Deleted.
(WebCore::CSSPropertyParserHelpers::PercentRawKnownTokenTypeIdentConsumer::consume): Deleted.
(WebCore::CSSPropertyParserHelpers::PercentCSSPrimitiveValueWithCalcWithKnownTokenTypeFunctionConsumer::consume): Deleted.
(WebCore::CSSPropertyParserHelpers::PercentCSSPrimitiveValueWithCalcWithKnownTokenTypePercentConsumer::consume): Deleted.
(WebCore::CSSPropertyParserHelpers::NumberOrPercentRawKnownTokenTypeIdentConsumer::consume): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeNumberOrPercent): Deleted.
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Percent.h:
(WebCore::CSSPropertyParserHelpers::consumeNumberOrPercentRaw): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeNumberOrPercentOrNoneRaw): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeNumberOrPercentOrNoneRawAllowingSymbolTableIdent): Deleted.
(WebCore::CSSPropertyParserHelpers::consumePercentOrNoneRaw): Deleted.
(WebCore::CSSPropertyParserHelpers::consumePercentOrNoneRawAllowingSymbolTableIdent): Deleted.
* Source/WebCore/css/parser/CSSPropertyParserConsumer+PercentDefinitions.h: Copied from Source/WebCore/css/parser/CSSPropertyParserConsumer+None.h.
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Primitives.cpp:
(WebCore::CSSPropertyParserHelpers::shouldAcceptUnitlessValue):
(WebCore::CSSPropertyParserHelpers::equal):
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Primitives.h:
(WebCore::CSSPropertyParserHelpers::UnevaluatedCalc::operator==):
* Source/WebCore/css/parser/CSSPropertyParserConsumer+RawResolver.cpp: Added.
(WebCore::CSSPropertyParserHelpers::RawResolverBase::resolve):
* Source/WebCore/css/parser/CSSPropertyParserConsumer+RawResolver.h: Added.
(WebCore::CSSPropertyParserHelpers::RawResolverBase::resolve):
* Source/WebCore/css/parser/CSSPropertyParserConsumer+RawTypes.h: Copied from Source/WebCore/css/parser/CSSPropertyParserConsumer+Primitives.h.
(WebCore::CSSPropertyParserHelpers::computeMinimumValue):
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Resolution.cpp:
(WebCore::CSSPropertyParserHelpers::validatedRange):
(WebCore::CSSPropertyParserHelpers::ResolutionKnownTokenTypeFunctionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::ResolutionKnownTokenTypeDimensionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::consumeResolution):
(WebCore::CSSPropertyParserHelpers::ResolutionCSSPrimitiveValueWithCalcWithKnownTokenTypeFunctionConsumer::consume): Deleted.
(WebCore::CSSPropertyParserHelpers::ResolutionCSSPrimitiveValueWithCalcWithKnownTokenTypeDimensionConsumer::consume): Deleted.
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Resolution.h:
* Source/WebCore/css/parser/CSSPropertyParserConsumer+ResolutionDefinitions.h: Copied from Source/WebCore/css/parser/CSSPropertyParserConsumer+None.h.
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Symbol.cpp: Copied from Source/WebCore/css/parser/CSSPropertyParserConsumer+None.cpp.
(WebCore::CSSPropertyParserHelpers::validatedRange):
(WebCore::CSSPropertyParserHelpers::SymbolKnownTokenTypeIdentConsumer::consume):
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Symbol.h: Copied from Source/WebCore/css/parser/CSSPropertyParserConsumer+None.cpp.
* Source/WebCore/css/parser/CSSPropertyParserConsumer+SymbolDefinitions.h: Copied from Source/WebCore/css/parser/CSSPropertyParserConsumer+None.h.
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Time.cpp:
(WebCore::CSSPropertyParserHelpers::validatedRange):
(WebCore::CSSPropertyParserHelpers::TimeKnownTokenTypeFunctionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::TimeKnownTokenTypeDimensionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::TimeKnownTokenTypeNumberConsumer::consume):
(WebCore::CSSPropertyParserHelpers::consumeTime):
(WebCore::CSSPropertyParserHelpers::TimeCSSPrimitiveValueWithCalcWithKnownTokenTypeFunctionConsumer::consume): Deleted.
(WebCore::CSSPropertyParserHelpers::TimeCSSPrimitiveValueWithCalcWithKnownTokenTypeDimensionConsumer::consume): Deleted.
(WebCore::CSSPropertyParserHelpers::TimeCSSPrimitiveValueWithCalcWithKnownTokenTypeNumberConsumer::consume): Deleted.
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Time.h:
* Source/WebCore/css/parser/CSSPropertyParserConsumer+TimeDefinitions.h: Copied from Source/WebCore/css/parser/CSSPropertyParserConsumer+Resolution.h.
* Source/WebCore/css/parser/CSSPropertyParserHelpers.cpp:
(WebCore::CSSPropertyParserHelpers::ImageSetTypeFunctionRawKnownTokenTypeFunctionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::consumeImageSetResolutionOrTypeFunction):
(WebCore::CSSPropertyParserHelpers::consumeFontWeightNumberRaw):
(WebCore::CSSPropertyParserHelpers::consumeStringRaw):
(WebCore::CSSPropertyParserHelpers::consumeDeprecatedGradientColorStop):
(WebCore::CSSPropertyParserHelpers::consumeCrossFade):
(WebCore::CSSPropertyParserHelpers::consumeImageSetOption):
(WebCore::CSSPropertyParserHelpers::consumeNumbersOrPercents):
(WebCore::CSSPropertyParserHelpers::consumeTransformFunction):
(WebCore::CSSPropertyParserHelpers::consumeScale):
(WebCore::CSSPropertyParserHelpers::ImageSetTypeCSSPrimitiveValueKnownTokenTypeFunctionConsumer::consume): Deleted.
* Source/WebCore/css/parser/CSSPropertyParserHelpers.h:

Canonical link: https://commits.webkit.org/278519@main



To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications


More information about the webkit-changes mailing list