Struct rustcn_ui::GlobalSignal 
source · pub struct GlobalSignal<T> { /* private fields */ }Expand description
A signal that can be accessed from anywhere in the application and created in a static
Implementations§
source§impl<T> GlobalSignal<T>where
    T: 'static,
 
impl<T> GlobalSignal<T>where
    T: 'static,
sourcepub const fn new(initializer: fn() -> T) -> GlobalSignal<T>
 
pub const fn new(initializer: fn() -> T) -> GlobalSignal<T>
Create a new global signal with the given initializer.
sourcepub fn origin_scope(&self) -> ScopeId
 
pub fn origin_scope(&self) -> ScopeId
Get the scope the signal was created in.
sourcepub fn with_mut<O>(&self, f: impl FnOnce(&mut T) -> O) -> O
 
pub fn with_mut<O>(&self, f: impl FnOnce(&mut T) -> O) -> O
Run a closure with a mutable reference to the signal’s value. If the signal has been dropped, this will panic.
sourcepub fn id(&self) -> GenerationalBoxId
 
pub fn id(&self) -> GenerationalBoxId
Get the generational id of the signal.
Trait Implementations§
source§impl<T> Debug for GlobalSignal<T>where
    T: Debug + 'static,
 
impl<T> Debug for GlobalSignal<T>where
    T: Debug + 'static,
source§impl<T> Deref for GlobalSignal<T>where
    T: Clone + 'static,
 
impl<T> Deref for GlobalSignal<T>where
    T: Clone + 'static,
Allow calling a signal with signal() syntax
Currently only limited to copy types, though could probably specialize for string/arc/rc
source§impl<T> Display for GlobalSignal<T>where
    T: Display + 'static,
 
impl<T> Display for GlobalSignal<T>where
    T: Display + 'static,
source§impl<T> IntoAttributeValue for GlobalSignal<T>where
    T: 'static + Clone + IntoAttributeValue,
 
impl<T> IntoAttributeValue for GlobalSignal<T>where
    T: 'static + Clone + IntoAttributeValue,
source§fn into_value(self) -> AttributeValue
 
fn into_value(self) -> AttributeValue
Convert into an attribute value
source§impl<T> PartialEq<T> for GlobalSignal<T>where
    T: PartialEq + 'static,
 
impl<T> PartialEq<T> for GlobalSignal<T>where
    T: PartialEq + 'static,
source§impl<T> PartialEq for GlobalSignal<T>where
    T: 'static,
 
impl<T> PartialEq for GlobalSignal<T>where
    T: 'static,
source§fn eq(&self, other: &GlobalSignal<T>) -> bool
 
fn eq(&self, other: &GlobalSignal<T>) -> bool
This method tests for 
self and other values to be equal, and is used
by ==.source§impl<T> Readable for GlobalSignal<T>where
    T: 'static,
 
impl<T> Readable for GlobalSignal<T>where
    T: 'static,
§type Storage = UnsyncStorage
 
type Storage = UnsyncStorage
The type of the storage this readable uses.
source§fn try_read(
    &self
) -> Result<<<GlobalSignal<T> as Readable>::Storage as AnyStorage>::Ref<<GlobalSignal<T> as Readable>::Target>, BorrowError>
 
fn try_read( &self ) -> Result<<<GlobalSignal<T> as Readable>::Storage as AnyStorage>::Ref<<GlobalSignal<T> as Readable>::Target>, BorrowError>
Try to get the current value of the state. If this is a signal, this will subscribe the current scope to the signal. If the value has been dropped, this will panic.
source§fn peek(
    &self
) -> <<GlobalSignal<T> as Readable>::Storage as AnyStorage>::Ref<<GlobalSignal<T> as Readable>::Target>
 
fn peek( &self ) -> <<GlobalSignal<T> as Readable>::Storage as AnyStorage>::Ref<<GlobalSignal<T> as Readable>::Target>
Get the current value of the state without subscribing to updates. If the value has been dropped, this will panic.
source§fn read(&self) -> <Self::Storage as AnyStorage>::Ref<Self::Target>
 
fn read(&self) -> <Self::Storage as AnyStorage>::Ref<Self::Target>
Get the current value of the state. If this is a signal, this will subscribe the current scope to the signal. If the value has been dropped, this will panic.
source§fn with<O>(&self, f: impl FnOnce(&Self::Target) -> O) -> O
 
fn with<O>(&self, f: impl FnOnce(&Self::Target) -> O) -> O
Run a function with a reference to the value. If the value has been dropped, this will panic.
source§impl<T> Writable for GlobalSignal<T>where
    T: 'static,
 
