#include "third_party/blink/renderer/core/animation/css_font_size_interpolation_type.h"
#include <memory>
#include <utility>
#include "base/memory/ptr_util.h"
#include "third_party/blink/renderer/core/animation/interpolable_length.h"
#include "third_party/blink/renderer/core/css/css_identifier_value.h"
#include "third_party/blink/renderer/core/css/css_pending_system_font_value.h"
#include "third_party/blink/renderer/core/css/resolver/style_resolver_state.h"
#include "third_party/blink/renderer/core/style/computed_style.h"
#include "third_party/blink/renderer/platform/fonts/font_description.h"
#include "third_party/blink/renderer/platform/geometry/length_functions.h"
namespace blink {
namespace {
class IsMonospaceChecker : public CSSInterpolationType::CSSConversionChecker { … };
class InheritedFontSizeChecker
: public CSSInterpolationType::CSSConversionChecker { … };
InterpolationValue ConvertFontSize(float size) { … }
InterpolationValue MaybeConvertKeyword(
CSSValueID value_id,
const StyleResolverState& state,
InterpolationType::ConversionCheckers& conversion_checkers) { … }
}
InterpolationValue CSSFontSizeInterpolationType::MaybeConvertNeutral(
const InterpolationValue&,
ConversionCheckers&) const { … }
InterpolationValue CSSFontSizeInterpolationType::MaybeConvertInitial(
const StyleResolverState& state,
ConversionCheckers& conversion_checkers) const { … }
InterpolationValue CSSFontSizeInterpolationType::MaybeConvertInherit(
const StyleResolverState& state,
ConversionCheckers& conversion_checkers) const { … }
InterpolationValue CSSFontSizeInterpolationType::MaybeConvertValue(
const CSSValue& value,
const StyleResolverState* state,
ConversionCheckers& conversion_checkers) const { … }
InterpolationValue
CSSFontSizeInterpolationType::MaybeConvertStandardPropertyUnderlyingValue(
const ComputedStyle& style) const { … }
void CSSFontSizeInterpolationType::ApplyStandardPropertyValue(
const InterpolableValue& interpolable_value,
const NonInterpolableValue*,
StyleResolverState& state) const { … }
}