summaryrefslogtreecommitdiff
path: root/chromium/third_party/blink/renderer/core/animation/css_font_variation_settings_interpolation_type.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/third_party/blink/renderer/core/animation/css_font_variation_settings_interpolation_type.cc')
-rw-r--r--chromium/third_party/blink/renderer/core/animation/css_font_variation_settings_interpolation_type.cc19
1 files changed, 14 insertions, 5 deletions
diff --git a/chromium/third_party/blink/renderer/core/animation/css_font_variation_settings_interpolation_type.cc b/chromium/third_party/blink/renderer/core/animation/css_font_variation_settings_interpolation_type.cc
index 6262ba25091..1db1e64c2e6 100644
--- a/chromium/third_party/blink/renderer/core/animation/css_font_variation_settings_interpolation_type.cc
+++ b/chromium/third_party/blink/renderer/core/animation/css_font_variation_settings_interpolation_type.cc
@@ -41,12 +41,21 @@ class CSSFontVariationSettingsNonInterpolableValue
DEFINE_NON_INTERPOLABLE_VALUE_TYPE(
CSSFontVariationSettingsNonInterpolableValue);
-DEFINE_NON_INTERPOLABLE_VALUE_TYPE_CASTS(
- CSSFontVariationSettingsNonInterpolableValue);
+template <>
+struct DowncastTraits<CSSFontVariationSettingsNonInterpolableValue> {
+ static bool AllowFrom(const NonInterpolableValue* value) {
+ return value && AllowFrom(*value);
+ }
+ static bool AllowFrom(const NonInterpolableValue& value) {
+ return value.GetType() ==
+ CSSFontVariationSettingsNonInterpolableValue::static_type_;
+ }
+};
static const Vector<AtomicString> GetTags(
const NonInterpolableValue& non_interpolable_value) {
- return ToCSSFontVariationSettingsNonInterpolableValue(non_interpolable_value)
+ return To<CSSFontVariationSettingsNonInterpolableValue>(
+ non_interpolable_value)
.Tags();
}
@@ -194,7 +203,7 @@ void CSSFontVariationSettingsInterpolationType::ApplyStandardPropertyValue(
const InterpolableValue& interpolable_value,
const NonInterpolableValue* non_interpolable_value,
StyleResolverState& state) const {
- const InterpolableList& numbers = ToInterpolableList(interpolable_value);
+ const auto& numbers = To<InterpolableList>(interpolable_value);
const Vector<AtomicString>& tags = GetTags(*non_interpolable_value);
DCHECK_EQ(numbers.length(), tags.size());
@@ -205,7 +214,7 @@ void CSSFontVariationSettingsInterpolationType::ApplyStandardPropertyValue(
for (wtf_size_t i = 0; i < length; ++i) {
settings->Append(FontVariationAxis(
tags[i],
- clampTo<float>(ToInterpolableNumber(numbers.Get(i))->Value())));
+ clampTo<float>(To<InterpolableNumber>(numbers.Get(i))->Value())));
}
state.GetFontBuilder().SetVariationSettings(settings);
}