more choice impls
This commit is contained in:
parent
05c9ada7c6
commit
ea6a513572
@ -47,3 +47,28 @@ where
|
|||||||
choice_loop(input, &[&self.0, &self.1, &self.2])
|
choice_loop(input, &[&self.0, &self.1, &self.2])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl<P1, P2, P3, P4, I, O, E> Choice<I, O, E> for (P1, P2, P3, P4)
|
||||||
|
where
|
||||||
|
P1: Parser<I, O, E>,
|
||||||
|
P2: Parser<I, O, E>,
|
||||||
|
P3: Parser<I, O, E>,
|
||||||
|
P4: Parser<I, O, E>,
|
||||||
|
{
|
||||||
|
fn parse_choice(&self, input: I) -> Result<(O, I), (E, I)> {
|
||||||
|
choice_loop(input, &[&self.0, &self.1, &self.2, &self.3])
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
impl<P1, P2, P3, P4, P5, I, O, E> Choice<I, O, E> for (P1, P2, P3, P4, P5)
|
||||||
|
where
|
||||||
|
P1: Parser<I, O, E>,
|
||||||
|
P2: Parser<I, O, E>,
|
||||||
|
P3: Parser<I, O, E>,
|
||||||
|
P4: Parser<I, O, E>,
|
||||||
|
P5: Parser<I, O, E>,
|
||||||
|
{
|
||||||
|
fn parse_choice(&self, input: I) -> Result<(O, I), (E, I)> {
|
||||||
|
choice_loop(input, &[&self.0, &self.1, &self.2, &self.3, &self.4])
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user