pub fn update(&self, updater: impl FnOnce(&mut T) -> bool) {
        let mut dirty = self.graph.as_ref().unwrap().dirty.lock();
        let mut inner = self.calc.inner.lock();
        if !updater(&mut inner.value) {
            return;
        }

        inner.version = self.calc.next_version.next();
        dirty.union_with(&inner.deps);
    }
/// Changes the value held within the source node based on the current value.
Changes the value held within the source node based on the current value.
Changes the value held within the source node based on the current value .
pub fn update(&self, updater: impl FnOnce(&mut T) -> bool) {
        let mut dirty = self.graph.as_ref().unwrap().dirty.lock();
        let mut inner = self.calc.inner.lock();
        if !updater(&mut inner.value) {
            return;
        }
        inner.version = self.calc.next_version.next();
        dirty.union_with(&inner.deps);
    }
pub fn update ( & self , updater : impl FnOnce ( & mut T ) -> bool ) { let mut dirty = self . graph . as_ref ( ) . unwrap ( ) . dirty . lock ( ) ; let mut inner = self . calc . inner . lock ( ) ; if ! updater ( & mut inner . value ) { return ; } inner . version = self . calc . next_version . next ( ) ; dirty . union_with ( & inner . deps ) ; }
Changes the value held within the source node based on the current value.
Changes the value held within the source node based on the current value .
&self
updater
impl FnOnce(&mut T) -> bool
&self
updater
impl FnOnce(&mut T) -> bool