pub fn fold_select<F, T: AstInfo, T2: AstInfo>( folder: &mut F, node: Select<T>, ) -> Select<T2>where F: Fold<T, T2> + ?Sized,