impl<T> Writable for GlobalSignal<T>where
    T: 'static,
source§fn map_mut<I, U, F>(
    ref_: <GlobalSignal<T> as Writable>::Mut<I>,
    f: F
) -> <GlobalSignal<T> as Writable>::Mut<U>
 
fn map_mut<I, U, F>( ref_: <GlobalSignal<T> as Writable>::Mut<I>, f: F ) -> <GlobalSignal<T> as Writable>::Mut<U>
Map the reference to a new type.
source§fn try_map_mut<I, U, F>(
    ref_: <GlobalSignal<T> as Writable>::Mut<I>,
    f: F
) -> Option<<GlobalSignal<T> as Writable>::Mut<U>>
 
fn try_map_mut<I, U, F>( ref_: <GlobalSignal<T> as Writable>::Mut<I>, f: F ) -> Option<<GlobalSignal<T> as Writable>::Mut<U>>
Try to map the reference to a new type.
source§fn try_write(
    &self
) -> Result<<GlobalSignal<T> as Writable>::Mut<T>, BorrowMutError>
 
fn try_write( &self ) -> Result<<GlobalSignal<T> as Writable>::Mut<T>, BorrowMutError>
Try to get a mutable reference to the value. If the value has been dropped, this will panic.
source§fn write(&mut self) -> Self::Mut<Self::Target>
 
fn write(&mut self) -> Self::Mut<Self::Target>
Get a mutable reference to the value. If the value has been dropped, this will panic.
Auto Trait Implementations§
impl<T> RefUnwindSafe for GlobalSignal<T>
impl<T> Send for GlobalSignal<T>
impl<T> Sync for GlobalSignal<T>
impl<T> Unpin for GlobalSignal<T>
impl<T> UnwindSafe for GlobalSignal<T>
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> 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, R> ReadableOptionExt<T> for R
 
impl<T, R> ReadableOptionExt<T> for R
source§impl<T, R> ReadableVecExt<T> for R
 
impl<T, R> ReadableVecExt<T> for R
source§fn first(&self) -> Option<<Self::Storage as AnyStorage>::Ref<T>>
 
fn first(&self) -> Option<<Self::Storage as AnyStorage>::Ref<T>>
Get the first element of the inner vector.
source§fn last(&self) -> Option<<Self::Storage as AnyStorage>::Ref<T>>
 
fn last(&self) -> Option<<Self::Storage as AnyStorage>::Ref<T>>
Get the last element of the inner vector.
source§impl<T, O> SuperFrom<T> for Owhere
    O: From<T>,
 
impl<T, O> SuperFrom<T> for Owhere
    O: From<T>,
source§fn super_from(input: T) -> O
 
fn super_from(input: T) -> O
Convert from a type to another type.
source§impl<T, O, M> SuperInto<O, M> for Twhere
    O: SuperFrom<T, M>,
 
impl<T, O, M> SuperInto<O, M> for Twhere
    O: SuperFrom<T, M>,
source§fn super_into(self) -> O
 
fn super_into(self) -> O
Convert from a type to another type.
source§impl<T> WithSubscriber for T
 
impl<T> WithSubscriber for T
source§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
 
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
source§fn with_current_subscriber(self) -> WithDispatch<Self>
 
fn with_current_subscriber(self) -> WithDispatch<Self>
source§impl<T, W> WritableOptionExt<T> for W
 
impl<T, W> WritableOptionExt<T> for W
source§fn get_or_insert(&mut self, default: T) -> Self::Mut<T>
 
fn get_or_insert(&mut self, default: T) -> Self::Mut<T>
Gets the value out of the Option, or inserts the given value if the Option is empty.
source§fn get_or_insert_with(&mut self, default: impl FnOnce() -> T) -> Self::Mut<T>
 
fn get_or_insert_with(&mut self, default: impl FnOnce() -> T) -> Self::Mut<T>
Gets the value out of the Option, or inserts the value returned by the given function if the Option is empty.
source§impl<T, W> WritableVecExt<T> for W
 
impl<T, W> WritableVecExt<T> for W
source§fn extend(&mut self, iter: impl IntoIterator<Item = T>)
 
fn extend(&mut self, iter: impl IntoIterator<Item = T>)
Extends the vector with the given iterator.
source§fn swap_remove(&mut self, index: usize) -> T
 
fn swap_remove(&mut self, index: usize) -> T
Swaps two values in the vector.
source§fn retain(&mut self, f: impl FnMut(&T) -> bool)
 
fn retain(&mut self, f: impl FnMut(&T) -> bool)
Retains only the values that match the given predicate.