Struct dioxus_lib::prelude::Memo
source · pub struct Memo<T>where
T: 'static,{ /* private fields */ }Expand description
A value that is memoized. This is useful for caching the result of a computation.
Implementations§
source§impl<T> Memo<T>where
T: 'static,
impl<T> Memo<T>where
T: 'static,
sourcepub fn new_with_location(
f: impl FnMut() -> T + 'static,
location: &'static Location<'static>,
) -> Memo<T>where
T: PartialEq,
pub fn new_with_location(
f: impl FnMut() -> T + 'static,
location: &'static Location<'static>,
) -> Memo<T>where
T: PartialEq,
Create a new memo with an explicit location
sourcepub fn origin_scope(&self) -> ScopeId
pub fn origin_scope(&self) -> ScopeId
Get the scope that the signal was created in.
sourcepub fn id(&self) -> GenerationalBoxId
pub fn id(&self) -> GenerationalBoxId
Get the id of the signal.
Trait Implementations§
source§impl<T> From<Memo<T>> for ReadOnlySignal<T>where
T: PartialEq,
impl<T> From<Memo<T>> for ReadOnlySignal<T>where
T: PartialEq,
source§fn from(val: Memo<T>) -> ReadOnlySignal<T>
fn from(val: Memo<T>) -> ReadOnlySignal<T>
Converts to this type from the input type.
source§impl<T> IntoAttributeValue for Memo<T>
impl<T> IntoAttributeValue for Memo<T>
source§fn into_value(self) -> AttributeValue
fn into_value(self) -> AttributeValue
Convert into an attribute value
source§impl<T> IntoDynNode for Memo<T>
impl<T> IntoDynNode for Memo<T>
source§fn into_dyn_node(self) -> DynamicNode
fn into_dyn_node(self) -> DynamicNode
Consume this item along with a scopestate and produce a DynamicNode Read more
source§impl<T> PartialEq for Memo<T>where
T: 'static,
impl<T> PartialEq for Memo<T>where
T: 'static,
source§impl<T> Readable for Memo<T>where
T: PartialEq,
impl<T> Readable for Memo<T>where
T: PartialEq,
source§fn peek_unchecked(
&self,
) -> <<Memo<T> as Readable>::Storage as AnyStorage>::Ref<'static, <Memo<T> as Readable>::Target>
fn peek_unchecked( &self, ) -> <<Memo<T> as Readable>::Storage as AnyStorage>::Ref<'static, <Memo<T> as Readable>::Target>
Get the current value of the signal. Unlike read, this will not subscribe the current scope to the signal which can cause parts of your UI to not update.
If the signal has been dropped, this will panic.
§type Storage = UnsyncStorage
type Storage = UnsyncStorage
The type of the storage this readable uses.
source§fn try_read_unchecked(
&self,
) -> Result<<<Memo<T> as Readable>::Storage as AnyStorage>::Ref<'static, <Memo<T> as Readable>::Target>, BorrowError>
fn try_read_unchecked( &self, ) -> Result<<<Memo<T> as Readable>::Storage as AnyStorage>::Ref<'static, <Memo<T> as Readable>::Target>, BorrowError>
Try to get a reference to the value without checking the lifetime. This will subscribe the current scope to the signal. Read more
source§fn map<O>(
self,
f: impl Fn(&Self::Target) -> &O + 'static,
) -> MappedSignal<O, Self::Storage>
fn map<O>( self, f: impl Fn(&Self::Target) -> &O + 'static, ) -> MappedSignal<O, Self::Storage>
Map the readable type to a new type.
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. Calling this on a Signal is the same as
using the signal() syntax to read and subscribe to its value
source§fn try_read(
&self,
) -> Result<<Self::Storage as AnyStorage>::Ref<'_, Self::Target>, BorrowError>
fn try_read( &self, ) -> Result<<Self::Storage as AnyStorage>::Ref<'_, Self::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.
source§fn read_unchecked(
&self,
) -> <Self::Storage as AnyStorage>::Ref<'static, Self::Target>
fn read_unchecked( &self, ) -> <Self::Storage as AnyStorage>::Ref<'static, Self::Target>
Get a reference to the value without checking the lifetime. This will subscribe the current scope to the signal. Read more
source§fn peek(&self) -> <Self::Storage as AnyStorage>::Ref<'_, Self::Target>
fn peek(&self) -> <Self::Storage as AnyStorage>::Ref<'_, Self::Target>
Get the current value of the state without subscribing to updates. 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.
impl<T> Copy for Memo<T>where
T: 'static,
Auto Trait Implementations§
impl<T> Freeze for Memo<T>
impl<T> !RefUnwindSafe for Memo<T>
impl<T> !Send for Memo<T>
impl<T> !Sync for Memo<T>
impl<T> Unpin for Memo<T>where
T: Unpin,
impl<T> !UnwindSafe for Memo<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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit)source§impl<T> CloneToUninit for Twhere
T: Copy,
impl<T> CloneToUninit for Twhere
T: Copy,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit)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.