one_of combinator
This commit is contained in:
parent
dd9c05ccd1
commit
8b010811e3
@ -21,6 +21,18 @@ pub fn any_char(input: &str) -> ParseResult<&str, char, &str> {
|
||||
}
|
||||
}
|
||||
|
||||
pub fn one_of<'a>(items: &'static str) -> impl Parser<&'a str, &'a str, &'a str> {
|
||||
move |input: &'a str| {
|
||||
if let Some(ch) = input.chars().nth(0) {
|
||||
if items.contains(ch) {
|
||||
let (first, rest) = input.split_at(1);
|
||||
return Ok((first, rest));
|
||||
}
|
||||
}
|
||||
Err(input)
|
||||
}
|
||||
}
|
||||
|
||||
pub fn pred<P, F, I, O>(parser: P, pred_fn: F) -> impl Parser<I, O, I>
|
||||
where
|
||||
P: Parser<I, O, I>,
|
||||
|
Loading…
Reference in New Issue
Block a user