pub struct LocalSignalsRuntime;Expand description
A plain SignalsRuntimeRef implementation that represents a static signals runtime.
๐ง This implementation is currently not optimised. ๐ง
ยงFeatures
Enable the local_signals_runtime Cargo feature to implement SignalsRuntimeRef for this type.
ยงLogic
This runtime is guaranteed to have settled whenever the last thread-local borrow of it ceases, but only regarding effects originating on the current thread.
(This means that in addition to transiently borrowing calls, returned Futures
may cause the LocalSignalsRuntime not to settle until they are dropped.)
Otherwise, it makes no additional guarantees over those specified in SignalsRuntimeRefโs documentation.
ยงPanics
SignalsRuntimeRef::Symbols associated with the LocalSignalsRuntime are ordered.
Given LSRSymbols a and b, b can depend on a only iff a < b (by creation order).
Trait Implementationsยง
Sourceยงimpl Clone for LocalSignalsRuntime
impl Clone for LocalSignalsRuntime
Sourceยงfn clone(&self) -> LocalSignalsRuntime
fn clone(&self) -> LocalSignalsRuntime
1.0.0ยงfn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSourceยงimpl Debug for LocalSignalsRuntime
impl Debug for LocalSignalsRuntime
Sourceยงimpl Default for LocalSignalsRuntime
impl Default for LocalSignalsRuntime
Sourceยงfn default() -> LocalSignalsRuntime
fn default() -> LocalSignalsRuntime
Sourceยงimpl Hash for LocalSignalsRuntime
impl Hash for LocalSignalsRuntime
Sourceยงimpl Ord for LocalSignalsRuntime
impl Ord for LocalSignalsRuntime
Sourceยงimpl PartialEq for LocalSignalsRuntime
impl PartialEq for LocalSignalsRuntime
Sourceยงimpl PartialOrd for LocalSignalsRuntime
impl PartialOrd for LocalSignalsRuntime
Sourceยงimpl SignalsRuntimeRef for LocalSignalsRuntime
Available on crate feature local_signals_runtime only.The feature "local_signals_runtime" is required to enable this implementation.
impl SignalsRuntimeRef for LocalSignalsRuntime
local_signals_runtime only.The feature "local_signals_runtime" is required to enable this implementation.
Sourceยงtype CallbackTableTypes = GlobalCallbackTableTypes
type CallbackTableTypes = GlobalCallbackTableTypes
Sourceยงtype UpdateEager<'f, T: 'f, F: 'f> = DetachedFuture<'f, Result<T, F>>
type UpdateEager<'f, T: 'f, F: 'f> = DetachedFuture<'f, Result<T, F>>
Sourceยงfn next_id(&self) -> LSRSymbol
fn next_id(&self) -> LSRSymbol
SignalsRuntimeRef::Symbol for this instance. Read moreSourceยงfn record_dependency(
&self,
id: <LocalSignalsRuntime as SignalsRuntimeRef>::Symbol,
)
fn record_dependency( &self, id: <LocalSignalsRuntime as SignalsRuntimeRef>::Symbol, )
id as dependency of that context. Read moreSourceยงunsafe fn start<T, D>(
&self,
id: <LocalSignalsRuntime as SignalsRuntimeRef>::Symbol,
f: impl FnOnce() -> T,
callback_table: *const CallbackTable<D, <LocalSignalsRuntime as SignalsRuntimeRef>::CallbackTableTypes>,
callback_data: *const D,
) -> Twhere
D: ?Sized,
unsafe fn start<T, D>(
&self,
id: <LocalSignalsRuntime as SignalsRuntimeRef>::Symbol,
f: impl FnOnce() -> T,
callback_table: *const CallbackTable<D, <LocalSignalsRuntime as SignalsRuntimeRef>::CallbackTableTypes>,
callback_data: *const D,
) -> Twhere
D: ?Sized,
id. Read moreSourceยงfn stop(&self, id: <LocalSignalsRuntime as SignalsRuntimeRef>::Symbol)
fn stop(&self, id: <LocalSignalsRuntime as SignalsRuntimeRef>::Symbol)
id. Read moreSourceยงfn update_dependency_set<T>(
&self,
id: <LocalSignalsRuntime as SignalsRuntimeRef>::Symbol,
f: impl FnOnce() -> T,
) -> T
fn update_dependency_set<T>( &self, id: <LocalSignalsRuntime as SignalsRuntimeRef>::Symbol, f: impl FnOnce() -> T, ) -> T
f while recording dependencies for id,
updating the recorded dependencies for id to the new set. Read moreSourceยงfn subscribe(&self, id: <LocalSignalsRuntime as SignalsRuntimeRef>::Symbol)
fn subscribe(&self, id: <LocalSignalsRuntime as SignalsRuntimeRef>::Symbol)
id. Read moreSourceยงfn unsubscribe(&self, id: <LocalSignalsRuntime as SignalsRuntimeRef>::Symbol)
fn unsubscribe(&self, id: <LocalSignalsRuntime as SignalsRuntimeRef>::Symbol)
id. Read moreSourceยงfn update_or_enqueue(
&self,
id: <LocalSignalsRuntime as SignalsRuntimeRef>::Symbol,
f: impl FnOnce() -> Propagation + 'static,
)
fn update_or_enqueue( &self, id: <LocalSignalsRuntime as SignalsRuntimeRef>::Symbol, f: impl FnOnce() -> Propagation + 'static, )
Sourceยงfn update_eager<'f, T, F>(
&self,
id: <LocalSignalsRuntime as SignalsRuntimeRef>::Symbol,
f: F,
) -> <LocalSignalsRuntime as SignalsRuntimeRef>::UpdateEager<'f, T, F>where
T: 'f,
F: 'f + FnOnce() -> (Propagation, T),
fn update_eager<'f, T, F>(
&self,
id: <LocalSignalsRuntime as SignalsRuntimeRef>::Symbol,
f: F,
) -> <LocalSignalsRuntime as SignalsRuntimeRef>::UpdateEager<'f, T, F>where
T: 'f,
F: 'f + FnOnce() -> (Propagation, T),
Sourceยงfn update_blocking<T>(
&self,
id: <LocalSignalsRuntime as SignalsRuntimeRef>::Symbol,
f: impl FnOnce() -> (Propagation, T),
) -> T
fn update_blocking<T>( &self, id: <LocalSignalsRuntime as SignalsRuntimeRef>::Symbol, f: impl FnOnce() -> (Propagation, T), ) -> T
Sourceยงfn run_detached<T>(&self, f: impl FnOnce() -> T) -> T
fn run_detached<T>(&self, f: impl FnOnce() -> T) -> T
f exempted from any outer dependency recordings. Read moreSourceยงfn refresh(&self, id: <LocalSignalsRuntime as SignalsRuntimeRef>::Symbol)
fn refresh(&self, id: <LocalSignalsRuntime as SignalsRuntimeRef>::Symbol)
Sourceยงfn purge(&self, id: <LocalSignalsRuntime as SignalsRuntimeRef>::Symbol)
fn purge(&self, id: <LocalSignalsRuntime as SignalsRuntimeRef>::Symbol)
id. Read moreSourceยงfn hint_batched_updates<T>(&self, f: impl FnOnce() -> T) -> T
fn hint_batched_updates<T>(&self, f: impl FnOnce() -> T) -> T
impl Copy for LocalSignalsRuntime
impl Eq for LocalSignalsRuntime
impl StructuralPartialEq for LocalSignalsRuntime
Auto Trait Implementationsยง
impl Freeze for LocalSignalsRuntime
impl RefUnwindSafe for LocalSignalsRuntime
impl Send for LocalSignalsRuntime
impl Sync for LocalSignalsRuntime
impl Unpin for LocalSignalsRuntime
impl UnwindSafe for LocalSignalsRuntime
Blanket Implementationsยง
ยงimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
ยงfn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
ยงimpl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
ยงunsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
clone_to_uninit)Sourceยงimpl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
Sourceยงfn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
Sourceยงfn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read moreSourceยงfn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read moreSourceยงfn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
Sourceยงfn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
Sourceยงfn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self, then passes self.as_ref() into the pipe function.Sourceยงfn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self, then passes self.as_mut() into the pipe
function.Sourceยงfn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self, then passes self.deref() into the pipe function.Sourceยงimpl<T> Tap for T
impl<T> Tap for T
Sourceยงfn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B> of a value. Read moreSourceยงfn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B> of a value. Read moreSourceยงfn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R> view of a value. Read moreSourceยงfn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R> view of a value. Read moreSourceยงfn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target of a value. Read moreSourceยงfn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target of a value. Read moreSourceยงfn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap() only in debug builds, and is erased in release builds.Sourceยงfn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut() only in debug builds, and is erased in release
builds.Sourceยงfn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow() only in debug builds, and is erased in release
builds.Sourceยงfn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut() only in debug builds, and is erased in release
builds.Sourceยงfn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref() only in debug builds, and is erased in release
builds.Sourceยงfn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut() only in debug builds, and is erased in release
builds.Sourceยงfn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref() only in debug builds, and is erased in release
builds.