Macro peel_ip::prelude::length_count []

macro_rules! length_count {
    (
$ i : expr , $ submac : ident ! ( $ ( $ args : tt ) * ) , $ submac2 : ident !
( $ ( $ args2 : tt ) * ) ) => { ... };
    (
$ i : expr , $ submac : ident ! ( $ ( $ args : tt ) * ) , $ g : expr ) => { ... };
    ( $ i : expr , $ f : expr , $ submac : ident ! ( $ ( $ args : tt ) * ) ) => { ... };
    ( $ i : expr , $ f : expr , $ g : expr ) => { ... };
}

length_count!(I -> IResult<I, nb>, I -> IResult<I,O>) => I -> IResult<I, Vec<O>> gets a number from the first parser, then applies the second parser that many times