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);
57 references to BoundAwaitableInfo
Microsoft.CodeAnalysis.CSharp (57)
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)
39
public readonly
BoundAwaitableInfo
? DisposeAwaitableInfo;
60
BoundAwaitableInfo
? disposeAwaitableInfo,
109
public
BoundAwaitableInfo
? DisposeAwaitableInfo;
Binder\ForEachLoopBinder.cs (1)
233
BoundAwaitableInfo
awaitInfo = null;
Binder\RefSafetyAnalysis.cs (1)
899
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)
267
public override BoundNode VisitAwaitableInfo(
BoundAwaitableInfo
node)
FlowAnalysis\NullableWalker.cs (3)
10856
if (node.EnumeratorInfoOpt is { NeedsDisposal: true, DisposeAwaitableInfo:
BoundAwaitableInfo
awaitDisposalInfo })
11240
var
awaitableInfo = node.AwaitableInfo;
11908
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)
8933
return VisitAwaitableInfo((
BoundAwaitableInfo
)node, arg);
9353
public virtual R VisitAwaitableInfo(
BoundAwaitableInfo
node, A arg) => this.DefaultVisit(node, arg);
9589
public virtual BoundNode? VisitAwaitableInfo(
BoundAwaitableInfo
node) => this.DefaultVisit(node);
9982
public override BoundNode? VisitAwaitableInfo(
BoundAwaitableInfo
node)
11113
public override BoundNode? VisitAwaitableInfo(
BoundAwaitableInfo
node)
11122
BoundAwaitableInfo
awaitableInfo = (
BoundAwaitableInfo
)this.Visit(node.AwaitableInfo);
11311
BoundAwaitableInfo
? awaitOpt = (
BoundAwaitableInfo
?)this.Visit(node.AwaitOpt);
11393
BoundAwaitableInfo
? awaitOpt = (
BoundAwaitableInfo
?)this.Visit(node.AwaitOpt);
11408
BoundAwaitableInfo
? awaitOpt = (
BoundAwaitableInfo
?)this.Visit(node.AwaitOpt);
12949
public override BoundNode? VisitAwaitableInfo(
BoundAwaitableInfo
node)
12961
BoundAwaitableInfo
awaitableInfo = (
BoundAwaitableInfo
)this.Visit(node.AwaitableInfo);
13436
BoundAwaitableInfo
? awaitOpt = (
BoundAwaitableInfo
?)this.Visit(node.AwaitOpt);
13447
BoundAwaitableInfo
? awaitOpt = (
BoundAwaitableInfo
?)this.Visit(node.AwaitOpt);
15436
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;
477
private BoundStatement WrapWithAwait(SyntaxNode forEachSyntax, BoundExpression disposeCall,
BoundAwaitableInfo
disposeAwaitableInfoOpt)
Lowering\LocalRewriter\LocalRewriter_UsingStatement.cs (4)
67
BoundAwaitableInfo
? awaitOpt,
211
BoundAwaitableInfo
? awaitOpt,
285
BoundAwaitableInfo
? awaitOpt,
440
BoundAwaitableInfo
? awaitOpt,
Lowering\MethodToClassRewriter.cs (1)
455
public override BoundNode VisitAwaitableInfo(
BoundAwaitableInfo
node)