Struct combine::primitives::ReadStream [] [src]

pub struct ReadStream<R> { /* fields omitted */ }

Methods

impl<R> ReadStream<R> where
    R: Read
[src]

Creates a StreamOnce instance from a value implementing std::io::Read.

NOTE: This type do not implement Positioned and Clone and must be wrapped with types such as BufferedStreamRef and State to become a Stream which can be parsed

use combine::*;
use combine::byte::*;
use combine::primitives::{BufferedStream, ReadStream};
use combine::state::State;
use std::io::Read;

let mut input: &[u8] = b"123,";
let stream = BufferedStream::new(State::new(ReadStream::new(&mut input)), 1);
let result = (many(digit()), byte(b','))
    .parse(stream.as_stream())
    .map(|t| t.0);
assert_eq!(result, Ok((vec![b'1', b'2', b'3'], b',')));

Trait Implementations

impl<R: Read> StreamOnce for ReadStream<R>
[src]

The type of items which is yielded from this stream.

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

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

impl<R> DefaultPositioned for ReadStream<R>
[src]