pub(crate) fn extract_vec(ty: &Type) -> Option<&Type>