Struct freya::prelude::GlobalMemo
pub struct GlobalMemo<T>where
T: 'static,{ /* private fields */ }
Expand description
A signal that can be accessed from anywhere in the application and created in a static
Implementations§
§impl<T> GlobalMemo<T>where
T: PartialEq + 'static,
impl<T> GlobalMemo<T>where
T: PartialEq + 'static,
pub const fn new(selector: fn() -> T) -> GlobalMemo<T>where
T: PartialEq,
pub const fn new(selector: fn() -> T) -> GlobalMemo<T>where
T: PartialEq,
Create a new global signal
pub fn signal(&self) -> ReadOnlySignal<T>
pub fn signal(&self) -> ReadOnlySignal<T>
Get the signal that backs this global.
pub fn origin_scope(&self) -> ScopeId
pub fn origin_scope(&self) -> ScopeId
Get the scope the signal was created in.
pub fn id(&self) -> GenerationalBoxId
pub fn id(&self) -> GenerationalBoxId
Get the generational id of the signal.
Trait Implementations§
§impl<T> Debug for GlobalMemo<T>
impl<T> Debug for GlobalMemo<T>
§impl<T> Deref for GlobalMemo<T>
impl<T> Deref for GlobalMemo<T>
Allow calling a signal with signal() syntax
Currently only limited to copy types, though could probably specialize for string/arc/rc
§impl<T> Display for GlobalMemo<T>
impl<T> Display for GlobalMemo<T>
§impl<T> IntoAttributeValue for GlobalMemo<T>
impl<T> IntoAttributeValue for GlobalMemo<T>
§fn into_value(self) -> AttributeValue
fn into_value(self) -> AttributeValue
Convert into an attribute value
§impl<T> PartialEq<T> for GlobalMemo<T>where
T: PartialEq + 'static,
impl<T> PartialEq<T> for GlobalMemo<T>where
T: PartialEq + 'static,
§impl<T> PartialEq for GlobalMemo<T>where
T: PartialEq + 'static,
impl<T> PartialEq for GlobalMemo<T>where
T: PartialEq + 'static,
§fn eq(&self, other: &GlobalMemo<T>) -> bool
fn eq(&self, other: &GlobalMemo<T>) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.§impl<T> Readable for GlobalMemo<T>where
T: PartialEq + 'static,
impl<T> Readable for GlobalMemo<T>where
T: PartialEq + 'static,
§type Storage = UnsyncStorage
type Storage = UnsyncStorage
The type of the storage this readable uses.
§fn try_read(
&self
) -> Result<<<GlobalMemo<T> as Readable>::Storage as AnyStorage>::Ref<<GlobalMemo<T> as Readable>::Target>, BorrowError>
fn try_read( &self ) -> Result<<<GlobalMemo<T> as Readable>::Storage as AnyStorage>::Ref<<GlobalMemo<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.
§fn peek(
&self
) -> <<GlobalMemo<T> as Readable>::Storage as AnyStorage>::Ref<<GlobalMemo<T> as Readable>::Target>
fn peek( &self ) -> <<GlobalMemo<T> as Readable>::Storage as AnyStorage>::Ref<<GlobalMemo<T> as Readable>::Target>
Get the current value of the state without subscribing to updates. If the value has been dropped, this will panic.
§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.
§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.
Auto Trait Implementations§
impl<T> RefUnwindSafe for GlobalMemo<T>
impl<T> Send for GlobalMemo<T>
impl<T> Sync for GlobalMemo<T>
impl<T> Unpin for GlobalMemo<T>
impl<T> UnwindSafe for GlobalMemo<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
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T, R> ReadableOptionExt<T> for R
impl<T, R> ReadableOptionExt<T> for R
§impl<T, R> ReadableVecExt<T> for R
impl<T, R> ReadableVecExt<T> for R
§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.
§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.
§fn get(&self, index: usize) -> Option<<Self::Storage as AnyStorage>::Ref<T>>
fn get(&self, index: usize) -> Option<<Self::Storage as AnyStorage>::Ref<T>>
Get the element at the given index of the inner vector.
§fn iter(&self) -> ReadableValueIterator<'_, Self> ⓘwhere
Self: Sized,
fn iter(&self) -> ReadableValueIterator<'_, Self> ⓘwhere
Self: Sized,
Get an iterator over the values of the inner vector.
§impl<T, O> SuperFrom<T> for Owhere
O: From<T>,
impl<T, O> SuperFrom<T> for Owhere
O: From<T>,
§fn super_from(input: T) -> O
fn super_from(input: T) -> O
Convert from a type to another type.
§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>,
§fn super_into(self) -> O
fn super_into(self) -> O
Convert from a type to another type.