fn add_update_on_end_of_instant(&self, runtime: &mut Runtime) {
    let signal_runtime_ref = self.clone();
    let signal_runtime     = self.runtime.clone();

    runtime.on_end_of_instant(Box::new(move |r: &mut Runtime, v: ()| {
      let signal_has_been_emitted = signal_runtime_ref.runtime.is_currently_emitted.get();
      signal_runtime_ref.runtime.is_currently_emitted.set(false);

      // Those continuations now are useless
      signal_runtime_ref.runtime.call_on_present.borrow_mut().clear();
      signal_runtime_ref.runtime.call_later_on_present.borrow_mut().clear();

      signal_runtime.previous_value.replace(signal_runtime.current_value.take());
      signal_runtime.current_value.set(Some(signal_runtime.default_value.clone()));
    }));
  }
/// Add a continuation to the end of current instant for updating the signal.
/// It resets various fields and update the precedent and current value of this signal.
Add a continuation to the end of current instant for updating the signal.
It resets various fields and update the precedent and current value of this signal.
Add a continuation to the end of current instant for updating the signal . It resets various fields and update the precedent and current value of this signal .
fn add_update_on_end_of_instant(&self, runtime: &mut Runtime) {
    let signal_runtime_ref = self.clone();
    let signal_runtime     = self.runtime.clone();
    runtime.on_end_of_instant(Box::new(move |r: &mut Runtime, v: ()| {
      let signal_has_been_emitted = signal_runtime_ref.runtime.is_currently_emitted.get();
      signal_runtime_ref.runtime.is_currently_emitted.set(false);
      // Those continuations now are useless
      signal_runtime_ref.runtime.call_on_present.borrow_mut().clear();
      signal_runtime_ref.runtime.call_later_on_present.borrow_mut().clear();
      signal_runtime.previous_value.replace(signal_runtime.current_value.take());
      signal_runtime.current_value.set(Some(signal_runtime.default_value.clone()));
    }));
  }
fn add_update_on_end_of_instant ( & self , runtime : & mut Runtime ) { let signal_runtime_ref = self . clone ( ) ; let signal_runtime = self . runtime . clone ( ) ; runtime . on_end_of_instant ( Box :: new ( move | r : & mut Runtime , v : ( ) | { let signal_has_been_emitted = signal_runtime_ref . runtime . is_currently_emitted . get ( ) ; signal_runtime_ref . runtime . is_currently_emitted . set ( false ) ; // Those continuations now are useless signal_runtime_ref . runtime . call_on_present . borrow_mut ( ) . clear ( ) ; signal_runtime_ref . runtime . call_later_on_present . borrow_mut ( ) . clear ( ) ; signal_runtime . previous_value . replace ( signal_runtime . current_value . take ( ) ) ; signal_runtime . current_value . set ( Some ( signal_runtime . default_value . clone ( ) ) ) ; } ) ) ; }
Add a continuation to the end of current instant for updating the signal.
Add a continuation to the end of current instant for updating the signal .
&self
runtime
&mut Runtime