#ifdef UNSAFE_BUFFERS_BUILD
#pragma allow_unsafe_buffers
#endif
#include "third_party/blink/renderer/core/css/css_variable_data.h"
#include "base/ranges/algorithm.h"
#include "third_party/blink/renderer/core/css/css_syntax_definition.h"
#include "third_party/blink/renderer/core/css/parser/css_parser_context.h"
#include "third_party/blink/renderer/core/css/parser/css_parser_token_stream.h"
#include "third_party/blink/renderer/core/css/parser/css_tokenizer.h"
#include "third_party/blink/renderer/platform/runtime_enabled_features.h"
#include "third_party/blink/renderer/platform/wtf/text/string_builder.h"
#include "third_party/blink/renderer/platform/wtf/text/string_view.h"
namespace blink {
static bool IsFontUnitToken(CSSParserToken token) { … }
static bool IsRootFontUnitToken(CSSParserToken token) { … }
static bool IsLineHeightUnitToken(CSSParserToken token) { … }
void CSSVariableData::ExtractFeatures(const CSSParserToken& token,
bool& has_font_units,
bool& has_root_font_units,
bool& has_line_height_units) { … }
CSSVariableData* CSSVariableData::Create(const String& original_text,
bool is_animation_tainted,
bool needs_variable_resolution) { … }
String CSSVariableData::Serialize() const { … }
bool CSSVariableData::operator==(const CSSVariableData& other) const { … }
CSSVariableData::CSSVariableData(PassKey,
StringView original_text,
bool is_animation_tainted,
bool needs_variable_resolution,
bool has_font_units,
bool has_root_font_units,
bool has_line_height_units)
: … { … }
const CSSValue* CSSVariableData::ParseForSyntax(
const CSSSyntaxDefinition& syntax,
SecureContextMode secure_context_mode) const { … }
}