#ifdef UNSAFE_BUFFERS_BUILD
#pragma allow_unsafe_buffers
#endif
#include "third_party/blink/renderer/core/svg/svg_angle.h"
#include "third_party/blink/renderer/core/svg/animation/smil_animation_effect_parameters.h"
#include "third_party/blink/renderer/core/svg/svg_enumeration_map.h"
#include "third_party/blink/renderer/core/svg/svg_parser_utilities.h"
#include "third_party/blink/renderer/platform/heap/garbage_collected.h"
#include "third_party/blink/renderer/platform/heap/member.h"
#include "third_party/blink/renderer/platform/heap/visitor.h"
#include "third_party/blink/renderer/platform/wtf/math_extras.h"
#include "third_party/blink/renderer/platform/wtf/text/character_visitor.h"
#include "third_party/blink/renderer/platform/wtf/text/string_builder.h"
#include "third_party/blink/renderer/platform/wtf/text/wtf_string.h"
namespace blink {
template <>
const SVGEnumerationMap& GetEnumerationMap<SVGMarkerOrientType>() { … }
namespace {
class SVGMarkerOrientEnumeration final : public SVGEnumeration { … };
}
SVGAngle::SVGAngle()
: … { … }
SVGAngle::SVGAngle(SVGAngleType unit_type,
float value_in_specified_units,
SVGMarkerOrientType orient_type)
: … { … }
SVGAngle::~SVGAngle() = default;
void SVGAngle::Trace(Visitor* visitor) const { … }
SVGAngle* SVGAngle::Clone() const { … }
float SVGAngle::Value() const { … }
void SVGAngle::SetValue(float value) { … }
template <typename CharType>
static SVGAngle::SVGAngleType StringToAngleType(const CharType*& ptr,
const CharType* end) { … }
String SVGAngle::ValueAsString() const { … }
template <typename CharType>
static SVGParsingError ParseValue(const CharType* start,
const CharType* end,
float& value_in_specified_units,
SVGAngle::SVGAngleType& unit_type) { … }
SVGParsingError SVGAngle::SetValueAsString(const String& value) { … }
void SVGAngle::NewValueSpecifiedUnits(SVGAngleType unit_type,
float value_in_specified_units) { … }
void SVGAngle::ConvertToSpecifiedUnits(SVGAngleType unit_type) { … }
void SVGAngle::Add(const SVGPropertyBase* other, const SVGElement*) { … }
void SVGAngle::Assign(const SVGAngle& other) { … }
void SVGAngle::CalculateAnimatedValue(
const SMILAnimationEffectParameters& parameters,
float percentage,
unsigned repeat_count,
const SVGPropertyBase* from,
const SVGPropertyBase* to,
const SVGPropertyBase* to_at_end_of_duration,
const SVGElement*) { … }
float SVGAngle::CalculateDistance(const SVGPropertyBase* other,
const SVGElement*) const { … }
void SVGAngle::OrientTypeChanged() { … }
SVGMarkerOrientType SVGAngle::OrientTypeValue() const { … }
bool SVGAngle::IsNumeric() const { … }
}