public override Statement CloneStatementOnly() { BlockStatement clonnedTry = @try != null? @try.CloneStatementOnly() as BlockStatement : null; BlockStatement clonnedfault = fault != null?fault.CloneStatementOnly() as BlockStatement : null; FinallyClause clonnedFinally = @finally != null? @finally.CloneStatementOnly() as FinallyClause : null; TryStatement result = new TryStatement(clonnedTry, clonnedfault, clonnedFinally); foreach (CatchClause @catch in this.catchClauses) { result.AddToCatchClauses((CatchClause)@catch.CloneStatementOnly()); } CopyParentAndLabel(result); return(result); }
public TryStatement(BlockStatement @try, BlockStatement fault, FinallyClause @finally) { this.Try = @try; this.Fault = fault; this.Finally = @finally; }
public void VisitFinallyClause(FinallyClause node) { Visit(node.Body); }