Struct gluon_parser::lexer::LocatedStream
[−]
[src]
pub struct LocatedStream<I> { /* fields omitted */ }
Trait Implementations
impl<I: Clone> Clone for LocatedStream<I>
[src]
fn clone(&self) -> LocatedStream<I>
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more
impl<I> StreamOnce for LocatedStream<I> where I: StreamOnce<Item=char>
[src]
type Item = I::Item
The type of items which is yielded from this stream
type Range = I::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::Item for this type Read more
type Position = Location
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
fn uncons(&mut self)
-> Result<Self::Item, CombineError<Self::Item, Self::Range>>
-> Result<Self::Item, CombineError<Self::Item, Self::Range>>
Takes a stream and removes its first item, yielding the item and the rest of the elements Returns Err
if no element could be retrieved Read more
fn position(&self) -> Self::Position
Returns the current position of the stream
impl<'input, I> RangeStream for LocatedStream<I> where I: RangeStream<Item=char, Range=&'input str>
[src]
fn uncons_range(&mut self,
len: usize)
-> Result<Self::Range, CombineError<Self::Item, Self::Range>>
len: usize)
-> Result<Self::Range, CombineError<Self::Item, Self::Range>>
Takes size
elements from the stream Fails if the length of the stream is less than size
. Read more
fn uncons_while<F>(&mut self,
predicate: F)
-> Result<Self::Range, CombineError<Self::Item, Self::Range>> where F: FnMut(Self::Item) -> bool
predicate: F)
-> Result<Self::Range, CombineError<Self::Item, Self::Range>> where F: FnMut(Self::Item) -> bool
Takes items from stream, testing each one with predicate
returns the range of items which passed predicate
Read more