#include "third_party/blink/renderer/core/animation/svg_path_seg_interpolation_functions.h"
#include <memory>
#include "third_party/blink/renderer/core/css/css_to_length_conversion_data.h"
#include "third_party/blink/renderer/platform/wtf/math_extras.h"
namespace blink {
InterpolableNumber* ConsumeControlAxis(double value,
bool is_absolute,
double current_value) { … }
float ConsumeInterpolableControlAxis(const InterpolableValue* number,
bool is_absolute,
double current_value) { … }
InterpolableNumber* ConsumeCoordinateAxis(double value,
bool is_absolute,
double& current_value) { … }
float ConsumeInterpolableCoordinateAxis(const InterpolableValue* number,
bool is_absolute,
double& current_value) { … }
InterpolableValue* ConsumeClosePath(const PathSegmentData&,
PathCoordinates& coordinates) { … }
PathSegmentData ConsumeInterpolableClosePath(const InterpolableValue&,
SVGPathSegType seg_type,
PathCoordinates& coordinates) { … }
InterpolableValue* ConsumeSingleCoordinate(const PathSegmentData& segment,
PathCoordinates& coordinates) { … }
PathSegmentData ConsumeInterpolableSingleCoordinate(
const InterpolableValue& value,
SVGPathSegType seg_type,
PathCoordinates& coordinates) { … }
InterpolableValue* ConsumeCurvetoCubic(const PathSegmentData& segment,
PathCoordinates& coordinates) { … }
PathSegmentData ConsumeInterpolableCurvetoCubic(const InterpolableValue& value,
SVGPathSegType seg_type,
PathCoordinates& coordinates) { … }
InterpolableValue* ConsumeCurvetoQuadratic(const PathSegmentData& segment,
PathCoordinates& coordinates) { … }
PathSegmentData ConsumeInterpolableCurvetoQuadratic(
const InterpolableValue& value,
SVGPathSegType seg_type,
PathCoordinates& coordinates) { … }
InterpolableValue* ConsumeArc(const PathSegmentData& segment,
PathCoordinates& coordinates) { … }
PathSegmentData ConsumeInterpolableArc(const InterpolableValue& value,
SVGPathSegType seg_type,
PathCoordinates& coordinates) { … }
InterpolableValue* ConsumeLinetoHorizontal(const PathSegmentData& segment,
PathCoordinates& coordinates) { … }
PathSegmentData ConsumeInterpolableLinetoHorizontal(
const InterpolableValue& value,
SVGPathSegType seg_type,
PathCoordinates& coordinates) { … }
InterpolableValue* ConsumeLinetoVertical(const PathSegmentData& segment,
PathCoordinates& coordinates) { … }
PathSegmentData ConsumeInterpolableLinetoVertical(
const InterpolableValue& value,
SVGPathSegType seg_type,
PathCoordinates& coordinates) { … }
InterpolableValue* ConsumeCurvetoCubicSmooth(const PathSegmentData& segment,
PathCoordinates& coordinates) { … }
PathSegmentData ConsumeInterpolableCurvetoCubicSmooth(
const InterpolableValue& value,
SVGPathSegType seg_type,
PathCoordinates& coordinates) { … }
InterpolableValue* SVGPathSegInterpolationFunctions::ConsumePathSeg(
const PathSegmentData& segment,
PathCoordinates& coordinates) { … }
PathSegmentData SVGPathSegInterpolationFunctions::ConsumeInterpolablePathSeg(
const InterpolableValue& value,
SVGPathSegType seg_type,
PathCoordinates& coordinates) { … }
}