Trait vstd::pervasive::VecAdditionalExecFns
source · pub trait VecAdditionalExecFns<T> {
// Required methods
exec fn set(&mut self, i: usize, value: T);
exec fn set_and_swap(&mut self, i: usize, value: &mut T);
}
Required Methods§
sourceexec fn set_and_swap(&mut self, i: usize, value: &mut T)
exec fn set_and_swap(&mut self, i: usize, value: &mut T)
Implementations on Foreign Types§
source§impl<T> VecAdditionalExecFns<T> for Vec<T>
impl<T> VecAdditionalExecFns<T> for Vec<T>
source§exec fn set(&mut self, i: usize, value: T)
exec fn set(&mut self, i: usize, value: T)
requires
i < old(self).len(),
ensuresself@ == old(self)@.update(i as int, value),
Replacement for self[i] = value;
(which Verus does not support for technical reasons)
source§exec fn set_and_swap(&mut self, i: usize, value: &mut T)
exec fn set_and_swap(&mut self, i: usize, value: &mut T)
requires
i < old(self).len(),
ensuresself@ == old(self)@.update(i as int, *old(value)),
*value == old(self)@.index(i as int),
Replacement for swap(&mut self[i], &mut value)
(which Verus does not support for technical reasons)