Struct nom::ChainConsumer
[−]
[src]
pub struct ChainConsumer<'a, 'b, C1: 'a, C2: 'b, R, S, T, E, M> { // some fields omitted }
ChainConsumer takes a consumer C1 R -> S, and a consumer C2 S -> T, and makes a consumer R -> T by applying C2 on C1's result
Methods
impl<'a, 'b, R, S: Clone, T: Clone, E: Clone, M: Clone, C1: Consumer<R, S, E, M>, C2: Consumer<S, T, E, M>> ChainConsumer<'a, 'b, C1, C2, R, S, T, E, M>
[src]
fn new(c1: &'a mut C1, c2: &'b mut C2) -> ChainConsumer<'a, 'b, C1, C2, R, S, T, E, M>
Trait Implementations
impl<'a, 'b, R, S: Clone, T: Clone, E: Clone, M: Clone, C1: Consumer<R, S, E, M>, C2: Consumer<S, T, E, M>> Consumer<R, T, E, M> for ChainConsumer<'a, 'b, C1, C2, R, S, T, E, M>
[src]
fn handle(&mut self, input: Input<R>) -> &ConsumerState<T, E, M>
implement handle for the current computation, returning the new state of the consumer
fn state(&self) -> &ConsumerState<T, E, M>
returns the current state