Trait ordered_vec::OrdVec
source · pub trait OrdVec<T: PartialOrd> {
fn push_ord(&mut self, item: T) -> Result<usize, OrdVecError>;
}Expand description
A trait for adding elements to a vector in sorted order
Required Methods§
sourcefn push_ord(&mut self, item: T) -> Result<usize, OrdVecError>
fn push_ord(&mut self, item: T) -> Result<usize, OrdVecError>
Inserts item into self in sorted order. Returns the index at which item was inserted.
Examples
use ordered_vec::OrdVec;
let mut values: Vec<f64> = Vec::new();
assert_eq!(values.push_ord(5.5), Ok(0));
assert_eq!(values, [5.5]);
assert_eq!(values.push_ord(3.14), Ok(0));
assert_eq!(values, [3.14, 5.5]);
assert_eq!(values.push_ord(7.77), Ok(2));
assert_eq!(values, [3.14, 5.5, 7.77]);