pub fn fold_pattern_match_or<U, F>(
    folder: &mut F,
    node: PatternMatchOr<U>
) -> Result<PatternMatchOr<<F as Fold<U>>::TargetU>, <F as Fold<U>>::Error>where
    F: Fold<U> + ?Sized,