#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_device.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_event_handler_non_null.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_event_target.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_set_return_value_for_core.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_bind_group.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_bind_group_descriptor.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_bind_group_layout.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_bind_group_layout_descriptor.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_buffer.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_buffer_descriptor.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_command_encoder.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_command_encoder_descriptor.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_compute_pipeline.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_compute_pipeline_descriptor.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_device_lost_info.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_error.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_error_filter.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_external_texture.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_external_texture_descriptor.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_pipeline_layout.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_pipeline_layout_descriptor.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_query_set.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_query_set_descriptor.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_queue.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_render_bundle_encoder.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_render_bundle_encoder_descriptor.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_render_pipeline.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_render_pipeline_descriptor.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_sampler.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_sampler_descriptor.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_shader_module.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_shader_module_descriptor.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_supported_features.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_supported_limits.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_texture.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_gpu_texture_descriptor.h"
#include "third_party/blink/renderer/core/execution_context/execution_context.h"
#include "third_party/blink/renderer/modules/webgpu/gpu_bind_group.h"
#include "third_party/blink/renderer/modules/webgpu/gpu_bind_group_layout.h"
#include "third_party/blink/renderer/modules/webgpu/gpu_buffer.h"
#include "third_party/blink/renderer/modules/webgpu/gpu_command_encoder.h"
#include "third_party/blink/renderer/modules/webgpu/gpu_compute_pipeline.h"
#include "third_party/blink/renderer/modules/webgpu/gpu_device.h"
#include "third_party/blink/renderer/modules/webgpu/gpu_device_lost_info.h"
#include "third_party/blink/renderer/modules/webgpu/gpu_error.h"
#include "third_party/blink/renderer/modules/webgpu/gpu_external_texture.h"
#include "third_party/blink/renderer/modules/webgpu/gpu_pipeline_layout.h"
#include "third_party/blink/renderer/modules/webgpu/gpu_query_set.h"
#include "third_party/blink/renderer/modules/webgpu/gpu_queue.h"
#include "third_party/blink/renderer/modules/webgpu/gpu_render_bundle_encoder.h"
#include "third_party/blink/renderer/modules/webgpu/gpu_render_pipeline.h"
#include "third_party/blink/renderer/modules/webgpu/gpu_sampler.h"
#include "third_party/blink/renderer/modules/webgpu/gpu_shader_module.h"
#include "third_party/blink/renderer/modules/webgpu/gpu_supported_features.h"
#include "third_party/blink/renderer/modules/webgpu/gpu_supported_limits.h"
#include "third_party/blink/renderer/modules/webgpu/gpu_texture.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"
namespace blink {
bool V8GPUDevice::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 V8GPUDevice::wrapper_type_info_{ … };
#if defined(COMPONENT_BUILD) && defined(WIN32) && defined(__clang__)
#pragma clang diagnostic pop
#endif
const WrapperTypeInfo& GPUDevice::wrapper_type_info_ = …;
static_assert …;
namespace {
namespace v8_gpu_device {
void FeaturesAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void LimitsAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void LostAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void QueueAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void OnuncapturederrorAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void OnuncapturederrorAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void LabelAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void LabelAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CreateBindGroupOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CreateBindGroupLayoutOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CreateBufferOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CreateCommandEncoderOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CreateComputePipelineOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CreateComputePipelineAsyncOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CreatePipelineLayoutOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CreateQuerySetOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CreateRenderBundleEncoderOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CreateRenderPipelineOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CreateRenderPipelineAsyncOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CreateSamplerOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CreateShaderModuleOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CreateTextureOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void DestroyOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ImportExternalTextureOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void PopErrorScopeOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void PushErrorScopeOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
}
usingnamespacev8_gpu_device;
}
void V8GPUDevice::InstallInterfaceTemplate(v8::Isolate* isolate, const DOMWrapperWorld& world, v8::Local<v8::Template> interface_template) { … }
void V8GPUDevice::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) { … }
}