Skip to main content

ranges_ext/
less.rs

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