pub trait InputIter {
    type Item;
    type Iter: Iterator<Item = (usize, Self::Item)>;
    type IterElem: Iterator<Item = Self::Item>;
    fn iter_indices(&self) -> Self::Iter;
fn iter_elements(&self) -> Self::IterElem;
fn position<P>(&self, predicate: P) -> Option<usize>
    where
        P: Fn(Self::Item) -> bool
;
fn slice_index(&self, count: usize) -> Result<usize, Needed>; }
Expand description

Abstracts common iteration operations on the input type

Associated Types

The current input type is a sequence of that Item type.

Example: u8 for &[u8] or char for &str

An iterator over the input type, producing the item and its position for use with Slice. If we’re iterating over &str, the position corresponds to the byte index of the character

An iterator over the input type, producing the item

Required methods

Returns an iterator over the elements and their byte offsets

Returns an iterator over the elements

Finds the byte position of the element

Get the byte offset from the element’s position in the stream

Implementations on Foreign Types

Implementors