pub trait GPUDeviceMethods {
Show 24 methods
// Required methods
fn Features(&self) -> Root<Dom<GPUSupportedFeatures>>;
fn Limits(&self) -> Root<Dom<GPUSupportedLimits>>;
fn GetQueue(&self) -> Root<Dom<GPUQueue>>;
fn Destroy(&self);
fn CreateBuffer(
&self,
descriptor: &GPUBufferDescriptor
) -> Result<Root<Dom<GPUBuffer>>, Error>;
fn CreateTexture(
&self,
descriptor: &GPUTextureDescriptor
) -> Root<Dom<GPUTexture>>;
fn CreateSampler(
&self,
descriptor: &GPUSamplerDescriptor
) -> Root<Dom<GPUSampler>>;
fn CreateBindGroupLayout(
&self,
descriptor: &GPUBindGroupLayoutDescriptor
) -> Root<Dom<GPUBindGroupLayout>>;
fn CreatePipelineLayout(
&self,
descriptor: &GPUPipelineLayoutDescriptor
) -> Root<Dom<GPUPipelineLayout>>;
fn CreateBindGroup(
&self,
descriptor: &GPUBindGroupDescriptor
) -> Root<Dom<GPUBindGroup>>;
fn CreateShaderModule(
&self,
descriptor: RootedTraceableBox<GPUShaderModuleDescriptor>
) -> Root<Dom<GPUShaderModule>>;
fn CreateComputePipeline(
&self,
descriptor: &GPUComputePipelineDescriptor
) -> Root<Dom<GPUComputePipeline>>;
fn CreateRenderPipeline(
&self,
descriptor: &GPURenderPipelineDescriptor
) -> Root<Dom<GPURenderPipeline>>;
fn CreateComputePipelineAsync(
&self,
descriptor: &GPUComputePipelineDescriptor,
_comp: InRealm<'_>
) -> Rc<Promise>;
fn CreateRenderPipelineAsync(
&self,
descriptor: &GPURenderPipelineDescriptor,
_comp: InRealm<'_>
) -> Rc<Promise>;
fn CreateCommandEncoder(
&self,
descriptor: &GPUCommandEncoderDescriptor
) -> Root<Dom<GPUCommandEncoder>>;
fn CreateRenderBundleEncoder(
&self,
descriptor: &GPURenderBundleEncoderDescriptor
) -> Root<Dom<GPURenderBundleEncoder>>;
fn GetLost(&self, _comp: InRealm<'_>) -> Result<Rc<Promise>, Error>;
fn PushErrorScope(&self, filter: GPUErrorFilter);
fn PopErrorScope(&self, _comp: InRealm<'_>) -> Rc<Promise>;
fn GetOnuncapturederror(&self) -> Option<Rc<EventHandlerNonNull>>;
fn SetOnuncapturederror(&self, value: Option<Rc<EventHandlerNonNull>>);
fn Label(&self) -> USVString;
fn SetLabel(&self, value: USVString);
}