#[repr(u8)]pub enum DeviceLostReason {
Unknown = 0,
Destroyed = 1,
Dropped = 2,
ReplacedCallback = 3,
}
Expand description
Reason for “lose the device”.
Corresponds to WebGPU GPUDeviceLostReason
.
Variants§
Unknown = 0
Triggered by driver
Destroyed = 1
After Device::destroy
Dropped = 2
After Device::drop
WebGPU does not invoke the device lost callback when the device is dropped to prevent garbage collection from being observable. In wgpu, we invoke the callback on drop to help with managing memory owned by the callback.
ReplacedCallback = 3
After replacing the device_lost_callback
WebGPU does not have a concept of a device lost callback, but wgpu does. wgpu guarantees that any supplied callback will be invoked exactly once before it is dropped, which helps with managing the memory owned by the callback.
Trait Implementations§
Source§impl Clone for DeviceLostReason
impl Clone for DeviceLostReason
Source§fn clone(&self) -> DeviceLostReason
fn clone(&self) -> DeviceLostReason
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for DeviceLostReason
impl Debug for DeviceLostReason
Source§impl PartialEq for DeviceLostReason
impl PartialEq for DeviceLostReason
impl Copy for DeviceLostReason
impl Eq for DeviceLostReason
impl StructuralPartialEq for DeviceLostReason
Auto Trait Implementations§
impl Freeze for DeviceLostReason
impl RefUnwindSafe for DeviceLostReason
impl Send for DeviceLostReason
impl Sync for DeviceLostReason
impl Unpin for DeviceLostReason
impl UnwindSafe for DeviceLostReason
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.