Binder\Binder_Statements.cs (13)
145result = new BoundBadStatement(node, ImmutableArray<BoundNode>.Empty, hasErrors: true);
519return new BoundBadStatement(node, ImmutableArray.Create<BoundNode>(expression), true);
534ImmutableArray<BoundNode> childNodes;
538childNodes = ImmutableArray.Create<BoundNode>(value);
542childNodes = ImmutableArray<BoundNode>.Empty;
2809return new BoundBadStatement(node, ImmutableArray<BoundNode>.Empty, hasErrors: true);
2820return new BoundBadStatement(node, ImmutableArray<BoundNode>.Empty, hasErrors: true);
3523public virtual BoundNode BindMethodBody(CSharpSyntaxNode syntax, BindingDiagnosticBag diagnostics)
3552private BoundNode BindSimpleProgram(CompilationUnitSyntax compilationUnit, BindingDiagnosticBag diagnostics)
3557private BoundNode BindSimpleProgramCompilationUnit(CompilationUnitSyntax compilationUnit, BindingDiagnosticBag diagnostics)
3581private BoundNode BindPrimaryConstructorBody(TypeDeclarationSyntax typeDecl, BindingDiagnosticBag diagnostics)
3616private BoundNode BindConstructorBody(ConstructorDeclarationSyntax constructor, BindingDiagnosticBag diagnostics)
3926private BoundNode BindMethodBody(CSharpSyntaxNode declaration, BlockSyntax blockBody, ArrowExpressionClauseSyntax expressionBody, BindingDiagnosticBag diagnostics)
BoundTree\Expression.cs (60)
29ImmutableArray<BoundNode> IBoundInvalidNode.InvalidNodeChildren => CSharpOperationFactory.CreateInvalidChildrenFromArgumentsExpression(receiverOpt: null, Arguments, InitializerExpressionOpt);
34ImmutableArray<BoundNode> IBoundInvalidNode.InvalidNodeChildren => StaticCast<BoundNode>.From(Arguments);
39ImmutableArray<BoundNode> IBoundInvalidNode.InvalidNodeChildren => CSharpOperationFactory.CreateInvalidChildrenFromArgumentsExpression(ImplicitReceiverOpt, Arguments);
44protected override ImmutableArray<BoundNode?> Children => ImmutableArray.Create<BoundNode?>(this.Left, this.Right);
49protected override ImmutableArray<BoundNode?> Children => StaticCast<BoundNode?>.From(this.ChildBoundNodes);
51ImmutableArray<BoundNode> IBoundInvalidNode.InvalidNodeChildren => StaticCast<BoundNode>.From(this.ChildBoundNodes);
56ImmutableArray<BoundNode> IBoundInvalidNode.InvalidNodeChildren => CSharpOperationFactory.CreateInvalidChildrenFromArgumentsExpression(ReceiverOpt, Arguments);
61ImmutableArray<BoundNode> IBoundInvalidNode.InvalidNodeChildren => CSharpOperationFactory.CreateInvalidChildrenFromArgumentsExpression(ReceiverOpt, Arguments);
66protected override ImmutableArray<BoundNode?> Children => StaticCast<BoundNode?>.From(this.Arguments.Insert(0, this.Receiver));
71protected override ImmutableArray<BoundNode?> Children => StaticCast<BoundNode?>.From(this.Arguments);
76protected override ImmutableArray<BoundNode?> Children => StaticCast<BoundNode?>.From(this.ConstructorArguments.AddRange(StaticCast<BoundExpression>.From(this.NamedArguments)));
81protected override ImmutableArray<BoundNode?> Children => ImmutableArray.Create<BoundNode?>(this.Value);
86protected override ImmutableArray<BoundNode?> Children => StaticCast<BoundNode?>.From(this.Arguments);
91protected override ImmutableArray<BoundNode?> Children => ImmutableArray.Create<BoundNode?>(this.Argument);
96protected override ImmutableArray<BoundNode?> Children => ImmutableArray.Create<BoundNode?>(this.Expression, this.Index);
101protected override ImmutableArray<BoundNode?> Children => ImmutableArray.Create<BoundNode?>(this.Operand);
106protected override ImmutableArray<BoundNode?> Children => ImmutableArray.Create<BoundNode?>(this.Receiver);
111protected override ImmutableArray<BoundNode?> Children => ImmutableArray.Create<BoundNode?>(this.Operand);
116protected override ImmutableArray<BoundNode?> Children => ImmutableArray.Create<BoundNode?>(this.Operand);
121protected override ImmutableArray<BoundNode?> Children => StaticCast<BoundNode?>.From(this.Arguments.Insert(0, this.Expression));
126protected override ImmutableArray<BoundNode?> Children => ImmutableArray.Create<BoundNode?>(this.Expression);
139protected override ImmutableArray<BoundNode?> Children => StaticCast<BoundNode?>.From(GetChildInitializers(this.InitializerOpt).Insert(0, this.Count));
144protected override ImmutableArray<BoundNode?> Children => StaticCast<BoundNode?>.From(GetChildInitializers(this.InitializerOpt).Insert(0, this.Count));
149protected override ImmutableArray<BoundNode?> Children => StaticCast<BoundNode?>.From(this.Arguments.AddRange(BoundObjectCreationExpression.GetChildInitializers(this.InitializerExpressionOpt)));
154protected override ImmutableArray<BoundNode?> Children => ImmutableArray.Create<BoundNode?>(this.Expression);
159protected override ImmutableArray<BoundNode?> Children => ImmutableArray.Create<BoundNode?>(this.ReceiverOpt);
164protected override ImmutableArray<BoundNode?> Children => StaticCast<BoundNode?>.From(this.SideEffects.Add(this.Value));
169protected override ImmutableArray<BoundNode?> Children =>
170(this.Kind == BoundKind.StatementList || this.Kind == BoundKind.Scope) ? StaticCast<BoundNode?>.From(this.Statements) : ImmutableArray<BoundNode?>.Empty;
175protected override ImmutableArray<BoundNode?> Children => ImmutableArray.Create<BoundNode?>(this.Expression);
180protected override ImmutableArray<BoundNode?> Children => ImmutableArray.Create<BoundNode?>(this.Receiver, Argument);
185ImmutableArray<BoundNode> IBoundInvalidNode.InvalidNodeChildren => CSharpOperationFactory.CreateInvalidChildrenFromArgumentsExpression(receiverOpt: this.InvokedExpression, Arguments);
186protected override ImmutableArray<BoundNode?> Children => StaticCast<BoundNode?>.From(((IBoundInvalidNode)this).InvalidNodeChildren);
Compilation\CSharpSemanticModel.cs (20)
722BoundNode boundNode = GetSpeculativelyBoundExpression(position, expression, bindingOption, out binder, out crefSymbols); //calls CheckAndAdjustPosition
752BoundNode boundNode = GetSpeculativelyBoundAttribute(position, attribute, out binder); //calls CheckAndAdjustPosition
1052BoundNode boundNode = GetSpeculativelyBoundExpression(position, expression, bindingOption, out _, out crefSymbols); //calls CheckAndAdjustPosition
1199BoundNode boundNode = GetSpeculativelyBoundExpression(position, nameSyntax, bindingOption, out binder, out crefSymbols); //calls CheckAndAdjustPosition
1868BoundNode lowestBoundNode,
1869BoundNode highestBoundNode,
1870BoundNode boundNodeForSyntacticParent,
2016BoundNode lowestBoundNode,
2017BoundNode highestBoundNode,
2018BoundNode boundNodeForSyntacticParent)
2127conversion = BoundNode.GetConversion(initializer.ElementPointerConversion, initializer.ElementPointerPlaceholder);
2274BoundNode lowestBoundNode,
2275BoundNode boundNodeForSyntacticParent,
2296BoundNode lowestBoundNode,
2388internal virtual BoundNode Bind(Binder binder, CSharpSyntaxNode node, BindingDiagnosticBag diagnostics)
3343BoundNode boundNodeForSyntacticParent,
3963BoundNode boundNodeForSyntacticParent,
4014BoundNode lowestBoundNode,
4234BoundNode boundNodeForSyntacticParent,
4380BoundNode boundNodeForSyntacticParent,
Compilation\MemberSemanticModel.cs (61)
32private readonly Dictionary<SyntaxNode, OneOrMany<BoundNode>> _guardedBoundNodeMap = new Dictionary<SyntaxNode, OneOrMany<BoundNode>>();
513internal virtual BoundNode GetBoundRoot()
521internal BoundNode GetUpperBoundNode(CSharpSyntaxNode node, bool promoteToBindable = false)
549internal BoundNode GetLowerBoundNode(CSharpSyntaxNode node)
566private static BoundNode GetLowerBoundNode(OneOrMany<BoundNode> boundNodes)
922var bound = GetLowerBoundNode(node);
993BoundNode.GetConversion(boundForEach.ElementConversion, boundForEach.ElementPlaceholder),
994BoundNode.GetConversion(enumeratorInfoOpt.CurrentConversion, enumeratorInfoOpt.CurrentPlaceholder));
1142var bound = this.GetLowerBoundNode(declaratorSyntax);
1187BoundNode highestBoundNode = GetBoundRoot();
1212BoundNode lowestBoundNode;
1213BoundNode highestBoundNode;
1214BoundNode boundParent;
1224BoundNode lowestBoundNode;
1225BoundNode highestBoundNode;
1226BoundNode boundParent;
1235BoundNode lowestBoundNode;
1236BoundNode highestBoundNode;
1237BoundNode boundParent;
1247BoundNode lowestBoundNode;
1248BoundNode highestBoundNode;
1249BoundNode boundParent;
1301private void GetBoundNodes(CSharpSyntaxNode node, out CSharpSyntaxNode bindableNode, out BoundNode lowestBoundNode, out BoundNode highestBoundNode, out BoundNode boundParent)
1432private OneOrMany<BoundNode> GuardedGetBoundNodesFromMap(CSharpSyntaxNode node)
1435OneOrMany<BoundNode> result;
1436return _guardedBoundNodeMap.TryGetValue(node, out result) ? result : OneOrMany<BoundNode>.Empty;
1442internal OneOrMany<BoundNode> TestOnlyTryGetBoundNodesFromMap(CSharpSyntaxNode node)
1444OneOrMany<BoundNode> result;
1445return _guardedBoundNodeMap.TryGetValue(node, out result) ? result : OneOrMany<BoundNode>.Empty;
1450private OneOrMany<BoundNode> GuardedAddBoundTreeAndGetBoundNodeFromMap(CSharpSyntaxNode syntax, BoundNode bound)
1469OneOrMany<BoundNode> result;
1470return _guardedBoundNodeMap.TryGetValue(syntax, out result) ? result : OneOrMany<BoundNode>.Empty;
1473protected void UnguardedAddBoundTreeForStandaloneSyntax(SyntaxNode syntax, BoundNode bound, NullableWalker.SnapshotManager manager = null, ImmutableDictionary<Symbol, Symbol> remappedSymbols = null)
1481protected void GuardedAddBoundTreeForStandaloneSyntax(SyntaxNode syntax, BoundNode bound, NullableWalker.SnapshotManager manager = null, ImmutableDictionary<Symbol, Symbol> remappedSymbols = null)
1624BoundNode boundInnerLambdaOrQuery = GetBoundLambdaOrQuery(innerLambdaOrQuery);
1628private BoundNode GetBoundLambdaOrQuery(CSharpSyntaxNode lambdaOrQuery)
1632OneOrMany<BoundNode> nodes;
1651BoundNode boundEnclosingLambdaOrQuery = null;
1692BoundNode boundOuterExpression = this.Bind(incrementalBinder, nodeToBind, BindingDiagnosticBag.Discarded);
1724BoundNode boundOuterExpression = this.Bind(incrementalBinder, lambdaOrQuery, BindingDiagnosticBag.Discarded);
1738private Binder GetEnclosingBinderInLambdaOrQuery(int position, CSharpSyntaxNode node, CSharpSyntaxNode innerLambdaOrQuery, ref BoundNode boundInnerLambdaOrQuery)
1963BoundNode boundRoot = bind(bindableRoot, out binder);
1985BoundNode bind(CSharpSyntaxNode root, out Binder binder)
2039protected abstract BoundNode RewriteNullableBoundNodesWithSnapshots(
2040BoundNode boundRoot,
2053protected abstract void AnalyzeBoundNodeNullability(BoundNode boundRoot, Binder binder, DiagnosticBag diagnostics, bool createSnapshots);
2067internal OneOrMany<BoundNode> GetBoundNodes(CSharpSyntaxNode node)
2091OneOrMany<BoundNode> results;
2114BoundNode boundStatement = this.Bind(incrementalBinder, nodeToBind, BindingDiagnosticBag.Discarded);
2143var boundNode = this.Bind(incrementalBinder, node, BindingDiagnosticBag.Discarded);
2158return OneOrMany<BoundNode>.Empty;
2430BoundNode boundNode = TryGetBoundNodeFromMap(node);
2465private BoundNode TryGetBoundNodeFromMap(CSharpSyntaxNode node)
2469OneOrMany<BoundNode> boundNodes = _semanticModel.GuardedGetBoundNodesFromMap(node);
2481public override BoundNode BindMethodBody(CSharpSyntaxNode node, BindingDiagnosticBag diagnostics)
2483BoundNode boundNode = TryGetBoundNodeFromMap(node);
FlowAnalysis\AbstractFlowPass.cs (196)
66protected readonly BoundNode methodMainNode;
172protected readonly BoundNode firstInRegion, lastInRegion;
185BoundNode node,
186BoundNode firstInRegion = null,
187BoundNode lastInRegion = null,
260private void EnterRegionIfNeeded(BoundNode node)
277private void LeaveRegionIfNeeded(BoundNode node)
341public override BoundNode Visit(BoundNode node)
346protected BoundNode VisitAlways(BoundNode node)
348BoundNode result = null;
362private BoundNode VisitWithStackGuard(BoundNode node)
395public readonly BoundNode Branch;
404public PendingBranch(BoundNode branch, TLocalState state, LabelSymbol label, bool isConditionalState = false, TLocalState stateWhenTrue = default, TLocalState stateWhenFalse = default)
763protected virtual void NoteBranch(PendingBranch pending, BoundNode gotoStmt, BoundStatement target)
896public override BoundNode DefaultVisit(BoundNode node)
903public override BoundNode VisitAttribute(BoundAttribute node)
909public override BoundNode VisitThrowExpression(BoundThrowExpression node)
916public override BoundNode VisitPassByCopy(BoundPassByCopy node)
922public override BoundNode VisitIsPatternExpression(BoundIsPatternExpression node)
1066public override BoundNode VisitConstantPattern(BoundConstantPattern node)
1072public override BoundNode VisitTupleLiteral(BoundTupleLiteral node)
1077public override BoundNode VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
1082private BoundNode VisitTupleExpression(BoundTupleExpression node)
1088public override BoundNode VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
1095public override BoundNode VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
1102public override BoundNode VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
1109public override BoundNode VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
1115public override BoundNode VisitDynamicInvocation(BoundDynamicInvocation node)
1123protected BoundNode? VisitInterpolatedStringBase(BoundInterpolatedStringBase node, InterpolatedStringHandlerData? data)
1154public override BoundNode VisitInterpolatedString(BoundInterpolatedString node)
1159public override BoundNode VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
1165public override BoundNode VisitStringInsert(BoundStringInsert node)
1181public override BoundNode VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node)
1186public override BoundNode VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node)
1191public override BoundNode VisitArgList(BoundArgList node)
1198public override BoundNode VisitArgListOperator(BoundArgListOperator node)
1205public override BoundNode VisitRefTypeOperator(BoundRefTypeOperator node)
1211public override BoundNode VisitMakeRefOperator(BoundMakeRefOperator node)
1220public override BoundNode VisitRefValueOperator(BoundRefValueOperator node)
1226public override BoundNode VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node)
1232public override BoundNode VisitLambda(BoundLambda node) => null;
1234public override BoundNode VisitLocal(BoundLocal node)
1240public override BoundNode VisitLocalDeclaration(BoundLocalDeclaration node)
1257public override BoundNode VisitBlock(BoundBlock node)
1271public override BoundNode VisitScope(BoundScope node)
1277public override BoundNode VisitExpressionStatement(BoundExpressionStatement node)
1283public override BoundNode VisitCall(BoundCall node)
1432public override BoundNode VisitIndexerAccess(BoundIndexerAccess node)
1445public override BoundNode VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node)
1458public override BoundNode VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
1517public override BoundNode VisitBadExpression(BoundBadExpression node)
1527public override BoundNode VisitBadStatement(BoundBadStatement node)
1529foreach (var child in node.ChildBoundNodes)
1544public override BoundNode VisitArrayInitialization(BoundArrayInitialization node)
1554public override BoundNode VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
1584public override BoundNode VisitTypeExpression(BoundTypeExpression node)
1589public override BoundNode VisitTypeOrValueExpression(BoundTypeOrValueExpression node)
1597public override BoundNode VisitLiteral(BoundLiteral node)
1603public override BoundNode VisitUtf8String(BoundUtf8String node)
1626public override BoundNode VisitLocalId(BoundLocalId node)
1631public override BoundNode VisitParameterId(BoundParameterId node)
1636public override BoundNode VisitMethodDefIndex(BoundMethodDefIndex node)
1641public override BoundNode VisitStateMachineInstanceId(BoundStateMachineInstanceId node)
1646public override BoundNode VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node)
1651public override BoundNode VisitModuleVersionId(BoundModuleVersionId node)
1656public override BoundNode VisitModuleVersionIdString(BoundModuleVersionIdString node)
1661public override BoundNode VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node)
1666public override BoundNode VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node)
1671public override BoundNode VisitSourceDocumentIndex(BoundSourceDocumentIndex node)
1676public override BoundNode VisitConversion(BoundConversion node)
1707public override BoundNode VisitIfStatement(BoundIfStatement node)
1726public override BoundNode VisitTryStatement(BoundTryStatement node)
1921public override BoundNode VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node)
1926public override BoundNode VisitReturnStatement(BoundReturnStatement node)
1928var result = VisitReturnStatementNoAdjust(node);
1934protected virtual BoundNode VisitReturnStatementNoAdjust(BoundReturnStatement node)
1947public override BoundNode VisitThisReference(BoundThisReference node)
1952public override BoundNode VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node)
1957public override BoundNode VisitHostObjectMemberReference(BoundHostObjectMemberReference node)
1962public override BoundNode VisitParameter(BoundParameter node)
1971public override BoundNode VisitObjectCreationExpression(BoundObjectCreationExpression node)
1978public override BoundNode VisitCollectionExpression(BoundCollectionExpression node)
1984public override BoundNode VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
1990private void VisitCollectionExpression(ImmutableArray<BoundNode> elements)
1992foreach (var element in elements)
2005public override BoundNode VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node)
2011public override BoundNode VisitNewT(BoundNewT node)
2017public override BoundNode VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
2042public override BoundNode VisitAssignmentOperator(BoundAssignmentOperator node)
2076public override BoundNode VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
2083public sealed override BoundNode VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node)
2089public override BoundNode VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
2134public override BoundNode VisitFieldAccess(BoundFieldAccess node)
2161public override BoundNode VisitFieldInfo(BoundFieldInfo node)
2166public override BoundNode VisitMethodInfo(BoundMethodInfo node)
2171public override BoundNode VisitPropertyAccess(BoundPropertyAccess node)
2201public override BoundNode VisitEventAccess(BoundEventAccess node)
2207public override BoundNode VisitRangeVariable(BoundRangeVariable node)
2212public override BoundNode VisitQueryClause(BoundQueryClause node)
2218private BoundNode VisitMultipleLocalDeclarationsBase(BoundMultipleLocalDeclarationsBase node)
2228public override BoundNode VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node)
2233public override BoundNode VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node)
2242public override BoundNode VisitWhileStatement(BoundWhileStatement node)
2257public override BoundNode VisitWithExpression(BoundWithExpression node)
2264public override BoundNode VisitArrayAccess(BoundArrayAccess node)
2275public override BoundNode VisitInlineArrayAccess(BoundInlineArrayAccess node)
2294public override BoundNode VisitBinaryOperator(BoundBinaryOperator node)
2313public override BoundNode VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node)
2664public override BoundNode VisitUnaryOperator(BoundUnaryOperator node)
2680public override BoundNode VisitRangeExpression(BoundRangeExpression node)
2695public override BoundNode VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
2701public override BoundNode VisitAwaitExpression(BoundAwaitExpression node)
2708public override BoundNode VisitIncrementOperator(BoundIncrementOperator node)
2732public override BoundNode VisitArrayCreation(BoundArrayCreation node)
2743public override BoundNode VisitForStatement(BoundForStatement node)
2776public override BoundNode VisitForEachStatement(BoundForEachStatement node)
2805public override BoundNode VisitAsOperator(BoundAsOperator node)
2811public override BoundNode VisitIsOperator(BoundIsOperator node)
2826public override BoundNode VisitMethodGroup(BoundMethodGroup node)
2839public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
3015public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
3023public override BoundNode VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node)
3042public override BoundNode VisitConditionalReceiver(BoundConditionalReceiver node)
3047public override BoundNode VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node)
3061public override BoundNode VisitSequence(BoundSequence node)
3076public override BoundNode VisitSequencePoint(BoundSequencePoint node)
3086public override BoundNode VisitSequencePointExpression(BoundSequencePointExpression node)
3092public override BoundNode VisitSequencePointWithSpan(BoundSequencePointWithSpan node)
3102public override BoundNode VisitStatementList(BoundStatementList node)
3107private BoundNode VisitStatementListWorker(BoundStatementList node)
3117public override BoundNode VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node)
3122public override BoundNode VisitUnboundLambda(UnboundLambda node)
3128public override BoundNode VisitBreakStatement(BoundBreakStatement node)
3136public override BoundNode VisitContinueStatement(BoundContinueStatement node)
3144public override BoundNode VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node)
3149public override BoundNode VisitConditionalOperator(BoundConditionalOperator node)
3156protected virtual BoundNode? VisitConditionalOperatorCore(
3220public override BoundNode VisitBaseReference(BoundBaseReference node)
3225public override BoundNode VisitDoStatement(BoundDoStatement node)
3239public override BoundNode VisitGotoStatement(BoundGotoStatement node)
3262public override BoundNode VisitLabelStatement(BoundLabelStatement node)
3268public override BoundNode VisitLabeledStatement(BoundLabeledStatement node)
3275public override BoundNode VisitLockStatement(BoundLockStatement node)
3282public override BoundNode VisitNoOpStatement(BoundNoOpStatement node)
3287public override BoundNode VisitNamespaceExpression(BoundNamespaceExpression node)
3292public override BoundNode VisitUsingStatement(BoundUsingStatement node)
3315public override BoundNode VisitFixedStatement(BoundFixedStatement node)
3322public override BoundNode VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
3328public override BoundNode VisitThrowStatement(BoundThrowStatement node)
3336public override BoundNode VisitYieldBreakStatement(BoundYieldBreakStatement node)
3344public override BoundNode VisitYieldReturnStatement(BoundYieldReturnStatement node)
3351public override BoundNode VisitDefaultLiteral(BoundDefaultLiteral node)
3356public override BoundNode VisitDefaultExpression(BoundDefaultExpression node)
3361public override BoundNode VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
3366public override BoundNode VisitTypeOfOperator(BoundTypeOfOperator node)
3372public override BoundNode VisitNameOfOperator(BoundNameOfOperator node)
3381public override BoundNode VisitAddressOfOperator(BoundAddressOfOperator node)
3401public override BoundNode VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
3407public override BoundNode VisitPointerElementAccess(BoundPointerElementAccess node)
3414public override BoundNode VisitSizeOfOperator(BoundSizeOfOperator node)
3419private BoundNode VisitStackAllocArrayCreationBase(BoundStackAllocArrayCreationBase node)
3426public override BoundNode VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
3431public override BoundNode VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
3436public override BoundNode VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
3444public override BoundNode VisitArrayLength(BoundArrayLength node)
3450public override BoundNode VisitConditionalGoto(BoundConditionalGoto node)
3468public override BoundNode VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
3473public override BoundNode VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
3478private BoundNode VisitObjectOrCollectionInitializerExpression(ImmutableArray<BoundExpression> initializers)
3488public override BoundNode VisitObjectInitializerMember(BoundObjectInitializerMember node)
3507public override BoundNode VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
3512public override BoundNode VisitCollectionElementInitializer(BoundCollectionElementInitializer node)
3535public override BoundNode VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
3541public override BoundNode VisitImplicitReceiver(BoundImplicitReceiver node)
3546public override BoundNode VisitFieldEqualsValue(BoundFieldEqualsValue node)
3552public override BoundNode VisitPropertyEqualsValue(BoundPropertyEqualsValue node)
3558public override BoundNode VisitParameterEqualsValue(BoundParameterEqualsValue node)
3564public override BoundNode VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node)
3569public override BoundNode VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node)
3574public override BoundNode VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
3579public sealed override BoundNode VisitOutVariablePendingInference(OutVariablePendingInference node)
3584public sealed override BoundNode VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node)
3589public override BoundNode VisitDiscardExpression(BoundDiscardExpression node)
3600public override BoundNode VisitConstructorMethodBody(BoundConstructorMethodBody node)
3607public override BoundNode VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node)
3613public override BoundNode VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
3646public override BoundNode VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node)
3652public override BoundNode VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
3659public override BoundNode VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node)
3684public override BoundNode VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node)
3689public override BoundNode VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node)
3694public override BoundNode VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node)
FlowAnalysis\DataFlowsInWalker.cs (8)
27private DataFlowsInWalker(CSharpCompilation compilation, Symbol member, BoundNode node, BoundNode firstInRegion, BoundNode lastInRegion,
33internal static HashSet<Symbol> Analyze(CSharpCompilation compilation, Symbol member, BoundNode node, BoundNode firstInRegion, BoundNode lastInRegion,
81BoundNode gotoStmt,
93public override BoundNode VisitRangeVariable(BoundRangeVariable node)
FlowAnalysis\DataFlowsOutWalker.cs (10)
27private DataFlowsOutWalker(CSharpCompilation compilation, Symbol member, BoundNode node, BoundNode firstInRegion, BoundNode lastInRegion, HashSet<Symbol> unassignedVariables, ImmutableArray<ISymbol> dataFlowsIn)
33internal static HashSet<Symbol> Analyze(CSharpCompilation compilation, Symbol member, BoundNode node, BoundNode firstInRegion, BoundNode lastInRegion, HashSet<Symbol> unassignedVariables, ImmutableArray<ISymbol> dataFlowsIn)
114private Symbol GetNodeSymbol(BoundNode node)
201protected override void AssignImpl(BoundNode node, BoundExpression value, bool isRef, bool written, bool read)
237private ParameterSymbol Param(BoundNode node)
247public override BoundNode VisitQueryClause(BoundQueryClause node)
FlowAnalysis\DefiniteAssignment.cs (52)
169BoundNode node,
194BoundNode node,
216BoundNode node,
217BoundNode firstInRegion,
218BoundNode lastInRegion,
235BoundNode node)
421var pendingBranch = pending.Branch;
544BoundNode node,
783private void NoteRead(BoundNode fieldOrEventAccess)
786BoundNode n = fieldOrEventAccess;
1508protected void Assign(BoundNode node, BoundExpression value, bool isRef = false, bool read = true)
1525protected virtual void AssignImpl(BoundNode node, BoundExpression value, bool isRef, bool written, bool read)
2078public override BoundNode? VisitBlock(BoundBlock node)
2163public override BoundNode VisitSwitchStatement(BoundSwitchStatement node)
2166var result = base.VisitSwitchStatement(node);
2178public override BoundNode VisitForStatement(BoundForStatement node)
2182var result = base.VisitForStatement(node);
2188public override BoundNode VisitDoStatement(BoundDoStatement node)
2191var result = base.VisitDoStatement(node);
2196public override BoundNode VisitWhileStatement(BoundWhileStatement node)
2199var result = base.VisitWhileStatement(node);
2207public override BoundNode VisitUsingStatement(BoundUsingStatement node)
2211var result = base.VisitUsingStatement(node);
2228public override BoundNode VisitFixedStatement(BoundFixedStatement node)
2234public override BoundNode VisitSequence(BoundSequence node)
2237var result = base.VisitSequence(node);
2306public override BoundNode VisitLocal(BoundLocal node)
2337public override BoundNode VisitLocalDeclaration(BoundLocalDeclaration node)
2348var result = base.VisitLocalDeclaration(node);
2356public override BoundNode VisitLocalId(BoundLocalId node)
2359public override BoundNode VisitParameterId(BoundParameterId node)
2362public override BoundNode VisitStateMachineInstanceId(BoundStateMachineInstanceId node)
2365public override BoundNode VisitMethodGroup(BoundMethodGroup node)
2377public override BoundNode VisitLambda(BoundLambda node)
2423public override BoundNode VisitThisReference(BoundThisReference node)
2430public override BoundNode VisitParameter(BoundParameter node)
2444public override BoundNode VisitAssignmentOperator(BoundAssignmentOperator node)
2451public override BoundNode VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
2458public override BoundNode VisitIncrementOperator(BoundIncrementOperator node)
2465public override BoundNode VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
2474public override BoundNode VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
2492public override BoundNode VisitAddressOfOperator(BoundAddressOfOperator node)
2626public override BoundNode VisitBaseReference(BoundBaseReference node)
2650public override BoundNode VisitFieldAccess(BoundFieldAccess node)
2652var result = base.VisitFieldAccess(node);
2676public override BoundNode VisitPropertyAccess(BoundPropertyAccess node)
2678var result = base.VisitPropertyAccess(node);
2699public override BoundNode VisitEventAccess(BoundEventAccess node)
2701var result = base.VisitEventAccess(node);
2730public override BoundNode VisitObjectInitializerMember(BoundObjectInitializerMember node)
2732var result = base.VisitObjectInitializerMember(node);
2742public override BoundNode VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
FlowAnalysis\EntryPointsWalker.cs (7)
23internal static IEnumerable<LabeledStatementSyntax> Analyze(CSharpCompilation compilation, Symbol member, BoundNode node, BoundNode firstInRegion, BoundNode lastInRegion, out bool? succeeded)
48private EntryPointsWalker(CSharpCompilation compilation, Symbol member, BoundNode node, BoundNode firstInRegion, BoundNode lastInRegion)
58protected override void NoteBranch(PendingBranch pending, BoundNode gotoStmt, BoundStatement targetStmt)
FlowAnalysis\NullableWalker.cs (199)
454BoundNode node,
1324BoundNode node,
1351BoundNode node,
1390internal static VariableState? GetAfterInitializersState(CSharpCompilation compilation, Symbol? symbol, BoundNode constructorBody)
1408internal static VariableState? GetAfterInitializersState(CSharpCompilation compilation, MethodSymbol method, BoundNode nodeToAnalyze, BoundNode? constructorBody, BindingDiagnosticBag diagnostics)
1446private static MethodSymbol? GetConstructorThisOrBaseSymbol(BoundNode? constructorBody)
1461BoundNode node,
1473internal static BoundNode AnalyzeAndRewrite(
1476BoundNode node,
1492BoundNode node,
1548internal static BoundNode AnalyzeAndRewriteSpeculation(
1550BoundNode node,
1595private static BoundNode Rewrite(ImmutableDictionary<BoundExpression, (NullabilityInfo, TypeSymbol?)> updatedNullabilities, SnapshotManager? snapshotManager, BoundNode node, ref ImmutableDictionary<Symbol, Symbol>? remappedSymbols)
1605var rewrittenNode = rewriter.Visit(node);
1629BoundNode node,
1707BoundNode node,
1812private void TakeIncrementalSnapshot(BoundNode? node)
1818private void SetUpdatedSymbol(BoundNode node, Symbol originalSymbol, Symbol updatedSymbol)
2136private void VisitAndUnsplitAll<T>(ImmutableArray<T> nodes) where T : BoundNode
2150private void VisitWithoutDiagnostics(BoundNode? node)
2806public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue equalsValue)
2841public sealed override BoundNode? VisitReturnStatement(BoundReturnStatement node)
2976public override BoundNode? VisitLocal(BoundLocal node)
3007public override BoundNode? VisitBlock(BoundBlock node)
3112public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
3300public override BoundNode? VisitDoStatement(BoundDoStatement node)
3306public override BoundNode? VisitWhileStatement(BoundWhileStatement node)
3312public override BoundNode? VisitWithExpression(BoundWithExpression withExpr)
3334public override BoundNode? VisitForStatement(BoundForStatement node)
3341public override BoundNode? VisitForEachStatement(BoundForEachStatement node)
3347public override BoundNode? VisitUsingStatement(BoundUsingStatement node)
3354public override BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node)
3360public override BoundNode? VisitFixedStatement(BoundFixedStatement node)
3366public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node)
3393public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node)
3542public override BoundNode? Visit(BoundNode? node)
3547private BoundNode VisitLValue(BoundNode node)
3566private BoundNode Visit(BoundNode? node, bool expressionIsRead)
3575var result = base.Visit(node);
3588public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node)
3594public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
3602public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
3605var result = base.VisitUnconvertedCollectionExpression(node);
3610public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node)
3620foreach (var element in node.Elements)
4368public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
4429public override BoundNode? VisitArrayCreation(BoundArrayCreation node)
4585BoundNode node,
4662public override BoundNode? VisitArrayAccess(BoundArrayAccess node)
4696public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node)
5428public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
5465public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
5748public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
5754protected override BoundNode? VisitConditionalOperatorCore(
6045public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node)
6056public override BoundNode? VisitCall(BoundCall node)
6559private static bool HasImplicitTypeArguments(BoundNode node)
6627BoundNode node,
6648BoundNode node,
6686BoundNode node,
6857BoundNode node,
7809var elementsBuilder = ArrayBuilder<BoundNode>.GetInstance(collectionExpressionVisitResults.Length);
8105public override BoundNode? VisitConversion(BoundConversion node)
8242public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node)
8248public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
8471public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
9424public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
9600public override BoundNode? VisitMethodGroup(BoundMethodGroup node)
9683public override BoundNode? VisitLambda(BoundLambda node)
9732public override BoundNode? VisitUnboundLambda(UnboundLambda node)
9742public override BoundNode? VisitThisReference(BoundThisReference node)
9755public override BoundNode? VisitParameter(BoundParameter node)
9765public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
9942public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
9947private BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node, TypeWithState? rightResultOpt)
10058var underlyingConversion = BoundNode.GetConversion(placeholderConversion, placeholder);
10099var underlyingConversion = BoundNode.GetConversion(placeholderConversion, placeholder);
10258public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node)
10300BoundNode.GetConversion(node.OperandConversion, node.OperandPlaceholder),
10330BoundNode.GetConversion(node.ResultConversion, node.ResultPlaceholder),
10358public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
10385BoundNode.GetConversion(node.LeftConversion, node.LeftPlaceholder),
10399BoundNode.GetConversion(node.FinalConversion, node.FinalPlaceholder),
10420public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
10437public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node)
10495public override BoundNode? VisitBaseReference(BoundBaseReference node)
10501public override BoundNode? VisitFieldAccess(BoundFieldAccess node)
10510public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
10531public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
10554public override BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node)
10568public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node)
10576public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node)
10582public override BoundNode? VisitEventAccess(BoundEventAccess node)
10939Conversion conversion = BoundNode.GetConversion(node.ElementConversion, node.ElementPlaceholder);
10975public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
10977var result = base.VisitFromEndIndexExpression(node);
10982public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node)
10988public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
10994public override BoundNode? VisitBadExpression(BoundBadExpression node)
11016public override BoundNode? VisitTypeExpression(BoundTypeExpression node)
11018var result = base.VisitTypeExpression(node);
11029public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node)
11032var result = base.VisitTypeOrValueExpression(node);
11037public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node)
11109public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
11111var result = base.VisitPointerIndirectionOperator(node);
11117public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node)
11119var result = base.VisitPointerElementAccess(node);
11125public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node)
11132public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node)
11134var result = base.VisitMakeRefOperator(node);
11139public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node)
11141var result = base.VisitRefValueOperator(node);
11237public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
11239var result = base.VisitAwaitExpression(node);
11268public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node)
11270var result = base.VisitTypeOfOperator(node);
11275public override BoundNode? VisitMethodInfo(BoundMethodInfo node)
11277var result = base.VisitMethodInfo(node);
11282public override BoundNode? VisitFieldInfo(BoundFieldInfo node)
11284var result = base.VisitFieldInfo(node);
11289public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node)
11292var result = base.VisitDefaultLiteral(node);
11297public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node)
11301var result = base.VisitDefaultExpression(node);
11317public override BoundNode? VisitIsOperator(BoundIsOperator node)
11351public override BoundNode? VisitAsOperator(BoundAsOperator node)
11359switch (BoundNode.GetConversion(node.OperandConversion, node.OperandPlaceholder).Kind)
11379public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node)
11381var result = base.VisitSizeOfOperator(node);
11387public override BoundNode? VisitArgList(BoundArgList node)
11389var result = base.VisitArgList(node);
11395public override BoundNode? VisitArgListOperator(BoundArgListOperator node)
11403public override BoundNode? VisitLiteral(BoundLiteral node)
11406var result = base.VisitLiteral(node);
11411public override BoundNode? VisitUtf8String(BoundUtf8String node)
11414var result = base.VisitUtf8String(node);
11419public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node)
11421var result = base.VisitPreviousSubmissionReference(node);
11427public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node)
11429var result = base.VisitHostObjectMemberReference(node);
11435public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node)
11437var result = base.VisitPseudoVariable(node);
11442public override BoundNode? VisitRangeExpression(BoundRangeExpression node)
11444var result = base.VisitRangeExpression(node);
11449public override BoundNode? VisitRangeVariable(BoundRangeVariable node)
11456public override BoundNode? VisitLabel(BoundLabel node)
11458var result = base.VisitLabel(node);
11463public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
11475public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node)
11495public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
11521public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
11527public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
11535public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
11543public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
11551public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node)
11553var result = base.VisitImplicitReceiver(node);
11558public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node)
11563public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
11569public override BoundNode? VisitNewT(BoundNewT node)
11575public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node)
11577var result = base.VisitArrayInitialization(node);
11587public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
11681public override BoundNode? VisitQueryClause(BoundQueryClause node)
11683var result = base.VisitQueryClause(node);
11688public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node)
11690var result = base.VisitNameOfOperator(node);
11695public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node)
11697var result = base.VisitNamespaceExpression(node);
11702public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
11705var result = base.VisitUnconvertedInterpolatedString(node);
11710public override BoundNode? VisitStringInsert(BoundStringInsert node)
11712var result = base.VisitStringInsert(node);
11723public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node)
11731public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node)
11737public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
11743public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
11748private BoundNode? VisitStackAllocArrayCreationBase(BoundStackAllocArrayCreationBase node)
11765public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node)
11773public override BoundNode? VisitThrowExpression(BoundThrowExpression node)
11780public override BoundNode? VisitThrowStatement(BoundThrowStatement node)
11803public override BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node)
11841public override BoundNode? VisitLockStatement(BoundLockStatement node)
11849public override BoundNode? VisitAttribute(BoundAttribute node)
11862public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node)
11869public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node)
11877public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node)
11885public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
11908public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node)
11915public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
12483private sealed class ExpressionAndSymbolEqualityComparer : IEqualityComparer<(BoundNode? expr, Symbol symbol)>
12489public bool Equals((BoundNode? expr, Symbol symbol) x, (BoundNode? expr, Symbol symbol) y)
12500public int GetHashCode((BoundNode? expr, Symbol symbol) obj)
FlowAnalysis\NullableWalker.SnapshotManager.cs (11)
31private readonly ImmutableDictionary<(BoundNode?, Symbol), Symbol> _updatedSymbolsMap;
35private SnapshotManager(ImmutableArray<SharedWalkerState> walkerSharedStates, ImmutableArray<(int position, Snapshot snapshot)> incrementalSnapshots, ImmutableDictionary<(BoundNode?, Symbol), Symbol> updatedSymbolsMap)
82internal bool TryGetUpdatedSymbol(BoundNode node, Symbol symbol, [NotNullWhen(true)] out Symbol? updatedSymbol)
104internal void VerifyNode(BoundNode node)
148private readonly ImmutableDictionary<(BoundNode?, Symbol), Symbol>.Builder _updatedSymbolMap = ImmutableDictionary.CreateBuilder<(BoundNode?, Symbol), Symbol>(ExpressionAndSymbolEqualityComparer.Instance, Symbols.SymbolEqualityComparer.ConsiderEverything);
208internal void TakeIncrementalSnapshot(BoundNode? node, LocalState currentState)
220internal void SetUpdatedSymbol(BoundNode node, Symbol originalSymbol, Symbol updatedSymbol)
228internal void RemoveSymbolIfPresent(BoundNode node, Symbol symbol)
233private static (BoundNode?, Symbol) GetKey(BoundNode node, Symbol symbol)
FlowAnalysis\ReadWriteWalker.cs (11)
22CSharpCompilation compilation, Symbol member, BoundNode node, BoundNode firstInRegion, BoundNode lastInRegion, HashSet<PrefixUnaryExpressionSyntax> unassignedVariableAddressOfSyntaxes,
70private ReadWriteWalker(CSharpCompilation compilation, Symbol member, BoundNode node, BoundNode firstInRegion, BoundNode lastInRegion,
231protected override void AssignImpl(BoundNode node, BoundExpression value, bool isRef, bool written, bool read)
278public override BoundNode VisitUnboundLambda(UnboundLambda node)
283public override BoundNode VisitRangeVariable(BoundRangeVariable node)
295private static ParameterSymbol GetRangeVariableUnderlyingParameter(BoundNode underlying)
314public override BoundNode VisitQueryClause(BoundQueryClause node)
Generated\BoundNodes.xml.Generated.cs (1126)
322public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFieldEqualsValue(this);
352public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertyEqualsValue(this);
382public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitParameterEqualsValue(this);
410public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitGlobalStatementInitializer(this);
483public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitValuePlaceholder(this);
513public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCapturedReceiverPlaceholder(this);
554public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeconstructValuePlaceholder(this);
589public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTupleOperandPlaceholder(this);
618public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAwaitableValuePlaceholder(this);
653public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDisposableValuePlaceholder(this);
691public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectOrCollectionValuePlaceholder(this);
726public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitIndexerValuePlaceholder(this);
764public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitIndexerReceiverPlaceholder(this);
799public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitListPatternReceiverPlaceholder(this);
834public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitListPatternIndexPlaceholder(this);
869public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSlicePatternReceiverPlaceholder(this);
904public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSlicePatternRangePlaceholder(this);
935public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDup(this);
963public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPassByCopy(this);
996public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBadExpression(this);
1012public BoundBadStatement(SyntaxNode syntax, ImmutableArray<BoundNode> childBoundNodes, bool hasErrors = false)
1021public ImmutableArray<BoundNode> ChildBoundNodes { get; }
1024public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBadStatement(this);
1026public BoundBadStatement Update(ImmutableArray<BoundNode> childBoundNodes)
1052public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitExtractedFinallyBlock(this);
1087public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeExpression(this);
1125public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeOrValueExpression(this);
1166public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNamespaceExpression(this);
1208public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnaryOperator(this);
1256public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIncrementOperator(this);
1288public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAddressOfOperator(this);
1317public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedAddressOfOperator(this);
1360public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFunctionPointerLoad(this);
1392public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPointerIndirectionOperator(this);
1429public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPointerElementAccess(this);
1466public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFunctionPointerInvocation(this);
1498public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRefTypeOperator(this);
1528public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMakeRefOperator(this);
1560public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRefValueOperator(this);
1592public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFromEndIndexExpression(this);
1625public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRangeExpression(this);
1678public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBinaryOperator(this);
1716public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTupleBinaryOperator(this);
1761public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUserDefinedConditionalLogicalOperator(this);
1808public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCompoundAssignmentOperator(this);
1842public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAssignmentOperator(this);
1877public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeconstructionAssignmentOperator(this);
1918public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNullCoalescingOperator(this);
1949public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNullCoalescingAssignmentOperator(this);
1988public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedConditionalOperator(this);
2032public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalOperator(this);
2065public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayAccess(this);
2094public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRefArrayAccess(this);
2124public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayLength(this);
2157public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAwaitableInfo(this);
2192public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAwaitExpression(this);
2245public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeOfOperator(this);
2277public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBlockInstrumentation(this);
2317public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMethodDefIndex(this);
2360public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocalId(this);
2403public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitParameterId(this);
2438public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStateMachineInstanceId(this);
2473public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMaximumMethodDefIndex(this);
2511public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInstrumentationPayloadRoot(this);
2546public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThrowIfModuleCancellationRequested(this);
2581public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitModuleCancellationTokenExpression(this);
2616public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitModuleVersionId(this);
2651public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitModuleVersionIdString(this);
2691public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSourceDocumentIndex(this);
2734public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMethodInfo(this);
2777public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFieldInfo(this);
2806public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDefaultLiteral(this);
2831public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDefaultExpression(this);
2866public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIsOperator(this);
2903public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAsOperator(this);
2935public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSizeOfOperator(this);
2979public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConversion(this);
3012public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitReadOnlySpanFromArray(this);
3047public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArgList(this);
3078public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArgListOperator(this);
3117public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFixedLocalCollectionInitializer(this);
3156public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequencePoint(this);
3183public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequencePointWithSpan(this);
3220public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSavePreviousSequencePoint(this);
3257public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRestorePreviousSequencePoint(this);
3288public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStepThroughSequencePoint(this);
3324public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBlock(this);
3353public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitScope(this);
3384public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStateMachineScope(this);
3420public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocalDeclaration(this);
3460public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMultipleLocalDeclarations(this);
3490public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUsingLocalDeclarations(this);
3522public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocalFunctionStatement(this);
3553public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNoOpStatement(this);
3582public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitReturnStatement(this);
3610public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitYieldReturnStatement(this);
3638public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitYieldBreakStatement(this);
3652public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThrowStatement(this);
3680public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitExpressionStatement(this);
3717public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBreakStatement(this);
3754public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitContinueStatement(this);
3799public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchStatement(this);
3835public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchDispatch(this);
3868public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIfStatement(this);
3948public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDoStatement(this);
3978public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitWhileStatement(this);
4020public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitForStatement(this);
4071public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitForEachStatement(this);
4102public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitForEachDeconstructStep(this);
4141public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUsingStatement(this);
4175public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFixedStatement(this);
4206public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLockStatement(this);
4243public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTryStatement(this);
4284public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCatchBlock(this);
4315public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLiteral(this);
4355public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUtf8String(this);
4390public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThisReference(this);
4425public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPreviousSubmissionReference(this);
4460public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitHostObjectMemberReference(this);
4489public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBaseReference(this);
4538public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocal(this);
4583public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPseudoVariable(this);
4616public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRangeVariable(this);
4656public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitParameter(this);
4693public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLabelStatement(this);
4725public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitGotoStatement(this);
4756public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLabeledStatement(this);
4793public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLabel(this);
4830public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStatementList(this);
4863public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalGoto(this);
4926public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchExpressionArm(this);
4954public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedSwitchExpression(this);
4988public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConvertedSwitchExpression(this);
5016public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDecisionDag(this);
5061public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitEvaluationDecisionDagNode(this);
5095public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTestDecisionDagNode(this);
5130public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitWhenDecisionDagNode(this);
5167public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLeafDecisionDagNode(this);
5213public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagTemp(this);
5242public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagTypeTest(this);
5270public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagNonNullTest(this);
5296public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagExplicitNullTest(this);
5325public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagValueTest(this);
5356public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagRelationalTest(this);
5397public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagDeconstructEvaluation(this);
5426public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagTypeEvaluation(this);
5455public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagFieldEvaluation(this);
5486public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagPropertyEvaluation(this);
5517public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagIndexEvaluation(this);
5564public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagIndexerEvaluation(this);
5613public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagSliceEvaluation(this);
5642public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagAssignmentEvaluation(this);
5674public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchSection(this);
5707public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchLabel(this);
5749public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequencePointExpression(this);
5785public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequence(this);
5821public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSpillSequence(this);
5860public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicMemberAccess(this);
5913public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicInvocation(this);
5946public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalAccess(this);
5987public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLoweredConditionalAccess(this);
6025public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalReceiver(this);
6058public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitComplexConditionalReceiver(this);
6099public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMethodGroup(this);
6127public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertyGroup(this);
6182public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCall(this);
6221public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitEventAssignmentOperator(this);
6266public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAttribute(this);
6304public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedObjectCreationExpression(this);
6376public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectCreationExpression(this);
6392protected BoundCollectionExpressionBase(BoundKind kind, SyntaxNode syntax, ImmutableArray<BoundNode> elements, TypeSymbol? type, bool hasErrors = false)
6401public ImmutableArray<BoundNode> Elements { get; }
6406public BoundUnconvertedCollectionExpression(SyntaxNode syntax, ImmutableArray<BoundNode> elements, bool hasErrors = false)
6417public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedCollectionExpression(this);
6419public BoundUnconvertedCollectionExpression Update(ImmutableArray<BoundNode> elements)
6433public BoundCollectionExpression(SyntaxNode syntax, CollectionExpressionTypeKind collectionTypeKind, BoundObjectOrCollectionValuePlaceholder? placeholder, BoundExpression? collectionCreation, MethodSymbol? collectionBuilderMethod, BoundValuePlaceholder? collectionBuilderInvocationPlaceholder, BoundExpression? collectionBuilderInvocationConversion, bool wasTargetTyped, BoundUnconvertedCollectionExpression unconvertedCollectionExpression, ImmutableArray<BoundNode> elements, TypeSymbol type, bool hasErrors = false)
6462public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionExpression(this);
6464public BoundCollectionExpression Update(CollectionExpressionTypeKind collectionTypeKind, BoundObjectOrCollectionValuePlaceholder? placeholder, BoundExpression? collectionCreation, MethodSymbol? collectionBuilderMethod, BoundValuePlaceholder? collectionBuilderInvocationPlaceholder, BoundExpression? collectionBuilderInvocationConversion, bool wasTargetTyped, BoundUnconvertedCollectionExpression unconvertedCollectionExpression, ImmutableArray<BoundNode> elements, TypeSymbol type)
6490public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionExpressionSpreadExpressionPlaceholder(this);
6530public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionExpressionSpreadElement(this);
6575public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTupleLiteral(this);
6605public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConvertedTupleLiteral(this);
6648public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicObjectCreationExpression(this);
6680public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNoPiaObjectCreationExpression(this);
6727public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectInitializerExpression(this);
6776public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectInitializerMember(this);
6821public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicObjectInitializerMember(this);
6849public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionInitializerExpression(this);
6894public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionElementInitializer(this);
6926public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicCollectionElementInitializer(this);
6961public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitReceiver(this);
6997public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAnonymousObjectCreationExpression(this);
7037public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAnonymousPropertyDeclaration(this);
7067public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNewT(this);
7103public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDelegateCreationExpression(this);
7135public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayCreation(this);
7166public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayInitialization(this);
7212public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStackAllocArrayCreation(this);
7241public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConvertedStackAllocExpression(this);
7281public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFieldAccess(this);
7321public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitHoistedFieldAccess(this);
7357public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertyAccess(this);
7393public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitEventAccess(this);
7444public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIndexerAccess(this);
7493public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitIndexerAccess(this);
7534public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInlineArrayAccess(this);
7574public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicIndexerAccess(this);
7614public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLambda(this);
7658public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnboundLambda(this);
7699public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitQueryClause(this);
7725public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeOrInstanceInitializers(this);
7758public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNameOfOperator(this);
7800public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedInterpolatedString(this);
7828public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedString(this);
7856public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedStringHandlerPlaceholder(this);
7894public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedStringArgumentPlaceholder(this);
7929public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStringInsert(this);
7971public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIsPatternExpression(this);
8032public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConstantPattern(this);
8068public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDiscardPattern(this);
8117public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeclarationPattern(this);
8154public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRecursivePattern(this);
8198public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitListPattern(this);
8237public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSlicePattern(this);
8273public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitITuplePattern(this);
8315public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPositionalSubpattern(this);
8345public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertySubpattern(this);
8377public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertySubpatternMember(this);
8409public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypePattern(this);
8444public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBinaryPattern(this);
8474public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNegatedPattern(this);
8509public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRelationalPattern(this);
8544public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDiscardExpression(this);
8572public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThrowExpression(this);
8615public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitOutVariablePendingInference(this);
8641public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeconstructionVariablePendingInference(this);
8676public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitOutDeconstructVarPendingInference(this);
8712public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNonConstructorMethodBody(this);
8742public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConstructorMethodBody(this);
8773public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitExpressionWithNullability(this);
8808public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitWithExpression(this);
8826internal R VisitInternal(BoundNode node, A arg)
9538public virtual BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node) => this.DefaultVisit(node);
9539public virtual BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node) => this.DefaultVisit(node);
9540public virtual BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node) => this.DefaultVisit(node);
9541public virtual BoundNode? VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node) => this.DefaultVisit(node);
9542public virtual BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node) => this.DefaultVisit(node);
9543public virtual BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node) => this.DefaultVisit(node);
9544public virtual BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node) => this.DefaultVisit(node);
9545public virtual BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node) => this.DefaultVisit(node);
9546public virtual BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node) => this.DefaultVisit(node);
9547public virtual BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node) => this.DefaultVisit(node);
9548public virtual BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node) => this.DefaultVisit(node);
9549public virtual BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node) => this.DefaultVisit(node);
9550public virtual BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node) => this.DefaultVisit(node);
9551public virtual BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node) => this.DefaultVisit(node);
9552public virtual BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node) => this.DefaultVisit(node);
9553public virtual BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node) => this.DefaultVisit(node);
9554public virtual BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node) => this.DefaultVisit(node);
9555public virtual BoundNode? VisitDup(BoundDup node) => this.DefaultVisit(node);
9556public virtual BoundNode? VisitPassByCopy(BoundPassByCopy node) => this.DefaultVisit(node);
9557public virtual BoundNode? VisitBadExpression(BoundBadExpression node) => this.DefaultVisit(node);
9558public virtual BoundNode? VisitBadStatement(BoundBadStatement node) => this.DefaultVisit(node);
9559public virtual BoundNode? VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node) => this.DefaultVisit(node);
9560public virtual BoundNode? VisitTypeExpression(BoundTypeExpression node) => this.DefaultVisit(node);
9561public virtual BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node) => this.DefaultVisit(node);
9562public virtual BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node) => this.DefaultVisit(node);
9563public virtual BoundNode? VisitUnaryOperator(BoundUnaryOperator node) => this.DefaultVisit(node);
9564public virtual BoundNode? VisitIncrementOperator(BoundIncrementOperator node) => this.DefaultVisit(node);
9565public virtual BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node) => this.DefaultVisit(node);
9566public virtual BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node) => this.DefaultVisit(node);
9567public virtual BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node) => this.DefaultVisit(node);
9568public virtual BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node) => this.DefaultVisit(node);
9569public virtual BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node) => this.DefaultVisit(node);
9570public virtual BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node) => this.DefaultVisit(node);
9571public virtual BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node) => this.DefaultVisit(node);
9572public virtual BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node) => this.DefaultVisit(node);
9573public virtual BoundNode? VisitRefValueOperator(BoundRefValueOperator node) => this.DefaultVisit(node);
9574public virtual BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node) => this.DefaultVisit(node);
9575public virtual BoundNode? VisitRangeExpression(BoundRangeExpression node) => this.DefaultVisit(node);
9576public virtual BoundNode? VisitBinaryOperator(BoundBinaryOperator node) => this.DefaultVisit(node);
9577public virtual BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node) => this.DefaultVisit(node);
9578public virtual BoundNode? VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node) => this.DefaultVisit(node);
9579public virtual BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node) => this.DefaultVisit(node);
9580public virtual BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node) => this.DefaultVisit(node);
9581public virtual BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node) => this.DefaultVisit(node);
9582public virtual BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node) => this.DefaultVisit(node);
9583public virtual BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node) => this.DefaultVisit(node);
9584public virtual BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node) => this.DefaultVisit(node);
9585public virtual BoundNode? VisitConditionalOperator(BoundConditionalOperator node) => this.DefaultVisit(node);
9586public virtual BoundNode? VisitArrayAccess(BoundArrayAccess node) => this.DefaultVisit(node);
9587public virtual BoundNode? VisitRefArrayAccess(BoundRefArrayAccess node) => this.DefaultVisit(node);
9588public virtual BoundNode? VisitArrayLength(BoundArrayLength node) => this.DefaultVisit(node);
9589public virtual BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node) => this.DefaultVisit(node);
9590public virtual BoundNode? VisitAwaitExpression(BoundAwaitExpression node) => this.DefaultVisit(node);
9591public virtual BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node) => this.DefaultVisit(node);
9592public virtual BoundNode? VisitBlockInstrumentation(BoundBlockInstrumentation node) => this.DefaultVisit(node);
9593public virtual BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node) => this.DefaultVisit(node);
9594public virtual BoundNode? VisitLocalId(BoundLocalId node) => this.DefaultVisit(node);
9595public virtual BoundNode? VisitParameterId(BoundParameterId node) => this.DefaultVisit(node);
9596public virtual BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node) => this.DefaultVisit(node);
9597public virtual BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node) => this.DefaultVisit(node);
9598public virtual BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node) => this.DefaultVisit(node);
9599public virtual BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node) => this.DefaultVisit(node);
9600public virtual BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node) => this.DefaultVisit(node);
9601public virtual BoundNode? VisitModuleVersionId(BoundModuleVersionId node) => this.DefaultVisit(node);
9602public virtual BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node) => this.DefaultVisit(node);
9603public virtual BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node) => this.DefaultVisit(node);
9604public virtual BoundNode? VisitMethodInfo(BoundMethodInfo node) => this.DefaultVisit(node);
9605public virtual BoundNode? VisitFieldInfo(BoundFieldInfo node) => this.DefaultVisit(node);
9606public virtual BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node) => this.DefaultVisit(node);
9607public virtual BoundNode? VisitDefaultExpression(BoundDefaultExpression node) => this.DefaultVisit(node);
9608public virtual BoundNode? VisitIsOperator(BoundIsOperator node) => this.DefaultVisit(node);
9609public virtual BoundNode? VisitAsOperator(BoundAsOperator node) => this.DefaultVisit(node);
9610public virtual BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node) => this.DefaultVisit(node);
9611public virtual BoundNode? VisitConversion(BoundConversion node) => this.DefaultVisit(node);
9612public virtual BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node) => this.DefaultVisit(node);
9613public virtual BoundNode? VisitArgList(BoundArgList node) => this.DefaultVisit(node);
9614public virtual BoundNode? VisitArgListOperator(BoundArgListOperator node) => this.DefaultVisit(node);
9615public virtual BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node) => this.DefaultVisit(node);
9616public virtual BoundNode? VisitSequencePoint(BoundSequencePoint node) => this.DefaultVisit(node);
9617public virtual BoundNode? VisitSequencePointWithSpan(BoundSequencePointWithSpan node) => this.DefaultVisit(node);
9618public virtual BoundNode? VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node) => this.DefaultVisit(node);
9619public virtual BoundNode? VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node) => this.DefaultVisit(node);
9620public virtual BoundNode? VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node) => this.DefaultVisit(node);
9621public virtual BoundNode? VisitBlock(BoundBlock node) => this.DefaultVisit(node);
9622public virtual BoundNode? VisitScope(BoundScope node) => this.DefaultVisit(node);
9623public virtual BoundNode? VisitStateMachineScope(BoundStateMachineScope node) => this.DefaultVisit(node);
9624public virtual BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node) => this.DefaultVisit(node);
9625public virtual BoundNode? VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node) => this.DefaultVisit(node);
9626public virtual BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node) => this.DefaultVisit(node);
9627public virtual BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node) => this.DefaultVisit(node);
9628public virtual BoundNode? VisitNoOpStatement(BoundNoOpStatement node) => this.DefaultVisit(node);
9629public virtual BoundNode? VisitReturnStatement(BoundReturnStatement node) => this.DefaultVisit(node);
9630public virtual BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node) => this.DefaultVisit(node);
9631public virtual BoundNode? VisitYieldBreakStatement(BoundYieldBreakStatement node) => this.DefaultVisit(node);
9632public virtual BoundNode? VisitThrowStatement(BoundThrowStatement node) => this.DefaultVisit(node);
9633public virtual BoundNode? VisitExpressionStatement(BoundExpressionStatement node) => this.DefaultVisit(node);
9634public virtual BoundNode? VisitBreakStatement(BoundBreakStatement node) => this.DefaultVisit(node);
9635public virtual BoundNode? VisitContinueStatement(BoundContinueStatement node) => this.DefaultVisit(node);
9636public virtual BoundNode? VisitSwitchStatement(BoundSwitchStatement node) => this.DefaultVisit(node);
9637public virtual BoundNode? VisitSwitchDispatch(BoundSwitchDispatch node) => this.DefaultVisit(node);
9638public virtual BoundNode? VisitIfStatement(BoundIfStatement node) => this.DefaultVisit(node);
9639public virtual BoundNode? VisitDoStatement(BoundDoStatement node) => this.DefaultVisit(node);
9640public virtual BoundNode? VisitWhileStatement(BoundWhileStatement node) => this.DefaultVisit(node);
9641public virtual BoundNode? VisitForStatement(BoundForStatement node) => this.DefaultVisit(node);
9642public virtual BoundNode? VisitForEachStatement(BoundForEachStatement node) => this.DefaultVisit(node);
9643public virtual BoundNode? VisitForEachDeconstructStep(BoundForEachDeconstructStep node) => this.DefaultVisit(node);
9644public virtual BoundNode? VisitUsingStatement(BoundUsingStatement node) => this.DefaultVisit(node);
9645public virtual BoundNode? VisitFixedStatement(BoundFixedStatement node) => this.DefaultVisit(node);
9646public virtual BoundNode? VisitLockStatement(BoundLockStatement node) => this.DefaultVisit(node);
9647public virtual BoundNode? VisitTryStatement(BoundTryStatement node) => this.DefaultVisit(node);
9648public virtual BoundNode? VisitCatchBlock(BoundCatchBlock node) => this.DefaultVisit(node);
9649public virtual BoundNode? VisitLiteral(BoundLiteral node) => this.DefaultVisit(node);
9650public virtual BoundNode? VisitUtf8String(BoundUtf8String node) => this.DefaultVisit(node);
9651public virtual BoundNode? VisitThisReference(BoundThisReference node) => this.DefaultVisit(node);
9652public virtual BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node) => this.DefaultVisit(node);
9653public virtual BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node) => this.DefaultVisit(node);
9654public virtual BoundNode? VisitBaseReference(BoundBaseReference node) => this.DefaultVisit(node);
9655public virtual BoundNode? VisitLocal(BoundLocal node) => this.DefaultVisit(node);
9656public virtual BoundNode? VisitPseudoVariable(BoundPseudoVariable node) => this.DefaultVisit(node);
9657public virtual BoundNode? VisitRangeVariable(BoundRangeVariable node) => this.DefaultVisit(node);
9658public virtual BoundNode? VisitParameter(BoundParameter node) => this.DefaultVisit(node);
9659public virtual BoundNode? VisitLabelStatement(BoundLabelStatement node) => this.DefaultVisit(node);
9660public virtual BoundNode? VisitGotoStatement(BoundGotoStatement node) => this.DefaultVisit(node);
9661public virtual BoundNode? VisitLabeledStatement(BoundLabeledStatement node) => this.DefaultVisit(node);
9662public virtual BoundNode? VisitLabel(BoundLabel node) => this.DefaultVisit(node);
9663public virtual BoundNode? VisitStatementList(BoundStatementList node) => this.DefaultVisit(node);
9664public virtual BoundNode? VisitConditionalGoto(BoundConditionalGoto node) => this.DefaultVisit(node);
9665public virtual BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node) => this.DefaultVisit(node);
9666public virtual BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node) => this.DefaultVisit(node);
9667public virtual BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node) => this.DefaultVisit(node);
9668public virtual BoundNode? VisitDecisionDag(BoundDecisionDag node) => this.DefaultVisit(node);
9669public virtual BoundNode? VisitEvaluationDecisionDagNode(BoundEvaluationDecisionDagNode node) => this.DefaultVisit(node);
9670public virtual BoundNode? VisitTestDecisionDagNode(BoundTestDecisionDagNode node) => this.DefaultVisit(node);
9671public virtual BoundNode? VisitWhenDecisionDagNode(BoundWhenDecisionDagNode node) => this.DefaultVisit(node);
9672public virtual BoundNode? VisitLeafDecisionDagNode(BoundLeafDecisionDagNode node) => this.DefaultVisit(node);
9673public virtual BoundNode? VisitDagTemp(BoundDagTemp node) => this.DefaultVisit(node);
9674public virtual BoundNode? VisitDagTypeTest(BoundDagTypeTest node) => this.DefaultVisit(node);
9675public virtual BoundNode? VisitDagNonNullTest(BoundDagNonNullTest node) => this.DefaultVisit(node);
9676public virtual BoundNode? VisitDagExplicitNullTest(BoundDagExplicitNullTest node) => this.DefaultVisit(node);
9677public virtual BoundNode? VisitDagValueTest(BoundDagValueTest node) => this.DefaultVisit(node);
9678public virtual BoundNode? VisitDagRelationalTest(BoundDagRelationalTest node) => this.DefaultVisit(node);
9679public virtual BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node) => this.DefaultVisit(node);
9680public virtual BoundNode? VisitDagTypeEvaluation(BoundDagTypeEvaluation node) => this.DefaultVisit(node);
9681public virtual BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node) => this.DefaultVisit(node);
9682public virtual BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node) => this.DefaultVisit(node);
9683public virtual BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node) => this.DefaultVisit(node);
9684public virtual BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node) => this.DefaultVisit(node);
9685public virtual BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node) => this.DefaultVisit(node);
9686public virtual BoundNode? VisitDagAssignmentEvaluation(BoundDagAssignmentEvaluation node) => this.DefaultVisit(node);
9687public virtual BoundNode? VisitSwitchSection(BoundSwitchSection node) => this.DefaultVisit(node);
9688public virtual BoundNode? VisitSwitchLabel(BoundSwitchLabel node) => this.DefaultVisit(node);
9689public virtual BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node) => this.DefaultVisit(node);
9690public virtual BoundNode? VisitSequence(BoundSequence node) => this.DefaultVisit(node);
9691public virtual BoundNode? VisitSpillSequence(BoundSpillSequence node) => this.DefaultVisit(node);
9692public virtual BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node) => this.DefaultVisit(node);
9693public virtual BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node) => this.DefaultVisit(node);
9694public virtual BoundNode? VisitConditionalAccess(BoundConditionalAccess node) => this.DefaultVisit(node);
9695public virtual BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node) => this.DefaultVisit(node);
9696public virtual BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node) => this.DefaultVisit(node);
9697public virtual BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node) => this.DefaultVisit(node);
9698public virtual BoundNode? VisitMethodGroup(BoundMethodGroup node) => this.DefaultVisit(node);
9699public virtual BoundNode? VisitPropertyGroup(BoundPropertyGroup node) => this.DefaultVisit(node);
9700public virtual BoundNode? VisitCall(BoundCall node) => this.DefaultVisit(node);
9701public virtual BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node) => this.DefaultVisit(node);
9702public virtual BoundNode? VisitAttribute(BoundAttribute node) => this.DefaultVisit(node);
9703public virtual BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node) => this.DefaultVisit(node);
9704public virtual BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node) => this.DefaultVisit(node);
9705public virtual BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node) => this.DefaultVisit(node);
9706public virtual BoundNode? VisitCollectionExpression(BoundCollectionExpression node) => this.DefaultVisit(node);
9707public virtual BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node) => this.DefaultVisit(node);
9708public virtual BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node) => this.DefaultVisit(node);
9709public virtual BoundNode? VisitTupleLiteral(BoundTupleLiteral node) => this.DefaultVisit(node);
9710public virtual BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node) => this.DefaultVisit(node);
9711public virtual BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node) => this.DefaultVisit(node);
9712public virtual BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node) => this.DefaultVisit(node);
9713public virtual BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node) => this.DefaultVisit(node);
9714public virtual BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node) => this.DefaultVisit(node);
9715public virtual BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node) => this.DefaultVisit(node);
9716public virtual BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node) => this.DefaultVisit(node);
9717public virtual BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node) => this.DefaultVisit(node);
9718public virtual BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node) => this.DefaultVisit(node);
9719public virtual BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node) => this.DefaultVisit(node);
9720public virtual BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node) => this.DefaultVisit(node);
9721public virtual BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node) => this.DefaultVisit(node);
9722public virtual BoundNode? VisitNewT(BoundNewT node) => this.DefaultVisit(node);
9723public virtual BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node) => this.DefaultVisit(node);
9724public virtual BoundNode? VisitArrayCreation(BoundArrayCreation node) => this.DefaultVisit(node);
9725public virtual BoundNode? VisitArrayInitialization(BoundArrayInitialization node) => this.DefaultVisit(node);
9726public virtual BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node) => this.DefaultVisit(node);
9727public virtual BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node) => this.DefaultVisit(node);
9728public virtual BoundNode? VisitFieldAccess(BoundFieldAccess node) => this.DefaultVisit(node);
9729public virtual BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node) => this.DefaultVisit(node);
9730public virtual BoundNode? VisitPropertyAccess(BoundPropertyAccess node) => this.DefaultVisit(node);
9731public virtual BoundNode? VisitEventAccess(BoundEventAccess node) => this.DefaultVisit(node);
9732public virtual BoundNode? VisitIndexerAccess(BoundIndexerAccess node) => this.DefaultVisit(node);
9733public virtual BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node) => this.DefaultVisit(node);
9734public virtual BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node) => this.DefaultVisit(node);
9735public virtual BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node) => this.DefaultVisit(node);
9736public virtual BoundNode? VisitLambda(BoundLambda node) => this.DefaultVisit(node);
9737public virtual BoundNode? VisitUnboundLambda(UnboundLambda node) => this.DefaultVisit(node);
9738public virtual BoundNode? VisitQueryClause(BoundQueryClause node) => this.DefaultVisit(node);
9739public virtual BoundNode? VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node) => this.DefaultVisit(node);
9740public virtual BoundNode? VisitNameOfOperator(BoundNameOfOperator node) => this.DefaultVisit(node);
9741public virtual BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node) => this.DefaultVisit(node);
9742public virtual BoundNode? VisitInterpolatedString(BoundInterpolatedString node) => this.DefaultVisit(node);
9743public virtual BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node) => this.DefaultVisit(node);
9744public virtual BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node) => this.DefaultVisit(node);
9745public virtual BoundNode? VisitStringInsert(BoundStringInsert node) => this.DefaultVisit(node);
9746public virtual BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node) => this.DefaultVisit(node);
9747public virtual BoundNode? VisitConstantPattern(BoundConstantPattern node) => this.DefaultVisit(node);
9748public virtual BoundNode? VisitDiscardPattern(BoundDiscardPattern node) => this.DefaultVisit(node);
9749public virtual BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node) => this.DefaultVisit(node);
9750public virtual BoundNode? VisitRecursivePattern(BoundRecursivePattern node) => this.DefaultVisit(node);
9751public virtual BoundNode? VisitListPattern(BoundListPattern node) => this.DefaultVisit(node);
9752public virtual BoundNode? VisitSlicePattern(BoundSlicePattern node) => this.DefaultVisit(node);
9753public virtual BoundNode? VisitITuplePattern(BoundITuplePattern node) => this.DefaultVisit(node);
9754public virtual BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node) => this.DefaultVisit(node);
9755public virtual BoundNode? VisitPropertySubpattern(BoundPropertySubpattern node) => this.DefaultVisit(node);
9756public virtual BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node) => this.DefaultVisit(node);
9757public virtual BoundNode? VisitTypePattern(BoundTypePattern node) => this.DefaultVisit(node);
9758public virtual BoundNode? VisitBinaryPattern(BoundBinaryPattern node) => this.DefaultVisit(node);
9759public virtual BoundNode? VisitNegatedPattern(BoundNegatedPattern node) => this.DefaultVisit(node);
9760public virtual BoundNode? VisitRelationalPattern(BoundRelationalPattern node) => this.DefaultVisit(node);
9761public virtual BoundNode? VisitDiscardExpression(BoundDiscardExpression node) => this.DefaultVisit(node);
9762public virtual BoundNode? VisitThrowExpression(BoundThrowExpression node) => this.DefaultVisit(node);
9763public virtual BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node) => this.DefaultVisit(node);
9764public virtual BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node) => this.DefaultVisit(node);
9765public virtual BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node) => this.DefaultVisit(node);
9766public virtual BoundNode? VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node) => this.DefaultVisit(node);
9767public virtual BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node) => this.DefaultVisit(node);
9768public virtual BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node) => this.DefaultVisit(node);
9769public virtual BoundNode? VisitWithExpression(BoundWithExpression node) => this.DefaultVisit(node);
9774public override BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node)
9779public override BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node)
9784public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node)
9789public override BoundNode? VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node)
9794public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node) => null;
9795public override BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node)
9800public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node) => null;
9801public override BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node) => null;
9802public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node) => null;
9803public override BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node) => null;
9804public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node) => null;
9805public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node) => null;
9806public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node) => null;
9807public override BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node) => null;
9808public override BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node) => null;
9809public override BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node) => null;
9810public override BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node) => null;
9811public override BoundNode? VisitDup(BoundDup node) => null;
9812public override BoundNode? VisitPassByCopy(BoundPassByCopy node)
9817public override BoundNode? VisitBadExpression(BoundBadExpression node)
9822public override BoundNode? VisitBadStatement(BoundBadStatement node)
9827public override BoundNode? VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node)
9832public override BoundNode? VisitTypeExpression(BoundTypeExpression node)
9838public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node) => null;
9839public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node) => null;
9840public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node)
9845public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node)
9850public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node)
9855public override BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node)
9860public override BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node) => null;
9861public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
9866public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node)
9872public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
9878public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node)
9883public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node)
9888public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node)
9893public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
9898public override BoundNode? VisitRangeExpression(BoundRangeExpression node)
9904public override BoundNode? VisitBinaryOperator(BoundBinaryOperator node)
9910public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
9916public override BoundNode? VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node)
9922public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
9928public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
9934public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
9940public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
9946public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
9952public override BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node)
9959public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node)
9966public override BoundNode? VisitArrayAccess(BoundArrayAccess node)
9972public override BoundNode? VisitRefArrayAccess(BoundRefArrayAccess node)
9977public override BoundNode? VisitArrayLength(BoundArrayLength node)
9982public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node)
9988public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
9994public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node)
9999public override BoundNode? VisitBlockInstrumentation(BoundBlockInstrumentation node)
10005public override BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node) => null;
10006public override BoundNode? VisitLocalId(BoundLocalId node) => null;
10007public override BoundNode? VisitParameterId(BoundParameterId node) => null;
10008public override BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node) => null;
10009public override BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node) => null;
10010public override BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node) => null;
10011public override BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node) => null;
10012public override BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node) => null;
10013public override BoundNode? VisitModuleVersionId(BoundModuleVersionId node) => null;
10014public override BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node) => null;
10015public override BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node) => null;
10016public override BoundNode? VisitMethodInfo(BoundMethodInfo node) => null;
10017public override BoundNode? VisitFieldInfo(BoundFieldInfo node) => null;
10018public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node) => null;
10019public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node) => null;
10020public override BoundNode? VisitIsOperator(BoundIsOperator node)
10026public override BoundNode? VisitAsOperator(BoundAsOperator node)
10032public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node)
10037public override BoundNode? VisitConversion(BoundConversion node)
10042public override BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node)
10047public override BoundNode? VisitArgList(BoundArgList node) => null;
10048public override BoundNode? VisitArgListOperator(BoundArgListOperator node)
10053public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
10058public override BoundNode? VisitSequencePoint(BoundSequencePoint node)
10063public override BoundNode? VisitSequencePointWithSpan(BoundSequencePointWithSpan node)
10068public override BoundNode? VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node) => null;
10069public override BoundNode? VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node) => null;
10070public override BoundNode? VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node) => null;
10071public override BoundNode? VisitBlock(BoundBlock node)
10077public override BoundNode? VisitScope(BoundScope node)
10082public override BoundNode? VisitStateMachineScope(BoundStateMachineScope node)
10087public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node)
10094public override BoundNode? VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node)
10099public override BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node)
10105public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
10111public override BoundNode? VisitNoOpStatement(BoundNoOpStatement node) => null;
10112public override BoundNode? VisitReturnStatement(BoundReturnStatement node)
10117public override BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node)
10122public override BoundNode? VisitYieldBreakStatement(BoundYieldBreakStatement node) => null;
10123public override BoundNode? VisitThrowStatement(BoundThrowStatement node)
10128public override BoundNode? VisitExpressionStatement(BoundExpressionStatement node)
10133public override BoundNode? VisitBreakStatement(BoundBreakStatement node) => null;
10134public override BoundNode? VisitContinueStatement(BoundContinueStatement node) => null;
10135public override BoundNode? VisitSwitchStatement(BoundSwitchStatement node)
10142public override BoundNode? VisitSwitchDispatch(BoundSwitchDispatch node)
10147public override BoundNode? VisitIfStatement(BoundIfStatement node)
10154public override BoundNode? VisitDoStatement(BoundDoStatement node)
10160public override BoundNode? VisitWhileStatement(BoundWhileStatement node)
10166public override BoundNode? VisitForStatement(BoundForStatement node)
10174public override BoundNode? VisitForEachStatement(BoundForEachStatement node)
10184public override BoundNode? VisitForEachDeconstructStep(BoundForEachDeconstructStep node)
10190public override BoundNode? VisitUsingStatement(BoundUsingStatement node)
10198public override BoundNode? VisitFixedStatement(BoundFixedStatement node)
10204public override BoundNode? VisitLockStatement(BoundLockStatement node)
10210public override BoundNode? VisitTryStatement(BoundTryStatement node)
10217public override BoundNode? VisitCatchBlock(BoundCatchBlock node)
10225public override BoundNode? VisitLiteral(BoundLiteral node) => null;
10226public override BoundNode? VisitUtf8String(BoundUtf8String node) => null;
10227public override BoundNode? VisitThisReference(BoundThisReference node) => null;
10228public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node) => null;
10229public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node) => null;
10230public override BoundNode? VisitBaseReference(BoundBaseReference node) => null;
10231public override BoundNode? VisitLocal(BoundLocal node) => null;
10232public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node) => null;
10233public override BoundNode? VisitRangeVariable(BoundRangeVariable node)
10238public override BoundNode? VisitParameter(BoundParameter node) => null;
10239public override BoundNode? VisitLabelStatement(BoundLabelStatement node) => null;
10240public override BoundNode? VisitGotoStatement(BoundGotoStatement node)
10246public override BoundNode? VisitLabeledStatement(BoundLabeledStatement node)
10251public override BoundNode? VisitLabel(BoundLabel node) => null;
10252public override BoundNode? VisitStatementList(BoundStatementList node)
10257public override BoundNode? VisitConditionalGoto(BoundConditionalGoto node)
10262public override BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node)
10269public override BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node)
10275public override BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node)
10281public override BoundNode? VisitDecisionDag(BoundDecisionDag node)
10286public override BoundNode? VisitEvaluationDecisionDagNode(BoundEvaluationDecisionDagNode node)
10292public override BoundNode? VisitTestDecisionDagNode(BoundTestDecisionDagNode node)
10299public override BoundNode? VisitWhenDecisionDagNode(BoundWhenDecisionDagNode node)
10306public override BoundNode? VisitLeafDecisionDagNode(BoundLeafDecisionDagNode node) => null;
10307public override BoundNode? VisitDagTemp(BoundDagTemp node)
10312public override BoundNode? VisitDagTypeTest(BoundDagTypeTest node)
10317public override BoundNode? VisitDagNonNullTest(BoundDagNonNullTest node)
10322public override BoundNode? VisitDagExplicitNullTest(BoundDagExplicitNullTest node)
10327public override BoundNode? VisitDagValueTest(BoundDagValueTest node)
10332public override BoundNode? VisitDagRelationalTest(BoundDagRelationalTest node)
10337public override BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node)
10342public override BoundNode? VisitDagTypeEvaluation(BoundDagTypeEvaluation node)
10347public override BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node)
10352public override BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node)
10357public override BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node)
10362public override BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node)
10371public override BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node)
10380public override BoundNode? VisitDagAssignmentEvaluation(BoundDagAssignmentEvaluation node)
10386public override BoundNode? VisitSwitchSection(BoundSwitchSection node)
10392public override BoundNode? VisitSwitchLabel(BoundSwitchLabel node)
10398public override BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node)
10403public override BoundNode? VisitSequence(BoundSequence node)
10409public override BoundNode? VisitSpillSequence(BoundSpillSequence node)
10415public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
10420public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node)
10426public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
10432public override BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node)
10439public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node) => null;
10440public override BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node)
10446public override BoundNode? VisitMethodGroup(BoundMethodGroup node)
10451public override BoundNode? VisitPropertyGroup(BoundPropertyGroup node)
10456public override BoundNode? VisitCall(BoundCall node)
10462public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
10468public override BoundNode? VisitAttribute(BoundAttribute node)
10474public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
10479public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node)
10485public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
10490public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node)
10495public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node) => null;
10496public override BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node)
10501public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node)
10506public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
10511public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
10517public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
10522public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
10528public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node)
10533public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node) => null;
10534public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
10540public override BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node)
10546public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
10552public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node) => null;
10553public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
10559public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node) => null;
10560public override BoundNode? VisitNewT(BoundNewT node)
10565public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
10570public override BoundNode? VisitArrayCreation(BoundArrayCreation node)
10576public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node)
10581public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
10587public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
10593public override BoundNode? VisitFieldAccess(BoundFieldAccess node)
10598public override BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node) => null;
10599public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
10604public override BoundNode? VisitEventAccess(BoundEventAccess node)
10609public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
10615public override BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node)
10621public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node)
10627public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
10633public override BoundNode? VisitLambda(BoundLambda node)
10638public override BoundNode? VisitUnboundLambda(UnboundLambda node) => null;
10639public override BoundNode? VisitQueryClause(BoundQueryClause node)
10644public override BoundNode? VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node)
10649public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node)
10654public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
10659public override BoundNode? VisitInterpolatedString(BoundInterpolatedString node)
10664public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node) => null;
10665public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node) => null;
10666public override BoundNode? VisitStringInsert(BoundStringInsert node)
10673public override BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node)
10679public override BoundNode? VisitConstantPattern(BoundConstantPattern node)
10684public override BoundNode? VisitDiscardPattern(BoundDiscardPattern node) => null;
10685public override BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node)
10691public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node)
10699public override BoundNode? VisitListPattern(BoundListPattern node)
10705public override BoundNode? VisitSlicePattern(BoundSlicePattern node)
10710public override BoundNode? VisitITuplePattern(BoundITuplePattern node)
10715public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node)
10720public override BoundNode? VisitPropertySubpattern(BoundPropertySubpattern node)
10726public override BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node)
10731public override BoundNode? VisitTypePattern(BoundTypePattern node)
10736public override BoundNode? VisitBinaryPattern(BoundBinaryPattern node)
10742public override BoundNode? VisitNegatedPattern(BoundNegatedPattern node)
10747public override BoundNode? VisitRelationalPattern(BoundRelationalPattern node)
10752public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node) => null;
10753public override BoundNode? VisitThrowExpression(BoundThrowExpression node)
10758public override BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node)
10763public override BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node)
10768public override BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node) => null;
10769public override BoundNode? VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node)
10775public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node)
10782public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node)
10787public override BoundNode? VisitWithExpression(BoundWithExpression node)
10797public override BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node)
10802public override BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node)
10807public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node)
10812public override BoundNode? VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node)
10817public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node)
10822public override BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node)
10828public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node)
10833public override BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node)
10838public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
10843public override BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node)
10848public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node)
10853public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node)
10858public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node)
10863public override BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node)
10868public override BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node)
10873public override BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node)
10878public override BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node)
10883public override BoundNode? VisitDup(BoundDup node)
10888public override BoundNode? VisitPassByCopy(BoundPassByCopy node)
10894public override BoundNode? VisitBadExpression(BoundBadExpression node)
10900public override BoundNode? VisitBadStatement(BoundBadStatement node)
10902ImmutableArray<BoundNode> childBoundNodes = this.VisitList(node.ChildBoundNodes);
10905public override BoundNode? VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node)
10910public override BoundNode? VisitTypeExpression(BoundTypeExpression node)
10917public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node)
10922public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node)
10927public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node)
10934public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node)
10945public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node)
10951public override BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node)
10957public override BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node)
10963public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
10969public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node)
10976public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
10983public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node)
10989public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node)
10995public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node)
11001public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
11007public override BoundNode? VisitRangeExpression(BoundRangeExpression node)
11014public override BoundNode? VisitBinaryOperator(BoundBinaryOperator node)
11021public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
11028public override BoundNode? VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node)
11036public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
11047public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
11054public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
11061public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
11070public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
11077public override BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node)
11085public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node)
11094public override BoundNode? VisitArrayAccess(BoundArrayAccess node)
11101public override BoundNode? VisitRefArrayAccess(BoundRefArrayAccess node)
11107public override BoundNode? VisitArrayLength(BoundArrayLength node)
11113public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node)
11119public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
11126public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node)
11132public override BoundNode? VisitBlockInstrumentation(BoundBlockInstrumentation node)
11138public override BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node)
11143public override BoundNode? VisitLocalId(BoundLocalId node)
11148public override BoundNode? VisitParameterId(BoundParameterId node)
11153public override BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node)
11158public override BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node)
11163public override BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node)
11168public override BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node)
11173public override BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node)
11178public override BoundNode? VisitModuleVersionId(BoundModuleVersionId node)
11183public override BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node)
11188public override BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node)
11193public override BoundNode? VisitMethodInfo(BoundMethodInfo node)
11198public override BoundNode? VisitFieldInfo(BoundFieldInfo node)
11203public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node)
11208public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node)
11214public override BoundNode? VisitIsOperator(BoundIsOperator node)
11221public override BoundNode? VisitAsOperator(BoundAsOperator node)
11230public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node)
11236public override BoundNode? VisitConversion(BoundConversion node)
11242public override BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node)
11248public override BoundNode? VisitArgList(BoundArgList node)
11253public override BoundNode? VisitArgListOperator(BoundArgListOperator node)
11259public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
11268public override BoundNode? VisitSequencePoint(BoundSequencePoint node)
11273public override BoundNode? VisitSequencePointWithSpan(BoundSequencePointWithSpan node)
11278public override BoundNode? VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node) => node;
11279public override BoundNode? VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node) => node;
11280public override BoundNode? VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node) => node;
11281public override BoundNode? VisitBlock(BoundBlock node)
11287public override BoundNode? VisitScope(BoundScope node)
11292public override BoundNode? VisitStateMachineScope(BoundStateMachineScope node)
11297public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node)
11304public override BoundNode? VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node)
11309public override BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node)
11315public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
11321public override BoundNode? VisitNoOpStatement(BoundNoOpStatement node) => node;
11322public override BoundNode? VisitReturnStatement(BoundReturnStatement node)
11327public override BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node)
11332public override BoundNode? VisitYieldBreakStatement(BoundYieldBreakStatement node) => node;
11333public override BoundNode? VisitThrowStatement(BoundThrowStatement node)
11338public override BoundNode? VisitExpressionStatement(BoundExpressionStatement node)
11343public override BoundNode? VisitBreakStatement(BoundBreakStatement node) => node;
11344public override BoundNode? VisitContinueStatement(BoundContinueStatement node) => node;
11345public override BoundNode? VisitSwitchStatement(BoundSwitchStatement node)
11353public override BoundNode? VisitSwitchDispatch(BoundSwitchDispatch node)
11358public override BoundNode? VisitIfStatement(BoundIfStatement node)
11365public override BoundNode? VisitDoStatement(BoundDoStatement node)
11371public override BoundNode? VisitWhileStatement(BoundWhileStatement node)
11377public override BoundNode? VisitForStatement(BoundForStatement node)
11385public override BoundNode? VisitForEachStatement(BoundForEachStatement node)
11397public override BoundNode? VisitForEachDeconstructStep(BoundForEachDeconstructStep node)
11403public override BoundNode? VisitUsingStatement(BoundUsingStatement node)
11411public override BoundNode? VisitFixedStatement(BoundFixedStatement node)
11417public override BoundNode? VisitLockStatement(BoundLockStatement node)
11423public override BoundNode? VisitTryStatement(BoundTryStatement node)
11430public override BoundNode? VisitCatchBlock(BoundCatchBlock node)
11439public override BoundNode? VisitLiteral(BoundLiteral node)
11444public override BoundNode? VisitUtf8String(BoundUtf8String node)
11449public override BoundNode? VisitThisReference(BoundThisReference node)
11454public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node)
11459public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node)
11464public override BoundNode? VisitBaseReference(BoundBaseReference node)
11469public override BoundNode? VisitLocal(BoundLocal node)
11474public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node)
11479public override BoundNode? VisitRangeVariable(BoundRangeVariable node)
11485public override BoundNode? VisitParameter(BoundParameter node)
11490public override BoundNode? VisitLabelStatement(BoundLabelStatement node) => node;
11491public override BoundNode? VisitGotoStatement(BoundGotoStatement node)
11497public override BoundNode? VisitLabeledStatement(BoundLabeledStatement node)
11502public override BoundNode? VisitLabel(BoundLabel node)
11507public override BoundNode? VisitStatementList(BoundStatementList node)
11512public override BoundNode? VisitConditionalGoto(BoundConditionalGoto node)
11517public override BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node)
11524public override BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node)
11532public override BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node)
11541public override BoundNode? VisitDecisionDag(BoundDecisionDag node)
11546public override BoundNode? VisitEvaluationDecisionDagNode(BoundEvaluationDecisionDagNode node)
11552public override BoundNode? VisitTestDecisionDagNode(BoundTestDecisionDagNode node)
11559public override BoundNode? VisitWhenDecisionDagNode(BoundWhenDecisionDagNode node)
11566public override BoundNode? VisitLeafDecisionDagNode(BoundLeafDecisionDagNode node) => node;
11567public override BoundNode? VisitDagTemp(BoundDagTemp node)
11573public override BoundNode? VisitDagTypeTest(BoundDagTypeTest node)
11579public override BoundNode? VisitDagNonNullTest(BoundDagNonNullTest node)
11584public override BoundNode? VisitDagExplicitNullTest(BoundDagExplicitNullTest node)
11589public override BoundNode? VisitDagValueTest(BoundDagValueTest node)
11594public override BoundNode? VisitDagRelationalTest(BoundDagRelationalTest node)
11599public override BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node)
11604public override BoundNode? VisitDagTypeEvaluation(BoundDagTypeEvaluation node)
11610public override BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node)
11615public override BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node)
11620public override BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node)
11625public override BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node)
11635public override BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node)
11645public override BoundNode? VisitDagAssignmentEvaluation(BoundDagAssignmentEvaluation node)
11651public override BoundNode? VisitSwitchSection(BoundSwitchSection node)
11657public override BoundNode? VisitSwitchLabel(BoundSwitchLabel node)
11663public override BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node)
11669public override BoundNode? VisitSequence(BoundSequence node)
11676public override BoundNode? VisitSpillSequence(BoundSpillSequence node)
11683public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
11689public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node)
11696public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
11703public override BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node)
11711public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node)
11716public override BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node)
11723public override BoundNode? VisitMethodGroup(BoundMethodGroup node)
11729public override BoundNode? VisitPropertyGroup(BoundPropertyGroup node)
11735public override BoundNode? VisitCall(BoundCall node)
11742public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
11749public override BoundNode? VisitAttribute(BoundAttribute node)
11756public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
11762public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node)
11769public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
11771ImmutableArray<BoundNode> elements = this.VisitList(node.Elements);
11775public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node)
11782ImmutableArray<BoundNode> elements = this.VisitList(node.Elements);
11786public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node)
11791public override BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node)
11801public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node)
11807public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
11814public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
11821public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
11827public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
11834public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node)
11841public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
11847public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
11854public override BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node)
11861public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
11868public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node)
11873public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
11880public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node)
11885public override BoundNode? VisitNewT(BoundNewT node)
11891public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
11897public override BoundNode? VisitArrayCreation(BoundArrayCreation node)
11904public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node)
11910public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
11918public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
11926public override BoundNode? VisitFieldAccess(BoundFieldAccess node)
11932public override BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node)
11937public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
11943public override BoundNode? VisitEventAccess(BoundEventAccess node)
11949public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
11956public override BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node)
11967public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node)
11974public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
11981public override BoundNode? VisitLambda(BoundLambda node)
11988public override BoundNode? VisitUnboundLambda(UnboundLambda node)
11993public override BoundNode? VisitQueryClause(BoundQueryClause node)
12002public override BoundNode? VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node)
12007public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node)
12013public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
12019public override BoundNode? VisitInterpolatedString(BoundInterpolatedString node)
12025public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node)
12030public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node)
12035public override BoundNode? VisitStringInsert(BoundStringInsert node)
12043public override BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node)
12051public override BoundNode? VisitConstantPattern(BoundConstantPattern node)
12058public override BoundNode? VisitDiscardPattern(BoundDiscardPattern node)
12064public override BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node)
12072public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node)
12082public override BoundNode? VisitListPattern(BoundListPattern node)
12094public override BoundNode? VisitSlicePattern(BoundSlicePattern node)
12104public override BoundNode? VisitITuplePattern(BoundITuplePattern node)
12111public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node)
12116public override BoundNode? VisitPropertySubpattern(BoundPropertySubpattern node)
12122public override BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node)
12128public override BoundNode? VisitTypePattern(BoundTypePattern node)
12135public override BoundNode? VisitBinaryPattern(BoundBinaryPattern node)
12143public override BoundNode? VisitNegatedPattern(BoundNegatedPattern node)
12150public override BoundNode? VisitRelationalPattern(BoundRelationalPattern node)
12157public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node)
12162public override BoundNode? VisitThrowExpression(BoundThrowExpression node)
12168public override BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node)
12174public override BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node)
12180public override BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node)
12185public override BoundNode? VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node)
12191public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node)
12198public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node)
12204public override BoundNode? VisitWithExpression(BoundWithExpression node)
12226public override BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node)
12234public override BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node)
12242public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node)
12250public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node)
12262public override BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node)
12279public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node)
12296public override BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node)
12308public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
12320public override BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node)
12332public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node)
12344public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node)
12356public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node)
12368public override BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node)
12380public override BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node)
12392public override BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node)
12404public override BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node)
12416public override BoundNode? VisitDup(BoundDup node)
12428public override BoundNode? VisitPassByCopy(BoundPassByCopy node)
12445public override BoundNode? VisitBadExpression(BoundBadExpression node)
12463public override BoundNode? VisitTypeExpression(BoundTypeExpression node)
12481public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node)
12493public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node)
12505public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node)
12525public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node)
12549public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node)
12566public override BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node)
12583public override BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node)
12601public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
12618public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node)
12636public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
12654public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node)
12672public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node)
12689public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node)
12706public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
12724public override BoundNode? VisitRangeExpression(BoundRangeExpression node)
12743public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
12761public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
12784public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
12802public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
12820public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
12840public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
12858public override BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node)
12877public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node)
12897public override BoundNode? VisitArrayAccess(BoundArrayAccess node)
12915public override BoundNode? VisitRefArrayAccess(BoundRefArrayAccess node)
12932public override BoundNode? VisitArrayLength(BoundArrayLength node)
12949public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node)
12958public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
12976public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node)
12994public override BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node)
13011public override BoundNode? VisitLocalId(BoundLocalId node)
13029public override BoundNode? VisitParameterId(BoundParameterId node)
13047public override BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node)
13059public override BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node)
13071public override BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node)
13083public override BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node)
13095public override BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node)
13107public override BoundNode? VisitModuleVersionId(BoundModuleVersionId node)
13119public override BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node)
13131public override BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node)
13143public override BoundNode? VisitMethodInfo(BoundMethodInfo node)
13161public override BoundNode? VisitFieldInfo(BoundFieldInfo node)
13179public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node)
13191public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node)
13208public override BoundNode? VisitIsOperator(BoundIsOperator node)
13226public override BoundNode? VisitAsOperator(BoundAsOperator node)
13246public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node)
13263public override BoundNode? VisitConversion(BoundConversion node)
13281public override BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node)
13299public override BoundNode? VisitArgList(BoundArgList node)
13311public override BoundNode? VisitArgListOperator(BoundArgListOperator node)
13328public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
13349public override BoundNode? VisitBlock(BoundBlock node)
13358public override BoundNode? VisitScope(BoundScope node)
13365public override BoundNode? VisitStateMachineScope(BoundStateMachineScope node)
13372public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node)
13381public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
13389public override BoundNode? VisitSwitchStatement(BoundSwitchStatement node)
13400public override BoundNode? VisitDoStatement(BoundDoStatement node)
13408public override BoundNode? VisitWhileStatement(BoundWhileStatement node)
13416public override BoundNode? VisitForStatement(BoundForStatement node)
13427public override BoundNode? VisitForEachStatement(BoundForEachStatement node)
13441public override BoundNode? VisitUsingStatement(BoundUsingStatement node)
13451public override BoundNode? VisitFixedStatement(BoundFixedStatement node)
13459public override BoundNode? VisitCatchBlock(BoundCatchBlock node)
13470public override BoundNode? VisitLiteral(BoundLiteral node)
13482public override BoundNode? VisitUtf8String(BoundUtf8String node)
13494public override BoundNode? VisitThisReference(BoundThisReference node)
13506public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node)
13518public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node)
13530public override BoundNode? VisitBaseReference(BoundBaseReference node)
13542public override BoundNode? VisitLocal(BoundLocal node)
13559public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node)
13576public override BoundNode? VisitRangeVariable(BoundRangeVariable node)
13594public override BoundNode? VisitParameter(BoundParameter node)
13611public override BoundNode? VisitLabel(BoundLabel node)
13623public override BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node)
13632public override BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node)
13651public override BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node)
13671public override BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node)
13678public override BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node)
13685public override BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node)
13692public override BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node)
13699public override BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node)
13710public override BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node)
13721public override BoundNode? VisitSwitchSection(BoundSwitchSection node)
13729public override BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node)
13746public override BoundNode? VisitSequence(BoundSequence node)
13765public override BoundNode? VisitSpillSequence(BoundSpillSequence node)
13784public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
13801public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node)
13820public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
13838public override BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node)
13858public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node)
13870public override BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node)
13888public override BoundNode? VisitMethodGroup(BoundMethodGroup node)
13908public override BoundNode? VisitPropertyGroup(BoundPropertyGroup node)
13926public override BoundNode? VisitCall(BoundCall node)
13946public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
13965public override BoundNode? VisitAttribute(BoundAttribute node)
13984public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
14001public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node)
14021public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
14023ImmutableArray<BoundNode> elements = this.VisitList(node.Elements);
14038public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node)
14046ImmutableArray<BoundNode> elements = this.VisitList(node.Elements);
14061public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node)
14073public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node)
14090public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
14108public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
14127public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
14144public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
14162public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node)
14181public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
14198public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
14216public override BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node)
14235public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
14254public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node)
14266public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
14285public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node)
14302public override BoundNode? VisitNewT(BoundNewT node)
14319public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
14337public override BoundNode? VisitArrayCreation(BoundArrayCreation node)
14355public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node)
14372public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
14391public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
14410public override BoundNode? VisitFieldAccess(BoundFieldAccess node)
14428public override BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node)
14445public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
14463public override BoundNode? VisitEventAccess(BoundEventAccess node)
14481public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
14501public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node)
14519public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
14538public override BoundNode? VisitLambda(BoundLambda node)
14557public override BoundNode? VisitUnboundLambda(UnboundLambda node)
14574public override BoundNode? VisitQueryClause(BoundQueryClause node)
14595public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node)
14612public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
14629public override BoundNode? VisitInterpolatedString(BoundInterpolatedString node)
14646public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node)
14658public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node)
14670public override BoundNode? VisitStringInsert(BoundStringInsert node)
14689public override BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node)
14708public override BoundNode? VisitConstantPattern(BoundConstantPattern node)
14716public override BoundNode? VisitDiscardPattern(BoundDiscardPattern node)
14723public override BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node)
14733public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node)
14746public override BoundNode? VisitListPattern(BoundListPattern node)
14760public override BoundNode? VisitSlicePattern(BoundSlicePattern node)
14771public override BoundNode? VisitITuplePattern(BoundITuplePattern node)
14781public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node)
14788public override BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node)
14795public override BoundNode? VisitTypePattern(BoundTypePattern node)
14803public override BoundNode? VisitBinaryPattern(BoundBinaryPattern node)
14812public override BoundNode? VisitNegatedPattern(BoundNegatedPattern node)
14820public override BoundNode? VisitRelationalPattern(BoundRelationalPattern node)
14828public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node)
14840public override BoundNode? VisitThrowExpression(BoundThrowExpression node)
14857public override BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node)
14875public override BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node)
14893public override BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node)
14910public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node)
14919public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node)
14936public override BoundNode? VisitWithExpression(BoundWithExpression node)
14961public static TreeDumperNode MakeTree(BoundNode node) => (new BoundTreeDumperNodeProducer()).Visit(node, null);
Lowering\ClosureConversion\ClosureConversion.cs (33)
88private readonly Dictionary<BoundNode, Analysis.ClosureEnvironment> _frames = new Dictionary<BoundNode, Analysis.ClosureEnvironment>();
332static partial void CheckLocalsDefined(BoundNode node);
365var scopeBoundNode = scope.BoundNode;
635private static void InsertAndFreePrologue<T>(ArrayBuilder<BoundStatement> result, ArrayBuilder<T> prologue) where T : BoundNode
645result.Add(new BoundExpressionStatement(node.Syntax, (BoundExpression)(BoundNode)node));
659private BoundNode IntroduceFrame(BoundNode node, Analysis.ClosureEnvironment env, Func<ArrayBuilder<BoundExpression>, ArrayBuilder<LocalSymbol>, BoundNode> F)
725var result = F(prologue, addedLocals);
819protected override BoundNode VisitUnhoistedParameter(BoundParameter node)
830public override BoundNode VisitThisReference(BoundThisReference node)
847public override BoundNode VisitBaseReference(BoundBaseReference node)
854public override BoundNode VisitMethodDefIndex(BoundMethodDefIndex node)
1069public override BoundNode VisitCall(BoundCall node)
1103var visited = base.VisitCall(node);
1150public override BoundNode VisitBlock(BoundBlock node)
1198public override BoundNode VisitScope(BoundScope node)
1214public override BoundNode VisitCatchBlock(BoundCatchBlock node)
1230private BoundNode RewriteCatch(BoundCatchBlock node, ArrayBuilder<BoundExpression> prologue, ArrayBuilder<LocalSymbol> newLocals)
1288public override BoundNode VisitSequence(BoundSequence node)
1304public override BoundNode VisitStatementList(BoundStatementList node)
1329public override BoundNode VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
1362public override BoundNode VisitFunctionPointerLoad(BoundFunctionPointerLoad node)
1389public override BoundNode VisitConversion(BoundConversion conversion)
1419public override BoundNode VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
1424BoundNode lambdaScope;
1516out BoundNode lambdaScope,
1533BoundNode tmpScope = null;
1618private BoundNode RewriteLambdaConversion(BoundLambda node)
1628var result0 = wasInExpressionLambda ? node : ExpressionLambdaRewriter.RewriteLambda(node, CompilationState, TypeMap, RecursionDepth, Diagnostics);
1636BoundNode lambdaScope;
1788public override BoundNode VisitLambda(BoundLambda node)
Operations\CSharpOperationFactory.cs (23)
28public IOperation? Create(BoundNode? boundNode)
337public ImmutableArray<TOperation> CreateFromArray<TBoundNode, TOperation>(ImmutableArray<TBoundNode> boundNodes) where TBoundNode : BoundNode where TOperation : class, IOperation
382foreach (BoundNode? childNode in children)
396internal ImmutableArray<IVariableDeclaratorOperation> CreateVariableDeclarator(BoundNode declaration, SyntaxNode declarationSyntax)
450ImmutableArray<IOperation> children = CreateFromArray<BoundNode, IOperation>(((IBoundInvalidNode)boundCall).InvalidNodeChildren);
480ImmutableArray<IOperation> children = CreateFromArray<BoundNode, IOperation>(((IBoundInvalidNode)boundFunctionPointerInvocation).InvalidNodeChildren);
520internal ImmutableArray<IOperation> CreateIgnoredDimensions(BoundNode declaration)
595internal IOperation? CreateBoundPropertyReferenceInstance(BoundNode boundNode)
633var children = CreateFromArray<BoundNode, IOperation>(((IBoundInvalidNode)boundIndexerAccess).InvalidNodeChildren);
713var children = CreateFromArray<BoundNode, IOperation>(((IBoundInvalidNode)boundObjectCreationExpression).InvalidNodeChildren);
759internal IOperation CreateBoundDynamicInvocationExpressionReceiver(BoundNode receiver)
889var children = CreateFromArray<BoundNode, IOperation>(((IBoundInvalidNode)boundObjectInitializerMember).InvalidNodeChildren);
935var children = CreateFromArray<BoundNode, IOperation>(((IBoundInvalidNode)boundCollectionElementInitializer).InvalidNodeChildren);
1143Conversion conversion = BoundNode.GetConversion(boundAsOperator.OperandConversion, boundAsOperator.OperandPlaceholder);
1258private IOperation CreateBoundCollectionExpressionElement(BoundCollectionExpression expr, BoundNode element)
1274var elementConversion = BoundNode.GetConversion(iteratorItem, element.ElementPlaceholder);
1360Conversion inConversion = BoundNode.GetConversion(boundCompoundAssignmentOperator.LeftConversion, boundCompoundAssignmentOperator.LeftPlaceholder);
1361Conversion outConversion = BoundNode.GetConversion(boundCompoundAssignmentOperator.FinalConversion, boundCompoundAssignmentOperator.FinalPlaceholder);
1593Conversion valueConversion = BoundNode.GetConversion(boundNullCoalescingOperator.LeftConversion, boundNullCoalescingOperator.LeftPlaceholder);
1888BoundNode.GetConversion(enumeratorInfoOpt.CurrentConversion, enumeratorInfoOpt.CurrentPlaceholder),
1889BoundNode.GetConversion(boundForEachStatement.ElementConversion, boundForEachStatement.ElementPlaceholder),
2004IOperation resources = Create(boundUsingStatement.DeclarationsOpt ?? (BoundNode)boundUsingStatement.ExpressionOpt!);
2066var children = CreateFromArray<BoundNode, IOperation>(boundBadStatement.ChildBoundNodes);