pub fn reset_unifications(&mut self, mut value: impl FnMut(K) -> V) {
    for (i, vv) in self.values.iter_mut().enumerate() {
      let key = UnifyKey::from_index(i.try_into().expect("overflow"));
      let value = value(key);
      *vv = VarValue::new_var(key, value)
    }
  }
/// Clears all unifications that have been performed, resetting to
/// the initial state. The values of each variable are given by
/// the closure.
Clears all unifications that have been performed, resetting to
the initial state. The values of each variable are given by
the closure.
Clears all unifications that have been performed resetting to the initial state . The values of each variable are given by the closure .
pub fn reset_unifications(&mut self, mut value: impl FnMut(K) -> V) {
    for (i, vv) in self.values.iter_mut().enumerate() {
      let key = UnifyKey::from_index(i.try_into().expect("overflow"));
      let value = value(key);
      *vv = VarValue::new_var(key, value)
    }
  }
pub fn reset_unifications ( & mut self , mut value : impl FnMut ( K ) -> V ) { for ( i , vv ) in self . values . iter_mut ( ) . enumerate ( ) { let key = UnifyKey :: from_index ( i . try_into ( ) . expect ( " " ) ) ; let value = value ( key ) ; * vv = VarValue :: new_var ( key , value ) } }
Clears all unifications that have been performed, resetting to
the initial state.
Clears all unifications that have been performed resetting to the initial state .
&mut self
value
impl FnMut(K) -> V
&mut self
value
impl FnMut(K) -> V