Diff
Modified: releases/WebKitGTK/webkit-2.12/Source/WebCore/ChangeLog (197107 => 197108)
--- releases/WebKitGTK/webkit-2.12/Source/WebCore/ChangeLog 2016-02-25 14:18:23 UTC (rev 197107)
+++ releases/WebKitGTK/webkit-2.12/Source/WebCore/ChangeLog 2016-02-25 14:29:12 UTC (rev 197108)
@@ -1,3 +1,42 @@
+2016-02-23 Simon Fraser <simon.fra...@apple.com>
+
+ Lay the groundwork for more constness in StyleResolver-related code
+ https://bugs.webkit.org/show_bug.cgi?id=154598
+
+ Reviewed by Antti Koivisto.
+
+ Make some of the leaf functions that are used by the style resolver take
+ const CSSValues, and use 'auto' more to automatically get const stack variables
+ when appropriate.
+
+ * css/CSSBorderImageSliceValue.h:
+ (WebCore::CSSBorderImageSliceValue::slices):
+ * css/CSSPrimitiveValue.h:
+ (WebCore::CSSPrimitiveValue::isQuirkValue):
+ * css/FontVariantBuilder.cpp:
+ (WebCore::extractFontVariantLigatures):
+ (WebCore::extractFontVariantNumeric):
+ (WebCore::extractFontVariantEastAsian):
+ * css/FontVariantBuilder.h:
+ * css/StyleBuilderConverter.h:
+ (WebCore::StyleBuilderConverter::convertReflection):
+ (WebCore::StyleBuilderConverter::convertGridAutoFlow):
+ * css/StyleBuilderCustom.h:
+ (WebCore::StyleBuilderCustom::applyValueSize):
+ (WebCore::StyleBuilderCustom::applyValueStroke):
+ * css/StyleResolver.cpp:
+ (WebCore::StyleResolver::colorFromPrimitiveValueIsDerivedFromElement):
+ (WebCore::StyleResolver::colorFromPrimitiveValue):
+ (WebCore::StyleResolver::createFilterOperations):
+ * css/StyleResolver.h:
+ * css/TransformFunctions.cpp:
+ (WebCore::transformsForValue):
+ * css/TransformFunctions.h:
+ * rendering/style/StylePendingImage.h:
+ * svg/SVGLength.cpp:
+ (WebCore::SVGLength::fromCSSPrimitiveValue):
+ * svg/SVGLength.h:
+
2016-02-23 Nikos Andronikos <nikos.andronikos-web...@cisra.canon.com.au>
[SVG] Update SVG source to return string literals as ASCIILiteral and add test cases for case sensitivity
Modified: releases/WebKitGTK/webkit-2.12/Source/WebCore/css/CSSBorderImageSliceValue.h (197107 => 197108)
--- releases/WebKitGTK/webkit-2.12/Source/WebCore/css/CSSBorderImageSliceValue.h 2016-02-25 14:18:23 UTC (rev 197107)
+++ releases/WebKitGTK/webkit-2.12/Source/WebCore/css/CSSBorderImageSliceValue.h 2016-02-25 14:29:12 UTC (rev 197108)
@@ -43,7 +43,7 @@
String customCSSText() const;
- Quad* slices() { return m_slices ? m_slices->getQuadValue() : 0; }
+ Quad* slices() const { return m_slices ? m_slices->getQuadValue() : nullptr; }
bool equals(const CSSBorderImageSliceValue&) const;
Modified: releases/WebKitGTK/webkit-2.12/Source/WebCore/css/CSSPrimitiveValue.h (197107 => 197108)
--- releases/WebKitGTK/webkit-2.12/Source/WebCore/css/CSSPrimitiveValue.h 2016-02-25 14:18:23 UTC (rev 197107)
+++ releases/WebKitGTK/webkit-2.12/Source/WebCore/css/CSSPrimitiveValue.h 2016-02-25 14:29:12 UTC (rev 197108)
@@ -369,7 +369,7 @@
String customCSSText() const;
- bool isQuirkValue() { return m_isQuirkValue; }
+ bool isQuirkValue() const { return m_isQuirkValue; }
void addSubresourceStyleURLs(ListHashSet<URL>&, const StyleSheetContents*) const;
Modified: releases/WebKitGTK/webkit-2.12/Source/WebCore/css/FontVariantBuilder.cpp (197107 => 197108)
--- releases/WebKitGTK/webkit-2.12/Source/WebCore/css/FontVariantBuilder.cpp 2016-02-25 14:18:23 UTC (rev 197107)
+++ releases/WebKitGTK/webkit-2.12/Source/WebCore/css/FontVariantBuilder.cpp 2016-02-25 14:29:12 UTC (rev 197108)
@@ -33,7 +33,7 @@
namespace WebCore {
-FontVariantLigaturesValues extractFontVariantLigatures(CSSValue& value)
+FontVariantLigaturesValues extractFontVariantLigatures(const CSSValue& value)
{
FontVariantLigatures common = FontVariantLigatures::Normal;
FontVariantLigatures discretionary = FontVariantLigatures::Normal;
@@ -91,7 +91,7 @@
return FontVariantLigaturesValues(common, discretionary, historical, contextualAlternates);
}
-FontVariantNumericValues extractFontVariantNumeric(CSSValue& value)
+FontVariantNumericValues extractFontVariantNumeric(const CSSValue& value)
{
FontVariantNumericFigure figure = FontVariantNumericFigure::Normal;
FontVariantNumericSpacing spacing = FontVariantNumericSpacing::Normal;
@@ -137,7 +137,7 @@
return FontVariantNumericValues(figure, spacing, fraction, ordinal, slashedZero);
}
-FontVariantEastAsianValues extractFontVariantEastAsian(CSSValue& value)
+FontVariantEastAsianValues extractFontVariantEastAsian(const CSSValue& value)
{
FontVariantEastAsianVariant variant = FontVariantEastAsianVariant::Normal;
FontVariantEastAsianWidth width = FontVariantEastAsianWidth::Normal;
Modified: releases/WebKitGTK/webkit-2.12/Source/WebCore/css/FontVariantBuilder.h (197107 => 197108)
--- releases/WebKitGTK/webkit-2.12/Source/WebCore/css/FontVariantBuilder.h 2016-02-25 14:18:23 UTC (rev 197107)
+++ releases/WebKitGTK/webkit-2.12/Source/WebCore/css/FontVariantBuilder.h 2016-02-25 14:29:12 UTC (rev 197108)
@@ -36,9 +36,9 @@
struct FontVariantNumericValues;
struct FontVariantEastAsianValues;
-FontVariantLigaturesValues extractFontVariantLigatures(CSSValue&);
-FontVariantNumericValues extractFontVariantNumeric(CSSValue&);
-FontVariantEastAsianValues extractFontVariantEastAsian(CSSValue&);
+FontVariantLigaturesValues extractFontVariantLigatures(const CSSValue&);
+FontVariantNumericValues extractFontVariantNumeric(const CSSValue&);
+FontVariantEastAsianValues extractFontVariantEastAsian(const CSSValue&);
Ref<CSSValue> computeFontVariant(const FontVariantSettings&);
Modified: releases/WebKitGTK/webkit-2.12/Source/WebCore/css/StyleBuilderConverter.h (197107 => 197108)
--- releases/WebKitGTK/webkit-2.12/Source/WebCore/css/StyleBuilderConverter.h 2016-02-25 14:18:23 UTC (rev 197107)
+++ releases/WebKitGTK/webkit-2.12/Source/WebCore/css/StyleBuilderConverter.h 2016-02-25 14:29:12 UTC (rev 197108)
@@ -567,7 +567,7 @@
return nullptr;
}
- CSSReflectValue& reflectValue = downcast<CSSReflectValue>(value);
+ auto& reflectValue = downcast<CSSReflectValue>(value);
RefPtr<StyleReflection> reflection = StyleReflection::create();
reflection->setDirection(*reflectValue.direction());
@@ -916,8 +916,8 @@
if (!list.length())
return RenderStyle::initialGridAutoFlow();
- CSSPrimitiveValue& first = downcast<CSSPrimitiveValue>(*list.item(0));
- CSSPrimitiveValue* second = downcast<CSSPrimitiveValue>(list.item(1));
+ auto& first = downcast<CSSPrimitiveValue>(*list.item(0));
+ auto* second = downcast<CSSPrimitiveValue>(list.item(1));
GridAutoFlow autoFlow = RenderStyle::initialGridAutoFlow();
switch (first.getValueID()) {
Modified: releases/WebKitGTK/webkit-2.12/Source/WebCore/css/StyleBuilderCustom.h (197107 => 197108)
--- releases/WebKitGTK/webkit-2.12/Source/WebCore/css/StyleBuilderCustom.h 2016-02-25 14:18:23 UTC (rev 197107)
+++ releases/WebKitGTK/webkit-2.12/Source/WebCore/css/StyleBuilderCustom.h 2016-02-25 14:29:12 UTC (rev 197108)
@@ -396,8 +396,8 @@
auto& valueList = downcast<CSSValueList>(value);
switch (valueList.length()) {
case 2: {
- CSSValue* firstValue = valueList.itemWithoutBoundsCheck(0);
- CSSValue* secondValue = valueList.itemWithoutBoundsCheck(1);
+ auto firstValue = valueList.itemWithoutBoundsCheck(0);
+ auto secondValue = valueList.itemWithoutBoundsCheck(1);
// <length>{2} | <page-size> <orientation>
if (!is<CSSPrimitiveValue>(*firstValue) || !is<CSSPrimitiveValue>(*secondValue))
return;
@@ -420,7 +420,7 @@
break;
}
case 1: {
- CSSValue* value = valueList.itemWithoutBoundsCheck(0);
+ auto value = valueList.itemWithoutBoundsCheck(0);
// <length> | auto | <page-size> | [ portrait | landscape]
if (!is<CSSPrimitiveValue>(*value))
return;
@@ -1195,7 +1195,7 @@
inline void StyleBuilderCustom::applyValueStroke(StyleResolver& styleResolver, CSSValue& value)
{
SVGRenderStyle& svgStyle = styleResolver.style()->accessSVGStyle();
- SVGPaint& svgPaint = downcast<SVGPaint>(value);
+ auto& svgPaint = downcast<SVGPaint>(value);
svgStyle.setStrokePaint(svgPaint.paintType(), StyleBuilderConverter::convertSVGColor(styleResolver, svgPaint), svgPaint.uri(), styleResolver.applyPropertyToRegularStyle(), styleResolver.applyPropertyToVisitedLinkStyle());
}
Modified: releases/WebKitGTK/webkit-2.12/Source/WebCore/css/StyleResolver.cpp (197107 => 197108)
--- releases/WebKitGTK/webkit-2.12/Source/WebCore/css/StyleResolver.cpp 2016-02-25 14:18:23 UTC (rev 197107)
+++ releases/WebKitGTK/webkit-2.12/Source/WebCore/css/StyleResolver.cpp 2016-02-25 14:29:12 UTC (rev 197108)
@@ -1790,7 +1790,7 @@
return RenderTheme::defaultTheme()->systemColor(cssValueId);
}
-bool StyleResolver::colorFromPrimitiveValueIsDerivedFromElement(CSSPrimitiveValue& value)
+bool StyleResolver::colorFromPrimitiveValueIsDerivedFromElement(const CSSPrimitiveValue& value)
{
int ident = value.getValueID();
switch (ident) {
@@ -1804,7 +1804,7 @@
}
}
-Color StyleResolver::colorFromPrimitiveValue(CSSPrimitiveValue& value, bool forVisitedLink) const
+Color StyleResolver::colorFromPrimitiveValue(const CSSPrimitiveValue& value, bool forVisitedLink) const
{
if (value.isRGBColor())
return Color(value.getRGBA32Value());
@@ -1897,13 +1897,13 @@
state.filtersWithPendingSVGDocuments().clear();
}
-bool StyleResolver::createFilterOperations(CSSValue& inValue, FilterOperations& outOperations)
+bool StyleResolver::createFilterOperations(const CSSValue& inValue, FilterOperations& outOperations)
{
State& state = m_state;
ASSERT(outOperations.isEmpty());
if (is<CSSPrimitiveValue>(inValue)) {
- CSSPrimitiveValue& primitiveValue = downcast<CSSPrimitiveValue>(inValue);
+ auto& primitiveValue = downcast<CSSPrimitiveValue>(inValue);
if (primitiveValue.getValueID() == CSSValueNone)
return true;
}
@@ -1922,12 +1922,12 @@
if (operationType == FilterOperation::REFERENCE) {
if (filterValue.length() != 1)
continue;
- CSSValue& argument = *filterValue.itemWithoutBoundsCheck(0);
+ auto& argument = *filterValue.itemWithoutBoundsCheck(0);
if (!is<CSSPrimitiveValue>(argument))
continue;
- CSSPrimitiveValue& primitiveValue = downcast<CSSPrimitiveValue>(argument);
+ auto& primitiveValue = downcast<CSSPrimitiveValue>(argument);
String cssUrl = primitiveValue.getStringValue();
URL url = ""
@@ -1941,7 +1941,7 @@
// Check that all parameters are primitive values, with the
// exception of drop shadow which has a CSSShadowValue parameter.
- CSSPrimitiveValue* firstValue = nullptr;
+ const CSSPrimitiveValue* firstValue = nullptr;
if (operationType != FilterOperation::DROP_SHADOW) {
bool haveNonPrimitiveValue = false;
for (unsigned j = 0; j < filterValue.length(); ++j) {
@@ -2006,11 +2006,11 @@
if (filterValue.length() != 1)
return false;
- CSSValue& cssValue = *filterValue.itemWithoutBoundsCheck(0);
+ auto& cssValue = *filterValue.itemWithoutBoundsCheck(0);
if (!is<CSSShadowValue>(cssValue))
continue;
- CSSShadowValue& item = downcast<CSSShadowValue>(cssValue);
+ auto& item = downcast<CSSShadowValue>(cssValue);
int x = item.x->computeLength<int>(state.cssToLengthConversionData());
int y = item.y->computeLength<int>(state.cssToLengthConversionData());
IntPoint location(x, y);
Modified: releases/WebKitGTK/webkit-2.12/Source/WebCore/css/StyleResolver.h (197107 => 197108)
--- releases/WebKitGTK/webkit-2.12/Source/WebCore/css/StyleResolver.h 2016-02-25 14:18:23 UTC (rev 197107)
+++ releases/WebKitGTK/webkit-2.12/Source/WebCore/css/StyleResolver.h 2016-02-25 14:29:12 UTC (rev 197108)
@@ -185,8 +185,8 @@
bool useSVGZoomRules();
bool useSVGZoomRulesForLength();
- static bool colorFromPrimitiveValueIsDerivedFromElement(CSSPrimitiveValue&);
- Color colorFromPrimitiveValue(CSSPrimitiveValue&, bool forVisitedLink = false) const;
+ static bool colorFromPrimitiveValueIsDerivedFromElement(const CSSPrimitiveValue&);
+ Color colorFromPrimitiveValue(const CSSPrimitiveValue&, bool forVisitedLink = false) const;
bool hasSelectorForId(const AtomicString&) const;
bool hasSelectorForClass(const AtomicString&) const;
@@ -211,7 +211,7 @@
void clearCachedPropertiesAffectedByViewportUnits();
- bool createFilterOperations(CSSValue& inValue, FilterOperations& outOperations);
+ bool createFilterOperations(const CSSValue& inValue, FilterOperations& outOperations);
void loadPendingSVGDocuments();
void loadPendingResources();
Modified: releases/WebKitGTK/webkit-2.12/Source/WebCore/css/TransformFunctions.cpp (197107 => 197108)
--- releases/WebKitGTK/webkit-2.12/Source/WebCore/css/TransformFunctions.cpp 2016-02-25 14:18:23 UTC (rev 197107)
+++ releases/WebKitGTK/webkit-2.12/Source/WebCore/css/TransformFunctions.cpp 2016-02-25 14:29:12 UTC (rev 197108)
@@ -81,7 +81,7 @@
return primitiveValue ? primitiveValue->convertToLength<FixedFloatConversion | PercentConversion | CalculatedConversion>(conversionData) : Length(Undefined);
}
-bool transformsForValue(CSSValue& value, const CSSToLengthConversionData& conversionData, TransformOperations& outOperations)
+bool transformsForValue(const CSSValue& value, const CSSToLengthConversionData& conversionData, TransformOperations& outOperations)
{
if (!is<CSSValueList>(value)) {
outOperations.clear();
@@ -107,7 +107,7 @@
if (haveNonPrimitiveValue)
continue;
- CSSPrimitiveValue& firstValue = downcast<CSSPrimitiveValue>(*transformValue.itemWithoutBoundsCheck(0));
+ auto& firstValue = downcast<CSSPrimitiveValue>(*transformValue.itemWithoutBoundsCheck(0));
switch (transformValue.operationType()) {
case WebKitCSSTransformValue::ScaleTransformOperation:
@@ -121,7 +121,7 @@
sx = firstValue.getDoubleValue();
if (transformValue.operationType() != WebKitCSSTransformValue::ScaleXTransformOperation) {
if (transformValue.length() > 1) {
- CSSPrimitiveValue& secondValue = downcast<CSSPrimitiveValue>(*transformValue.itemWithoutBoundsCheck(1));
+ auto& secondValue = downcast<CSSPrimitiveValue>(*transformValue.itemWithoutBoundsCheck(1));
sy = secondValue.getDoubleValue();
} else
sy = sx;
@@ -143,11 +143,11 @@
sx = firstValue.getDoubleValue();
if (transformValue.operationType() != WebKitCSSTransformValue::ScaleXTransformOperation) {
if (transformValue.length() > 2) {
- CSSPrimitiveValue& thirdValue = downcast<CSSPrimitiveValue>(*transformValue.itemWithoutBoundsCheck(2));
+ auto& thirdValue = downcast<CSSPrimitiveValue>(*transformValue.itemWithoutBoundsCheck(2));
sz = thirdValue.getDoubleValue();
}
if (transformValue.length() > 1) {
- CSSPrimitiveValue& secondValue = downcast<CSSPrimitiveValue>(*transformValue.itemWithoutBoundsCheck(1));
+ auto& secondValue = downcast<CSSPrimitiveValue>(*transformValue.itemWithoutBoundsCheck(1));
sy = secondValue.getDoubleValue();
} else
sy = sx;
@@ -167,7 +167,7 @@
tx = convertToFloatLength(&firstValue, conversionData);
if (transformValue.operationType() != WebKitCSSTransformValue::TranslateXTransformOperation) {
if (transformValue.length() > 1) {
- CSSPrimitiveValue& secondValue = downcast<CSSPrimitiveValue>(*transformValue.itemWithoutBoundsCheck(1));
+ auto& secondValue = downcast<CSSPrimitiveValue>(*transformValue.itemWithoutBoundsCheck(1));
ty = convertToFloatLength(&secondValue, conversionData);
}
}
@@ -192,11 +192,11 @@
tx = convertToFloatLength(&firstValue, conversionData);
if (transformValue.operationType() != WebKitCSSTransformValue::TranslateXTransformOperation) {
if (transformValue.length() > 2) {
- CSSPrimitiveValue& thirdValue = downcast<CSSPrimitiveValue>(*transformValue.itemWithoutBoundsCheck(2));
+ auto& thirdValue = downcast<CSSPrimitiveValue>(*transformValue.itemWithoutBoundsCheck(2));
tz = convertToFloatLength(&thirdValue, conversionData);
}
if (transformValue.length() > 1) {
- CSSPrimitiveValue& secondValue = downcast<CSSPrimitiveValue>(*transformValue.itemWithoutBoundsCheck(1));
+ auto& secondValue = downcast<CSSPrimitiveValue>(*transformValue.itemWithoutBoundsCheck(1));
ty = convertToFloatLength(&secondValue, conversionData);
}
}
@@ -233,9 +233,9 @@
case WebKitCSSTransformValue::Rotate3DTransformOperation: {
if (transformValue.length() < 4)
break;
- CSSPrimitiveValue& secondValue = downcast<CSSPrimitiveValue>(*transformValue.itemWithoutBoundsCheck(1));
- CSSPrimitiveValue& thirdValue = downcast<CSSPrimitiveValue>(*transformValue.itemWithoutBoundsCheck(2));
- CSSPrimitiveValue& fourthValue = downcast<CSSPrimitiveValue>(*transformValue.itemWithoutBoundsCheck(3));
+ auto& secondValue = downcast<CSSPrimitiveValue>(*transformValue.itemWithoutBoundsCheck(1));
+ auto& thirdValue = downcast<CSSPrimitiveValue>(*transformValue.itemWithoutBoundsCheck(2));
+ auto& fourthValue = downcast<CSSPrimitiveValue>(*transformValue.itemWithoutBoundsCheck(3));
double x = firstValue.getDoubleValue();
double y = secondValue.getDoubleValue();
double z = thirdValue.getDoubleValue();
@@ -255,7 +255,7 @@
angleX = angle;
if (transformValue.operationType() == WebKitCSSTransformValue::SkewTransformOperation) {
if (transformValue.length() > 1) {
- CSSPrimitiveValue& secondValue = downcast<CSSPrimitiveValue>(*transformValue.itemWithoutBoundsCheck(1));
+ auto& secondValue = downcast<CSSPrimitiveValue>(*transformValue.itemWithoutBoundsCheck(1));
angleY = secondValue.computeDegrees();
}
}
Modified: releases/WebKitGTK/webkit-2.12/Source/WebCore/css/TransformFunctions.h (197107 => 197108)
--- releases/WebKitGTK/webkit-2.12/Source/WebCore/css/TransformFunctions.h 2016-02-25 14:18:23 UTC (rev 197107)
+++ releases/WebKitGTK/webkit-2.12/Source/WebCore/css/TransformFunctions.h 2016-02-25 14:29:12 UTC (rev 197108)
@@ -42,7 +42,7 @@
struct Length;
-bool transformsForValue(CSSValue&, const CSSToLengthConversionData&, TransformOperations&);
+bool transformsForValue(const CSSValue&, const CSSToLengthConversionData&, TransformOperations&);
Length convertToFloatLength(const CSSPrimitiveValue*, const CSSToLengthConversionData&);
}
Modified: releases/WebKitGTK/webkit-2.12/Source/WebCore/rendering/style/StylePendingImage.h (197107 => 197108)
--- releases/WebKitGTK/webkit-2.12/Source/WebCore/rendering/style/StylePendingImage.h 2016-02-25 14:18:23 UTC (rev 197107)
+++ releases/WebKitGTK/webkit-2.12/Source/WebCore/rendering/style/StylePendingImage.h 2016-02-25 14:29:12 UTC (rev 197108)
@@ -46,7 +46,7 @@
static Ref<StylePendingImage> create(CSSValue* value) { return adoptRef(*new StylePendingImage(value)); }
CSSImageValue* cssImageValue() const { return is<CSSImageValue>(m_value) ? downcast<CSSImageValue>(m_value) : nullptr; }
- CSSImageGeneratorValue* cssImageGeneratorValue() const { return m_value && m_value->isImageGeneratorValue() ? static_cast<CSSImageGeneratorValue*>(m_value) : nullptr; }
+ CSSImageGeneratorValue* cssImageGeneratorValue() const { return is<CSSImageGeneratorValue>(m_value) ? static_cast<CSSImageGeneratorValue*>(m_value) : nullptr; }
CSSCursorImageValue* cssCursorImageValue() const { return is<CSSCursorImageValue>(m_value) ? downcast<CSSCursorImageValue>(m_value) : nullptr; }
#if ENABLE(CSS_IMAGE_SET)
Modified: releases/WebKitGTK/webkit-2.12/Source/WebCore/svg/SVGLength.cpp (197107 => 197108)
--- releases/WebKitGTK/webkit-2.12/Source/WebCore/svg/SVGLength.cpp 2016-02-25 14:18:23 UTC (rev 197107)
+++ releases/WebKitGTK/webkit-2.12/Source/WebCore/svg/SVGLength.cpp 2016-02-25 14:29:12 UTC (rev 197108)
@@ -281,7 +281,7 @@
m_unit = originalUnitAndType;
}
-SVGLength SVGLength::fromCSSPrimitiveValue(CSSPrimitiveValue& value)
+SVGLength SVGLength::fromCSSPrimitiveValue(const CSSPrimitiveValue& value)
{
SVGLengthType svgType;
switch (value.primitiveType()) {
Modified: releases/WebKitGTK/webkit-2.12/Source/WebCore/svg/SVGLength.h (197107 => 197108)
--- releases/WebKitGTK/webkit-2.12/Source/WebCore/svg/SVGLength.h 2016-02-25 14:18:23 UTC (rev 197107)
+++ releases/WebKitGTK/webkit-2.12/Source/WebCore/svg/SVGLength.h 2016-02-25 14:29:12 UTC (rev 197108)
@@ -98,7 +98,7 @@
return !m_valueInSpecifiedUnits;
}
- static SVGLength fromCSSPrimitiveValue(CSSPrimitiveValue&);
+ static SVGLength fromCSSPrimitiveValue(const CSSPrimitiveValue&);
static Ref<CSSPrimitiveValue> toCSSPrimitiveValue(const SVGLength&);
static SVGLengthMode lengthModeForAnimatedLengthAttribute(const QualifiedName&);