#include "third_party/blink/renderer/core/css/cssom/paint_worklet_style_property_map.h"
#include <memory>
#include <utility>
#include "third_party/blink/renderer/core/animation/compositor_animations.h"
#include "third_party/blink/renderer/core/css/css_unparsed_declaration_value.h"
#include "third_party/blink/renderer/core/css/css_variable_data.h"
#include "third_party/blink/renderer/core/css/cssom/computed_style_property_map.h"
#include "third_party/blink/renderer/core/css/cssom/cross_thread_keyword_value.h"
#include "third_party/blink/renderer/core/css/cssom/cross_thread_unit_value.h"
#include "third_party/blink/renderer/core/css/cssom/cross_thread_unsupported_value.h"
#include "third_party/blink/renderer/core/css/cssom/css_unparsed_value.h"
#include "third_party/blink/renderer/core/css/cssom/css_unsupported_style_value.h"
#include "third_party/blink/renderer/core/css/properties/css_property_ref.h"
#include "third_party/blink/renderer/core/dom/document.h"
#include "third_party/blink/renderer/core/style/computed_style.h"
namespace blink {
namespace {
class PaintWorkletStylePropertyMapIterationSource final
: public PairSyncIterable<StylePropertyMapReadOnly>::IterationSource { … };
bool BuildNativeValues(const ComputedStyle& style,
const Vector<CSSPropertyID>& native_properties,
PaintWorkletStylePropertyMap::CrossThreadData& data) { … }
bool BuildCustomValues(
const Document& document,
UniqueObjectId unique_object_id,
const ComputedStyle& style,
const Vector<AtomicString>& custom_properties,
PaintWorkletStylePropertyMap::CrossThreadData& data,
CompositorPaintWorkletInput::PropertyKeys& input_property_keys) { … }
}
std::optional<PaintWorkletStylePropertyMap::CrossThreadData>
PaintWorkletStylePropertyMap::BuildCrossThreadData(
const Document& document,
UniqueObjectId unique_object_id,
const ComputedStyle& style,
const Vector<CSSPropertyID>& native_properties,
const Vector<AtomicString>& custom_properties,
CompositorPaintWorkletInput::PropertyKeys& input_property_keys) { … }
PaintWorkletStylePropertyMap::CrossThreadData
PaintWorkletStylePropertyMap::CopyCrossThreadData(const CrossThreadData& data) { … }
PaintWorkletStylePropertyMap::PaintWorkletStylePropertyMap(CrossThreadData data)
: … { … }
CSSStyleValue* PaintWorkletStylePropertyMap::get(
const ExecutionContext* execution_context,
const String& property_name,
ExceptionState& exception_state) const { … }
CSSStyleValueVector PaintWorkletStylePropertyMap::getAll(
const ExecutionContext* execution_context,
const String& property_name,
ExceptionState& exception_state) const { … }
bool PaintWorkletStylePropertyMap::has(
const ExecutionContext* execution_context,
const String& property_name,
ExceptionState& exception_state) const { … }
unsigned PaintWorkletStylePropertyMap::size() const { … }
PaintWorkletStylePropertyMap::IterationSource*
PaintWorkletStylePropertyMap::CreateIterationSource(
ScriptState* script_state,
ExceptionState& exception_state) { … }
void PaintWorkletStylePropertyMap::Trace(Visitor* visitor) const { … }
}