#include "third_party/blink/renderer/bindings/modules/v8/v8_paint_rendering_context_2d.h"
#include "third_party/blink/public/mojom/origin_trial_feature/origin_trial_feature.mojom-shared.h"
#include "third_party/blink/renderer/bindings/core/v8/generated_code_helper.h"
#include "third_party/blink/renderer/bindings/core/v8/native_value_traits_impl.h"
#include "third_party/blink/renderer/bindings/core/v8/to_v8_traits.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_css_image_value.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_dom_matrix.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_dom_matrix_init.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_dom_point_init.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_html_canvas_element.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_html_image_element.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_html_video_element.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_image_bitmap.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_offscreen_canvas.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_set_return_value_for_core.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_svg_image_element.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_union_dompointinit_unrestricteddouble.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_begin_layer_options.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_canvas_fill_rule.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_canvas_filter.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_canvas_gradient.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_canvas_pattern.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_image_smoothing_quality.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_mesh_2d_index_buffer.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_mesh_2d_uv_buffer.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_mesh_2d_vertex_buffer.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_path_2d.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_union_canvasfilter_string.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_union_cssimagevalue_htmlcanvaselement_htmlimageelement_htmlvideoelement_imagebitmap_offscreencanvas_svgimageelement_videoframe.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_video_frame.h"
#include "third_party/blink/renderer/core/css/cssom/css_style_image_value.h"
#include "third_party/blink/renderer/core/execution_context/execution_context.h"
#include "third_party/blink/renderer/core/frame/dactyloscoper.h"
#include "third_party/blink/renderer/core/frame/web_feature.h"
#include "third_party/blink/renderer/core/geometry/dom_matrix.h"
#include "third_party/blink/renderer/core/html/canvas/html_canvas_element.h"
#include "third_party/blink/renderer/core/html/html_image_element.h"
#include "third_party/blink/renderer/core/html/media/html_video_element.h"
#include "third_party/blink/renderer/core/imagebitmap/image_bitmap.h"
#include "third_party/blink/renderer/core/offscreencanvas/offscreen_canvas.h"
#include "third_party/blink/renderer/core/svg/svg_image_element.h"
#include "third_party/blink/renderer/modules/canvas/canvas2d/canvas_filter.h"
#include "third_party/blink/renderer/modules/canvas/canvas2d/canvas_gradient.h"
#include "third_party/blink/renderer/modules/canvas/canvas2d/canvas_pattern.h"
#include "third_party/blink/renderer/modules/canvas/canvas2d/mesh_2d_index_buffer.h"
#include "third_party/blink/renderer/modules/canvas/canvas2d/mesh_2d_uv_buffer.h"
#include "third_party/blink/renderer/modules/canvas/canvas2d/mesh_2d_vertex_buffer.h"
#include "third_party/blink/renderer/modules/canvas/canvas2d/path_2d.h"
#include "third_party/blink/renderer/modules/csspaint/paint_rendering_context_2d.h"
#include "third_party/blink/renderer/modules/webcodecs/video_frame.h"
#include "third_party/blink/renderer/platform/bindings/cooperative_scheduling_helpers.h"
#include "third_party/blink/renderer/platform/bindings/exception_messages.h"
#include "third_party/blink/renderer/platform/bindings/idl_member_installer.h"
#include "third_party/blink/renderer/platform/bindings/runtime_call_stats.h"
#include "third_party/blink/renderer/platform/bindings/v8_binding.h"
#include "third_party/blink/renderer/platform/bindings/wrapper_type_info.h"
#include "third_party/blink/renderer/platform/instrumentation/use_counter.h"
namespace blink {
bool V8PaintRenderingContext2D::IsExposed(ExecutionContext* execution_context) { … }
#if defined(COMPONENT_BUILD) && defined(WIN32) && defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wglobal-constructors"
#endif
const WrapperTypeInfo V8PaintRenderingContext2D::wrapper_type_info_{ … };
#if defined(COMPONENT_BUILD) && defined(WIN32) && defined(__clang__)
#pragma clang diagnostic pop
#endif
const WrapperTypeInfo& PaintRenderingContext2D::wrapper_type_info_ = …;
static_assert …;
namespace {
namespace v8_paint_rendering_context_2d {
void GlobalAlphaAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void GlobalAlphaAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void GlobalCompositeOperationAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void GlobalCompositeOperationAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void FilterAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void FilterAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ImageSmoothingEnabledAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ImageSmoothingEnabledAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ImageSmoothingQualityAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ImageSmoothingQualityAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void StrokeStyleAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void StrokeStyleAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void FillStyleAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void FillStyleAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ShadowOffsetXAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ShadowOffsetXAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ShadowOffsetYAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ShadowOffsetYAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ShadowBlurAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ShadowBlurAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ShadowColorAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ShadowColorAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void LineWidthAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void LineWidthAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void LineCapAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void LineCapAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void LineJoinAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void LineJoinAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void MiterLimitAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void MiterLimitAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void LineDashOffsetAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void LineDashOffsetAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ArcOperationNoAllocDirectCallArg6(v8::Local<v8::Object> v8_arg0_receiver, double v8_arg1_x, double v8_arg2_y, double v8_arg3_radius, double v8_arg4_start_angle, double v8_arg5_end_angle, bool v8_arg6_anticlockwise, v8::FastApiCallbackOptions& v8_arg_callback_options) { … }
void ArcOperationNoAllocDirectCallArg5(v8::Local<v8::Object> v8_arg0_receiver, double v8_arg1_x, double v8_arg2_y, double v8_arg3_radius, double v8_arg4_start_angle, double v8_arg5_end_angle, v8::FastApiCallbackOptions& v8_arg_callback_options) { … }
void ArcOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ArcToOperationNoAllocDirectCallArg5(v8::Local<v8::Object> v8_arg0_receiver, double v8_arg1_x_1, double v8_arg2_y_1, double v8_arg3_x_2, double v8_arg4_y_2, double v8_arg5_radius, v8::FastApiCallbackOptions& v8_arg_callback_options) { … }
void ArcToOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void BeginLayerOperationOverload1(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void BeginLayerOperationOverload2(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void BeginLayerOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void BeginPathOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void BezierCurveToOperationNoAllocDirectCallArg6(v8::Local<v8::Object> v8_arg0_receiver, double v8_arg1_cp_1_x, double v8_arg2_cp_1_y, double v8_arg3_cp_2_x, double v8_arg4_cp_2_y, double v8_arg5_x, double v8_arg6_y, v8::FastApiCallbackOptions& v8_arg_callback_options) { … }
void BezierCurveToOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ClearRectOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ClipOperationOverload1(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ClipOperationOverload2(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ClipOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ClosePathOperationNoAllocDirectCallArg0(v8::Local<v8::Object> v8_arg0_receiver, v8::FastApiCallbackOptions& v8_arg_callback_options) { … }
void ClosePathOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CreateConicGradientOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CreateLinearGradientOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CreateMesh2DIndexBufferOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CreateMesh2DUVBufferOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CreateMesh2DVertexBufferOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CreatePatternOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CreateRadialGradientOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void DrawImageOperationOverload1(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void DrawImageOperationOverload2(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void DrawImageOperationOverload3(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void DrawImageOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void DrawMeshOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void EllipseOperationNoAllocDirectCallArg8(v8::Local<v8::Object> v8_arg0_receiver, double v8_arg1_x, double v8_arg2_y, double v8_arg3_radius_x, double v8_arg4_radius_y, double v8_arg5_rotation, double v8_arg6_start_angle, double v8_arg7_end_angle, bool v8_arg8_anticlockwise, v8::FastApiCallbackOptions& v8_arg_callback_options) { … }
void EllipseOperationNoAllocDirectCallArg7(v8::Local<v8::Object> v8_arg0_receiver, double v8_arg1_x, double v8_arg2_y, double v8_arg3_radius_x, double v8_arg4_radius_y, double v8_arg5_rotation, double v8_arg6_start_angle, double v8_arg7_end_angle, v8::FastApiCallbackOptions& v8_arg_callback_options) { … }
void EllipseOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void EndLayerOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void FillOperationOverload1(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void FillOperationOverload2(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void FillOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void FillRectOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void GetLineDashOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void GetTransformOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void IsPointInPathOperationOverload1(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void IsPointInPathOperationOverload2(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void IsPointInPathOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void IsPointInStrokeOperationOverload1(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void IsPointInStrokeOperationOverload2(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void IsPointInStrokeOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void LineToOperationNoAllocDirectCallArg2(v8::Local<v8::Object> v8_arg0_receiver, double v8_arg1_x, double v8_arg2_y, v8::FastApiCallbackOptions& v8_arg_callback_options) { … }
void LineToOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void MoveToOperationNoAllocDirectCallArg2(v8::Local<v8::Object> v8_arg0_receiver, double v8_arg1_x, double v8_arg2_y, v8::FastApiCallbackOptions& v8_arg_callback_options) { … }
void MoveToOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void QuadraticCurveToOperationNoAllocDirectCallArg4(v8::Local<v8::Object> v8_arg0_receiver, double v8_arg1_cpx, double v8_arg2_cpy, double v8_arg3_x, double v8_arg4_y, v8::FastApiCallbackOptions& v8_arg_callback_options) { … }
void QuadraticCurveToOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void RectOperationNoAllocDirectCallArg4(v8::Local<v8::Object> v8_arg0_receiver, double v8_arg1_x, double v8_arg2_y, double v8_arg3_width, double v8_arg4_height, v8::FastApiCallbackOptions& v8_arg_callback_options) { … }
void RectOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ResetOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ResetTransformOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void RestoreOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void RotateOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void RoundRectOperationOverload1(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void RoundRectOperationOverload2(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void RoundRectOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void SaveOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ScaleOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void SetLineDashOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void SetTransformOperationOverload1(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void SetTransformOperationOverload2(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void SetTransformOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void StrokeOperationOverload1(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void StrokeOperationOverload2(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void StrokeOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void StrokeRectOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void TransformOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void TranslateOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
}
usingnamespacev8_paint_rendering_context_2d;
}
void V8PaintRenderingContext2D::InstallInterfaceTemplate(v8::Isolate* isolate, const DOMWrapperWorld& world, v8::Local<v8::Template> interface_template) { … }
void V8PaintRenderingContext2D::InstallUnconditionalProperties(v8::Isolate* isolate, const DOMWrapperWorld& world, v8::Local<v8::Template> instance_template, v8::Local<v8::Template> prototype_template, v8::Local<v8::Template> interface_template) { … }
void V8PaintRenderingContext2D::InstallContextIndependentProperties(v8::Isolate* isolate, const DOMWrapperWorld& world, v8::Local<v8::Template> instance_template, v8::Local<v8::Template> prototype_template, v8::Local<v8::Template> interface_template) { … }
void V8PaintRenderingContext2D::InstallContextDependentProperties(v8::Local<v8::Context> context, const DOMWrapperWorld& world, v8::Local<v8::Object> instance_object, v8::Local<v8::Object> prototype_object, v8::Local<v8::Object> interface_object, v8::Local<v8::Template> interface_template, FeatureSelector feature_selector) { … }
}