Trait UnindexedProducer

pub trait UnindexedProducer: Send + Sized

A variant on Producer which does not know its exact length or cannot represent it in a usize. These producers act like ordinary producers except that they cannot be told to split at a particular point. Instead, you just ask them to split 'somewhere'.

(In principle, Producer could extend this trait; however, it does not because to do so would require producers to carry their own length with them.)

Associated Types

type Item;

The type of item returned by this producer.

Required Methods

fn split(self) -> (Self, Option<Self>)

Split midway into a new producer if possible, otherwise return None.

fn fold_with<F>(self, folder: F) -> F
where
    F: Folder<Self::Item>,

Iterate the producer, feeding each element to folder, and stop when the folder is full (or all elements have been consumed).