pub struct WriteSignal<T: ?Sized> { /* private fields */ }
Expand description
A boxed version of Writable that can be used to store any writable type.
Implementations§
Source§impl<T: ?Sized + 'static> WriteSignal<T>
impl<T: ?Sized + 'static> WriteSignal<T>
Sourcepub fn new(
value: impl Writable<Target = T, Storage = UnsyncStorage, WriteMetadata: 'static> + 'static,
) -> Self
pub fn new( value: impl Writable<Target = T, Storage = UnsyncStorage, WriteMetadata: 'static> + 'static, ) -> Self
Create a new boxed writable value.
Trait Implementations§
Source§impl<T: Add<Output = T> + Copy + 'static> AddAssign<T> for WriteSignal<T>
impl<T: Add<Output = T> + Copy + 'static> AddAssign<T> for WriteSignal<T>
Source§fn add_assign(&mut self, rhs: T)
fn add_assign(&mut self, rhs: T)
Performs the
+=
operation. Read moreSource§impl<T: ?Sized> Clone for WriteSignal<T>
impl<T: ?Sized> Clone for WriteSignal<T>
Source§impl<T: Debug + 'static> Debug for WriteSignal<T>
impl<T: Debug + 'static> Debug for WriteSignal<T>
Source§impl<T: Clone + 'static> Deref for WriteSignal<T>
impl<T: Clone + 'static> Deref for WriteSignal<T>
Source§impl<T: Display + 'static> Display for WriteSignal<T>
impl<T: Display + 'static> Display for WriteSignal<T>
Source§impl<T: Div<Output = T> + Copy + 'static> DivAssign<T> for WriteSignal<T>
impl<T: Div<Output = T> + Copy + 'static> DivAssign<T> for WriteSignal<T>
Source§fn div_assign(&mut self, rhs: T)
fn div_assign(&mut self, rhs: T)
Performs the
/=
operation. Read moreSource§impl<T: 'static> From<CopyValue<T>> for WriteSignal<T>
impl<T: 'static> From<CopyValue<T>> for WriteSignal<T>
Source§impl<T, R> From<Global<T, R>> for WriteSignal<R>where
T: Writable<Target = R, Storage = UnsyncStorage> + InitializeFromFunction<R> + Clone + 'static,
R: 'static,
impl<T, R> From<Global<T, R>> for WriteSignal<R>where
T: Writable<Target = R, Storage = UnsyncStorage> + InitializeFromFunction<R> + Clone + 'static,
R: 'static,
Source§impl<V, O, F, FMut> From<MappedMutSignal<O, V, F, FMut>> for WriteSignal<O>
impl<V, O, F, FMut> From<MappedMutSignal<O, V, F, FMut>> for WriteSignal<O>
Source§fn from(value: MappedMutSignal<O, V, F, FMut>) -> Self
fn from(value: MappedMutSignal<O, V, F, FMut>) -> Self
Converts to this type from the input type.
Source§impl<T: 'static> From<Signal<T>> for WriteSignal<T>
impl<T: 'static> From<Signal<T>> for WriteSignal<T>
Source§impl<T: ?Sized + 'static> From<WriteSignal<T>> for ReadSignal<T>
impl<T: ?Sized + 'static> From<WriteSignal<T>> for ReadSignal<T>
Source§fn from(value: WriteSignal<T>) -> Self
fn from(value: WriteSignal<T>) -> Self
Converts to this type from the input type.
Source§impl<T> IntoAttributeValue for WriteSignal<T>where
T: Clone + IntoAttributeValue + 'static,
impl<T> IntoAttributeValue for WriteSignal<T>where
T: Clone + IntoAttributeValue + 'static,
Source§fn into_value(self) -> AttributeValue
fn into_value(self) -> AttributeValue
Convert into an attribute value
Source§impl<T> IntoDynNode for WriteSignal<T>where
T: Clone + IntoDynNode + 'static,
impl<T> IntoDynNode for WriteSignal<T>where
T: Clone + IntoDynNode + 'static,
Source§fn into_dyn_node(self) -> DynamicNode
fn into_dyn_node(self) -> DynamicNode
Consume this item and produce a DynamicNode
Source§impl<T: Mul<Output = T> + Copy + 'static> MulAssign<T> for WriteSignal<T>
impl<T: Mul<Output = T> + Copy + 'static> MulAssign<T> for WriteSignal<T>
Source§fn mul_assign(&mut self, rhs: T)
fn mul_assign(&mut self, rhs: T)
Performs the
*=
operation. Read moreSource§impl<T: PartialEq + 'static> PartialEq<T> for WriteSignal<T>
impl<T: PartialEq + 'static> PartialEq<T> for WriteSignal<T>
Source§impl<T: ?Sized> PartialEq for WriteSignal<T>
impl<T: ?Sized> PartialEq for WriteSignal<T>
Source§impl<T: ?Sized> Readable for WriteSignal<T>
impl<T: ?Sized> Readable for WriteSignal<T>
Source§type Storage = UnsyncStorage
type Storage = UnsyncStorage
The type of the storage this readable uses.
Source§fn try_read_unchecked(&self) -> Result<ReadableRef<'static, Self>, BorrowError>where
T: 'static,
fn try_read_unchecked(&self) -> Result<ReadableRef<'static, Self>, BorrowError>where
T: 'static,
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 try_peek_unchecked(&self) -> BorrowResult<ReadableRef<'static, Self>>where
T: 'static,
fn try_peek_unchecked(&self) -> BorrowResult<ReadableRef<'static, Self>>where
T: 'static,
Try to peek the current value of the signal without subscribing to updates. If the value has
been dropped, this will return an error. Read more
Source§fn subscribers(&self) -> Subscriberswhere
T: 'static,
fn subscribers(&self) -> Subscriberswhere
T: 'static,
Get the underlying subscriber list for this readable. This is used to track when the value changes and notify subscribers.
Source§impl<T: Sub<Output = T> + Copy + 'static> SubAssign<T> for WriteSignal<T>
impl<T: Sub<Output = T> + Copy + 'static> SubAssign<T> for WriteSignal<T>
Source§fn sub_assign(&mut self, rhs: T)
fn sub_assign(&mut self, rhs: T)
Performs the
-=
operation. Read moreSource§impl<T: ?Sized> Writable for WriteSignal<T>
impl<T: ?Sized> Writable for WriteSignal<T>
Source§type WriteMetadata = Box<dyn Any>
type WriteMetadata = Box<dyn Any>
Additional data associated with the write reference.
Source§fn try_write_unchecked(
&self,
) -> Result<WritableRef<'static, Self>, BorrowMutError>where
T: 'static,
fn try_write_unchecked(
&self,
) -> Result<WritableRef<'static, Self>, BorrowMutError>where
T: 'static,
Try to get a mutable reference to the value without checking the lifetime. This will update any subscribers. Read more
impl<T: ?Sized> Copy for WriteSignal<T>
Auto Trait Implementations§
impl<T> Freeze for WriteSignal<T>where
T: ?Sized,
impl<T> !RefUnwindSafe for WriteSignal<T>
impl<T> !Send for WriteSignal<T>
impl<T> !Sync for WriteSignal<T>
impl<T> Unpin for WriteSignal<T>where
T: ?Sized,
impl<T> !UnwindSafe for WriteSignal<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§impl<T> InitializeFromFunction<T> for T
impl<T> InitializeFromFunction<T> for T
Source§fn initialize_from_function(f: fn() -> T) -> T
fn initialize_from_function(f: fn() -> T) -> T
Create an instance of this type from an initialization function
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<R> ReadableBoxExt for R
impl<R> ReadableBoxExt for R
Source§impl<R> ReadableExt for R
impl<R> ReadableExt for R
Source§fn read(&self) -> ReadableRef<'_, Self>where
Self::Target: 'static,
fn read(&self) -> ReadableRef<'_, Self>where
Self::Target: 'static,
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<ReadableRef<'_, Self>, BorrowError>where
Self::Target: 'static,
fn try_read(&self) -> Result<ReadableRef<'_, Self>, BorrowError>where
Self::Target: 'static,
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) -> ReadableRef<'static, Self>where
Self::Target: 'static,
fn read_unchecked(&self) -> ReadableRef<'static, Self>where
Self::Target: 'static,
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) -> ReadableRef<'_, Self>where
Self::Target: 'static,
fn peek(&self) -> ReadableRef<'_, Self>where
Self::Target: 'static,
Get the current value of the state without subscribing to updates. If the value has been dropped, this will panic. Read more
Source§fn try_peek(&self) -> Result<ReadableRef<'_, Self>, BorrowError>where
Self::Target: 'static,
fn try_peek(&self) -> Result<ReadableRef<'_, Self>, BorrowError>where
Self::Target: 'static,
Try to peek the current value of the signal without subscribing to updates. If the value has
been dropped, this will return an error.
Source§fn peek_unchecked(&self) -> ReadableRef<'static, Self>where
Self::Target: 'static,
fn peek_unchecked(&self) -> ReadableRef<'static, Self>where
Self::Target: 'static,
Get the current value of the signal without checking the lifetime. Unlike read, this will not subscribe the current scope to the signal which can cause parts of your UI to not update. Read more
Source§fn map<F, O>(self, f: F) -> MappedSignal<O, Self, F>
fn map<F, O>(self, f: F) -> MappedSignal<O, Self, F>
Map the references of the readable value to a new type. This lets you provide a view
into the readable value without creating a new signal or cloning the value. Read more
Source§fn cloned(&self) -> Self::Target
fn cloned(&self) -> Self::Target
Clone the inner value and return it. If the value has been dropped, this will panic.
Source§fn with<O>(&self, f: impl FnOnce(&Self::Target) -> O) -> Owhere
Self::Target: 'static,
fn with<O>(&self, f: impl FnOnce(&Self::Target) -> O) -> Owhere
Self::Target: 'static,
Run a function with a reference to the value. If the value has been dropped, this will panic.
Source§impl<T, R> ReadableOptionExt<T> for R
impl<T, R> ReadableOptionExt<T> for R
Source§impl<T, E, R> ReadableResultExt<T, E> for R
impl<T, E, R> ReadableResultExt<T, E> for R
Source§fn unwrap(&self) -> Twhere
T: Clone + 'static,
E: 'static,
fn unwrap(&self) -> Twhere
T: Clone + 'static,
E: 'static,
Unwraps the inner value and clones it.
Source§fn as_ref(&self) -> Result<ReadableRef<'_, Self, T>, ReadableRef<'_, Self, E>>where
T: 'static,
E: 'static,
fn as_ref(&self) -> Result<ReadableRef<'_, Self, T>, ReadableRef<'_, Self, E>>where
T: 'static,
E: 'static,
Attempts to read the inner value of the Option.
Source§impl<T, R> ReadableVecExt<T> for R
impl<T, R> ReadableVecExt<T> for R
Source§fn first(&self) -> Option<ReadableRef<'_, Self, T>>where
T: 'static,
fn first(&self) -> Option<ReadableRef<'_, Self, T>>where
T: 'static,
Get the first element of the inner vector.
Source§fn last(&self) -> Option<ReadableRef<'_, Self, T>>where
T: 'static,
fn last(&self) -> Option<ReadableRef<'_, Self, T>>where
T: 'static,
Get the last element of the inner vector.
Source§impl<Ret> SpawnIfAsync<(), Ret> for Ret
impl<Ret> SpawnIfAsync<(), Ret> for Ret
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> WritableBoxedExt for Twhere
T: Writable<Storage = UnsyncStorage> + 'static,
impl<T> WritableBoxedExt for Twhere
T: Writable<Storage = UnsyncStorage> + 'static,
Source§impl<W> WritableExt for W
impl<W> WritableExt for W
Source§fn write(&mut self) -> WritableRef<'_, Self>where
Self::Target: 'static,
fn write(&mut self) -> WritableRef<'_, Self>where
Self::Target: 'static,
Get a mutable reference to the value. If the value has been dropped, this will panic.
Source§fn try_write(&mut self) -> Result<WritableRef<'_, Self>, BorrowMutError>where
Self::Target: 'static,
fn try_write(&mut self) -> Result<WritableRef<'_, Self>, BorrowMutError>where
Self::Target: 'static,
Try to get a mutable reference to the value.
Source§fn write_unchecked(&self) -> WritableRef<'static, Self>where
Self::Target: 'static,
fn write_unchecked(&self) -> WritableRef<'static, Self>where
Self::Target: 'static,
Get a mutable reference to the value without checking the lifetime. This will update any subscribers. Read more
Source§fn map_mut<O, F, FMut>(
self,
f: F,
f_mut: FMut,
) -> MappedMutSignal<O, Self, F, FMut>
fn map_mut<O, F, FMut>( self, f: F, f_mut: FMut, ) -> MappedMutSignal<O, Self, F, FMut>
Map the references and mutable references of the writable value to a new type. This lets you provide a view
into the writable value without creating a new signal or cloning the value. Read more
Source§fn with_mut<O>(&mut self, f: impl FnOnce(&mut Self::Target) -> O) -> Owhere
Self::Target: 'static,
fn with_mut<O>(&mut self, f: impl FnOnce(&mut Self::Target) -> O) -> Owhere
Self::Target: 'static,
Run a function with a mutable reference to the value. If the value has been dropped, this will panic.
Source§fn set(&mut self, value: Self::Target)
fn set(&mut self, value: Self::Target)
Set the value of the signal. This will trigger an update on all subscribers.
Source§fn toggle(&mut self)
fn toggle(&mut self)
Invert the boolean value of the signal. This will trigger an update on all subscribers.
Source§fn index_mut<I>(
&mut self,
index: I,
) -> WritableRef<'_, Self, <Self::Target as Index<I>>::Output>
fn index_mut<I>( &mut self, index: I, ) -> WritableRef<'_, Self, <Self::Target as Index<I>>::Output>
Index into the inner value and return a reference to the result.
Source§impl<T, W> WritableOptionExt<T> for W
impl<T, W> WritableOptionExt<T> for W
Source§fn get_or_insert(&mut self, default: T) -> WritableRef<'_, Self, T>where
T: 'static,
fn get_or_insert(&mut self, default: T) -> WritableRef<'_, Self, T>where
T: 'static,
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,
) -> WritableRef<'_, Self, T>where
T: 'static,
fn get_or_insert_with(
&mut self,
default: impl FnOnce() -> T,
) -> WritableRef<'_, Self, T>where
T: 'static,
Gets the value out of the Option, or inserts the value returned by the given function if the Option is empty.
Source§fn as_mut(&mut self) -> Option<WritableRef<'_, Self, T>>where
T: 'static,
fn as_mut(&mut self) -> Option<WritableRef<'_, Self, T>>where
T: 'static,
Attempts to write the inner value of the Option.
Source§impl<T, W> WritableVecExt<T> for W
impl<T, W> WritableVecExt<T> for W
Source§fn insert(&mut self, index: usize, value: T)where
T: 'static,
fn insert(&mut self, index: usize, value: T)where
T: 'static,
Inserts a new value at the given index.
Source§fn remove(&mut self, index: usize) -> Twhere
T: 'static,
fn remove(&mut self, index: usize) -> Twhere
T: 'static,
Removes the value at the given index.
Source§fn extend(&mut self, iter: impl IntoIterator<Item = T>)where
T: 'static,
fn extend(&mut self, iter: impl IntoIterator<Item = T>)where
T: 'static,
Extends the vector with the given iterator.
Source§fn swap_remove(&mut self, index: usize) -> Twhere
T: 'static,
fn swap_remove(&mut self, index: usize) -> Twhere
T: 'static,
Swaps two values in the vector.
Source§fn retain(&mut self, f: impl FnMut(&T) -> bool)where
T: 'static,
fn retain(&mut self, f: impl FnMut(&T) -> bool)where
T: 'static,
Retains only the values that match the given predicate.
Source§fn split_off(&mut self, at: usize) -> Vec<T>where
T: 'static,
fn split_off(&mut self, at: usize) -> Vec<T>where
T: 'static,
Splits the vector into two at the given index.