Skip to main content

ranges_ext/
vec.rs

1use crate::{RangeError, RangeOp, VecOp};
2use alloc::vec::Vec;
3
4impl<T: RangeOp + Send + 'static> VecOp<T> for Vec<T> {
5    fn push(&mut self, item: T) -> Result<(), RangeError<T>> {
6        self.push(item);
7        Ok(())
8    }
9
10    fn as_slice(&self) -> &[T] {
11        self.as_slice()
12    }
13
14    fn len(&self) -> usize {
15        self.as_slice().len()
16    }
17
18    fn remove(&mut self, index: usize) -> T {
19        self.remove(index)
20    }
21
22    fn insert(&mut self, index: usize, item: T) -> Result<(), RangeError<T>> {
23        self.insert(index, item);
24        Ok(())
25    }
26}