public override BoundNode VisitUsingStatement(BoundUsingStatement node)
 {
     var newLocals = RewriteLocals(node.Locals);
     BoundMultipleLocalDeclarations declarationsOpt = (BoundMultipleLocalDeclarations)this.Visit(node.DeclarationsOpt);
     BoundExpression expressionOpt = (BoundExpression)this.Visit(node.ExpressionOpt);
     BoundStatement body = (BoundStatement)this.Visit(node.Body);
     Conversion disposableConversion = RewriteConversion(node.IDisposableConversion);
     return node.Update(newLocals, declarationsOpt, expressionOpt, disposableConversion, body);
 }
Beispiel #2
0
 public override BoundNode VisitUsingStatement(BoundUsingStatement node)
 {
     throw ExceptionUtilities.Unreachable; // using statements have been lowered away by now
 }
Beispiel #3
0
 public override object VisitUsingStatement(BoundUsingStatement node, object arg)
 {
     // TODO: should visit the expression, but that is missing from the bound using statement at the time this code was written.
     VisitStatement(node.Body);
     return(null);
 }
Beispiel #4
0
 public override BoundStatement InstrumentUsingTargetCapture(BoundUsingStatement original, BoundStatement usingTargetCapture)
 {
     return(Previous.InstrumentUsingTargetCapture(original, usingTargetCapture));
 }
Beispiel #5
0
 public override BoundNode VisitUsingStatement(BoundUsingStatement node)
 {
     // Using statements have been lowered away before the lambda and async rewriters
     throw ExceptionUtilities.Unreachable;
 }