3 instantiations of BoundAwaitableInfo
Microsoft.CodeAnalysis.CSharp (3)
Binder\Binder_Await.cs (1)
65
return new
BoundAwaitableInfo
(node, placeholder, isDynamic: isDynamic, getAwaiter, isCompleted, getResult, hasErrors: hasGetAwaitableErrors) { WasCompilerGenerated = true };
Binder\UsingStatementBinder.cs (1)
153
awaitOpt = new
BoundAwaitableInfo
(syntax, awaitableInstancePlaceholder: null, isDynamic: true, getAwaiter: null, isCompleted: null, getResult: null) { WasCompilerGenerated = true };
Generated\BoundNodes.xml.Generated.cs (1)
2149
var result = new
BoundAwaitableInfo
(this.Syntax, awaitableInstancePlaceholder, isDynamic, getAwaiter, isCompleted, getResult, this.HasErrors);
58 references to BoundAwaitableInfo
Microsoft.CodeAnalysis.CSharp (58)
Binder\Binder_Await.cs (2)
34
var
info = BindAwaitInfo(placeholder, node, diagnostics, ref hasErrors, expressionOpt: expression);
51
internal
BoundAwaitableInfo
BindAwaitInfo(BoundAwaitableValuePlaceholder placeholder, SyntaxNode node, BindingDiagnosticBag diagnostics, ref bool hasErrors, BoundExpression? expressionOpt = null)
Binder\ForEachEnumeratorInfo.cs (3)
40
public readonly
BoundAwaitableInfo
? DisposeAwaitableInfo;
61
BoundAwaitableInfo
? disposeAwaitableInfo,
110
public
BoundAwaitableInfo
? DisposeAwaitableInfo;
Binder\ForEachLoopBinder.cs (1)
233
BoundAwaitableInfo
awaitInfo = null;
Binder\RefSafetyAnalysis.cs (1)
955
private void GetAwaitableInstancePlaceholders(ArrayBuilder<(BoundValuePlaceholderBase, SafeContext)> placeholders,
BoundAwaitableInfo
awaitableInfo, SafeContext valEscapeScope)
Binder\UsingStatementBinder.cs (1)
145
BoundAwaitableInfo
? awaitOpt = null;
Compilation\MemberSemanticModel.cs (1)
923
BoundAwaitableInfo
awaitableInfo = (((bound as BoundExpressionStatement)?.Expression ?? bound) as BoundAwaitExpression)?.AwaitableInfo;
Compilation\MemberSemanticModel.NodeMapBuilder.cs (1)
291
public override BoundNode VisitAwaitableInfo(
BoundAwaitableInfo
node)
FlowAnalysis\NullableWalker.cs (4)
11354
BoundAwaitableInfo
? awaitOpt)
11531
if (enumeratorInfoOpt is { NeedsDisposal: true, DisposeAwaitableInfo:
BoundAwaitableInfo
awaitDisposalInfo })
11916
var
awaitableInfo = node.AwaitableInfo;
12584
public override BoundNode? VisitAwaitableInfo(
BoundAwaitableInfo
node)
Generated\BoundNodes.xml.Generated.cs (35)
2145
public
BoundAwaitableInfo
Update(BoundAwaitableValuePlaceholder? awaitableInstancePlaceholder, bool isDynamic, BoundExpression? getAwaiter, PropertySymbol? isCompleted, MethodSymbol? getResult)
2149
var
result = new BoundAwaitableInfo(this.Syntax, awaitableInstancePlaceholder, isDynamic, getAwaiter, isCompleted, getResult, this.HasErrors);
2159
public BoundAwaitExpression(SyntaxNode syntax, BoundExpression expression,
BoundAwaitableInfo
awaitableInfo, BoundAwaitExpressionDebugInfo debugInfo, TypeSymbol type, bool hasErrors = false)
2174
public
BoundAwaitableInfo
AwaitableInfo { get; }
2180
public BoundAwaitExpression Update(BoundExpression expression,
BoundAwaitableInfo
awaitableInfo, BoundAwaitExpressionDebugInfo debugInfo, TypeSymbol type)
3460
public BoundUsingLocalDeclarations(SyntaxNode syntax, MethodArgumentInfo? patternDisposeInfoOpt,
BoundAwaitableInfo
? awaitOpt, ImmutableArray<BoundLocalDeclaration> localDeclarations, bool hasErrors = false)
3471
public
BoundAwaitableInfo
? AwaitOpt { get; }
3476
public BoundUsingLocalDeclarations Update(MethodArgumentInfo? patternDisposeInfoOpt,
BoundAwaitableInfo
? awaitOpt, ImmutableArray<BoundLocalDeclaration> localDeclarations)
4020
public BoundForEachStatement(SyntaxNode syntax, ForEachEnumeratorInfo? enumeratorInfoOpt, BoundValuePlaceholder? elementPlaceholder, BoundExpression? elementConversion, BoundTypeExpression iterationVariableType, ImmutableArray<LocalSymbol> iterationVariables, BoundExpression? iterationErrorExpressionOpt, BoundExpression expression, BoundForEachDeconstructStep? deconstructionOpt,
BoundAwaitableInfo
? awaitOpt, BoundStatement body, LabelSymbol breakLabel, LabelSymbol continueLabel, bool hasErrors = false)
4051
public
BoundAwaitableInfo
? AwaitOpt { get; }
4057
public BoundForEachStatement Update(ForEachEnumeratorInfo? enumeratorInfoOpt, BoundValuePlaceholder? elementPlaceholder, BoundExpression? elementConversion, BoundTypeExpression iterationVariableType, ImmutableArray<LocalSymbol> iterationVariables, BoundExpression? iterationErrorExpressionOpt, BoundExpression expression, BoundForEachDeconstructStep? deconstructionOpt,
BoundAwaitableInfo
? awaitOpt, BoundStatement body, LabelSymbol breakLabel, LabelSymbol continueLabel)
4102
public BoundUsingStatement(SyntaxNode syntax, ImmutableArray<LocalSymbol> locals, BoundMultipleLocalDeclarations? declarationsOpt, BoundExpression? expressionOpt, BoundStatement body,
BoundAwaitableInfo
? awaitOpt, MethodArgumentInfo? patternDisposeInfoOpt, bool hasErrors = false)
4121
public
BoundAwaitableInfo
? AwaitOpt { get; }
4127
public BoundUsingStatement Update(ImmutableArray<LocalSymbol> locals, BoundMultipleLocalDeclarations? declarationsOpt, BoundExpression? expressionOpt, BoundStatement body,
BoundAwaitableInfo
? awaitOpt, MethodArgumentInfo? patternDisposeInfoOpt)
8955
return VisitAwaitableInfo((
BoundAwaitableInfo
)node, arg);
9375
public virtual R VisitAwaitableInfo(
BoundAwaitableInfo
node, A arg) => this.DefaultVisit(node, arg);
9611
public virtual BoundNode? VisitAwaitableInfo(
BoundAwaitableInfo
node) => this.DefaultVisit(node);
10004
public override BoundNode? VisitAwaitableInfo(
BoundAwaitableInfo
node)
11161
public override BoundNode? VisitAwaitableInfo(
BoundAwaitableInfo
node)
11172
BoundAwaitableInfo
awaitableInfo = (
BoundAwaitableInfo
)this.Visit(node.AwaitableInfo);
11378
BoundAwaitableInfo
? awaitOpt = (
BoundAwaitableInfo
?)this.Visit(node.AwaitOpt);
11486
BoundAwaitableInfo
? awaitOpt = (
BoundAwaitableInfo
?)this.Visit(node.AwaitOpt);
11502
BoundAwaitableInfo
? awaitOpt = (
BoundAwaitableInfo
?)this.Visit(node.AwaitOpt);
13119
public override BoundNode? VisitAwaitableInfo(
BoundAwaitableInfo
node)
13131
BoundAwaitableInfo
awaitableInfo = (
BoundAwaitableInfo
)this.Visit(node.AwaitableInfo);
13605
BoundAwaitableInfo
? awaitOpt = (
BoundAwaitableInfo
?)this.Visit(node.AwaitOpt);
13616
BoundAwaitableInfo
? awaitOpt = (
BoundAwaitableInfo
?)this.Visit(node.AwaitOpt);
15607
public override TreeDumperNode VisitAwaitableInfo(
BoundAwaitableInfo
node, object? arg) => new TreeDumperNode("awaitableInfo", null, new TreeDumperNode[]
Lowering\BoundTreeToDifferentEnclosingContextRewriter.cs (1)
120
public override BoundNode VisitAwaitableInfo(
BoundAwaitableInfo
node)
Lowering\LocalRewriter\LocalRewriter_Await.cs (1)
23
private BoundExpression RewriteAwaitExpression(SyntaxNode syntax, BoundExpression rewrittenExpression,
BoundAwaitableInfo
awaitableInfo, TypeSymbol type, BoundAwaitExpressionDebugInfo debugInfo, bool used)
Lowering\LocalRewriter\LocalRewriter_ForEachStatement.cs (3)
143
BoundAwaitableInfo
? awaitableInfo,
374
var
disposeAwaitableInfoOpt = enumeratorInfo.DisposeAwaitableInfo;
474
private BoundStatement WrapWithAwait(SyntaxNode forEachSyntax, BoundExpression disposeCall,
BoundAwaitableInfo
disposeAwaitableInfoOpt)
Lowering\LocalRewriter\LocalRewriter_UsingStatement.cs (4)
67
BoundAwaitableInfo
? awaitOpt,
211
BoundAwaitableInfo
? awaitOpt,
285
BoundAwaitableInfo
? awaitOpt,
439
BoundAwaitableInfo
? awaitOpt,