pub fn fold_closure<T: ?Sized + AstFold>(
    fold: &mut T,
    closure: Closure
) -> Result<Closure>