Binder\Binder_Statements.cs (13)
146result = new BoundBadStatement(node, ImmutableArray<BoundNode>.Empty, hasErrors: true);
520return new BoundBadStatement(node, ImmutableArray.Create<BoundNode>(expression), true);
535ImmutableArray<BoundNode> childNodes;
539childNodes = ImmutableArray.Create<BoundNode>(value);
543childNodes = ImmutableArray<BoundNode>.Empty;
2921return new BoundBadStatement(node, ImmutableArray<BoundNode>.Empty, hasErrors: true);
2932return new BoundBadStatement(node, ImmutableArray<BoundNode>.Empty, hasErrors: true);
3637public virtual BoundNode BindMethodBody(CSharpSyntaxNode syntax, BindingDiagnosticBag diagnostics)
3666private BoundNode BindSimpleProgram(CompilationUnitSyntax compilationUnit, BindingDiagnosticBag diagnostics)
3671private BoundNode BindSimpleProgramCompilationUnit(CompilationUnitSyntax compilationUnit, BindingDiagnosticBag diagnostics)
3695private BoundNode BindPrimaryConstructorBody(TypeDeclarationSyntax typeDecl, BindingDiagnosticBag diagnostics)
3730private BoundNode BindConstructorBody(ConstructorDeclarationSyntax constructor, BindingDiagnosticBag diagnostics)
4037private 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,
4387BoundNode boundNodeForSyntacticParent,
Compilation\MemberSemanticModel.cs (60)
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;
2472private BoundNode TryGetBoundNodeFromMap(CSharpSyntaxNode node)
2476OneOrMany<BoundNode> boundNodes = _semanticModel.GuardedGetBoundNodesFromMap(node);
2488public override BoundNode BindMethodBody(CSharpSyntaxNode node, BindingDiagnosticBag diagnostics)
2490BoundNode boundNode = TryGetBoundNodeFromMap(node);
FlowAnalysis\AbstractFlowPass.cs (199)
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)
373protected override BoundNode VisitExpressionOrPatternWithoutStackGuard(BoundNode node)
394public readonly BoundNode Branch;
403public PendingBranch(BoundNode branch, TLocalState state, LabelSymbol label, bool isConditionalState = false, TLocalState stateWhenTrue = default, TLocalState stateWhenFalse = default)
762protected virtual void NoteBranch(PendingBranch pending, BoundNode gotoStmt, BoundStatement target)
895public override BoundNode DefaultVisit(BoundNode node)
902public override BoundNode VisitAttribute(BoundAttribute node)
908public override BoundNode VisitThrowExpression(BoundThrowExpression node)
915public override BoundNode VisitPassByCopy(BoundPassByCopy node)
921public override BoundNode VisitIsPatternExpression(BoundIsPatternExpression node)
1108public override BoundNode VisitConstantPattern(BoundConstantPattern node)
1114public override BoundNode VisitBinaryPattern(BoundBinaryPattern node)
1120public override BoundNode VisitTupleLiteral(BoundTupleLiteral node)
1125public override BoundNode VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
1130private BoundNode VisitTupleExpression(BoundTupleExpression node)
1136public override BoundNode VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
1143public override BoundNode VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
1150public override BoundNode VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
1157public override BoundNode VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
1163public override BoundNode VisitDynamicInvocation(BoundDynamicInvocation node)
1171protected BoundNode? VisitInterpolatedStringBase(BoundInterpolatedStringBase node, InterpolatedStringHandlerData? data)
1202public override BoundNode VisitInterpolatedString(BoundInterpolatedString node)
1207public override BoundNode VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
1213public override BoundNode VisitStringInsert(BoundStringInsert node)
1229public override BoundNode VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node)
1234public override BoundNode VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node)
1239public override BoundNode VisitArgList(BoundArgList node)
1246public override BoundNode VisitArgListOperator(BoundArgListOperator node)
1253public override BoundNode VisitRefTypeOperator(BoundRefTypeOperator node)
1259public override BoundNode VisitMakeRefOperator(BoundMakeRefOperator node)
1268public override BoundNode VisitRefValueOperator(BoundRefValueOperator node)
1274public override BoundNode VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node)
1280public override BoundNode VisitLambda(BoundLambda node) => null;
1282public override BoundNode VisitLocal(BoundLocal node)
1288public override BoundNode VisitLocalDeclaration(BoundLocalDeclaration node)
1305public override BoundNode VisitBlock(BoundBlock node)
1319public override BoundNode VisitScope(BoundScope node)
1325public override BoundNode VisitExpressionStatement(BoundExpressionStatement node)
1331public override BoundNode VisitCall(BoundCall node)
1480public override BoundNode VisitIndexerAccess(BoundIndexerAccess node)
1493public override BoundNode VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node)
1506public override BoundNode VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
1575public override BoundNode VisitBadExpression(BoundBadExpression node)
1585public override BoundNode VisitBadStatement(BoundBadStatement node)
1587foreach (var child in node.ChildBoundNodes)
1602public override BoundNode VisitArrayInitialization(BoundArrayInitialization node)
1612public override BoundNode VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
1642public override BoundNode VisitTypeExpression(BoundTypeExpression node)
1647public override BoundNode VisitTypeOrValueExpression(BoundTypeOrValueExpression node)
1655public override BoundNode VisitLiteral(BoundLiteral node)
1661public override BoundNode VisitUtf8String(BoundUtf8String node)
1684public override BoundNode VisitLocalId(BoundLocalId node)
1689public override BoundNode VisitParameterId(BoundParameterId node)
1694public override BoundNode VisitMethodDefIndex(BoundMethodDefIndex node)
1699public override BoundNode VisitStateMachineInstanceId(BoundStateMachineInstanceId node)
1704public override BoundNode VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node)
1709public override BoundNode VisitModuleVersionId(BoundModuleVersionId node)
1714public override BoundNode VisitModuleVersionIdString(BoundModuleVersionIdString node)
1719public override BoundNode VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node)
1724public override BoundNode VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node)
1729public override BoundNode VisitSourceDocumentIndex(BoundSourceDocumentIndex node)
1734public override BoundNode VisitConversion(BoundConversion node)
1765public sealed override BoundNode VisitIfStatement(BoundIfStatement node)
1816public override BoundNode VisitTryStatement(BoundTryStatement node)
2011public override BoundNode VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node)
2016public override BoundNode VisitReturnStatement(BoundReturnStatement node)
2018var result = VisitReturnStatementNoAdjust(node);
2024protected virtual BoundNode VisitReturnStatementNoAdjust(BoundReturnStatement node)
2037public override BoundNode VisitThisReference(BoundThisReference node)
2042public override BoundNode VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node)
2047public override BoundNode VisitHostObjectMemberReference(BoundHostObjectMemberReference node)
2052public override BoundNode VisitParameter(BoundParameter node)
2061public override BoundNode VisitObjectCreationExpression(BoundObjectCreationExpression node)
2068public override BoundNode VisitCollectionExpression(BoundCollectionExpression node)
2074public override BoundNode VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
2080private void VisitCollectionExpression(ImmutableArray<BoundNode> elements)
2082foreach (var element in elements)
2095public override BoundNode VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node)
2101public override BoundNode VisitNewT(BoundNewT node)
2107public override BoundNode VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
2132public override BoundNode VisitAssignmentOperator(BoundAssignmentOperator node)
2166public override BoundNode VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
2173public sealed override BoundNode VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node)
2179public override BoundNode VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
2224public override BoundNode VisitFieldAccess(BoundFieldAccess node)
2251public override BoundNode VisitFieldInfo(BoundFieldInfo node)
2256public override BoundNode VisitMethodInfo(BoundMethodInfo node)
2261public override BoundNode VisitPropertyAccess(BoundPropertyAccess node)
2291public override BoundNode VisitEventAccess(BoundEventAccess node)
2297public override BoundNode VisitRangeVariable(BoundRangeVariable node)
2302public override BoundNode VisitQueryClause(BoundQueryClause node)
2308private BoundNode VisitMultipleLocalDeclarationsBase(BoundMultipleLocalDeclarationsBase node)
2318public override BoundNode VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node)
2323public override BoundNode VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node)
2332public override BoundNode VisitWhileStatement(BoundWhileStatement node)
2347public override BoundNode VisitWithExpression(BoundWithExpression node)
2354public override BoundNode VisitArrayAccess(BoundArrayAccess node)
2365public override BoundNode VisitInlineArrayAccess(BoundInlineArrayAccess node)
2384public override BoundNode VisitBinaryOperator(BoundBinaryOperator node)
2403public override BoundNode VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node)
2758public override BoundNode VisitUnaryOperator(BoundUnaryOperator node)
2774public override BoundNode VisitRangeExpression(BoundRangeExpression node)
2789public override BoundNode VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
2795public override BoundNode VisitAwaitExpression(BoundAwaitExpression node)
2802public override BoundNode VisitIncrementOperator(BoundIncrementOperator node)
2826public override BoundNode VisitArrayCreation(BoundArrayCreation node)
2837public override BoundNode VisitForStatement(BoundForStatement node)
2870public override BoundNode VisitForEachStatement(BoundForEachStatement node)
2899public override BoundNode VisitAsOperator(BoundAsOperator node)
2905public override BoundNode VisitIsOperator(BoundIsOperator node)
2920public override BoundNode VisitMethodGroup(BoundMethodGroup node)
2933public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
3109public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
3117public override BoundNode VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node)
3136public override BoundNode VisitConditionalReceiver(BoundConditionalReceiver node)
3141public override BoundNode VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node)
3155public override BoundNode VisitSequence(BoundSequence node)
3170public override BoundNode VisitSequencePoint(BoundSequencePoint node)
3180public override BoundNode VisitSequencePointExpression(BoundSequencePointExpression node)
3186public override BoundNode VisitSequencePointWithSpan(BoundSequencePointWithSpan node)
3196public override BoundNode VisitStatementList(BoundStatementList node)
3201private BoundNode VisitStatementListWorker(BoundStatementList node)
3211public override BoundNode VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node)
3216public override BoundNode VisitUnboundLambda(UnboundLambda node)
3222public override BoundNode VisitBreakStatement(BoundBreakStatement node)
3230public override BoundNode VisitContinueStatement(BoundContinueStatement node)
3238public override BoundNode VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node)
3243public override BoundNode VisitConditionalOperator(BoundConditionalOperator node)
3250protected virtual BoundNode? VisitConditionalOperatorCore(
3314public override BoundNode VisitBaseReference(BoundBaseReference node)
3319public override BoundNode VisitDoStatement(BoundDoStatement node)
3333public override BoundNode VisitGotoStatement(BoundGotoStatement node)
3356public override BoundNode VisitLabelStatement(BoundLabelStatement node)
3362public override BoundNode VisitLabeledStatement(BoundLabeledStatement node)
3369public override BoundNode VisitLockStatement(BoundLockStatement node)
3376public override BoundNode VisitNoOpStatement(BoundNoOpStatement node)
3381public override BoundNode VisitNamespaceExpression(BoundNamespaceExpression node)
3386public override BoundNode VisitUsingStatement(BoundUsingStatement node)
3409public override BoundNode VisitFixedStatement(BoundFixedStatement node)
3416public override BoundNode VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
3422public override BoundNode VisitThrowStatement(BoundThrowStatement node)
3430public override BoundNode VisitYieldBreakStatement(BoundYieldBreakStatement node)
3438public override BoundNode VisitYieldReturnStatement(BoundYieldReturnStatement node)
3445public override BoundNode VisitDefaultLiteral(BoundDefaultLiteral node)
3450public override BoundNode VisitDefaultExpression(BoundDefaultExpression node)
3455public override BoundNode VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
3460public override BoundNode VisitTypeOfOperator(BoundTypeOfOperator node)
3466public override BoundNode VisitNameOfOperator(BoundNameOfOperator node)
3475public override BoundNode VisitAddressOfOperator(BoundAddressOfOperator node)
3495public override BoundNode VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
3501public override BoundNode VisitPointerElementAccess(BoundPointerElementAccess node)
3508public override BoundNode VisitSizeOfOperator(BoundSizeOfOperator node)
3513private BoundNode VisitStackAllocArrayCreationBase(BoundStackAllocArrayCreationBase node)
3520public override BoundNode VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
3525public override BoundNode VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
3530public override BoundNode VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
3538public override BoundNode VisitArrayLength(BoundArrayLength node)
3544public override BoundNode VisitConditionalGoto(BoundConditionalGoto node)
3562public override BoundNode VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
3567public override BoundNode VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
3572private BoundNode VisitObjectOrCollectionInitializerExpression(ImmutableArray<BoundExpression> initializers)
3582public override BoundNode VisitObjectInitializerMember(BoundObjectInitializerMember node)
3601public override BoundNode VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
3606public override BoundNode VisitCollectionElementInitializer(BoundCollectionElementInitializer node)
3629public override BoundNode VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
3635public override BoundNode VisitImplicitReceiver(BoundImplicitReceiver node)
3640public override BoundNode VisitFieldEqualsValue(BoundFieldEqualsValue node)
3646public override BoundNode VisitPropertyEqualsValue(BoundPropertyEqualsValue node)
3652public override BoundNode VisitParameterEqualsValue(BoundParameterEqualsValue node)
3658public override BoundNode VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node)
3663public override BoundNode VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node)
3668public override BoundNode VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
3673public sealed override BoundNode VisitOutVariablePendingInference(OutVariablePendingInference node)
3678public sealed override BoundNode VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node)
3683public override BoundNode VisitDiscardExpression(BoundDiscardExpression node)
3694public override BoundNode VisitConstructorMethodBody(BoundConstructorMethodBody node)
3701public override BoundNode VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node)
3707public override BoundNode VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
3740public override BoundNode VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node)
3746public override BoundNode VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
3753public override BoundNode VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node)
3778public override BoundNode VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node)
3783public override BoundNode VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node)
3788public 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 (50)
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;
1516protected void Assign(BoundNode node, BoundExpression value, bool isRef = false, bool read = true)
1533protected virtual void AssignImpl(BoundNode node, BoundExpression value, bool isRef, bool written, bool read)
2123public override BoundNode? VisitBlock(BoundBlock node)
2208public override BoundNode VisitSwitchStatement(BoundSwitchStatement node)
2211var result = base.VisitSwitchStatement(node);
2223public override BoundNode VisitForStatement(BoundForStatement node)
2227var result = base.VisitForStatement(node);
2233public override BoundNode VisitDoStatement(BoundDoStatement node)
2236var result = base.VisitDoStatement(node);
2241public override BoundNode VisitWhileStatement(BoundWhileStatement node)
2244var result = base.VisitWhileStatement(node);
2252public override BoundNode VisitUsingStatement(BoundUsingStatement node)
2256var result = base.VisitUsingStatement(node);
2273public override BoundNode VisitFixedStatement(BoundFixedStatement node)
2279public override BoundNode VisitSequence(BoundSequence node)
2282var result = base.VisitSequence(node);
2351public override BoundNode VisitLocal(BoundLocal node)
2382public override BoundNode VisitLocalDeclaration(BoundLocalDeclaration node)
2393var result = base.VisitLocalDeclaration(node);
2401public override BoundNode VisitLocalId(BoundLocalId node)
2404public override BoundNode VisitParameterId(BoundParameterId node)
2407public override BoundNode VisitStateMachineInstanceId(BoundStateMachineInstanceId node)
2410public override BoundNode VisitMethodGroup(BoundMethodGroup node)
2422public override BoundNode VisitLambda(BoundLambda node)
2468public override BoundNode VisitThisReference(BoundThisReference node)
2475public override BoundNode VisitParameter(BoundParameter node)
2489public override BoundNode VisitAssignmentOperator(BoundAssignmentOperator node)
2496public override BoundNode VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
2503public override BoundNode VisitIncrementOperator(BoundIncrementOperator node)
2510public override BoundNode VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
2519public override BoundNode VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
2537public override BoundNode VisitAddressOfOperator(BoundAddressOfOperator node)
2671public override BoundNode VisitBaseReference(BoundBaseReference node)
2695public override BoundNode VisitFieldAccess(BoundFieldAccess node)
2697var result = base.VisitFieldAccess(node);
2721public override BoundNode VisitPropertyAccess(BoundPropertyAccess node)
2723var result = base.VisitPropertyAccess(node);
2744public override BoundNode VisitEventAccess(BoundEventAccess node)
2746var result = base.VisitEventAccess(node);
2775public 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 (205)
454BoundNode node,
1398BoundNode node,
1425BoundNode node,
1464internal static VariableState? GetAfterInitializersState(CSharpCompilation compilation, Symbol? symbol, BoundNode constructorBody)
1482internal static VariableState? GetAfterInitializersState(CSharpCompilation compilation, MethodSymbol method, BoundNode nodeToAnalyze, BoundNode? constructorBody, BindingDiagnosticBag diagnostics)
1520private static MethodSymbol? GetConstructorThisOrBaseSymbol(BoundNode? constructorBody)
1535BoundNode node,
1547internal static BoundNode AnalyzeAndRewrite(
1550BoundNode node,
1566BoundNode node,
1622internal static BoundNode AnalyzeAndRewriteSpeculation(
1624BoundNode node,
1669private static BoundNode Rewrite(ImmutableDictionary<BoundExpression, (NullabilityInfo, TypeSymbol?)> updatedNullabilities, SnapshotManager? snapshotManager, BoundNode node, ref ImmutableDictionary<Symbol, Symbol>? remappedSymbols)
1679var rewrittenNode = rewriter.Visit(node);
1703BoundNode node,
1781BoundNode node,
1886private void TakeIncrementalSnapshot(BoundNode? node)
1892private void SetUpdatedSymbol(BoundNode node, Symbol originalSymbol, Symbol updatedSymbol)
2234private void VisitAndUnsplitAll<T>(ImmutableArray<T> nodes) where T : BoundNode
2248private void VisitWithoutDiagnostics(BoundNode? node)
2904public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue equalsValue)
2939public sealed override BoundNode? VisitReturnStatement(BoundReturnStatement node)
3074public override BoundNode? VisitLocal(BoundLocal node)
3105public override BoundNode? VisitBlock(BoundBlock node)
3210public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
3432public override BoundNode? VisitDoStatement(BoundDoStatement node)
3438public override BoundNode? VisitWhileStatement(BoundWhileStatement node)
3444public override BoundNode? VisitWithExpression(BoundWithExpression withExpr)
3466public override BoundNode? VisitForStatement(BoundForStatement node)
3473public override BoundNode? VisitForEachStatement(BoundForEachStatement node)
3479public override BoundNode? VisitUsingStatement(BoundUsingStatement node)
3486public override BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node)
3492public override BoundNode? VisitFixedStatement(BoundFixedStatement node)
3498public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node)
3525public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node)
3587protected override BoundNode? VisitExpressionOrPatternWithoutStackGuard(BoundNode node)
3679public override BoundNode? Visit(BoundNode? node)
3684private BoundNode VisitLValue(BoundNode node)
3703private BoundNode Visit(BoundNode? node, bool expressionIsRead)
3712var result = base.Visit(node);
3725public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node)
3731public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
3739public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
3742var result = base.VisitUnconvertedCollectionExpression(node);
3747public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node)
3757foreach (var element in node.Elements)
3886public override BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node)
4545public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
4606public override BoundNode? VisitArrayCreation(BoundArrayCreation node)
4762BoundNode node,
4839public override BoundNode? VisitArrayAccess(BoundArrayAccess node)
4873public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node)
5605public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
5642public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
5925public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
5931protected override BoundNode? VisitConditionalOperatorCore(
6222public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node)
6233public override BoundNode? VisitCall(BoundCall node)
6736private static bool HasImplicitTypeArguments(BoundNode node)
6804BoundNode node,
6825BoundNode node,
6863BoundNode node,
7034BoundNode node,
8024var elementsBuilder = ArrayBuilder<BoundNode>.GetInstance(collectionExpressionVisitResults.Length);
8321public override BoundNode? VisitConversion(BoundConversion node)
8458public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node)
8464public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
8687public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
9651public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
9827public override BoundNode? VisitMethodGroup(BoundMethodGroup node)
9910public override BoundNode? VisitLambda(BoundLambda node)
9959public override BoundNode? VisitUnboundLambda(UnboundLambda node)
9969public override BoundNode? VisitThisReference(BoundThisReference node)
9982public override BoundNode? VisitParameter(BoundParameter node)
9992public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
10157public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
10162private BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node, TypeWithState? rightResultOpt)
10273var underlyingConversion = BoundNode.GetConversion(placeholderConversion, placeholder);
10314var underlyingConversion = BoundNode.GetConversion(placeholderConversion, placeholder);
10473public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node)
10515BoundNode.GetConversion(node.OperandConversion, node.OperandPlaceholder),
10545BoundNode.GetConversion(node.ResultConversion, node.ResultPlaceholder),
10573public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
10600BoundNode.GetConversion(node.LeftConversion, node.LeftPlaceholder),
10614BoundNode.GetConversion(node.FinalConversion, node.FinalPlaceholder),
10635public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
10652public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node)
10710public override BoundNode? VisitBaseReference(BoundBaseReference node)
10716public override BoundNode? VisitFieldAccess(BoundFieldAccess node)
10725public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
10746public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
10769public override BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node)
10783public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node)
10791public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node)
10797public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node)
10803public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node)
10809public override BoundNode? VisitEventAccess(BoundEventAccess node)
10918BoundNode node,
11183Conversion conversion = BoundNode.GetConversion(node.ElementConversion, node.ElementPlaceholder);
11220public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
11222var result = base.VisitFromEndIndexExpression(node);
11227public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node)
11233public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
11239public override BoundNode? VisitBadExpression(BoundBadExpression node)
11261public override BoundNode? VisitTypeExpression(BoundTypeExpression node)
11263var result = base.VisitTypeExpression(node);
11274public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node)
11277var result = base.VisitTypeOrValueExpression(node);
11282public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node)
11354public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
11356var result = base.VisitPointerIndirectionOperator(node);
11362public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node)
11364var result = base.VisitPointerElementAccess(node);
11370public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node)
11377public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node)
11379var result = base.VisitMakeRefOperator(node);
11384public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node)
11386var result = base.VisitRefValueOperator(node);
11482public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
11484var result = base.VisitAwaitExpression(node);
11513public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node)
11515var result = base.VisitTypeOfOperator(node);
11520public override BoundNode? VisitMethodInfo(BoundMethodInfo node)
11522var result = base.VisitMethodInfo(node);
11527public override BoundNode? VisitFieldInfo(BoundFieldInfo node)
11529var result = base.VisitFieldInfo(node);
11534public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node)
11537var result = base.VisitDefaultLiteral(node);
11542public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node)
11546var result = base.VisitDefaultExpression(node);
11562public override BoundNode? VisitIsOperator(BoundIsOperator node)
11596public override BoundNode? VisitAsOperator(BoundAsOperator node)
11604switch (BoundNode.GetConversion(node.OperandConversion, node.OperandPlaceholder).Kind)
11624public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node)
11626var result = base.VisitSizeOfOperator(node);
11632public override BoundNode? VisitArgList(BoundArgList node)
11634var result = base.VisitArgList(node);
11640public override BoundNode? VisitArgListOperator(BoundArgListOperator node)
11648public override BoundNode? VisitLiteral(BoundLiteral node)
11651var result = base.VisitLiteral(node);
11656public override BoundNode? VisitUtf8String(BoundUtf8String node)
11659var result = base.VisitUtf8String(node);
11664public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node)
11666var result = base.VisitPreviousSubmissionReference(node);
11672public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node)
11674var result = base.VisitHostObjectMemberReference(node);
11680public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node)
11682var result = base.VisitPseudoVariable(node);
11687public override BoundNode? VisitRangeExpression(BoundRangeExpression node)
11689var result = base.VisitRangeExpression(node);
11694public override BoundNode? VisitRangeVariable(BoundRangeVariable node)
11701public override BoundNode? VisitLabel(BoundLabel node)
11703var result = base.VisitLabel(node);
11708public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
11720public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node)
11740public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
11766public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
11772public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
11780public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
11788public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
11796public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node)
11798var result = base.VisitImplicitReceiver(node);
11803public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node)
11808public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
11814public override BoundNode? VisitNewT(BoundNewT node)
11820public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node)
11822var result = base.VisitArrayInitialization(node);
11832public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
11926public override BoundNode? VisitQueryClause(BoundQueryClause node)
11928var result = base.VisitQueryClause(node);
11933public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node)
11935var result = base.VisitNameOfOperator(node);
11940public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node)
11942var result = base.VisitNamespaceExpression(node);
11947public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
11950var result = base.VisitUnconvertedInterpolatedString(node);
11955public override BoundNode? VisitStringInsert(BoundStringInsert node)
11957var result = base.VisitStringInsert(node);
11968public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node)
11976public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node)
11982public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
11988public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
11993private BoundNode? VisitStackAllocArrayCreationBase(BoundStackAllocArrayCreationBase node)
12010public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node)
12018public override BoundNode? VisitThrowExpression(BoundThrowExpression node)
12025public override BoundNode? VisitThrowStatement(BoundThrowStatement node)
12048public override BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node)
12086public override BoundNode? VisitLockStatement(BoundLockStatement node)
12094public override BoundNode? VisitAttribute(BoundAttribute node)
12107public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node)
12114public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node)
12122public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node)
12130public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
12153public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node)
12160public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
12728private sealed class ExpressionAndSymbolEqualityComparer : IEqualityComparer<(BoundNode? expr, Symbol symbol)>
12734public bool Equals((BoundNode? expr, Symbol symbol) x, (BoundNode? expr, Symbol symbol) y)
12745public 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)
323public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFieldEqualsValue(this);
353public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertyEqualsValue(this);
383public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitParameterEqualsValue(this);
411public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitGlobalStatementInitializer(this);
484public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitValuePlaceholder(this);
514public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCapturedReceiverPlaceholder(this);
555public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeconstructValuePlaceholder(this);
590public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTupleOperandPlaceholder(this);
619public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAwaitableValuePlaceholder(this);
654public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDisposableValuePlaceholder(this);
692public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectOrCollectionValuePlaceholder(this);
727public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitIndexerValuePlaceholder(this);
765public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitIndexerReceiverPlaceholder(this);
800public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitListPatternReceiverPlaceholder(this);
835public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitListPatternIndexPlaceholder(this);
870public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSlicePatternReceiverPlaceholder(this);
905public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSlicePatternRangePlaceholder(this);
936public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDup(this);
964public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPassByCopy(this);
997public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBadExpression(this);
1013public BoundBadStatement(SyntaxNode syntax, ImmutableArray<BoundNode> childBoundNodes, bool hasErrors = false)
1022public ImmutableArray<BoundNode> ChildBoundNodes { get; }
1025public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBadStatement(this);
1027public BoundBadStatement Update(ImmutableArray<BoundNode> childBoundNodes)
1053public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitExtractedFinallyBlock(this);
1088public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeExpression(this);
1126public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeOrValueExpression(this);
1167public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNamespaceExpression(this);
1209public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnaryOperator(this);
1257public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIncrementOperator(this);
1289public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAddressOfOperator(this);
1318public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedAddressOfOperator(this);
1361public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFunctionPointerLoad(this);
1393public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPointerIndirectionOperator(this);
1430public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPointerElementAccess(this);
1467public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFunctionPointerInvocation(this);
1499public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRefTypeOperator(this);
1529public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMakeRefOperator(this);
1561public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRefValueOperator(this);
1593public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFromEndIndexExpression(this);
1626public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRangeExpression(this);
1679public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBinaryOperator(this);
1717public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTupleBinaryOperator(this);
1762public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUserDefinedConditionalLogicalOperator(this);
1809public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCompoundAssignmentOperator(this);
1843public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAssignmentOperator(this);
1878public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeconstructionAssignmentOperator(this);
1919public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNullCoalescingOperator(this);
1950public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNullCoalescingAssignmentOperator(this);
1989public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedConditionalOperator(this);
2033public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalOperator(this);
2066public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayAccess(this);
2095public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRefArrayAccess(this);
2125public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayLength(this);
2158public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAwaitableInfo(this);
2193public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAwaitExpression(this);
2246public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeOfOperator(this);
2278public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBlockInstrumentation(this);
2318public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMethodDefIndex(this);
2361public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocalId(this);
2404public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitParameterId(this);
2439public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStateMachineInstanceId(this);
2474public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMaximumMethodDefIndex(this);
2512public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInstrumentationPayloadRoot(this);
2547public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThrowIfModuleCancellationRequested(this);
2582public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitModuleCancellationTokenExpression(this);
2617public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitModuleVersionId(this);
2652public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitModuleVersionIdString(this);
2692public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSourceDocumentIndex(this);
2735public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMethodInfo(this);
2778public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFieldInfo(this);
2807public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDefaultLiteral(this);
2832public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDefaultExpression(this);
2867public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIsOperator(this);
2904public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAsOperator(this);
2936public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSizeOfOperator(this);
2980public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConversion(this);
3013public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitReadOnlySpanFromArray(this);
3048public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArgList(this);
3079public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArgListOperator(this);
3118public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFixedLocalCollectionInitializer(this);
3157public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequencePoint(this);
3184public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequencePointWithSpan(this);
3221public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSavePreviousSequencePoint(this);
3258public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRestorePreviousSequencePoint(this);
3289public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStepThroughSequencePoint(this);
3325public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBlock(this);
3354public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitScope(this);
3385public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStateMachineScope(this);
3421public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocalDeclaration(this);
3461public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMultipleLocalDeclarations(this);
3491public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUsingLocalDeclarations(this);
3523public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocalFunctionStatement(this);
3554public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNoOpStatement(this);
3583public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitReturnStatement(this);
3611public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitYieldReturnStatement(this);
3639public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitYieldBreakStatement(this);
3653public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThrowStatement(this);
3681public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitExpressionStatement(this);
3718public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBreakStatement(this);
3755public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitContinueStatement(this);
3800public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchStatement(this);
3836public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchDispatch(this);
3869public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIfStatement(this);
3949public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDoStatement(this);
3979public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitWhileStatement(this);
4021public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitForStatement(this);
4072public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitForEachStatement(this);
4103public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitForEachDeconstructStep(this);
4142public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUsingStatement(this);
4176public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFixedStatement(this);
4207public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLockStatement(this);
4244public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTryStatement(this);
4285public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCatchBlock(this);
4316public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLiteral(this);
4356public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUtf8String(this);
4391public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThisReference(this);
4426public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPreviousSubmissionReference(this);
4461public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitHostObjectMemberReference(this);
4490public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBaseReference(this);
4539public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocal(this);
4584public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPseudoVariable(this);
4617public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRangeVariable(this);
4657public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitParameter(this);
4694public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLabelStatement(this);
4726public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitGotoStatement(this);
4757public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLabeledStatement(this);
4794public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLabel(this);
4831public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStatementList(this);
4864public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalGoto(this);
4927public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchExpressionArm(this);
4955public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedSwitchExpression(this);
4989public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConvertedSwitchExpression(this);
5017public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDecisionDag(this);
5062public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitEvaluationDecisionDagNode(this);
5096public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTestDecisionDagNode(this);
5131public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitWhenDecisionDagNode(this);
5168public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLeafDecisionDagNode(this);
5214public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagTemp(this);
5243public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagTypeTest(this);
5271public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagNonNullTest(this);
5297public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagExplicitNullTest(this);
5326public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagValueTest(this);
5357public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagRelationalTest(this);
5398public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagDeconstructEvaluation(this);
5427public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagTypeEvaluation(this);
5456public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagFieldEvaluation(this);
5487public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagPropertyEvaluation(this);
5518public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagIndexEvaluation(this);
5565public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagIndexerEvaluation(this);
5614public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagSliceEvaluation(this);
5643public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagAssignmentEvaluation(this);
5675public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchSection(this);
5708public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchLabel(this);
5750public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequencePointExpression(this);
5786public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequence(this);
5822public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSpillSequence(this);
5861public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicMemberAccess(this);
5914public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicInvocation(this);
5947public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalAccess(this);
5988public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLoweredConditionalAccess(this);
6026public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalReceiver(this);
6059public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitComplexConditionalReceiver(this);
6100public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMethodGroup(this);
6128public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertyGroup(this);
6183public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCall(this);
6222public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitEventAssignmentOperator(this);
6267public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAttribute(this);
6305public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedObjectCreationExpression(this);
6377public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectCreationExpression(this);
6393protected BoundCollectionExpressionBase(BoundKind kind, SyntaxNode syntax, ImmutableArray<BoundNode> elements, TypeSymbol? type, bool hasErrors = false)
6402public ImmutableArray<BoundNode> Elements { get; }
6407public BoundUnconvertedCollectionExpression(SyntaxNode syntax, ImmutableArray<BoundNode> elements, bool hasErrors = false)
6418public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedCollectionExpression(this);
6420public BoundUnconvertedCollectionExpression Update(ImmutableArray<BoundNode> elements)
6434public 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)
6463public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionExpression(this);
6465public BoundCollectionExpression Update(CollectionExpressionTypeKind collectionTypeKind, BoundObjectOrCollectionValuePlaceholder? placeholder, BoundExpression? collectionCreation, MethodSymbol? collectionBuilderMethod, BoundValuePlaceholder? collectionBuilderInvocationPlaceholder, BoundExpression? collectionBuilderInvocationConversion, bool wasTargetTyped, BoundUnconvertedCollectionExpression unconvertedCollectionExpression, ImmutableArray<BoundNode> elements, TypeSymbol type)
6491public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionExpressionSpreadExpressionPlaceholder(this);
6531public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionExpressionSpreadElement(this);
6576public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTupleLiteral(this);
6606public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConvertedTupleLiteral(this);
6649public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicObjectCreationExpression(this);
6681public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNoPiaObjectCreationExpression(this);
6728public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectInitializerExpression(this);
6777public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectInitializerMember(this);
6822public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicObjectInitializerMember(this);
6850public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionInitializerExpression(this);
6895public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionElementInitializer(this);
6927public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicCollectionElementInitializer(this);
6962public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitReceiver(this);
6998public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAnonymousObjectCreationExpression(this);
7038public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAnonymousPropertyDeclaration(this);
7068public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNewT(this);
7104public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDelegateCreationExpression(this);
7136public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayCreation(this);
7167public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayInitialization(this);
7213public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStackAllocArrayCreation(this);
7242public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConvertedStackAllocExpression(this);
7282public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFieldAccess(this);
7322public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitHoistedFieldAccess(this);
7360public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertyAccess(this);
7396public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitEventAccess(this);
7447public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIndexerAccess(this);
7496public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitIndexerAccess(this);
7537public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInlineArrayAccess(this);
7577public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicIndexerAccess(this);
7617public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLambda(this);
7661public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnboundLambda(this);
7702public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitQueryClause(this);
7728public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeOrInstanceInitializers(this);
7761public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNameOfOperator(this);
7803public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedInterpolatedString(this);
7831public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedString(this);
7859public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedStringHandlerPlaceholder(this);
7897public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedStringArgumentPlaceholder(this);
7932public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStringInsert(this);
7974public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIsPatternExpression(this);
8039public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConstantPattern(this);
8079public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDiscardPattern(this);
8132public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeclarationPattern(this);
8173public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRecursivePattern(this);
8217public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitListPattern(this);
8256public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSlicePattern(this);
8296public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitITuplePattern(this);
8338public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPositionalSubpattern(this);
8368public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertySubpattern(this);
8400public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertySubpatternMember(this);
8436public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypePattern(this);
8475public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBinaryPattern(this);
8509public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNegatedPattern(this);
8548public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRelationalPattern(this);
8583public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDiscardExpression(this);
8611public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThrowExpression(this);
8654public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitOutVariablePendingInference(this);
8680public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeconstructionVariablePendingInference(this);
8715public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitOutDeconstructVarPendingInference(this);
8751public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNonConstructorMethodBody(this);
8781public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConstructorMethodBody(this);
8812public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitExpressionWithNullability(this);
8847public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitWithExpression(this);
8865internal R VisitInternal(BoundNode node, A arg)
9577public virtual BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node) => this.DefaultVisit(node);
9578public virtual BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node) => this.DefaultVisit(node);
9579public virtual BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node) => this.DefaultVisit(node);
9580public virtual BoundNode? VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node) => this.DefaultVisit(node);
9581public virtual BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node) => this.DefaultVisit(node);
9582public virtual BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node) => this.DefaultVisit(node);
9583public virtual BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node) => this.DefaultVisit(node);
9584public virtual BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node) => this.DefaultVisit(node);
9585public virtual BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node) => this.DefaultVisit(node);
9586public virtual BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node) => this.DefaultVisit(node);
9587public virtual BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node) => this.DefaultVisit(node);
9588public virtual BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node) => this.DefaultVisit(node);
9589public virtual BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node) => this.DefaultVisit(node);
9590public virtual BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node) => this.DefaultVisit(node);
9591public virtual BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node) => this.DefaultVisit(node);
9592public virtual BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node) => this.DefaultVisit(node);
9593public virtual BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node) => this.DefaultVisit(node);
9594public virtual BoundNode? VisitDup(BoundDup node) => this.DefaultVisit(node);
9595public virtual BoundNode? VisitPassByCopy(BoundPassByCopy node) => this.DefaultVisit(node);
9596public virtual BoundNode? VisitBadExpression(BoundBadExpression node) => this.DefaultVisit(node);
9597public virtual BoundNode? VisitBadStatement(BoundBadStatement node) => this.DefaultVisit(node);
9598public virtual BoundNode? VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node) => this.DefaultVisit(node);
9599public virtual BoundNode? VisitTypeExpression(BoundTypeExpression node) => this.DefaultVisit(node);
9600public virtual BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node) => this.DefaultVisit(node);
9601public virtual BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node) => this.DefaultVisit(node);
9602public virtual BoundNode? VisitUnaryOperator(BoundUnaryOperator node) => this.DefaultVisit(node);
9603public virtual BoundNode? VisitIncrementOperator(BoundIncrementOperator node) => this.DefaultVisit(node);
9604public virtual BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node) => this.DefaultVisit(node);
9605public virtual BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node) => this.DefaultVisit(node);
9606public virtual BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node) => this.DefaultVisit(node);
9607public virtual BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node) => this.DefaultVisit(node);
9608public virtual BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node) => this.DefaultVisit(node);
9609public virtual BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node) => this.DefaultVisit(node);
9610public virtual BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node) => this.DefaultVisit(node);
9611public virtual BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node) => this.DefaultVisit(node);
9612public virtual BoundNode? VisitRefValueOperator(BoundRefValueOperator node) => this.DefaultVisit(node);
9613public virtual BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node) => this.DefaultVisit(node);
9614public virtual BoundNode? VisitRangeExpression(BoundRangeExpression node) => this.DefaultVisit(node);
9615public virtual BoundNode? VisitBinaryOperator(BoundBinaryOperator node) => this.DefaultVisit(node);
9616public virtual BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node) => this.DefaultVisit(node);
9617public virtual BoundNode? VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node) => this.DefaultVisit(node);
9618public virtual BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node) => this.DefaultVisit(node);
9619public virtual BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node) => this.DefaultVisit(node);
9620public virtual BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node) => this.DefaultVisit(node);
9621public virtual BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node) => this.DefaultVisit(node);
9622public virtual BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node) => this.DefaultVisit(node);
9623public virtual BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node) => this.DefaultVisit(node);
9624public virtual BoundNode? VisitConditionalOperator(BoundConditionalOperator node) => this.DefaultVisit(node);
9625public virtual BoundNode? VisitArrayAccess(BoundArrayAccess node) => this.DefaultVisit(node);
9626public virtual BoundNode? VisitRefArrayAccess(BoundRefArrayAccess node) => this.DefaultVisit(node);
9627public virtual BoundNode? VisitArrayLength(BoundArrayLength node) => this.DefaultVisit(node);
9628public virtual BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node) => this.DefaultVisit(node);
9629public virtual BoundNode? VisitAwaitExpression(BoundAwaitExpression node) => this.DefaultVisit(node);
9630public virtual BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node) => this.DefaultVisit(node);
9631public virtual BoundNode? VisitBlockInstrumentation(BoundBlockInstrumentation node) => this.DefaultVisit(node);
9632public virtual BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node) => this.DefaultVisit(node);
9633public virtual BoundNode? VisitLocalId(BoundLocalId node) => this.DefaultVisit(node);
9634public virtual BoundNode? VisitParameterId(BoundParameterId node) => this.DefaultVisit(node);
9635public virtual BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node) => this.DefaultVisit(node);
9636public virtual BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node) => this.DefaultVisit(node);
9637public virtual BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node) => this.DefaultVisit(node);
9638public virtual BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node) => this.DefaultVisit(node);
9639public virtual BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node) => this.DefaultVisit(node);
9640public virtual BoundNode? VisitModuleVersionId(BoundModuleVersionId node) => this.DefaultVisit(node);
9641public virtual BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node) => this.DefaultVisit(node);
9642public virtual BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node) => this.DefaultVisit(node);
9643public virtual BoundNode? VisitMethodInfo(BoundMethodInfo node) => this.DefaultVisit(node);
9644public virtual BoundNode? VisitFieldInfo(BoundFieldInfo node) => this.DefaultVisit(node);
9645public virtual BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node) => this.DefaultVisit(node);
9646public virtual BoundNode? VisitDefaultExpression(BoundDefaultExpression node) => this.DefaultVisit(node);
9647public virtual BoundNode? VisitIsOperator(BoundIsOperator node) => this.DefaultVisit(node);
9648public virtual BoundNode? VisitAsOperator(BoundAsOperator node) => this.DefaultVisit(node);
9649public virtual BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node) => this.DefaultVisit(node);
9650public virtual BoundNode? VisitConversion(BoundConversion node) => this.DefaultVisit(node);
9651public virtual BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node) => this.DefaultVisit(node);
9652public virtual BoundNode? VisitArgList(BoundArgList node) => this.DefaultVisit(node);
9653public virtual BoundNode? VisitArgListOperator(BoundArgListOperator node) => this.DefaultVisit(node);
9654public virtual BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node) => this.DefaultVisit(node);
9655public virtual BoundNode? VisitSequencePoint(BoundSequencePoint node) => this.DefaultVisit(node);
9656public virtual BoundNode? VisitSequencePointWithSpan(BoundSequencePointWithSpan node) => this.DefaultVisit(node);
9657public virtual BoundNode? VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node) => this.DefaultVisit(node);
9658public virtual BoundNode? VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node) => this.DefaultVisit(node);
9659public virtual BoundNode? VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node) => this.DefaultVisit(node);
9660public virtual BoundNode? VisitBlock(BoundBlock node) => this.DefaultVisit(node);
9661public virtual BoundNode? VisitScope(BoundScope node) => this.DefaultVisit(node);
9662public virtual BoundNode? VisitStateMachineScope(BoundStateMachineScope node) => this.DefaultVisit(node);
9663public virtual BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node) => this.DefaultVisit(node);
9664public virtual BoundNode? VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node) => this.DefaultVisit(node);
9665public virtual BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node) => this.DefaultVisit(node);
9666public virtual BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node) => this.DefaultVisit(node);
9667public virtual BoundNode? VisitNoOpStatement(BoundNoOpStatement node) => this.DefaultVisit(node);
9668public virtual BoundNode? VisitReturnStatement(BoundReturnStatement node) => this.DefaultVisit(node);
9669public virtual BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node) => this.DefaultVisit(node);
9670public virtual BoundNode? VisitYieldBreakStatement(BoundYieldBreakStatement node) => this.DefaultVisit(node);
9671public virtual BoundNode? VisitThrowStatement(BoundThrowStatement node) => this.DefaultVisit(node);
9672public virtual BoundNode? VisitExpressionStatement(BoundExpressionStatement node) => this.DefaultVisit(node);
9673public virtual BoundNode? VisitBreakStatement(BoundBreakStatement node) => this.DefaultVisit(node);
9674public virtual BoundNode? VisitContinueStatement(BoundContinueStatement node) => this.DefaultVisit(node);
9675public virtual BoundNode? VisitSwitchStatement(BoundSwitchStatement node) => this.DefaultVisit(node);
9676public virtual BoundNode? VisitSwitchDispatch(BoundSwitchDispatch node) => this.DefaultVisit(node);
9677public virtual BoundNode? VisitIfStatement(BoundIfStatement node) => this.DefaultVisit(node);
9678public virtual BoundNode? VisitDoStatement(BoundDoStatement node) => this.DefaultVisit(node);
9679public virtual BoundNode? VisitWhileStatement(BoundWhileStatement node) => this.DefaultVisit(node);
9680public virtual BoundNode? VisitForStatement(BoundForStatement node) => this.DefaultVisit(node);
9681public virtual BoundNode? VisitForEachStatement(BoundForEachStatement node) => this.DefaultVisit(node);
9682public virtual BoundNode? VisitForEachDeconstructStep(BoundForEachDeconstructStep node) => this.DefaultVisit(node);
9683public virtual BoundNode? VisitUsingStatement(BoundUsingStatement node) => this.DefaultVisit(node);
9684public virtual BoundNode? VisitFixedStatement(BoundFixedStatement node) => this.DefaultVisit(node);
9685public virtual BoundNode? VisitLockStatement(BoundLockStatement node) => this.DefaultVisit(node);
9686public virtual BoundNode? VisitTryStatement(BoundTryStatement node) => this.DefaultVisit(node);
9687public virtual BoundNode? VisitCatchBlock(BoundCatchBlock node) => this.DefaultVisit(node);
9688public virtual BoundNode? VisitLiteral(BoundLiteral node) => this.DefaultVisit(node);
9689public virtual BoundNode? VisitUtf8String(BoundUtf8String node) => this.DefaultVisit(node);
9690public virtual BoundNode? VisitThisReference(BoundThisReference node) => this.DefaultVisit(node);
9691public virtual BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node) => this.DefaultVisit(node);
9692public virtual BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node) => this.DefaultVisit(node);
9693public virtual BoundNode? VisitBaseReference(BoundBaseReference node) => this.DefaultVisit(node);
9694public virtual BoundNode? VisitLocal(BoundLocal node) => this.DefaultVisit(node);
9695public virtual BoundNode? VisitPseudoVariable(BoundPseudoVariable node) => this.DefaultVisit(node);
9696public virtual BoundNode? VisitRangeVariable(BoundRangeVariable node) => this.DefaultVisit(node);
9697public virtual BoundNode? VisitParameter(BoundParameter node) => this.DefaultVisit(node);
9698public virtual BoundNode? VisitLabelStatement(BoundLabelStatement node) => this.DefaultVisit(node);
9699public virtual BoundNode? VisitGotoStatement(BoundGotoStatement node) => this.DefaultVisit(node);
9700public virtual BoundNode? VisitLabeledStatement(BoundLabeledStatement node) => this.DefaultVisit(node);
9701public virtual BoundNode? VisitLabel(BoundLabel node) => this.DefaultVisit(node);
9702public virtual BoundNode? VisitStatementList(BoundStatementList node) => this.DefaultVisit(node);
9703public virtual BoundNode? VisitConditionalGoto(BoundConditionalGoto node) => this.DefaultVisit(node);
9704public virtual BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node) => this.DefaultVisit(node);
9705public virtual BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node) => this.DefaultVisit(node);
9706public virtual BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node) => this.DefaultVisit(node);
9707public virtual BoundNode? VisitDecisionDag(BoundDecisionDag node) => this.DefaultVisit(node);
9708public virtual BoundNode? VisitEvaluationDecisionDagNode(BoundEvaluationDecisionDagNode node) => this.DefaultVisit(node);
9709public virtual BoundNode? VisitTestDecisionDagNode(BoundTestDecisionDagNode node) => this.DefaultVisit(node);
9710public virtual BoundNode? VisitWhenDecisionDagNode(BoundWhenDecisionDagNode node) => this.DefaultVisit(node);
9711public virtual BoundNode? VisitLeafDecisionDagNode(BoundLeafDecisionDagNode node) => this.DefaultVisit(node);
9712public virtual BoundNode? VisitDagTemp(BoundDagTemp node) => this.DefaultVisit(node);
9713public virtual BoundNode? VisitDagTypeTest(BoundDagTypeTest node) => this.DefaultVisit(node);
9714public virtual BoundNode? VisitDagNonNullTest(BoundDagNonNullTest node) => this.DefaultVisit(node);
9715public virtual BoundNode? VisitDagExplicitNullTest(BoundDagExplicitNullTest node) => this.DefaultVisit(node);
9716public virtual BoundNode? VisitDagValueTest(BoundDagValueTest node) => this.DefaultVisit(node);
9717public virtual BoundNode? VisitDagRelationalTest(BoundDagRelationalTest node) => this.DefaultVisit(node);
9718public virtual BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node) => this.DefaultVisit(node);
9719public virtual BoundNode? VisitDagTypeEvaluation(BoundDagTypeEvaluation node) => this.DefaultVisit(node);
9720public virtual BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node) => this.DefaultVisit(node);
9721public virtual BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node) => this.DefaultVisit(node);
9722public virtual BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node) => this.DefaultVisit(node);
9723public virtual BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node) => this.DefaultVisit(node);
9724public virtual BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node) => this.DefaultVisit(node);
9725public virtual BoundNode? VisitDagAssignmentEvaluation(BoundDagAssignmentEvaluation node) => this.DefaultVisit(node);
9726public virtual BoundNode? VisitSwitchSection(BoundSwitchSection node) => this.DefaultVisit(node);
9727public virtual BoundNode? VisitSwitchLabel(BoundSwitchLabel node) => this.DefaultVisit(node);
9728public virtual BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node) => this.DefaultVisit(node);
9729public virtual BoundNode? VisitSequence(BoundSequence node) => this.DefaultVisit(node);
9730public virtual BoundNode? VisitSpillSequence(BoundSpillSequence node) => this.DefaultVisit(node);
9731public virtual BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node) => this.DefaultVisit(node);
9732public virtual BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node) => this.DefaultVisit(node);
9733public virtual BoundNode? VisitConditionalAccess(BoundConditionalAccess node) => this.DefaultVisit(node);
9734public virtual BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node) => this.DefaultVisit(node);
9735public virtual BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node) => this.DefaultVisit(node);
9736public virtual BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node) => this.DefaultVisit(node);
9737public virtual BoundNode? VisitMethodGroup(BoundMethodGroup node) => this.DefaultVisit(node);
9738public virtual BoundNode? VisitPropertyGroup(BoundPropertyGroup node) => this.DefaultVisit(node);
9739public virtual BoundNode? VisitCall(BoundCall node) => this.DefaultVisit(node);
9740public virtual BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node) => this.DefaultVisit(node);
9741public virtual BoundNode? VisitAttribute(BoundAttribute node) => this.DefaultVisit(node);
9742public virtual BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node) => this.DefaultVisit(node);
9743public virtual BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node) => this.DefaultVisit(node);
9744public virtual BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node) => this.DefaultVisit(node);
9745public virtual BoundNode? VisitCollectionExpression(BoundCollectionExpression node) => this.DefaultVisit(node);
9746public virtual BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node) => this.DefaultVisit(node);
9747public virtual BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node) => this.DefaultVisit(node);
9748public virtual BoundNode? VisitTupleLiteral(BoundTupleLiteral node) => this.DefaultVisit(node);
9749public virtual BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node) => this.DefaultVisit(node);
9750public virtual BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node) => this.DefaultVisit(node);
9751public virtual BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node) => this.DefaultVisit(node);
9752public virtual BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node) => this.DefaultVisit(node);
9753public virtual BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node) => this.DefaultVisit(node);
9754public virtual BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node) => this.DefaultVisit(node);
9755public virtual BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node) => this.DefaultVisit(node);
9756public virtual BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node) => this.DefaultVisit(node);
9757public virtual BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node) => this.DefaultVisit(node);
9758public virtual BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node) => this.DefaultVisit(node);
9759public virtual BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node) => this.DefaultVisit(node);
9760public virtual BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node) => this.DefaultVisit(node);
9761public virtual BoundNode? VisitNewT(BoundNewT node) => this.DefaultVisit(node);
9762public virtual BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node) => this.DefaultVisit(node);
9763public virtual BoundNode? VisitArrayCreation(BoundArrayCreation node) => this.DefaultVisit(node);
9764public virtual BoundNode? VisitArrayInitialization(BoundArrayInitialization node) => this.DefaultVisit(node);
9765public virtual BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node) => this.DefaultVisit(node);
9766public virtual BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node) => this.DefaultVisit(node);
9767public virtual BoundNode? VisitFieldAccess(BoundFieldAccess node) => this.DefaultVisit(node);
9768public virtual BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node) => this.DefaultVisit(node);
9769public virtual BoundNode? VisitPropertyAccess(BoundPropertyAccess node) => this.DefaultVisit(node);
9770public virtual BoundNode? VisitEventAccess(BoundEventAccess node) => this.DefaultVisit(node);
9771public virtual BoundNode? VisitIndexerAccess(BoundIndexerAccess node) => this.DefaultVisit(node);
9772public virtual BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node) => this.DefaultVisit(node);
9773public virtual BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node) => this.DefaultVisit(node);
9774public virtual BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node) => this.DefaultVisit(node);
9775public virtual BoundNode? VisitLambda(BoundLambda node) => this.DefaultVisit(node);
9776public virtual BoundNode? VisitUnboundLambda(UnboundLambda node) => this.DefaultVisit(node);
9777public virtual BoundNode? VisitQueryClause(BoundQueryClause node) => this.DefaultVisit(node);
9778public virtual BoundNode? VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node) => this.DefaultVisit(node);
9779public virtual BoundNode? VisitNameOfOperator(BoundNameOfOperator node) => this.DefaultVisit(node);
9780public virtual BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node) => this.DefaultVisit(node);
9781public virtual BoundNode? VisitInterpolatedString(BoundInterpolatedString node) => this.DefaultVisit(node);
9782public virtual BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node) => this.DefaultVisit(node);
9783public virtual BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node) => this.DefaultVisit(node);
9784public virtual BoundNode? VisitStringInsert(BoundStringInsert node) => this.DefaultVisit(node);
9785public virtual BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node) => this.DefaultVisit(node);
9786public virtual BoundNode? VisitConstantPattern(BoundConstantPattern node) => this.DefaultVisit(node);
9787public virtual BoundNode? VisitDiscardPattern(BoundDiscardPattern node) => this.DefaultVisit(node);
9788public virtual BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node) => this.DefaultVisit(node);
9789public virtual BoundNode? VisitRecursivePattern(BoundRecursivePattern node) => this.DefaultVisit(node);
9790public virtual BoundNode? VisitListPattern(BoundListPattern node) => this.DefaultVisit(node);
9791public virtual BoundNode? VisitSlicePattern(BoundSlicePattern node) => this.DefaultVisit(node);
9792public virtual BoundNode? VisitITuplePattern(BoundITuplePattern node) => this.DefaultVisit(node);
9793public virtual BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node) => this.DefaultVisit(node);
9794public virtual BoundNode? VisitPropertySubpattern(BoundPropertySubpattern node) => this.DefaultVisit(node);
9795public virtual BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node) => this.DefaultVisit(node);
9796public virtual BoundNode? VisitTypePattern(BoundTypePattern node) => this.DefaultVisit(node);
9797public virtual BoundNode? VisitBinaryPattern(BoundBinaryPattern node) => this.DefaultVisit(node);
9798public virtual BoundNode? VisitNegatedPattern(BoundNegatedPattern node) => this.DefaultVisit(node);
9799public virtual BoundNode? VisitRelationalPattern(BoundRelationalPattern node) => this.DefaultVisit(node);
9800public virtual BoundNode? VisitDiscardExpression(BoundDiscardExpression node) => this.DefaultVisit(node);
9801public virtual BoundNode? VisitThrowExpression(BoundThrowExpression node) => this.DefaultVisit(node);
9802public virtual BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node) => this.DefaultVisit(node);
9803public virtual BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node) => this.DefaultVisit(node);
9804public virtual BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node) => this.DefaultVisit(node);
9805public virtual BoundNode? VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node) => this.DefaultVisit(node);
9806public virtual BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node) => this.DefaultVisit(node);
9807public virtual BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node) => this.DefaultVisit(node);
9808public virtual BoundNode? VisitWithExpression(BoundWithExpression node) => this.DefaultVisit(node);
9813public override BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node)
9818public override BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node)
9823public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node)
9828public override BoundNode? VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node)
9833public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node) => null;
9834public override BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node)
9839public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node) => null;
9840public override BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node) => null;
9841public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node) => null;
9842public override BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node) => null;
9843public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node) => null;
9844public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node) => null;
9845public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node) => null;
9846public override BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node) => null;
9847public override BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node) => null;
9848public override BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node) => null;
9849public override BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node) => null;
9850public override BoundNode? VisitDup(BoundDup node) => null;
9851public override BoundNode? VisitPassByCopy(BoundPassByCopy node)
9856public override BoundNode? VisitBadExpression(BoundBadExpression node)
9861public override BoundNode? VisitBadStatement(BoundBadStatement node)
9866public override BoundNode? VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node)
9871public override BoundNode? VisitTypeExpression(BoundTypeExpression node)
9877public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node) => null;
9878public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node) => null;
9879public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node)
9884public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node)
9889public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node)
9894public override BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node)
9899public override BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node) => null;
9900public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
9905public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node)
9911public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
9917public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node)
9922public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node)
9927public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node)
9932public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
9937public override BoundNode? VisitRangeExpression(BoundRangeExpression node)
9943public override BoundNode? VisitBinaryOperator(BoundBinaryOperator node)
9949public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
9955public override BoundNode? VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node)
9961public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
9967public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
9973public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
9979public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
9985public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
9991public override BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node)
9998public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node)
10005public override BoundNode? VisitArrayAccess(BoundArrayAccess node)
10011public override BoundNode? VisitRefArrayAccess(BoundRefArrayAccess node)
10016public override BoundNode? VisitArrayLength(BoundArrayLength node)
10021public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node)
10027public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
10033public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node)
10038public override BoundNode? VisitBlockInstrumentation(BoundBlockInstrumentation node)
10044public override BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node) => null;
10045public override BoundNode? VisitLocalId(BoundLocalId node) => null;
10046public override BoundNode? VisitParameterId(BoundParameterId node) => null;
10047public override BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node) => null;
10048public override BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node) => null;
10049public override BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node) => null;
10050public override BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node) => null;
10051public override BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node) => null;
10052public override BoundNode? VisitModuleVersionId(BoundModuleVersionId node) => null;
10053public override BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node) => null;
10054public override BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node) => null;
10055public override BoundNode? VisitMethodInfo(BoundMethodInfo node) => null;
10056public override BoundNode? VisitFieldInfo(BoundFieldInfo node) => null;
10057public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node) => null;
10058public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node) => null;
10059public override BoundNode? VisitIsOperator(BoundIsOperator node)
10065public override BoundNode? VisitAsOperator(BoundAsOperator node)
10071public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node)
10076public override BoundNode? VisitConversion(BoundConversion node)
10081public override BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node)
10086public override BoundNode? VisitArgList(BoundArgList node) => null;
10087public override BoundNode? VisitArgListOperator(BoundArgListOperator node)
10092public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
10097public override BoundNode? VisitSequencePoint(BoundSequencePoint node)
10102public override BoundNode? VisitSequencePointWithSpan(BoundSequencePointWithSpan node)
10107public override BoundNode? VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node) => null;
10108public override BoundNode? VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node) => null;
10109public override BoundNode? VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node) => null;
10110public override BoundNode? VisitBlock(BoundBlock node)
10116public override BoundNode? VisitScope(BoundScope node)
10121public override BoundNode? VisitStateMachineScope(BoundStateMachineScope node)
10126public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node)
10133public override BoundNode? VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node)
10138public override BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node)
10144public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
10150public override BoundNode? VisitNoOpStatement(BoundNoOpStatement node) => null;
10151public override BoundNode? VisitReturnStatement(BoundReturnStatement node)
10156public override BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node)
10161public override BoundNode? VisitYieldBreakStatement(BoundYieldBreakStatement node) => null;
10162public override BoundNode? VisitThrowStatement(BoundThrowStatement node)
10167public override BoundNode? VisitExpressionStatement(BoundExpressionStatement node)
10172public override BoundNode? VisitBreakStatement(BoundBreakStatement node) => null;
10173public override BoundNode? VisitContinueStatement(BoundContinueStatement node) => null;
10174public override BoundNode? VisitSwitchStatement(BoundSwitchStatement node)
10181public override BoundNode? VisitSwitchDispatch(BoundSwitchDispatch node)
10186public override BoundNode? VisitIfStatement(BoundIfStatement node)
10193public override BoundNode? VisitDoStatement(BoundDoStatement node)
10199public override BoundNode? VisitWhileStatement(BoundWhileStatement node)
10205public override BoundNode? VisitForStatement(BoundForStatement node)
10213public override BoundNode? VisitForEachStatement(BoundForEachStatement node)
10223public override BoundNode? VisitForEachDeconstructStep(BoundForEachDeconstructStep node)
10229public override BoundNode? VisitUsingStatement(BoundUsingStatement node)
10237public override BoundNode? VisitFixedStatement(BoundFixedStatement node)
10243public override BoundNode? VisitLockStatement(BoundLockStatement node)
10249public override BoundNode? VisitTryStatement(BoundTryStatement node)
10256public override BoundNode? VisitCatchBlock(BoundCatchBlock node)
10264public override BoundNode? VisitLiteral(BoundLiteral node) => null;
10265public override BoundNode? VisitUtf8String(BoundUtf8String node) => null;
10266public override BoundNode? VisitThisReference(BoundThisReference node) => null;
10267public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node) => null;
10268public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node) => null;
10269public override BoundNode? VisitBaseReference(BoundBaseReference node) => null;
10270public override BoundNode? VisitLocal(BoundLocal node) => null;
10271public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node) => null;
10272public override BoundNode? VisitRangeVariable(BoundRangeVariable node)
10277public override BoundNode? VisitParameter(BoundParameter node) => null;
10278public override BoundNode? VisitLabelStatement(BoundLabelStatement node) => null;
10279public override BoundNode? VisitGotoStatement(BoundGotoStatement node)
10285public override BoundNode? VisitLabeledStatement(BoundLabeledStatement node)
10290public override BoundNode? VisitLabel(BoundLabel node) => null;
10291public override BoundNode? VisitStatementList(BoundStatementList node)
10296public override BoundNode? VisitConditionalGoto(BoundConditionalGoto node)
10301public override BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node)
10308public override BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node)
10314public override BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node)
10320public override BoundNode? VisitDecisionDag(BoundDecisionDag node)
10325public override BoundNode? VisitEvaluationDecisionDagNode(BoundEvaluationDecisionDagNode node)
10331public override BoundNode? VisitTestDecisionDagNode(BoundTestDecisionDagNode node)
10338public override BoundNode? VisitWhenDecisionDagNode(BoundWhenDecisionDagNode node)
10345public override BoundNode? VisitLeafDecisionDagNode(BoundLeafDecisionDagNode node) => null;
10346public override BoundNode? VisitDagTemp(BoundDagTemp node)
10351public override BoundNode? VisitDagTypeTest(BoundDagTypeTest node)
10356public override BoundNode? VisitDagNonNullTest(BoundDagNonNullTest node)
10361public override BoundNode? VisitDagExplicitNullTest(BoundDagExplicitNullTest node)
10366public override BoundNode? VisitDagValueTest(BoundDagValueTest node)
10371public override BoundNode? VisitDagRelationalTest(BoundDagRelationalTest node)
10376public override BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node)
10381public override BoundNode? VisitDagTypeEvaluation(BoundDagTypeEvaluation node)
10386public override BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node)
10391public override BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node)
10396public override BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node)
10401public override BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node)
10410public override BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node)
10419public override BoundNode? VisitDagAssignmentEvaluation(BoundDagAssignmentEvaluation node)
10425public override BoundNode? VisitSwitchSection(BoundSwitchSection node)
10431public override BoundNode? VisitSwitchLabel(BoundSwitchLabel node)
10437public override BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node)
10442public override BoundNode? VisitSequence(BoundSequence node)
10448public override BoundNode? VisitSpillSequence(BoundSpillSequence node)
10454public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
10459public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node)
10465public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
10471public override BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node)
10478public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node) => null;
10479public override BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node)
10485public override BoundNode? VisitMethodGroup(BoundMethodGroup node)
10490public override BoundNode? VisitPropertyGroup(BoundPropertyGroup node)
10495public override BoundNode? VisitCall(BoundCall node)
10501public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
10507public override BoundNode? VisitAttribute(BoundAttribute node)
10513public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
10518public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node)
10524public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
10529public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node)
10534public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node) => null;
10535public override BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node)
10540public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node)
10545public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
10550public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
10556public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
10561public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
10567public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node)
10572public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node) => null;
10573public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
10579public override BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node)
10585public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
10591public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node) => null;
10592public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
10598public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node) => null;
10599public override BoundNode? VisitNewT(BoundNewT node)
10604public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
10609public override BoundNode? VisitArrayCreation(BoundArrayCreation node)
10615public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node)
10620public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
10626public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
10632public override BoundNode? VisitFieldAccess(BoundFieldAccess node)
10637public override BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node) => null;
10638public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
10643public override BoundNode? VisitEventAccess(BoundEventAccess node)
10648public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
10654public override BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node)
10660public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node)
10666public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
10672public override BoundNode? VisitLambda(BoundLambda node)
10677public override BoundNode? VisitUnboundLambda(UnboundLambda node) => null;
10678public override BoundNode? VisitQueryClause(BoundQueryClause node)
10683public override BoundNode? VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node)
10688public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node)
10693public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
10698public override BoundNode? VisitInterpolatedString(BoundInterpolatedString node)
10703public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node) => null;
10704public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node) => null;
10705public override BoundNode? VisitStringInsert(BoundStringInsert node)
10712public override BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node)
10718public override BoundNode? VisitConstantPattern(BoundConstantPattern node)
10723public override BoundNode? VisitDiscardPattern(BoundDiscardPattern node) => null;
10724public override BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node)
10730public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node)
10738public override BoundNode? VisitListPattern(BoundListPattern node)
10744public override BoundNode? VisitSlicePattern(BoundSlicePattern node)
10749public override BoundNode? VisitITuplePattern(BoundITuplePattern node)
10754public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node)
10759public override BoundNode? VisitPropertySubpattern(BoundPropertySubpattern node)
10765public override BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node)
10770public override BoundNode? VisitTypePattern(BoundTypePattern node)
10775public override BoundNode? VisitBinaryPattern(BoundBinaryPattern node)
10781public override BoundNode? VisitNegatedPattern(BoundNegatedPattern node)
10786public override BoundNode? VisitRelationalPattern(BoundRelationalPattern node)
10791public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node) => null;
10792public override BoundNode? VisitThrowExpression(BoundThrowExpression node)
10797public override BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node)
10802public override BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node)
10807public override BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node) => null;
10808public override BoundNode? VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node)
10814public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node)
10821public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node)
10826public override BoundNode? VisitWithExpression(BoundWithExpression node)
10836public override BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node)
10841public override BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node)
10846public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node)
10851public override BoundNode? VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node)
10856public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node)
10861public override BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node)
10867public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node)
10872public override BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node)
10877public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
10882public override BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node)
10887public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node)
10892public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node)
10897public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node)
10902public override BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node)
10907public override BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node)
10912public override BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node)
10917public override BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node)
10922public override BoundNode? VisitDup(BoundDup node)
10927public override BoundNode? VisitPassByCopy(BoundPassByCopy node)
10933public override BoundNode? VisitBadExpression(BoundBadExpression node)
10939public override BoundNode? VisitBadStatement(BoundBadStatement node)
10941ImmutableArray<BoundNode> childBoundNodes = this.VisitList(node.ChildBoundNodes);
10944public override BoundNode? VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node)
10949public override BoundNode? VisitTypeExpression(BoundTypeExpression node)
10956public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node)
10961public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node)
10966public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node)
10973public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node)
10984public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node)
10990public override BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node)
10996public override BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node)
11002public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
11008public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node)
11015public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
11022public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node)
11028public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node)
11034public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node)
11040public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
11046public override BoundNode? VisitRangeExpression(BoundRangeExpression node)
11053public override BoundNode? VisitBinaryOperator(BoundBinaryOperator node)
11060public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
11067public override BoundNode? VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node)
11075public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
11086public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
11093public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
11100public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
11109public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
11116public override BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node)
11124public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node)
11133public override BoundNode? VisitArrayAccess(BoundArrayAccess node)
11140public override BoundNode? VisitRefArrayAccess(BoundRefArrayAccess node)
11146public override BoundNode? VisitArrayLength(BoundArrayLength node)
11152public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node)
11158public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
11165public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node)
11171public override BoundNode? VisitBlockInstrumentation(BoundBlockInstrumentation node)
11177public override BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node)
11182public override BoundNode? VisitLocalId(BoundLocalId node)
11187public override BoundNode? VisitParameterId(BoundParameterId node)
11192public override BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node)
11197public override BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node)
11202public override BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node)
11207public override BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node)
11212public override BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node)
11217public override BoundNode? VisitModuleVersionId(BoundModuleVersionId node)
11222public override BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node)
11227public override BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node)
11232public override BoundNode? VisitMethodInfo(BoundMethodInfo node)
11237public override BoundNode? VisitFieldInfo(BoundFieldInfo node)
11242public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node)
11247public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node)
11253public override BoundNode? VisitIsOperator(BoundIsOperator node)
11260public override BoundNode? VisitAsOperator(BoundAsOperator node)
11269public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node)
11275public override BoundNode? VisitConversion(BoundConversion node)
11281public override BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node)
11287public override BoundNode? VisitArgList(BoundArgList node)
11292public override BoundNode? VisitArgListOperator(BoundArgListOperator node)
11298public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
11307public override BoundNode? VisitSequencePoint(BoundSequencePoint node)
11312public override BoundNode? VisitSequencePointWithSpan(BoundSequencePointWithSpan node)
11317public override BoundNode? VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node) => node;
11318public override BoundNode? VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node) => node;
11319public override BoundNode? VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node) => node;
11320public override BoundNode? VisitBlock(BoundBlock node)
11326public override BoundNode? VisitScope(BoundScope node)
11331public override BoundNode? VisitStateMachineScope(BoundStateMachineScope node)
11336public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node)
11343public override BoundNode? VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node)
11348public override BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node)
11354public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
11360public override BoundNode? VisitNoOpStatement(BoundNoOpStatement node) => node;
11361public override BoundNode? VisitReturnStatement(BoundReturnStatement node)
11366public override BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node)
11371public override BoundNode? VisitYieldBreakStatement(BoundYieldBreakStatement node) => node;
11372public override BoundNode? VisitThrowStatement(BoundThrowStatement node)
11377public override BoundNode? VisitExpressionStatement(BoundExpressionStatement node)
11382public override BoundNode? VisitBreakStatement(BoundBreakStatement node) => node;
11383public override BoundNode? VisitContinueStatement(BoundContinueStatement node) => node;
11384public override BoundNode? VisitSwitchStatement(BoundSwitchStatement node)
11392public override BoundNode? VisitSwitchDispatch(BoundSwitchDispatch node)
11397public override BoundNode? VisitIfStatement(BoundIfStatement node)
11404public override BoundNode? VisitDoStatement(BoundDoStatement node)
11410public override BoundNode? VisitWhileStatement(BoundWhileStatement node)
11416public override BoundNode? VisitForStatement(BoundForStatement node)
11424public override BoundNode? VisitForEachStatement(BoundForEachStatement node)
11436public override BoundNode? VisitForEachDeconstructStep(BoundForEachDeconstructStep node)
11442public override BoundNode? VisitUsingStatement(BoundUsingStatement node)
11450public override BoundNode? VisitFixedStatement(BoundFixedStatement node)
11456public override BoundNode? VisitLockStatement(BoundLockStatement node)
11462public override BoundNode? VisitTryStatement(BoundTryStatement node)
11469public override BoundNode? VisitCatchBlock(BoundCatchBlock node)
11478public override BoundNode? VisitLiteral(BoundLiteral node)
11483public override BoundNode? VisitUtf8String(BoundUtf8String node)
11488public override BoundNode? VisitThisReference(BoundThisReference node)
11493public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node)
11498public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node)
11503public override BoundNode? VisitBaseReference(BoundBaseReference node)
11508public override BoundNode? VisitLocal(BoundLocal node)
11513public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node)
11518public override BoundNode? VisitRangeVariable(BoundRangeVariable node)
11524public override BoundNode? VisitParameter(BoundParameter node)
11529public override BoundNode? VisitLabelStatement(BoundLabelStatement node) => node;
11530public override BoundNode? VisitGotoStatement(BoundGotoStatement node)
11536public override BoundNode? VisitLabeledStatement(BoundLabeledStatement node)
11541public override BoundNode? VisitLabel(BoundLabel node)
11546public override BoundNode? VisitStatementList(BoundStatementList node)
11551public override BoundNode? VisitConditionalGoto(BoundConditionalGoto node)
11556public override BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node)
11563public override BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node)
11571public override BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node)
11580public override BoundNode? VisitDecisionDag(BoundDecisionDag node)
11585public override BoundNode? VisitEvaluationDecisionDagNode(BoundEvaluationDecisionDagNode node)
11591public override BoundNode? VisitTestDecisionDagNode(BoundTestDecisionDagNode node)
11598public override BoundNode? VisitWhenDecisionDagNode(BoundWhenDecisionDagNode node)
11605public override BoundNode? VisitLeafDecisionDagNode(BoundLeafDecisionDagNode node) => node;
11606public override BoundNode? VisitDagTemp(BoundDagTemp node)
11612public override BoundNode? VisitDagTypeTest(BoundDagTypeTest node)
11618public override BoundNode? VisitDagNonNullTest(BoundDagNonNullTest node)
11623public override BoundNode? VisitDagExplicitNullTest(BoundDagExplicitNullTest node)
11628public override BoundNode? VisitDagValueTest(BoundDagValueTest node)
11633public override BoundNode? VisitDagRelationalTest(BoundDagRelationalTest node)
11638public override BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node)
11643public override BoundNode? VisitDagTypeEvaluation(BoundDagTypeEvaluation node)
11649public override BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node)
11654public override BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node)
11659public override BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node)
11664public override BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node)
11674public override BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node)
11684public override BoundNode? VisitDagAssignmentEvaluation(BoundDagAssignmentEvaluation node)
11690public override BoundNode? VisitSwitchSection(BoundSwitchSection node)
11696public override BoundNode? VisitSwitchLabel(BoundSwitchLabel node)
11702public override BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node)
11708public override BoundNode? VisitSequence(BoundSequence node)
11715public override BoundNode? VisitSpillSequence(BoundSpillSequence node)
11722public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
11728public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node)
11735public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
11742public override BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node)
11750public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node)
11755public override BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node)
11762public override BoundNode? VisitMethodGroup(BoundMethodGroup node)
11768public override BoundNode? VisitPropertyGroup(BoundPropertyGroup node)
11774public override BoundNode? VisitCall(BoundCall node)
11781public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
11788public override BoundNode? VisitAttribute(BoundAttribute node)
11795public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
11801public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node)
11808public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
11810ImmutableArray<BoundNode> elements = this.VisitList(node.Elements);
11814public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node)
11821ImmutableArray<BoundNode> elements = this.VisitList(node.Elements);
11825public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node)
11830public override BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node)
11840public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node)
11846public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
11853public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
11860public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
11866public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
11873public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node)
11880public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
11886public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
11893public override BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node)
11900public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
11907public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node)
11912public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
11919public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node)
11924public override BoundNode? VisitNewT(BoundNewT node)
11930public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
11936public override BoundNode? VisitArrayCreation(BoundArrayCreation node)
11943public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node)
11949public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
11957public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
11965public override BoundNode? VisitFieldAccess(BoundFieldAccess node)
11971public override BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node)
11976public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
11982public override BoundNode? VisitEventAccess(BoundEventAccess node)
11988public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
11995public override BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node)
12006public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node)
12013public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
12020public override BoundNode? VisitLambda(BoundLambda node)
12027public override BoundNode? VisitUnboundLambda(UnboundLambda node)
12032public override BoundNode? VisitQueryClause(BoundQueryClause node)
12041public override BoundNode? VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node)
12046public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node)
12052public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
12058public override BoundNode? VisitInterpolatedString(BoundInterpolatedString node)
12064public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node)
12069public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node)
12074public override BoundNode? VisitStringInsert(BoundStringInsert node)
12082public override BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node)
12090public override BoundNode? VisitConstantPattern(BoundConstantPattern node)
12097public override BoundNode? VisitDiscardPattern(BoundDiscardPattern node)
12103public override BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node)
12111public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node)
12121public override BoundNode? VisitListPattern(BoundListPattern node)
12133public override BoundNode? VisitSlicePattern(BoundSlicePattern node)
12143public override BoundNode? VisitITuplePattern(BoundITuplePattern node)
12150public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node)
12155public override BoundNode? VisitPropertySubpattern(BoundPropertySubpattern node)
12161public override BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node)
12167public override BoundNode? VisitTypePattern(BoundTypePattern node)
12174public override BoundNode? VisitBinaryPattern(BoundBinaryPattern node)
12182public override BoundNode? VisitNegatedPattern(BoundNegatedPattern node)
12189public override BoundNode? VisitRelationalPattern(BoundRelationalPattern node)
12196public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node)
12201public override BoundNode? VisitThrowExpression(BoundThrowExpression node)
12207public override BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node)
12213public override BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node)
12219public override BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node)
12224public override BoundNode? VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node)
12230public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node)
12237public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node)
12243public override BoundNode? VisitWithExpression(BoundWithExpression node)
12265public override BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node)
12273public override BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node)
12281public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node)
12289public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node)
12301public override BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node)
12318public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node)
12335public override BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node)
12347public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
12359public override BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node)
12371public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node)
12383public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node)
12395public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node)
12407public override BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node)
12419public override BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node)
12431public override BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node)
12443public override BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node)
12455public override BoundNode? VisitDup(BoundDup node)
12467public override BoundNode? VisitPassByCopy(BoundPassByCopy node)
12484public override BoundNode? VisitBadExpression(BoundBadExpression node)
12502public override BoundNode? VisitTypeExpression(BoundTypeExpression node)
12520public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node)
12532public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node)
12544public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node)
12564public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node)
12588public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node)
12605public override BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node)
12622public override BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node)
12640public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
12657public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node)
12675public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
12693public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node)
12711public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node)
12728public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node)
12745public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
12763public override BoundNode? VisitRangeExpression(BoundRangeExpression node)
12782public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
12800public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
12823public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
12841public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
12859public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
12879public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
12897public override BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node)
12916public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node)
12936public override BoundNode? VisitArrayAccess(BoundArrayAccess node)
12954public override BoundNode? VisitRefArrayAccess(BoundRefArrayAccess node)
12971public override BoundNode? VisitArrayLength(BoundArrayLength node)
12988public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node)
12997public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
13015public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node)
13033public override BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node)
13050public override BoundNode? VisitLocalId(BoundLocalId node)
13068public override BoundNode? VisitParameterId(BoundParameterId node)
13086public override BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node)
13098public override BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node)
13110public override BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node)
13122public override BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node)
13134public override BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node)
13146public override BoundNode? VisitModuleVersionId(BoundModuleVersionId node)
13158public override BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node)
13170public override BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node)
13182public override BoundNode? VisitMethodInfo(BoundMethodInfo node)
13200public override BoundNode? VisitFieldInfo(BoundFieldInfo node)
13218public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node)
13230public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node)
13247public override BoundNode? VisitIsOperator(BoundIsOperator node)
13265public override BoundNode? VisitAsOperator(BoundAsOperator node)
13285public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node)
13302public override BoundNode? VisitConversion(BoundConversion node)
13320public override BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node)
13338public override BoundNode? VisitArgList(BoundArgList node)
13350public override BoundNode? VisitArgListOperator(BoundArgListOperator node)
13367public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
13388public override BoundNode? VisitBlock(BoundBlock node)
13397public override BoundNode? VisitScope(BoundScope node)
13404public override BoundNode? VisitStateMachineScope(BoundStateMachineScope node)
13411public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node)
13420public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
13428public override BoundNode? VisitSwitchStatement(BoundSwitchStatement node)
13439public override BoundNode? VisitDoStatement(BoundDoStatement node)
13447public override BoundNode? VisitWhileStatement(BoundWhileStatement node)
13455public override BoundNode? VisitForStatement(BoundForStatement node)
13466public override BoundNode? VisitForEachStatement(BoundForEachStatement node)
13480public override BoundNode? VisitUsingStatement(BoundUsingStatement node)
13490public override BoundNode? VisitFixedStatement(BoundFixedStatement node)
13498public override BoundNode? VisitCatchBlock(BoundCatchBlock node)
13509public override BoundNode? VisitLiteral(BoundLiteral node)
13521public override BoundNode? VisitUtf8String(BoundUtf8String node)
13533public override BoundNode? VisitThisReference(BoundThisReference node)
13545public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node)
13557public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node)
13569public override BoundNode? VisitBaseReference(BoundBaseReference node)
13581public override BoundNode? VisitLocal(BoundLocal node)
13598public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node)
13615public override BoundNode? VisitRangeVariable(BoundRangeVariable node)
13633public override BoundNode? VisitParameter(BoundParameter node)
13650public override BoundNode? VisitLabel(BoundLabel node)
13662public override BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node)
13671public override BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node)
13690public override BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node)
13710public override BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node)
13717public override BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node)
13724public override BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node)
13731public override BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node)
13738public override BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node)
13749public override BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node)
13760public override BoundNode? VisitSwitchSection(BoundSwitchSection node)
13768public override BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node)
13785public override BoundNode? VisitSequence(BoundSequence node)
13804public override BoundNode? VisitSpillSequence(BoundSpillSequence node)
13823public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
13840public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node)
13859public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
13877public override BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node)
13897public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node)
13909public override BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node)
13927public override BoundNode? VisitMethodGroup(BoundMethodGroup node)
13947public override BoundNode? VisitPropertyGroup(BoundPropertyGroup node)
13965public override BoundNode? VisitCall(BoundCall node)
13985public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
14004public override BoundNode? VisitAttribute(BoundAttribute node)
14023public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
14040public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node)
14060public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
14062ImmutableArray<BoundNode> elements = this.VisitList(node.Elements);
14077public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node)
14085ImmutableArray<BoundNode> elements = this.VisitList(node.Elements);
14100public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node)
14112public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node)
14129public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
14147public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
14166public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
14183public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
14201public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node)
14220public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
14237public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
14255public override BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node)
14274public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
14293public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node)
14305public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
14324public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node)
14341public override BoundNode? VisitNewT(BoundNewT node)
14358public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
14376public override BoundNode? VisitArrayCreation(BoundArrayCreation node)
14394public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node)
14411public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
14430public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
14449public override BoundNode? VisitFieldAccess(BoundFieldAccess node)
14467public override BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node)
14484public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
14502public override BoundNode? VisitEventAccess(BoundEventAccess node)
14520public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
14540public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node)
14558public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
14577public override BoundNode? VisitLambda(BoundLambda node)
14596public override BoundNode? VisitUnboundLambda(UnboundLambda node)
14613public override BoundNode? VisitQueryClause(BoundQueryClause node)
14634public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node)
14651public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
14668public override BoundNode? VisitInterpolatedString(BoundInterpolatedString node)
14685public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node)
14697public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node)
14709public override BoundNode? VisitStringInsert(BoundStringInsert node)
14728public override BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node)
14747public override BoundNode? VisitConstantPattern(BoundConstantPattern node)
14755public override BoundNode? VisitDiscardPattern(BoundDiscardPattern node)
14762public override BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node)
14772public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node)
14785public override BoundNode? VisitListPattern(BoundListPattern node)
14799public override BoundNode? VisitSlicePattern(BoundSlicePattern node)
14810public override BoundNode? VisitITuplePattern(BoundITuplePattern node)
14820public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node)
14827public override BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node)
14834public override BoundNode? VisitTypePattern(BoundTypePattern node)
14842public override BoundNode? VisitBinaryPattern(BoundBinaryPattern node)
14851public override BoundNode? VisitNegatedPattern(BoundNegatedPattern node)
14859public override BoundNode? VisitRelationalPattern(BoundRelationalPattern node)
14867public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node)
14879public override BoundNode? VisitThrowExpression(BoundThrowExpression node)
14896public override BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node)
14914public override BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node)
14932public override BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node)
14949public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node)
14958public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node)
14975public override BoundNode? VisitWithExpression(BoundWithExpression node)
15000public 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);
1917BoundNode.GetConversion(enumeratorInfoOpt.CurrentConversion, enumeratorInfoOpt.CurrentPlaceholder),
1918BoundNode.GetConversion(boundForEachStatement.ElementConversion, boundForEachStatement.ElementPlaceholder),
2033IOperation resources = Create(boundUsingStatement.DeclarationsOpt ?? (BoundNode)boundUsingStatement.ExpressionOpt!);
2095var children = CreateFromArray<BoundNode, IOperation>(boundBadStatement.ChildBoundNodes);