#[repr(C, u8)]pub enum PermissionDiffEvent {
Subscribe {
capability: Capability,
node_id: DomNodeId,
},
Release {
capability: Capability,
},
Reconfigure {
capability: Capability,
},
}Expand description
Diff event emitted at the end of each layout pass for the platform backend to translate into native subscribe / release / reconfigure calls.
Subscribe fires the first time a capability’s refcount transitions from
zero to one (i.e. the first permission-bearing node of its kind appears).
Release fires when the refcount drops back to zero. Reconfigure is
reserved for in-place parameter changes (e.g. camera-facing front → back)
once CameraPreview lands as a NodeType — kept in the enum so platform
backends can ignore it cleanly until then.
Variants§
Subscribe
First appearance of capability in the layout. Refcount went 0 → 1.
Release
Last bearing node left the layout. Refcount went 1 → 0.
Fields
capability: CapabilityReconfigure
Reserved for future use — currently never emitted. The diff path will
fire it once CameraPreview etc. land with parameter fields.
Fields
capability: CapabilityTrait Implementations§
Source§impl Clone for PermissionDiffEvent
impl Clone for PermissionDiffEvent
Source§fn clone(&self) -> PermissionDiffEvent
fn clone(&self) -> PermissionDiffEvent
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for PermissionDiffEvent
impl Debug for PermissionDiffEvent
Source§impl PartialEq for PermissionDiffEvent
impl PartialEq for PermissionDiffEvent
Source§fn eq(&self, other: &PermissionDiffEvent) -> bool
fn eq(&self, other: &PermissionDiffEvent) -> bool
self and other values to be equal, and is used by ==.impl Eq for PermissionDiffEvent
impl StructuralPartialEq for PermissionDiffEvent
Auto Trait Implementations§
impl Freeze for PermissionDiffEvent
impl RefUnwindSafe for PermissionDiffEvent
impl Send for PermissionDiffEvent
impl Sync for PermissionDiffEvent
impl Unpin for PermissionDiffEvent
impl UnsafeUnpin for PermissionDiffEvent
impl UnwindSafe for PermissionDiffEvent
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
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
key and return true if they are equal.Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more