Trait HookUnmount

Source
pub trait HookUnmount {
    // Provided method
    fn unmount(self: Pin<&mut Self>) { ... }
}
Expand description

Defines how to cleanup a hook.

Consider this as a re-entrant and pinned version of Drop. Cleanups can be run in unmount.

After unmount, the hook might still be used or updated.

Provided Methods§

Source

fn unmount(self: Pin<&mut Self>)

Implementations on Foreign Types§

Source§

impl<H> HookUnmount for &mut H
where H: HookUnmount + Unpin + ?Sized,

Source§

fn unmount(self: Pin<&mut &mut H>)

Source§

impl<H> HookUnmount for Box<H>
where H: HookUnmount + Unpin + ?Sized,

Source§

fn unmount(self: Pin<&mut Box<H>>)

Source§

impl<P> HookUnmount for Pin<P>
where P: DerefMut, <P as Deref>::Target: HookUnmount,

Source§

fn unmount(self: Pin<&mut Pin<P>>)

Implementors§

Source§

impl HookUnmount for HookTuple<()>

Source§

impl<Data, Dep> HookUnmount for Memo<Data, Dep>

Source§

impl<Dep, E: EffectFor<Dep>> HookUnmount for Effect<Dep, E>

Source§

impl<E: EffectForNoneDependency> HookUnmount for EffectOnNextPoll<E>

Source§

impl<E: EffectForNoneDependency> HookUnmount for EffectOnce<E>

Source§

impl<H: HookPollNextUpdate + HookUnmount + Default> HookUnmount for UninitializedHook<H>

Source§

impl<H: HookPollNextUpdate + HookUnmount> HookUnmount for LazyPinnedHook<H>

Source§

impl<H: HookUnmount + Unpin> HookUnmount for SignalEq<H>

Source§

impl<InnerHook, U> HookUnmount for FnHookUninitialized<InnerHook, U>

Source§

impl<InnerHook, U, I> HookUnmount for FnHook<InnerHook, U, I>
where I: Initialized, InnerHook: Default + HookPollNextUpdate + HookUnmount, U: for<'hook> FnMutOneArg<Pin<&'hook mut InnerHook>>,

Source§

impl<P: FnMut(&mut Context<'_>) -> Poll<bool>> HookUnmount for PollNextUpdate<P>

Source§

impl<S: 'static + Signal> HookUnmount for LocalKeySignalHook<S>

Source§

impl<S: 'static + Signal> HookUnmount for LocalKeySignalHookUninitialized<S>

Source§

impl<T0> HookUnmount for HookTuple<(T0,)>
where T0: HookUnmount,

Source§

impl<T1, T0> HookUnmount for HookTuple<(T1, T0)>
where T1: HookUnmount, T0: HookUnmount,

Source§

impl<T2, T1, T0> HookUnmount for HookTuple<(T2, T1, T0)>
where T2: HookUnmount, T1: HookUnmount, T0: HookUnmount,

Source§

impl<T3, T2, T1, T0> HookUnmount for HookTuple<(T3, T2, T1, T0)>

Source§

impl<T4, T3, T2, T1, T0> HookUnmount for HookTuple<(T4, T3, T2, T1, T0)>

Source§

impl<T5, T4, T3, T2, T1, T0> HookUnmount for HookTuple<(T5, T4, T3, T2, T1, T0)>

Source§

impl<T6, T5, T4, T3, T2, T1, T0> HookUnmount for HookTuple<(T6, T5, T4, T3, T2, T1, T0)>

Source§

impl<T7, T6, T5, T4, T3, T2, T1, T0> HookUnmount for HookTuple<(T7, T6, T5, T4, T3, T2, T1, T0)>

Source§

impl<T8, T7, T6, T5, T4, T3, T2, T1, T0> HookUnmount for HookTuple<(T8, T7, T6, T5, T4, T3, T2, T1, T0)>

Source§

impl<T9, T8, T7, T6, T5, T4, T3, T2, T1, T0> HookUnmount for HookTuple<(T9, T8, T7, T6, T5, T4, T3, T2, T1, T0)>

Source§

impl<T> HookUnmount for Mut<T>

Source§

impl<T> HookUnmount for LazyPinned<T>

Source§

impl<T> HookUnmount for Pinned<T>

Source§

impl<T> HookUnmount for GenSignalHook<T>

Source§

impl<T> HookUnmount for SharedRef<T>

Source§

impl<T> HookUnmount for SharedRefUninitialized<T>

Source§

impl<T> HookUnmount for SharedSignal<T>

Source§

impl<T, U: StateUpdater<T>> HookUnmount for StateWithUpdater<T, U>

Source§

impl<T: 'static> HookUnmount for GenRefOwner<T>