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)
2164
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)
916
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)
10923
BoundAwaitableInfo
? awaitOpt)
11100
if (enumeratorInfoOpt is { NeedsDisposal: true, DisposeAwaitableInfo:
BoundAwaitableInfo
awaitDisposalInfo })
11485
var
awaitableInfo = node.AwaitableInfo;
12153
public override BoundNode? VisitAwaitableInfo(
BoundAwaitableInfo
node)
Generated\BoundNodes.xml.Generated.cs (35)
2160
public
BoundAwaitableInfo
Update(BoundAwaitableValuePlaceholder? awaitableInstancePlaceholder, bool isDynamic, BoundExpression? getAwaiter, PropertySymbol? isCompleted, MethodSymbol? getResult)
2164
var
result = new BoundAwaitableInfo(this.Syntax, awaitableInstancePlaceholder, isDynamic, getAwaiter, isCompleted, getResult, this.HasErrors);
2174
public BoundAwaitExpression(SyntaxNode syntax, BoundExpression expression,
BoundAwaitableInfo
awaitableInfo, BoundAwaitExpressionDebugInfo debugInfo, TypeSymbol type, bool hasErrors = false)
2189
public
BoundAwaitableInfo
AwaitableInfo { get; }
2195
public BoundAwaitExpression Update(BoundExpression expression,
BoundAwaitableInfo
awaitableInfo, BoundAwaitExpressionDebugInfo debugInfo, TypeSymbol type)
3477
public BoundUsingLocalDeclarations(SyntaxNode syntax, MethodArgumentInfo? patternDisposeInfoOpt,
BoundAwaitableInfo
? awaitOpt, ImmutableArray<BoundLocalDeclaration> localDeclarations, bool hasErrors = false)
3488
public
BoundAwaitableInfo
? AwaitOpt { get; }
3493
public BoundUsingLocalDeclarations Update(MethodArgumentInfo? patternDisposeInfoOpt,
BoundAwaitableInfo
? awaitOpt, ImmutableArray<BoundLocalDeclaration> localDeclarations)
4037
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, GeneratedLabelSymbol breakLabel, GeneratedLabelSymbol continueLabel, bool hasErrors = false)
4068
public
BoundAwaitableInfo
? AwaitOpt { get; }
4074
public BoundForEachStatement Update(ForEachEnumeratorInfo? enumeratorInfoOpt, BoundValuePlaceholder? elementPlaceholder, BoundExpression? elementConversion, BoundTypeExpression iterationVariableType, ImmutableArray<LocalSymbol> iterationVariables, BoundExpression? iterationErrorExpressionOpt, BoundExpression expression, BoundForEachDeconstructStep? deconstructionOpt,
BoundAwaitableInfo
? awaitOpt, BoundStatement body, GeneratedLabelSymbol breakLabel, GeneratedLabelSymbol continueLabel)
4119
public BoundUsingStatement(SyntaxNode syntax, ImmutableArray<LocalSymbol> locals, BoundMultipleLocalDeclarations? declarationsOpt, BoundExpression? expressionOpt, BoundStatement body,
BoundAwaitableInfo
? awaitOpt, MethodArgumentInfo? patternDisposeInfoOpt, bool hasErrors = false)
4138
public
BoundAwaitableInfo
? AwaitOpt { get; }
4144
public BoundUsingStatement Update(ImmutableArray<LocalSymbol> locals, BoundMultipleLocalDeclarations? declarationsOpt, BoundExpression? expressionOpt, BoundStatement body,
BoundAwaitableInfo
? awaitOpt, MethodArgumentInfo? patternDisposeInfoOpt)
8972
return VisitAwaitableInfo((
BoundAwaitableInfo
)node, arg);
9392
public virtual R VisitAwaitableInfo(
BoundAwaitableInfo
node, A arg) => this.DefaultVisit(node, arg);
9628
public virtual BoundNode? VisitAwaitableInfo(
BoundAwaitableInfo
node) => this.DefaultVisit(node);
10021
public override BoundNode? VisitAwaitableInfo(
BoundAwaitableInfo
node)
11152
public override BoundNode? VisitAwaitableInfo(
BoundAwaitableInfo
node)
11161
BoundAwaitableInfo
awaitableInfo = (
BoundAwaitableInfo
)this.Visit(node.AwaitableInfo);
11350
BoundAwaitableInfo
? awaitOpt = (
BoundAwaitableInfo
?)this.Visit(node.AwaitOpt);
11432
BoundAwaitableInfo
? awaitOpt = (
BoundAwaitableInfo
?)this.Visit(node.AwaitOpt);
11447
BoundAwaitableInfo
? awaitOpt = (
BoundAwaitableInfo
?)this.Visit(node.AwaitOpt);
12988
public override BoundNode? VisitAwaitableInfo(
BoundAwaitableInfo
node)
13000
BoundAwaitableInfo
awaitableInfo = (
BoundAwaitableInfo
)this.Visit(node.AwaitableInfo);
13475
BoundAwaitableInfo
? awaitOpt = (
BoundAwaitableInfo
?)this.Visit(node.AwaitOpt);
13486
BoundAwaitableInfo
? awaitOpt = (
BoundAwaitableInfo
?)this.Visit(node.AwaitOpt);
15475
public override TreeDumperNode VisitAwaitableInfo(
BoundAwaitableInfo
node, object? arg) => new TreeDumperNode("awaitableInfo", null, new TreeDumperNode[]
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,
375
var
disposeAwaitableInfoOpt = enumeratorInfo.DisposeAwaitableInfo;
475
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,
Lowering\MethodToClassRewriter.cs (1)
455
public override BoundNode VisitAwaitableInfo(
BoundAwaitableInfo
node)