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