Macro abortable_parser::separated
source · macro_rules! separated {
($i:expr, $sep_rule:ident!( $( $sep_args:tt )* ), $item_rule:ident!( $( $item_args:tt )* ) ) => { ... };
($i:expr, $sep_rule:ident, $item_rule:ident ) => { ... };
($i:expr, $sep_rule:ident!( $( $args:tt )* ), $item_rule:ident ) => { ... };
($i:expr, $sep_rule:ident, $item_rule:ident!( $( $args:tt )* ) ) => { ... };
}
Expand description
Parses separated list of items.
use abortable_parser::iter;
let input_str = "foo,foo";
let iter = iter::SliceIter::new(input_str.as_bytes());
let result = separated!(iter, text_token!(","), text_token!("foo"));
if let Result::Complete(_, o) = result {
assert_eq!(2, o.len());
assert_eq!("foo", o[0]);
assert_eq!("foo", o[1]);
}