VecLike

Trait VecLike 

Source
pub trait VecLike {
    type Elem;
    type ElemRef<'a>
       where Self: 'a;
    type Slice: ?Sized + Slice;
    type Collection: FromIterator<Self::Elem>;
    type Drain<'a>: Iterator<Item = Self::Elem>
       where Self: 'a;

Show 22 methods // Required methods fn as_slice(&self) -> &Self::Slice; fn as_mut_slice(&mut self) -> &mut Self::Slice; fn as_mut_collection(&mut self) -> &mut Self::Collection; fn capacity(&self) -> usize; fn truncate(&mut self, len: usize); fn insert(&mut self, index: usize, element: Self::Elem); fn remove(&mut self, index: usize) -> Self::Elem; fn push(&mut self, value: Self::Elem); fn pop(&mut self) -> Option<Self::Elem>; fn append(&mut self, other: &mut Self::Collection); fn drain<R>(&mut self, range: R) -> Self::Drain<'_> where R: RangeBounds<usize>; fn clear(&mut self); fn len(&self) -> usize; fn is_empty(&self) -> bool; fn resize(&mut self, new_len: usize, value: Self::Elem) where Self::Elem: Clone; fn resize_with<F>(&mut self, new_len: usize, f: F) where F: FnMut() -> Self::Elem; fn retain<F>(&mut self, f: F) where F: FnMut(Self::ElemRef<'_>) -> bool; // Provided methods fn reserve(&mut self, additional: usize) { ... } fn reserve_exact(&mut self, additional: usize) { ... } fn shrink_to_fit(&mut self) { ... } fn shrink_to(&mut self, min_capacity: usize) { ... } fn split_off(&mut self, at: usize) -> Self::Collection { ... }
}

Required Associated Types§

Source

type Elem

Source

type ElemRef<'a> where Self: 'a

Source

type Slice: ?Sized + Slice

Source

type Collection: FromIterator<Self::Elem>

Source

type Drain<'a>: Iterator<Item = Self::Elem> where Self: 'a

Required Methods§

Source

fn as_slice(&self) -> &Self::Slice

Source

fn as_mut_slice(&mut self) -> &mut Self::Slice

Source

fn as_mut_collection(&mut self) -> &mut Self::Collection

Source

fn capacity(&self) -> usize

Source

fn truncate(&mut self, len: usize)

Source

fn insert(&mut self, index: usize, element: Self::Elem)

Source

fn remove(&mut self, index: usize) -> Self::Elem

Source

fn push(&mut self, value: Self::Elem)

Source

fn pop(&mut self) -> Option<Self::Elem>

Source

fn append(&mut self, other: &mut Self::Collection)

Source

fn drain<R>(&mut self, range: R) -> Self::Drain<'_>
where R: RangeBounds<usize>,

Source

fn clear(&mut self)

Source

fn len(&self) -> usize

Source

fn is_empty(&self) -> bool

Source

fn resize(&mut self, new_len: usize, value: Self::Elem)
where Self::Elem: Clone,

Source

fn resize_with<F>(&mut self, new_len: usize, f: F)
where F: FnMut() -> Self::Elem,

Source

