pub struct Stream<S>(pub S);
Tuple Fields
0: S
Trait Implementations
sourceimpl<S> Positioned for Stream<S> where
S: StreamOnce + Positioned,
S::Token: PartialEq,
S::Range: PartialEq,
impl<S> Positioned for Stream<S> where
S: StreamOnce + Positioned,
S::Token: PartialEq,
S::Range: PartialEq,
sourceimpl<S> RangeStreamOnce for Stream<S> where
S: RangeStream,
S::Token: PartialEq,
S::Range: PartialEq,
impl<S> RangeStreamOnce for Stream<S> where
S: RangeStream,
S::Token: PartialEq,
S::Range: PartialEq,
sourcefn uncons_range(
&mut self,
size: usize
) -> Result<Self::Range, StreamErrorFor<Self>>
fn uncons_range(
&mut self,
size: usize
) -> Result<Self::Range, StreamErrorFor<Self>>
Takes size
elements from the stream.
Fails if the length of the stream is less than size
. Read more
sourcefn uncons_while<F>(&mut self, f: F) -> Result<Self::Range, StreamErrorFor<Self>> where
F: FnMut(Self::Token) -> bool,
fn uncons_while<F>(&mut self, f: F) -> Result<Self::Range, StreamErrorFor<Self>> where
F: FnMut(Self::Token) -> bool,
Takes items from stream, testing each one with predicate
.
returns the range of items which passed predicate
. Read more
sourcefn uncons_while1<F>(
&mut self,
f: F
) -> ParseResult<Self::Range, StreamErrorFor<Self>> where
F: FnMut(Self::Token) -> bool,
fn uncons_while1<F>(
&mut self,
f: F
) -> ParseResult<Self::Range, StreamErrorFor<Self>> where
F: FnMut(Self::Token) -> bool,
Takes items from stream, testing each one with predicate
returns a range of at least one items which passed predicate
. Read more
sourcefn distance(&self, end: &Self::Checkpoint) -> usize
fn distance(&self, end: &Self::Checkpoint) -> usize
Returns the distance between self
and end
. The returned usize
must be so that Read more
sourceimpl<S> ResetStream for Stream<S> where
S: ResetStream + Positioned,
S::Token: PartialEq,
S::Range: PartialEq,
impl<S> ResetStream for Stream<S> where
S: ResetStream + Positioned,
S::Token: PartialEq,
S::Range: PartialEq,
type Checkpoint = S::Checkpoint
sourcefn checkpoint(&self) -> Self::Checkpoint
fn checkpoint(&self) -> Self::Checkpoint
Creates a Checkpoint
at the current position which can be used to reset the stream
later to the current position Read more
sourceimpl<S> StreamOnce for Stream<S> where
S: StreamOnce + Positioned,
S::Token: PartialEq,
S::Range: PartialEq,
impl<S> StreamOnce for Stream<S> where
S: StreamOnce + Positioned,
S::Token: PartialEq,
S::Range: PartialEq,
type Range = S::Range
type Range = S::Range
The type of a range of items yielded from this stream.
Types which do not a have a way of yielding ranges of items should just use the
Self::Token
for this type. Read more
type Position = S::Position
type Position = S::Position
Type which represents the position in a stream.
Ord
is required to allow parsers to determine which of two positions are further ahead. Read more
type Error = ParseError<S>
sourcefn uncons(&mut self) -> Result<Self::Token, StreamErrorFor<Self>>
fn uncons(&mut self) -> Result<Self::Token, StreamErrorFor<Self>>
Takes a stream and removes its first token, yielding the token and the rest of the elements.
Returns Err
if no element could be retrieved. Read more
sourcefn is_partial(&self) -> bool
fn is_partial(&self) -> bool
Returns true
if this stream only contains partial input. Read more
impl<S: Copy> Copy for Stream<S>
impl<S: Eq> Eq for Stream<S>
impl<S> StructuralEq for Stream<S>
impl<S> StructuralPartialEq for Stream<S>
Auto Trait Implementations
impl<S> RefUnwindSafe for Stream<S> where
S: RefUnwindSafe,
impl<S> Send for Stream<S> where
S: Send,
impl<S> Sync for Stream<S> where
S: Sync,
impl<S> Unpin for Stream<S> where
S: Unpin,
impl<S> UnwindSafe for Stream<S> where
S: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more