blob: 591b2f7b198922dc08bd9ad739e1a8d0efca33a0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
|
macro_rules! dispatch {
($match_parser: expr; $( $pat:pat $(if $pred:expr)? => $expr: expr ),+ $(,)? ) => {
move |i|
{
let (i, initial) = $match_parser.parse(i)?;
match initial {
$(
$pat $(if $pred)? => $expr.parse(i),
)*
}
}
}
}
|