diff options
author | Josh Matthews <josh@joshmatthews.net> | 2024-12-11 00:52:48 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-12-11 05:52:48 +0000 |
commit | e0cbab2fbb58ac687fb3df1bb56a27e748210bbb (patch) | |
tree | 5c331274b24c62842cd31cfdefe80b29120273dd /components/script/dom/webgpu/gpusampler.rs | |
parent | e10e989abb884f3c83a5c35d4c1b1be887ec0bb1 (diff) | |
download | servo-e0cbab2fbb58ac687fb3df1bb56a27e748210bbb.tar.gz servo-e0cbab2fbb58ac687fb3df1bb56a27e748210bbb.zip |
Rewrite From/TryFrom conversions on generated types to avoid future orphan rule violations (#34554)
* script: Add traits to allow converting between types that are not defined in the script crate.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* script: Rewrite all From/TryFrom implementations on generated WebIDL types to use new Convert/TryConvert traits.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
---------
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
Diffstat (limited to 'components/script/dom/webgpu/gpusampler.rs')
-rw-r--r-- | components/script/dom/webgpu/gpusampler.rs | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/components/script/dom/webgpu/gpusampler.rs b/components/script/dom/webgpu/gpusampler.rs index 25fa90a2410..98ec5a873ff 100644 --- a/components/script/dom/webgpu/gpusampler.rs +++ b/components/script/dom/webgpu/gpusampler.rs @@ -6,6 +6,7 @@ use dom_struct::dom_struct; use webgpu::wgc::resource::SamplerDescriptor; use webgpu::{WebGPU, WebGPUDevice, WebGPURequest, WebGPUSampler}; +use crate::conversions::Convert; use crate::dom::bindings::cell::DomRefCell; use crate::dom::bindings::codegen::Bindings::WebGPUBinding::{ GPUSamplerDescriptor, GPUSamplerMethods, @@ -79,18 +80,18 @@ impl GPUSampler { let sampler_id = device.global().wgpu_id_hub().create_sampler_id(); let compare_enable = descriptor.compare.is_some(); let desc = SamplerDescriptor { - label: (&descriptor.parent).into(), + label: (&descriptor.parent).convert(), address_modes: [ - descriptor.addressModeU.into(), - descriptor.addressModeV.into(), - descriptor.addressModeW.into(), + descriptor.addressModeU.convert(), + descriptor.addressModeV.convert(), + descriptor.addressModeW.convert(), ], - mag_filter: descriptor.magFilter.into(), - min_filter: descriptor.minFilter.into(), - mipmap_filter: descriptor.mipmapFilter.into(), + mag_filter: descriptor.magFilter.convert(), + min_filter: descriptor.minFilter.convert(), + mipmap_filter: descriptor.mipmapFilter.convert(), lod_min_clamp: *descriptor.lodMinClamp, lod_max_clamp: *descriptor.lodMaxClamp, - compare: descriptor.compare.map(Into::into), + compare: descriptor.compare.map(Convert::convert), anisotropy_clamp: 1, border_color: None, }; |