fn retain<F>(&mut self, f: F)
where F: FnMut(Self::ElemRef<'_>) -> bool,

Provided Methods§

Source

fn reserve(&mut self, additional: usize)

Source

fn reserve_exact(&mut self, additional: usize)

Source

fn shrink_to_fit(&mut self)

Source

fn shrink_to(&mut self, min_capacity: usize)

Source

fn split_off(&mut self, at: usize) -> Self::Collection

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl VecLike for String

Source§

type Elem = char

Source§

type ElemRef<'a> = char where Self: 'a

Source§

type Slice = str

Source§

type Collection = String

Source§

type Drain<'a> = Drain<'a>

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

fn as_slice(&self) -> &Self::Slice

Source§

fn as_mut_slice(&mut self) -> &mut Self::Slice

Source§

fn as_mut_collection(&mut self) -> &mut Self::Collection

Source§

fn capacity(&self) -> usize

Source§

fn pop(&mut self) -> Option<Self::Elem>

Source§

fn push(&mut self, ch: Self::Elem)

Source§

fn remove(&mut self, idx: usize) -> Self::Elem

Source§

fn insert(&mut self, idx: usize, ch: Self::Elem)

Source§

fn reserve(&mut self, additional: usize)

Source§

fn reserve_exact(&mut self, additional: usize)

Source§

fn shrink_to(&mut self, min_capacity: usize)

Source§

fn shrink_to_fit(&mut self)

Source§

fn truncate(&mut self, new_len: usize)

Source§

fn split_off(&mut self, at: usize) -> Self::Collection

Source§

fn resize(&mut self, new_len: usize, value: Self::Elem)
where Self::Elem: Clone,

Source§

fn resize_with<F>(&mut self, new_len: usize, f: F)
where F: FnMut() -> Self::Elem,

Source§

fn drain<R>(&mut self, range: R) -> Self::Drain<'_>
where R: RangeBounds<usize>,

Source§

fn clear(&mut self)

Source§

fn append(&mut self, other: &mut Self::Collection)

Source§

fn retain<F>(&mut self, f: F)
where F: FnMut(Self::Elem) -> bool,

Source§

impl<A: Array> VecLike for SmallVec<A>

Available on crate feature smallvec only.
Source§

type Elem = <A as Array>::Item

Source§

type ElemRef<'a> = &'a <A as Array>::Item where Self: 'a

Source§

type Slice = [<A as Array>::Item]

Source§

type Collection = SmallVec<A>

Source§

type Drain<'a> = Drain<'a, A> where Self: 'a

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

fn as_slice(&self) -> &[Self::Elem]

Source§

fn as_mut_slice(&mut self) -> &mut [Self::Elem]

Source§

fn as_mut_collection(&mut self) -> &mut Self::Collection

Source§

fn capacity(&self) -> usize

Source§

fn pop(&mut self) -> Option<Self::Elem>

Source§

fn push(&mut self, value: Self::Elem)

Source§

fn remove(&mut self, index: usize) -> Self::Elem

Source§

fn insert(&mut self, index: usize, element: Self::Elem)

Source§

fn reserve(&mut self, additional: usize)

Source§

fn reserve_exact(&mut self, additional: usize)

Source§

fn shrink_to_fit(&mut self)

Source§

fn truncate(&mut self, len: usize)

Source§

fn resize(&mut self, new_len: usize, value: Self::Elem)
where Self::Elem: Clone,

Source§

fn resize_with<F>(&mut self, new_len: usize, f: F)
where F: FnMut() -> Self::Elem,

Source§

fn drain<R>(&mut self, range: R) -> Self::Drain<'_>
where R: RangeBounds<usize>,

Source§

fn clear(&mut self)

Source§

fn append(&mut self, other: &mut Self::Collection)

Source§

fn retain<F>(&mut self, f: F)
where F: FnMut(&A::Item) -> bool,

Source§

impl<A: Array<Item = u8>> VecLike for SmallString<A>

Available on crate feature smallstr only.
Source§

type Elem = char

Source§

type ElemRef<'a> = char where Self: 'a

Source§

type Slice = str

Source§

type Collection = SmallString<A>

Source§

type Drain<'a> = DrainRange<'a, A> where A: 'a

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

fn as_slice(&self) -> &Self::Slice

Source§

fn as_mut_slice(&mut self) -> &mut Self::Slice

Source§

fn as_mut_collection(&mut self) -> &mut Self::Collection

Source§

fn capacity(&self) -> usize

Source§

fn pop(&mut self) -> Option<Self::Elem>

Source§

fn push(&mut self, ch: Self::Elem)

Source§

fn remove(&mut self, idx: usize) -> Self::Elem

Source§

fn insert(&mut self, idx: usize, ch: Self::Elem)

Source§

fn reserve(&mut self, additional: usize)

Source§

fn reserve_exact(&mut self, additional: usize)

Source§

fn shrink_to_fit(&mut self)

Source§

fn truncate(&mut self, new_len: usize)

Source§

fn resize(&mut self, new_len: usize, value: Self::Elem)
where Self::Elem: Clone,

Source§

fn resize_with<F>(&mut self, new_len: usize, f: F)
where F: FnMut() -> Self::Elem,

Source§

fn drain<R>(&mut self, range: R) -> Self::Drain<'_>
where R: RangeBounds<usize>,

Source§

fn clear(&mut self)

Source§

fn append(&mut self, other: &mut Self::Collection)

Source§

fn retain<F>(&mut self, f: F)
where F: FnMut(Self::Elem) -> bool,

Source§

impl<S> VecLike for Cow<'_, S>
where S: ToOwned + Slice, S::Owned: VecLike<Slice = S>,

Source§

type Elem = <<S as ToOwned>::Owned as VecLike>::Elem

Source§

type ElemRef<'a> = <<S as ToOwned>::Owned as VecLike>::ElemRef<'a> where Self: 'a

Source§

type Slice = <<S as ToOwned>::Owned as VecLike>::Slice

Source§

type Collection = <<S as ToOwned>::Owned as VecLike>::Collection

Source§

type Drain<'a> = <<S as ToOwned>::Owned as VecLike>::Drain<'a> where Self: 'a

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

fn as_slice(&self) -> &Self::Slice

Source§

fn as_mut_slice(&mut self) -> &mut Self::Slice

Source§

fn as_mut_collection(&mut self) -> &mut Self::Collection

Source§

fn capacity(&self) -> usize

Source§

fn pop(&mut self) -> Option<Self::Elem>

Source§

fn push(&mut self, value: Self::Elem)

Source§

fn remove(&mut self, index: usize) -> Self::Elem

Source§

fn insert(&mut self, index: usize, element: Self::Elem)

Source§

fn reserve(&mut self, additional: usize)

Source§

fn reserve_exact(&mut self, additional: usize)

Source§

fn shrink_to(&mut self, min_capacity: usize)

Source§

fn shrink_to_fit(&mut self)

Source§

fn truncate(&mut self, len: usize)

Source§

fn split_off(&mut self, at: usize) -> Self::Collection

Source§

fn resize(&mut self, new_len: usize, value: Self::Elem)
where Self::Elem: Clone,

Source§

fn resize_with<F>(&mut self, new_len: usize, f: F)
where F: FnMut() -> Self::Elem,

Source§

fn drain<R>(&mut self, range: R) -> Self::Drain<'_>
where R: RangeBounds<usize>,

Source§

fn clear(&mut self)

Source§

fn append(&mut self, other: &mut Self::Collection)

Source§

fn retain<F>(&mut self, f: F)
where F: FnMut(<S::Owned as VecLike>::ElemRef<'_>) -> bool,

Source§

impl<T> VecLike for Vec<T>

Source§

type Elem = T

Source§

type ElemRef<'a> = &'a T where Self: 'a

Source§

type Slice = [T]

Source§

type Collection = Vec<T>

Source§

type Drain<'a> = Drain<'a, T> where Self: 'a

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

fn as_slice(&self) -> &[Self::Elem]

Source§

fn as_mut_slice(&mut self) -> &mut [Self::Elem]

Source§

fn as_mut_collection(&mut self) -> &mut Self::Collection

Source§

fn capacity(&self) -> usize

Source§

fn pop(&mut self) -> Option<Self::Elem>

Source§

fn push(&mut self, value: Self::Elem)

Source§

fn remove(&mut self, index: usize) -> Self::Elem

Source§

fn insert(&mut self, index: usize, element: Self::Elem)

Source§

fn reserve(&mut self, additional: usize)

Source§

fn reserve_exact(&mut self, additional: usize)

Source§

fn shrink_to(&mut self, min_capacity: usize)

Source§

fn shrink_to_fit(&mut self)

Source§

fn truncate(&mut self, len: usize)

Source§

fn split_off(&mut self, at: usize) -> Self::Collection

Source§

fn resize(&mut self, new_len: usize, value: Self::Elem)
where Self::Elem: Clone,

Source§

fn resize_with<F>(&mut self, new_len: usize, f: F)
where F: FnMut() -> Self::Elem,

Source§

fn drain<R>(&mut self, range: R) -> Self::Drain<'_>
where R: RangeBounds<usize>,

Source§

fn clear(&mut self)

Source§

fn append(&mut self, other: &mut Self::Collection)

Source§

fn retain<F>(&mut self, f: F)
where F: FnMut(&T) -> bool,

Source§

impl<T> VecLike for ArcVec<T>

Available on crate feature rc-vec only.
Source§

type Elem = T

Source§

type ElemRef<'a> = &'a T where Self: 'a

Source§

type Slice = [T]

Source§

type Collection = ArcVec<T>

Source§

type Drain<'a> = ArcVecDrain<'a, T> where Self: 'a

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

fn as_slice(&self) -> &[Self::Elem]

Source§

fn as_mut_slice(&mut self) -> &mut [Self::Elem]

Source§

fn as_mut_collection(&mut self) -> &mut Self::Collection

Source§

fn capacity(&self) -> usize

Source§

fn pop(&mut self) -> Option<Self::Elem>

Source§

fn push(&mut self, value: Self::Elem)

Source§

fn remove(&mut self, index: usize) -> Self::Elem

Source§

fn insert(&mut self, index: usize, element: Self::Elem)

Source§

fn reserve(&mut self, additional: usize)

Source§

fn reserve_exact(&mut self, additional: usize)

Source§

fn shrink_to(&mut self, min_capacity: usize)

Source§

fn shrink_to_fit(&mut self)

Source§

fn truncate(&mut self, len: usize)

Source§

fn split_off(&mut self, at: usize) -> Self::Collection

Source§

fn resize(&mut self, new_len: usize, value: Self::Elem)
where Self::Elem: Clone,

Source§

fn resize_with<F>(&mut self, new_len: usize, f: F)
where F: FnMut() -> Self::Elem,

Source§

fn drain<R>(&mut self, range: R) -> Self::Drain<'_>
where R: RangeBounds<usize>,

Source§

fn clear(&mut self)

Source§

fn append(&mut self, other: &mut Self::Collection)

Source§

fn retain<F>(&mut self, f: F)
where F: FnMut(&T) -> bool,

Source§

impl<T> VecLike for RcVec<T>

Available on crate feature rc-vec only.
Source§

type Elem = T

Source§

type ElemRef<'a> = &'a T where Self: 'a

Source§

type Slice = [T]

Source§

type Collection = RcVec<T>

Source§

type Drain<'a> = RcVecDrain<'a, T> where Self: 'a

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

fn as_slice(&self) -> &[Self::Elem]

Source§

fn as_mut_slice(&mut self) -> &mut [Self::Elem]

Source§

fn as_mut_collection(&mut self) -> &mut Self::Collection

Source§

fn capacity(&self) -> usize

Source§

fn pop(&mut self) -> Option<Self::Elem>

Source§

fn push(&mut self, value: Self::Elem)

Source§

fn remove(&mut self, index: usize) -> Self::Elem

Source§

fn insert(&mut self, index: usize, element: Self::Elem)

Source§

fn reserve(&mut self, additional: usize)

Source§

fn reserve_exact(&mut self, additional: usize)

Source§

fn shrink_to(&mut self, min_capacity: usize)

Source§

fn shrink_to_fit(&mut self)

Source§

fn truncate(&mut self, len: usize)

Source§

fn split_off(&mut self, at: usize) -> Self::Collection

Source§

fn resize(&mut self, new_len: usize, value: Self::Elem)
where Self::Elem: Clone,

Source§

fn resize_with<F>(&mut self, new_len: usize, f: F)
where F: FnMut() -> Self::Elem,

Source§

fn drain<R>(&mut self, range: R) -> Self::Drain<'_>
where R: RangeBounds<usize>,

Source§

fn clear(&mut self)

Source§

fn append(&mut self, other: &mut Self::Collection)

Source§

fn retain<F>(&mut self, f: F)
where F: FnMut(&T) -> bool,

Source§

impl<V: VecLike + Clone> VecLike for Rc<V>

Source§

type Elem = <V as VecLike>::Elem

Source§

type ElemRef<'a> = <V as VecLike>::ElemRef<'a> where Self: 'a

Source§

type Slice = <V as VecLike>::Slice

Source§

type Collection = <V as VecLike>::Collection

Source§

type Drain<'a> = <V as VecLike>::Drain<'a> where Self: 'a

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

fn as_slice(&self) -> &Self::Slice

Source§

fn as_mut_slice(&mut self) -> &mut Self::Slice

Source§

fn as_mut_collection(&mut self) -> &mut Self::Collection

Source§

fn capacity(&self) -> usize

Source§

fn pop(&mut self) -> Option<Self::Elem>

Source§

fn push(&mut self, value: Self::Elem)

Source§

fn remove(&mut self, index: usize) -> Self::Elem

Source§

fn insert(&mut self, index: usize, element: Self::Elem)

Source§

fn reserve(&mut self, additional: usize)

Source§

fn reserve_exact(&mut self, additional: usize)

Source§

fn shrink_to(&mut self, min_capacity: usize)

Source§

fn shrink_to_fit(&mut self)

Source§

fn truncate(&mut self, len: usize)

Source§

fn split_off(&mut self, at: usize) -> Self::Collection

Source§

fn resize(&mut self, new_len: usize, value: Self::Elem)
where Self::Elem: Clone,

Source§

fn resize_with<F>(&mut self, new_len: usize, f: F)
where F: FnMut() -> Self::Elem,

Source§

fn drain<R>(&mut self, range: R) -> Self::Drain<'_>
where R: RangeBounds<usize>,

Source§

fn clear(&mut self)

Source§

fn append(&mut self, other: &mut Self::Collection)

Source§

fn retain<F>(&mut self, f: F)
where F: FnMut(V::ElemRef<'_>) -> bool,

Source§

impl<V: VecLike + Clone> VecLike for Arc<V>

Source§

type Elem = <V as VecLike>::Elem

Source§

type ElemRef<'a> = <V as VecLike>::ElemRef<'a> where Self: 'a

Source§

type Slice = <V as VecLike>::Slice

Source§

type Collection = <V as VecLike>::Collection

Source§

type Drain<'a> = <V as VecLike>::Drain<'a> where Self: 'a

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

fn as_slice(&self) -> &Self::Slice

Source§

fn as_mut_slice(&mut self) -> &mut Self::Slice

Source§

fn as_mut_collection(&mut self) -> &mut Self::Collection

Source§

fn capacity(&self) -> usize

Source§

fn pop(&mut self) -> Option<Self::Elem>

Source§

fn push(&mut self, value: Self::Elem)

Source§

fn remove(&mut self, index: usize) -> Self::Elem

Source§

fn insert(&mut self, index: usize, element: Self::Elem)

Source§

fn reserve(&mut self, additional: usize)

Source§

fn reserve_exact(&mut self, additional: usize)

Source§

fn shrink_to(&mut self, min_capacity: usize)

Source§

fn shrink_to_fit(&mut self)

Source§

fn truncate(&mut self, len: usize)

Source§

fn split_off(&mut self, at: usize) -> Self::Collection

Source§

fn resize(&mut self, new_len: usize, value: Self::Elem)
where Self::Elem: Clone,

Source§

fn resize_with<F>(&mut self, new_len: usize, f: F)
where F: FnMut() -> Self::Elem,

Source§

fn drain<R>(&mut self, range: R) -> Self::Drain<'_>
where R: RangeBounds<usize>,

Source§

fn clear(&mut self)

Source§

fn append(&mut self, other: &mut Self::Collection)

Source§

fn retain<F>(&mut self, f: F)
where F: FnMut(V::ElemRef<'_>) -> bool,

Source§

impl<V: VecLike> VecLike for &mut V

Source§

type Elem = <V as VecLike>::Elem

Source§

type ElemRef<'a> = <V as VecLike>::ElemRef<'a> where Self: 'a

Source§

type Slice = <V as VecLike>::Slice

Source§

type Collection = <V as VecLike>::Collection

Source§

type Drain<'a> = <V as VecLike>::Drain<'a> where Self: 'a

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

fn as_slice(&self) -> &Self::Slice

Source§

fn as_mut_slice(&mut self) -> &mut Self::Slice

Source§

fn as_mut_collection(&mut self) -> &mut Self::Collection

Source§

fn capacity(&self) -> usize

Source§

fn pop(&mut self) -> Option<Self::Elem>

Source§

fn push(&mut self, value: Self::Elem)

Source§

fn remove(&mut self, index: usize) -> Self::Elem

Source§

fn insert(&mut self, index: usize, element: Self::Elem)

Source§

fn reserve(&mut self, additional: usize)

Source§

fn reserve_exact(&mut self, additional: usize)

Source§

fn shrink_to(&mut self, min_capacity: usize)

Source§

fn shrink_to_fit(&mut self)

Source§

fn truncate(&mut self, len: usize)

Source§

fn split_off(&mut self, at: usize) -> Self::Collection

Source§

fn resize(&mut self, new_len: usize, value: Self::Elem)
where Self::Elem: Clone,

Source§

fn resize_with<F>(&mut self, new_len: usize, f: F)
where F: FnMut() -> Self::Elem,

Source§

fn drain<R>(&mut self, range: R) -> Self::Drain<'_>
where R: RangeBounds<usize>,

Source§

fn clear(&mut self)

Source§

fn append(&mut self, other: &mut Self::Collection)

Source§

fn retain<F>(&mut self, f: F)
where F: FnMut(V::ElemRef<'_>) -> bool,

Source§

impl<V: VecLike> VecLike for Box<V>

Source§

type Elem = <V as VecLike>::Elem

Source§

type ElemRef<'a> = <V as VecLike>::ElemRef<'a> where Self: 'a

Source§

type Slice = <V as VecLike>::Slice

Source§

type Collection = <V as VecLike>::Collection

Source§

type Drain<'a> = <V as VecLike>::Drain<'a> where Self: 'a

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

fn as_slice(&self) -> &Self::Slice

Source§

fn as_mut_slice(&mut self) -> &mut Self::Slice

Source§

fn as_mut_collection(&mut self) -> &mut Self::Collection

Source§

fn capacity(&self) -> usize

Source§

fn pop(&mut self) -> Option<Self::Elem>

Source§

fn push(&mut self, value: Self::Elem)

Source§

fn remove(&mut self, index: usize) -> Self::Elem

Source§

fn insert(&mut self, index: usize, element: Self::Elem)

Source§

fn reserve(&mut self, additional: usize)

Source§

fn reserve_exact(&mut self, additional: usize)

Source§

fn shrink_to(&mut self, min_capacity: usize)

Source§

fn shrink_to_fit(&mut self)

Source§

fn truncate(&mut self, len: usize)

Source§

fn split_off(&mut self, at: usize) -> Self::Collection

Source§

fn resize(&mut self, new_len: usize, value: Self::Elem)
where Self::Elem: Clone,

Source§

fn resize_with<F>(&mut self, new_len: usize, f: F)
where F: FnMut() -> Self::Elem,

Source§

fn drain<R>(&mut self, range: R) -> Self::Drain<'_>
where R: RangeBounds<usize>,

Source§

fn clear(&mut self)

Source§

fn append(&mut self, other: &mut Self::Collection)

Source§

fn retain<F>(&mut self, f: F)
where F: FnMut(V::ElemRef<'_>) -> bool,

Source§

impl<V: VecLike> VecLike for UniqArc<V>

Available on crate feature unique-rc only.
Source§

type Elem = <V as VecLike>::Elem

Source§

type ElemRef<'a> = <V as VecLike>::ElemRef<'a> where Self: 'a

Source§

type Slice = <V as VecLike>::Slice

Source§

type Collection = <V as VecLike>::Collection

Source§

type Drain<'a> = <V as VecLike>::Drain<'a> where Self: 'a

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

fn as_slice(&self) -> &Self::Slice

Source§

fn as_mut_slice(&mut self) -> &mut Self::Slice

Source§

fn as_mut_collection(&mut self) -> &mut Self::Collection

Source§

fn capacity(&self) -> usize

Source§

fn pop(&mut self) -> Option<Self::Elem>

Source§

fn push(&mut self, value: Self::Elem)

Source§

fn remove(&mut self, index: usize) -> Self::Elem

Source§

fn insert(&mut self, index: usize, element: Self::Elem)

Source§

fn reserve(&mut self, additional: usize)

Source§

fn reserve_exact(&mut self, additional: usize)

Source§

fn shrink_to(&mut self, min_capacity: usize)

Source§

fn shrink_to_fit(&mut self)

Source§

fn truncate(&mut self, len: usize)

Source§

fn split_off(&mut self, at: usize) -> Self::Collection

Source§

fn resize(&mut self, new_len: usize, value: Self::Elem)
where Self::Elem: Clone,

Source§

fn resize_with<F>(&mut self, new_len: usize, f: F)
where F: FnMut() -> Self::Elem,

Source§

fn drain<R>(&mut self, range: R) -> Self::Drain<'_>
where R: RangeBounds<usize>,

Source§

fn clear(&mut self)

Source§

fn append(&mut self, other: &mut Self::Collection)

Source§

fn retain<F>(&mut self, f: F)
where F: FnMut(V::ElemRef<'_>) -> bool,

Source§

impl<V: VecLike> VecLike for UniqRc<V>

Available on crate feature unique-rc only.
Source§

type Elem = <V as VecLike>::Elem

Source§

type ElemRef<'a> = <V as VecLike>::ElemRef<'a> where Self: 'a

Source§

type Slice = <V as VecLike>::Slice

Source§

type Collection = <V as VecLike>::Collection

Source§

type Drain<'a> = <V as VecLike>::Drain<'a> where Self: 'a

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

fn as_slice(&self) -> &Self::Slice

Source§

fn as_mut_slice(&mut self) -> &mut Self::Slice

Source§

fn as_mut_collection(&mut self) -> &mut Self::Collection

Source§

fn capacity(&self) -> usize

Source§

fn pop(&mut self) -> Option<Self::Elem>

Source§

fn push(&mut self, value: Self::Elem)

Source§

fn remove(&mut self, index: usize) -> Self::Elem

Source§

fn insert(&mut self, index: usize, element: Self::Elem)

Source§

fn reserve(&mut self, additional: usize)

Source§

fn reserve_exact(&mut self, additional: usize)

Source§

fn shrink_to(&mut self, min_capacity: usize)

Source§

fn shrink_to_fit(&mut self)

Source§

fn truncate(&mut self, len: usize)

Source§

fn split_off(&mut self, at: usize) -> Self::Collection

Source§

fn resize(&mut self, new_len: usize, value: Self::Elem)
where Self::Elem: Clone,

Source§

fn resize_with<F>(&mut self, new_len: usize, f: F)
where F: FnMut() -> Self::Elem,

Source§

fn drain<R>(&mut self, range: R) -> Self::Drain<'_>
where R: RangeBounds<usize>,

Source§

fn clear(&mut self)

Source§

fn append(&mut self, other: &mut Self::Collection)

Source§

fn retain<F>(&mut self, f: F)
where F: FnMut(V::ElemRef<'_>) -> bool,

Implementors§