fn parse_field_impl<'a, P, V>(
    is_valid_default_field_for_attr: &P,
    len: usize,
    iter: impl Iterator<Item = (usize, &'a Field, &'a MetaInfo)> + Clone,
    attr: &str,
    value: V
) -> Result<Option<(usize, &'a Field, &'a MetaInfo)>>where
    P: Fn(&str, &Field, usize) -> bool,
    V: Fn(&MetaInfo) -> Option<bool>,