pub fn parse_4_args<'a, T0: ArgParse, T1: ArgParse, T2: ArgParse, T3: ArgParse>(
    method_name: &'a str,
    args: &'a str
) -> Result<'a, (T0, T1, T2, T3)>