Skip to main content

extern_spec_T_A_Vec_T_A_insert

Function extern_spec_T_A_Vec_T_A_insert 

Source
pub fn extern_spec_T_A_Vec_T_A_insert<T, A: Allocator>(
    self_: &mut Vec<T, A>,
    index: usize,
    element: T,
)
Expand description

extern spec for Vec<T, A>::insert

This is not a real function: its only use is for documentation.

terminates

ensures

(^self)@.len() == self@.len() + 1

ensures

forall<i> 0 <= i && i < index@ ==> (^self)[i] == self[i]

ensures

(^self)[index@] == element

ensures

forall<i> index@ < i && i < (^self)@.len() ==> (^self)[i] == self[i - 1]