pub fn fold_rules<V: ?Sized + Fold>(_visitor: &mut V, n: Vec<Rule>) -> Vec<Rule>