pub struct CopyValue<T, S = UnsyncStorage>where
    T: 'static,
    S: Storage<T>,{ /* private fields */ }Expand description
CopyValue is a wrapper around a value to make the value mutable and Copy.
It is internally backed by generational_box::GenerationalBox.
Implementations§
source§impl<T> CopyValue<T>where
    T: 'static,
 
impl<T> CopyValue<T>where
    T: 'static,
sourcepub fn new(value: T) -> CopyValue<T>
 
pub fn new(value: T) -> CopyValue<T>
Create a new CopyValue. The value will be stored in the current component.
Once the component this value is created in is dropped, the value will be dropped.
sourcepub fn new_in_scope(value: T, scope: ScopeId) -> CopyValue<T>
 
pub fn new_in_scope(value: T, scope: ScopeId) -> CopyValue<T>
Create a new CopyValue. The value will be stored in the given scope. When the specified scope is dropped, the value will be dropped.
source§impl<T, S> CopyValue<T, S>where
    T: 'static,
    S: Storage<T>,
 
impl<T, S> CopyValue<T, S>where
    T: 'static,
    S: Storage<T>,
sourcepub fn new_maybe_sync(value: T) -> CopyValue<T, S>
 
pub fn new_maybe_sync(value: T) -> CopyValue<T, S>
Create a new CopyValue. The value will be stored in the current component.
Once the component this value is created in is dropped, the value will be dropped.
sourcepub fn new_maybe_sync_in_scope(value: T, scope: ScopeId) -> CopyValue<T, S>
 
pub fn new_maybe_sync_in_scope(value: T, scope: ScopeId) -> CopyValue<T, S>
Create a new CopyValue. The value will be stored in the given scope. When the specified scope is dropped, the value will be dropped.
sourcepub fn take(&self) -> T
 
pub fn take(&self) -> T
Take the value out of the CopyValue, invalidating the value in the process.
sourcepub fn origin_scope(&self) -> ScopeId
 
pub fn origin_scope(&self) -> ScopeId
Get the scope this value was created in.
sourcepub fn id(&self) -> GenerationalBoxId
 
pub fn id(&self) -> GenerationalBoxId
Get the generational id of the value.
Trait Implementations§
source§impl<T, S> AddAssign<T> for CopyValue<T, S>
 
impl<T, S> AddAssign<T> for CopyValue<T, S>
source§fn add_assign(&mut self, rhs: T)
 
fn add_assign(&mut self, rhs: T)
+= operation. Read moresource§impl<T, S> DivAssign<T> for CopyValue<T, S>
 
impl<T, S> DivAssign<T> for CopyValue<T, S>
source§fn div_assign(&mut self, rhs: T)
 
fn div_assign(&mut self, rhs: T)
/= operation. Read moresource§impl<T, S> MulAssign<T> for CopyValue<T, S>
 
impl<T, S> MulAssign<T> for CopyValue<T, S>
source§fn mul_assign(&mut self, rhs: T)
 
fn mul_assign(&mut self, rhs: T)
*= operation. Read moresource§impl<T, S> PartialEq for CopyValue<T, S>where
    T: 'static,
    S: Storage<T>,
 
impl<T, S> PartialEq for CopyValue<T, S>where
    T: 'static,
    S: Storage<T>,
source§impl<T, S> Readable for CopyValue<T, S>where
    T: 'static,
    S: Storage<T>,
 
impl<T, S> Readable for CopyValue<T, S>where
    T: 'static,
    S: Storage<T>,
source§fn try_read(
    &self
) -> Result<<<CopyValue<T, S> as Readable>::Storage as AnyStorage>::Ref<<CopyValue<T, S> as Readable>::Target>, BorrowError>
 
fn try_read( &self ) -> Result<<<CopyValue<T, S> as Readable>::Storage as AnyStorage>::Ref<<CopyValue<T, S> as Readable>::Target>, BorrowError>
source§fn peek(
    &self
) -> <<CopyValue<T, S> as Readable>::Storage as AnyStorage>::Ref<<CopyValue<T, S> as Readable>::Target>
 
fn peek( &self ) -> <<CopyValue<T, S> as Readable>::Storage as AnyStorage>::Ref<<CopyValue<T, S> as Readable>::Target>
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>
source§fn read(&self) -> <Self::Storage as AnyStorage>::Ref<Self::Target>
 
fn read(&self) -> <Self::Storage as AnyStorage>::Ref<Self::Target>
source§fn with<O>(&self, f: impl FnOnce(&Self::Target) -> O) -> O
 
fn with<O>(&self, f: impl FnOnce(&Self::Target) -> O) -> O
source§impl<T, S> SubAssign<T> for CopyValue<T, S>
 
impl<T, S> SubAssign<T> for CopyValue<T, S>
source§fn sub_assign(&mut self, rhs: T)
 
fn sub_assign(&mut self, rhs: T)
-= operation. Read more