pub fn fold_vis_restricted<F>(f: &mut F, node: VisRestricted) -> VisRestricted where
    F: Fold + ?Sized