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);
 }
 public TryStatement(BlockStatement @try, BlockStatement fault, FinallyClause @finally)
 {
     this.Try     = @try;
     this.Fault   = fault;
     this.Finally = @finally;
 }