3 instantiations of BoundAwaitExpression
Microsoft.CodeAnalysis.CSharp (3)
Binder\Binder_Await.cs (1)
43return new BoundAwaitExpression(node, expression, info, debugInfo: default, awaitExpressionType, hasErrors);
Generated\BoundNodes.xml.Generated.cs (1)
2196var result = new BoundAwaitExpression(this.Syntax, expression, awaitableInfo, debugInfo, type, this.HasErrors);
Lowering\LocalRewriter\LocalRewriter_Await.cs (1)
25return RewriteAwaitExpression(new BoundAwaitExpression(syntax, rewrittenExpression, awaitableInfo, debugInfo, type) { WasCompilerGenerated = true }, used);
42 references to BoundAwaitExpression
Microsoft.CodeAnalysis.CSharp (42)
Binder\Binder_Await.cs (1)
29private BoundAwaitExpression BindAwait(BoundExpression expression, SyntaxNode node, BindingDiagnosticBag diagnostics)
Binder\RefSafetyAnalysis.cs (1)
1032public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
BoundTree\BoundAwaitExpressionDebugInfo.cs (8)
10/// Debug info associated with <see cref="BoundAwaitExpression"/> to support EnC. 16/// Any time multiple <see cref="BoundAwaitExpression"/>s might be associated with the same syntax node 18/// regardless of the actual number of <see cref="BoundAwaitExpression"/>s that get emitted. 20/// To do so one or more of the emitted <see cref="BoundAwaitExpression"/>s may 22/// (one for each <see cref="BoundAwaitExpression"/> plus total reserved states) is constant 25/// E.g. `await foreach` produces at least one and at most two <see cref="BoundAwaitExpression"/>s: 28/// If the enumerator is async-disposable it produces two <see cref="BoundAwaitExpression"/>s with 31/// If the enumerator is not async-disposable it produces a single <see cref="BoundAwaitExpression"/> with
BoundTree\BoundNode_Source.cs (1)
206case BoundAwaitExpression awaitExpression:
BoundTree\BoundNodeExtensions.cs (1)
94public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
Compilation\CSharpSemanticModel.cs (2)
3581var await = (BoundAwaitExpression)boundNode;
Compilation\MemberSemanticModel.cs (1)
924BoundAwaitableInfo awaitableInfo = (((bound as BoundExpressionStatement)?.Expression ?? bound) as BoundAwaitExpression)?.AwaitableInfo;
FlowAnalysis\AbstractFlowPass.cs (1)
2823public override BoundNode VisitAwaitExpression(BoundAwaitExpression node)
FlowAnalysis\NullableWalker.cs (1)
12241public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
Generated\BoundNodes.xml.Generated.cs (10)
2192public BoundAwaitExpression Update(BoundExpression expression, BoundAwaitableInfo awaitableInfo, BoundAwaitExpressionDebugInfo debugInfo, TypeSymbol type) 2196var result = new BoundAwaitExpression(this.Syntax, expression, awaitableInfo, debugInfo, type, this.HasErrors); 8973return VisitAwaitExpression((BoundAwaitExpression)node, arg); 9392public virtual R VisitAwaitExpression(BoundAwaitExpression node, A arg) => this.DefaultVisit(node, arg); 9628public virtual BoundNode? VisitAwaitExpression(BoundAwaitExpression node) => this.DefaultVisit(node); 10028public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node) 11189public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node) 13128public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node) 13132BoundAwaitExpression updatedNode; 15627public override TreeDumperNode VisitAwaitExpression(BoundAwaitExpression node, object? arg) => new TreeDumperNode("awaitExpression", null, new TreeDumperNode[]
Lowering\AsyncRewriter\AsyncExceptionHandlerRewriter.cs (1)
943public override BoundNode VisitAwaitExpression(BoundAwaitExpression node)
Lowering\AsyncRewriter\AsyncMethodToStateMachineRewriter.cs (4)
317return VisitAwaitExpression((BoundAwaitExpression)node.Expression, resultPlace: null); 324return VisitAwaitExpression((BoundAwaitExpression)expression.Right, resultPlace: expression.Left); 332public sealed override BoundNode VisitAwaitExpression(BoundAwaitExpression node) 348private BoundBlock VisitAwaitExpression(BoundAwaitExpression node, BoundExpression resultPlace)
Lowering\AsyncRewriter\AsyncRewriter.cs (1)
313public override BoundNode VisitAwaitExpression(BoundAwaitExpression node)
Lowering\AsyncRewriter\RuntimeAsyncRewriter.cs (2)
58public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node) 102private BoundExpression RewriteCustomAwaiterAwait(BoundAwaitExpression node)
Lowering\LocalRewriter\LocalRewriter_Await.cs (2)
13public override BoundNode VisitAwaitExpression(BoundAwaitExpression node) 18public BoundExpression VisitAwaitExpression(BoundAwaitExpression node, bool used)
Lowering\LocalRewriter\LocalRewriter_ExpressionStatement.cs (1)
51return VisitAwaitExpression((BoundAwaitExpression)expression, used: false);
Lowering\SpillSequenceSpiller.cs (1)
751public override BoundNode VisitAwaitExpression(BoundAwaitExpression node)
Lowering\StateMachineRewriter\IteratorAndAsyncCaptureWalker.cs (1)
193public override BoundNode VisitAwaitExpression(BoundAwaitExpression node)
Operations\CSharpOperationFactory.cs (2)
137return CreateBoundAwaitExpressionOperation((BoundAwaitExpression)boundNode); 1615private IAwaitOperation CreateBoundAwaitExpressionOperation(BoundAwaitExpression boundAwaitExpression)