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