Trait smallvec::VecLike
[−]
[src]
pub trait VecLike<T>: Index<usize, Output=T> + IndexMut<usize> + Index<Range<usize>, Output=[T]> + IndexMut<Range<usize>> + Index<RangeFrom<usize>, Output=[T]> + IndexMut<RangeFrom<usize>> + Index<RangeTo<usize>, Output=[T]> + IndexMut<RangeTo<usize>> + Index<RangeFull, Output=[T]> + IndexMut<RangeFull> + DerefMut<Target=[T]> + Extend<T> { fn push(&mut self, value: T); }
Common operations implemented by both Vec
and SmallVec
.
This can be used to write generic code that works with both Vec
and SmallVec
.
Example
use smallvec::{VecLike, SmallVec8}; fn initialize<V: VecLike<u8>>(v: &mut V) { for i in 0..5 { v.push(i); } } let mut vec = Vec::new(); initialize(&mut vec); let mut small_vec = SmallVec8::new(); initialize(&mut small_vec);
Required Methods
fn push(&mut self, value: T)
Append an element to the vector.