Trait Sequence

Source
pub trait Sequence {
    type Item;

    // Required methods
    fn len(&self) -> usize;
    fn is_empty(&self) -> bool;
    fn get(&self, idx: usize) -> Option<Self::Item>;
}
Expand description

An indexable collection of a finite number of items.

Required Associated Types§

Required Methods§

Source

fn len(&self) -> usize

The number of items in the sequences.

Source

fn is_empty(&self) -> bool

Check if len() == 0

Source

fn get(&self, idx: usize) -> Option<Self::Item>

Get an item if and only if 0 <= idx < len().

Implementations on Foreign Types§

Source§

impl Sequence for Range<usize>

Source§

type Item = usize

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

fn get(&self, idx: usize) -> Option<Self::Item>

Source§

impl<'a, T> Sequence for &'a [T]

Source§

type Item = &'a T

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

fn get(&self, idx: usize) -> Option<Self::Item>

Source§

impl<T> Sequence for &T
where T: Sequence + ?Sized,

Source§

type Item = <T as Sequence>::Item

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

fn get(&self, idx: usize) -> Option<Self::Item>

Source§

impl<T> Sequence for Box<T>
where T: Sequence + ?Sized,

Source§

type Item = <T as Sequence>::Item

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

fn get(&self, idx: usize) -> Option<Self::Item>

Implementors§

Source§

impl<'a, T> Sequence for SplitSlice<'a, T>