use {
nom::{bytes::complete::tag, character::complete::alpha1, sequence::tuple, IResult},
nom_tracer::{activate_trace, print_trace, trace},
};
fn parse_greeting(input: &str) -> IResult<&str, (&str, &str)> {
trace!(
"Parsing a greeting (format: 'hello' + name)",
tuple((
trace!("Parsing 'hello'", tag("hello")),
trace!("Parsing name", alpha1)
))
)(input)
}
fn main() {
activate_trace!();
let result = parse_greeting("helloworld");
println!("Parse result: {:?}", result);
print_trace!();
}
#[cfg(test)]
mod tests {
#[test]
fn test_main() {
super::main();
}
}