| 1845 | } |
| 1846 | |
| 1847 | void ExprBlock::visitFinally(Visitor & vis) { |
| 1848 | if ( !finalList.empty() && !finallyDisabled ) { |
| 1849 | vis.preVisitBlockFinal(this); |
| 1850 | for ( auto it = finalList.begin(); it!=finalList.end(); ) { |
| 1851 | auto & subexpr = *it; |
| 1852 | vis.preVisitBlockFinalExpression(this, subexpr); |
| 1853 | if ( subexpr ) subexpr = subexpr->visit(vis); |
| 1854 | if ( subexpr ) subexpr = vis.visitBlockFinalExpression(this, subexpr); |
| 1855 | if ( subexpr ) ++it; else it = finalList.erase(it); |
| 1856 | } |
| 1857 | vis.visitBlockFinal(this); |
| 1858 | } |
| 1859 | } |
| 1860 | |
| 1861 | ExpressionPtr ExprBlock::visit(Visitor & vis) { |
| 1862 | vis.preVisit(this); |
no test coverage detected