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)
2163
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)
891
private void GetAwaitableInstancePlaceholders(ArrayBuilder<(BoundValuePlaceholderBase, uint)> placeholders,
BoundAwaitableInfo
awaitableInfo, uint 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)
10865
BoundAwaitableInfo
? awaitOpt)
11042
if (enumeratorInfoOpt is { NeedsDisposal: true, DisposeAwaitableInfo:
BoundAwaitableInfo
awaitDisposalInfo })
11427
var
awaitableInfo = node.AwaitableInfo;
12095
public override BoundNode? VisitAwaitableInfo(
BoundAwaitableInfo
node)
Generated\BoundNodes.xml.Generated.cs (35)
2159
public
BoundAwaitableInfo
Update(BoundAwaitableValuePlaceholder? awaitableInstancePlaceholder, bool isDynamic, BoundExpression? getAwaiter, PropertySymbol? isCompleted, MethodSymbol? getResult)
2163
var
result = new BoundAwaitableInfo(this.Syntax, awaitableInstancePlaceholder, isDynamic, getAwaiter, isCompleted, getResult, this.HasErrors);
2173
public BoundAwaitExpression(SyntaxNode syntax, BoundExpression expression,
BoundAwaitableInfo
awaitableInfo, BoundAwaitExpressionDebugInfo debugInfo, TypeSymbol type, bool hasErrors = false)
2188
public
BoundAwaitableInfo
AwaitableInfo { get; }
2194
public BoundAwaitExpression Update(BoundExpression expression,
BoundAwaitableInfo
awaitableInfo, BoundAwaitExpressionDebugInfo debugInfo, TypeSymbol type)
3476
public BoundUsingLocalDeclarations(SyntaxNode syntax, MethodArgumentInfo? patternDisposeInfoOpt,
BoundAwaitableInfo
? awaitOpt, ImmutableArray<BoundLocalDeclaration> localDeclarations, bool hasErrors = false)
3487
public
BoundAwaitableInfo
? AwaitOpt { get; }
3492
public BoundUsingLocalDeclarations Update(MethodArgumentInfo? patternDisposeInfoOpt,
BoundAwaitableInfo
? awaitOpt, ImmutableArray<BoundLocalDeclaration> localDeclarations)
4036
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)
4067
public
BoundAwaitableInfo
? AwaitOpt { get; }
4073
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)
4118
public BoundUsingStatement(SyntaxNode syntax, ImmutableArray<LocalSymbol> locals, BoundMultipleLocalDeclarations? declarationsOpt, BoundExpression? expressionOpt, BoundStatement body,
BoundAwaitableInfo
? awaitOpt, MethodArgumentInfo? patternDisposeInfoOpt, bool hasErrors = false)
4137
public
BoundAwaitableInfo
? AwaitOpt { get; }
4143
public BoundUsingStatement Update(ImmutableArray<LocalSymbol> locals, BoundMultipleLocalDeclarations? declarationsOpt, BoundExpression? expressionOpt, BoundStatement body,
BoundAwaitableInfo
? awaitOpt, MethodArgumentInfo? patternDisposeInfoOpt)
8935
return VisitAwaitableInfo((
BoundAwaitableInfo
)node, arg);
9355
public virtual R VisitAwaitableInfo(
BoundAwaitableInfo
node, A arg) => this.DefaultVisit(node, arg);
9591
public virtual BoundNode? VisitAwaitableInfo(
BoundAwaitableInfo
node) => this.DefaultVisit(node);
9984
public override BoundNode? VisitAwaitableInfo(
BoundAwaitableInfo
node)
11115
public override BoundNode? VisitAwaitableInfo(
BoundAwaitableInfo
node)
11124
BoundAwaitableInfo
awaitableInfo = (
BoundAwaitableInfo
)this.Visit(node.AwaitableInfo);
11313
BoundAwaitableInfo
? awaitOpt = (
BoundAwaitableInfo
?)this.Visit(node.AwaitOpt);
11395
BoundAwaitableInfo
? awaitOpt = (
BoundAwaitableInfo
?)this.Visit(node.AwaitOpt);
11410
BoundAwaitableInfo
? awaitOpt = (
BoundAwaitableInfo
?)this.Visit(node.AwaitOpt);
12951
public override BoundNode? VisitAwaitableInfo(
BoundAwaitableInfo
node)
12963
BoundAwaitableInfo
awaitableInfo = (
BoundAwaitableInfo
)this.Visit(node.AwaitableInfo);
13438
BoundAwaitableInfo
? awaitOpt = (
BoundAwaitableInfo
?)this.Visit(node.AwaitOpt);
13449
BoundAwaitableInfo
? awaitOpt = (
BoundAwaitableInfo
?)this.Visit(node.AwaitOpt);
15438
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)