Struct zng_app::update::OnUpdateHandle
source · pub struct OnUpdateHandle(/* private fields */);Expand description
Represents an on_pre_update or on_update handler.
Drop all clones of this handle to drop the binding, or call perm to drop the handle
but keep the handler alive for the duration of the app.
Implementations§
source§impl OnUpdateHandle
impl OnUpdateHandle
sourcepub fn dummy() -> Self
pub fn dummy() -> Self
Create a handle to nothing, the handle always in the unsubscribed state.
Note that Option<OnUpdateHandle> takes up the same space as OnUpdateHandle and avoids an allocation.
sourcepub fn perm(self)
pub fn perm(self)
Drops the handle but does not unsubscribe.
The handler stays in memory for the duration of the app or until another handle calls unsubscribe
sourcepub fn is_permanent(&self) -> bool
pub fn is_permanent(&self) -> bool
If another handle has called perm.
If true the var binding will stay active until the app exits, unless unsubscribe is called.
sourcepub fn unsubscribe(self)
pub fn unsubscribe(self)
Drops the handle and forces the handler to drop.
sourcepub fn is_unsubscribed(&self) -> bool
pub fn is_unsubscribed(&self) -> bool
If another handle has called unsubscribe.
The handler is already dropped or will be dropped in the next app update, this is irreversible.
sourcepub fn downgrade(&self) -> WeakOnUpdateHandle
pub fn downgrade(&self) -> WeakOnUpdateHandle
Create a weak handle.
Trait Implementations§
source§impl Clone for OnUpdateHandle
impl Clone for OnUpdateHandle
source§fn clone(&self) -> OnUpdateHandle
fn clone(&self) -> OnUpdateHandle
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moresource§impl Debug for OnUpdateHandle
impl Debug for OnUpdateHandle
source§impl Hash for OnUpdateHandle
impl Hash for OnUpdateHandle
source§impl PartialEq for OnUpdateHandle
impl PartialEq for OnUpdateHandle
source§fn eq(&self, other: &OnUpdateHandle) -> bool
fn eq(&self, other: &OnUpdateHandle) -> bool
self and other values to be equal, and is used
by ==.impl Eq for OnUpdateHandle
impl StructuralPartialEq for OnUpdateHandle
Auto Trait Implementations§
impl Freeze for OnUpdateHandle
impl RefUnwindSafe for OnUpdateHandle
impl Send for OnUpdateHandle
impl Sync for OnUpdateHandle
impl Unpin for OnUpdateHandle
impl UnwindSafe for OnUpdateHandle
Blanket Implementations§
source§impl<T> AnyVarValue for Twhere
T: VarValue,
impl<T> AnyVarValue for Twhere
T: VarValue,
source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
dyn Any methods.source§fn clone_boxed(&self) -> Box<dyn AnyVarValue>
fn clone_boxed(&self) -> Box<dyn AnyVarValue>
source§fn clone_boxed_var(&self) -> Box<dyn AnyVar>
fn clone_boxed_var(&self) -> Box<dyn AnyVar>
LocalVar<Self>.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<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> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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