nom
macro_rules! take_until1 { ($i:expr, $substr:expr) => { ... }; }
take_until1!(tag) => &[T] -> IResult<&[T], &[T]> consumes data until it finds the specified tag
take_until1!(tag) => &[T] -> IResult<&[T], &[T]>