pub struct Value<A> where
A: Display + PartialEq<A> + Debug + Clone, {
pub value: A,
pub signal: Option<Signal2<A, A>>,
}
Expand description
Wraps a single value, notifying listeners when the value changes.
Fields
value: A
signal: Option<Signal2<A, A>>
Implementations
sourceimpl<A> Value<A> where
A: Display + PartialEq<A> + Debug + Clone,
impl<A> Value<A> where
A: Display + PartialEq<A> + Debug + Clone,
pub fn new(value: A, listener: Option<Rc<dyn Fn(&A, &A) + 'static>>) -> Value<A>
sourcepub fn watch(
&mut self,
listener: Rc<dyn Fn(&A, &A) + 'static>
) -> Option<impl Disposable>
pub fn watch(
&mut self,
listener: Rc<dyn Fn(&A, &A) + 'static>
) -> Option<impl Disposable>
Immediately calls a listener with the current value, and again whenever the value changes. @returns A handle that can be disposed to stop watching for changes.
pub fn get(&self) -> &A
pub fn set(&mut self, new_value: A)
pub fn changed(&mut self) -> Option<Signal2<A, A>>
Trait Implementations
Auto Trait Implementations
impl<A> !RefUnwindSafe for Value<A>
impl<A> !Send for Value<A>
impl<A> !Sync for Value<A>
impl<A> Unpin for Value<A> where
A: Unpin,
impl<A> !UnwindSafe for Value<A>
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<'a, T, C, M> Inspect<'a, C, &'a C, M> for T
impl<'a, T, C, M> Inspect<'a, C, &'a C, M> for T
impl<'a, T, C, M> Inspect<'a, C, &'a mut C, M> for T
impl<'a, T, C, M> Inspect<'a, C, &'a mut C, M> for T
impl<Fr, To> IntoColor<To> for Fr where
To: FromColor<Fr>,
impl<Fr, To> IntoColor<To> for Fr where
To: FromColor<Fr>,
fn into_color(self) -> To
fn into_color(self) -> To
Convert into color
impl<T> Pointable for T
impl<T> Pointable for T
impl<T> SetParameter for T
impl<T> SetParameter for T
fn set<T>(&mut self, value: T) -> <T as Parameter<Self>>::Result where
T: Parameter<Self>,
fn set<T>(&mut self, value: T) -> <T as Parameter<Self>>::Result where
T: Parameter<Self>,
Sets value
as a parameter of self
.