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
1876BoundNode lowestBoundNode,
1877BoundNode highestBoundNode,
1878BoundNode boundNodeForSyntacticParent,
2024BoundNode lowestBoundNode,
2025BoundNode highestBoundNode,
2026BoundNode boundNodeForSyntacticParent)
2135conversion = BoundNode.GetConversion(initializer.ElementPointerConversion, initializer.ElementPointerPlaceholder);
2282BoundNode lowestBoundNode,
2283BoundNode boundNodeForSyntacticParent,
2304BoundNode lowestBoundNode,
2396internal virtual BoundNode Bind(Binder binder, CSharpSyntaxNode node, BindingDiagnosticBag diagnostics)
3351BoundNode boundNodeForSyntacticParent,
3972BoundNode boundNodeForSyntacticParent,
4023BoundNode lowestBoundNode,
4243BoundNode boundNodeForSyntacticParent,
4396BoundNode 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 (200)
65protected readonly BoundNode methodMainNode;
171protected readonly BoundNode firstInRegion, lastInRegion;
184BoundNode node,
185BoundNode firstInRegion = null,
186BoundNode lastInRegion = null,
259private void EnterRegionIfNeeded(BoundNode node)
276private void LeaveRegionIfNeeded(BoundNode node)
340public override BoundNode Visit(BoundNode node)
345protected BoundNode VisitAlways(BoundNode node)
347BoundNode result = null;
361private BoundNode VisitWithStackGuard(BoundNode node)
372protected override BoundNode VisitExpressionOrPatternWithoutStackGuard(BoundNode node)
393public readonly BoundNode Branch;
402public PendingBranch(BoundNode branch, TLocalState state, LabelSymbol label, bool isConditionalState = false, TLocalState stateWhenTrue = default, TLocalState stateWhenFalse = default)
761protected virtual void NoteBranch(PendingBranch pending, BoundNode gotoStmt, BoundStatement target)
894public override BoundNode DefaultVisit(BoundNode node)
901public override BoundNode VisitAttribute(BoundAttribute node)
907public override BoundNode VisitThrowExpression(BoundThrowExpression node)
914public override BoundNode VisitPassByCopy(BoundPassByCopy node)
920public override BoundNode VisitIsPatternExpression(BoundIsPatternExpression node)
1107public override BoundNode VisitConstantPattern(BoundConstantPattern node)
1113public override BoundNode VisitBinaryPattern(BoundBinaryPattern node)
1119public override BoundNode VisitTupleLiteral(BoundTupleLiteral node)
1124public override BoundNode VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
1129private BoundNode VisitTupleExpression(BoundTupleExpression node)
1135public override BoundNode VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
1142public override BoundNode VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
1149public override BoundNode VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
1156public override BoundNode VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
1162public override BoundNode VisitDynamicInvocation(BoundDynamicInvocation node)
1170protected BoundNode? VisitInterpolatedStringBase(BoundInterpolatedStringBase node, InterpolatedStringHandlerData? data)
1201public override BoundNode VisitInterpolatedString(BoundInterpolatedString node)
1206public override BoundNode VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
1212public override BoundNode VisitStringInsert(BoundStringInsert node)
1228public override BoundNode VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node)
1233public override BoundNode VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node)
1238public override BoundNode VisitArgList(BoundArgList node)
1245public override BoundNode VisitArgListOperator(BoundArgListOperator node)
1252public override BoundNode VisitRefTypeOperator(BoundRefTypeOperator node)
1258public override BoundNode VisitMakeRefOperator(BoundMakeRefOperator node)
1267public override BoundNode VisitRefValueOperator(BoundRefValueOperator node)
1273public override BoundNode VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node)
1279public override BoundNode VisitLambda(BoundLambda node) => null;
1281public override BoundNode VisitLocal(BoundLocal node)
1287public override BoundNode VisitLocalDeclaration(BoundLocalDeclaration node)
1304public override BoundNode VisitBlock(BoundBlock node)
1318public override BoundNode VisitScope(BoundScope node)
1324public override BoundNode VisitExpressionStatement(BoundExpressionStatement node)
1330public override BoundNode VisitCall(BoundCall node)
1479public override BoundNode VisitIndexerAccess(BoundIndexerAccess node)
1492public override BoundNode VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node)
1505public override BoundNode VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
1581public override BoundNode VisitBadExpression(BoundBadExpression node)
1591public override BoundNode VisitBadStatement(BoundBadStatement node)
1593foreach (var child in node.ChildBoundNodes)
1608public override BoundNode VisitArrayInitialization(BoundArrayInitialization node)
1618public override BoundNode VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
1648public override BoundNode VisitTypeExpression(BoundTypeExpression node)
1653public override BoundNode VisitTypeOrValueExpression(BoundTypeOrValueExpression node)
1661public override BoundNode VisitLiteral(BoundLiteral node)
1667public override BoundNode VisitUtf8String(BoundUtf8String node)
1690public override BoundNode VisitLocalId(BoundLocalId node)
1695public override BoundNode VisitParameterId(BoundParameterId node)
1700public override BoundNode VisitMethodDefIndex(BoundMethodDefIndex node)
1705public override BoundNode VisitStateMachineInstanceId(BoundStateMachineInstanceId node)
1710public override BoundNode VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node)
1715public override BoundNode VisitModuleVersionId(BoundModuleVersionId node)
1720public override BoundNode VisitModuleVersionIdString(BoundModuleVersionIdString node)
1725public override BoundNode VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node)
1730public override BoundNode VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node)
1735public override BoundNode VisitSourceDocumentIndex(BoundSourceDocumentIndex node)
1740public override BoundNode VisitConversion(BoundConversion node)
1771public sealed override BoundNode VisitIfStatement(BoundIfStatement node)
1822public override BoundNode VisitTryStatement(BoundTryStatement node)
2017public override BoundNode VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node)
2022public override BoundNode VisitReturnStatement(BoundReturnStatement node)
2024var result = VisitReturnStatementNoAdjust(node);
2030protected virtual BoundNode VisitReturnStatementNoAdjust(BoundReturnStatement node)
2043public override BoundNode VisitThisReference(BoundThisReference node)
2048public override BoundNode VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node)
2053public override BoundNode VisitHostObjectMemberReference(BoundHostObjectMemberReference node)
2058public override BoundNode VisitParameter(BoundParameter node)
2067public override BoundNode VisitObjectCreationExpression(BoundObjectCreationExpression node)
2074public override BoundNode VisitCollectionExpression(BoundCollectionExpression node)
2080public override BoundNode VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
2086private void VisitCollectionExpression(ImmutableArray<BoundNode> elements)
2088foreach (var element in elements)
2101public override BoundNode VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node)
2107public override BoundNode VisitNewT(BoundNewT node)
2113public override BoundNode VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
2138public override BoundNode VisitAssignmentOperator(BoundAssignmentOperator node)
2172public override BoundNode VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
2179public sealed override BoundNode VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node)
2185public override BoundNode VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
2230public override BoundNode VisitFieldAccess(BoundFieldAccess node)
2257public override BoundNode VisitFieldInfo(BoundFieldInfo node)
2262public override BoundNode VisitMethodInfo(BoundMethodInfo node)
2267public override BoundNode VisitPropertyAccess(BoundPropertyAccess node)
2297public override BoundNode VisitEventAccess(BoundEventAccess node)
2303public override BoundNode VisitRangeVariable(BoundRangeVariable node)
2308public override BoundNode VisitQueryClause(BoundQueryClause node)
2314private BoundNode VisitMultipleLocalDeclarationsBase(BoundMultipleLocalDeclarationsBase node)
2324public override BoundNode VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node)
2329public override BoundNode VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node)
2338public override BoundNode VisitWhileStatement(BoundWhileStatement node)
2353public override BoundNode VisitWithExpression(BoundWithExpression node)
2360public override BoundNode VisitArrayAccess(BoundArrayAccess node)
2371public override BoundNode VisitInlineArrayAccess(BoundInlineArrayAccess node)
2390public override BoundNode VisitBinaryOperator(BoundBinaryOperator node)
2409public override BoundNode VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node)
2764public override BoundNode VisitUnaryOperator(BoundUnaryOperator node)
2780public override BoundNode VisitRangeExpression(BoundRangeExpression node)
2795public override BoundNode VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
2801public override BoundNode VisitAwaitExpression(BoundAwaitExpression node)
2808public override BoundNode VisitIncrementOperator(BoundIncrementOperator node)
2832public override BoundNode VisitArrayCreation(BoundArrayCreation node)
2843public override BoundNode VisitForStatement(BoundForStatement node)
2876public override BoundNode VisitForEachStatement(BoundForEachStatement node)
2905public override BoundNode VisitAsOperator(BoundAsOperator node)
2911public override BoundNode VisitIsOperator(BoundIsOperator node)
2926public override BoundNode VisitMethodGroup(BoundMethodGroup node)
2939public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
3115public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
3123public override BoundNode VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node)
3142public override BoundNode VisitConditionalReceiver(BoundConditionalReceiver node)
3147public override BoundNode VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node)
3161public override BoundNode VisitSequence(BoundSequence node)
3176public override BoundNode VisitSequencePoint(BoundSequencePoint node)
3186public override BoundNode VisitSequencePointExpression(BoundSequencePointExpression node)
3192public override BoundNode VisitSequencePointWithSpan(BoundSequencePointWithSpan node)
3202public override BoundNode VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node)
3207public override BoundNode VisitStatementList(BoundStatementList node)
3212private BoundNode VisitStatementListWorker(BoundStatementList node)
3222public override BoundNode VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node)
3227public override BoundNode VisitUnboundLambda(UnboundLambda node)
3233public override BoundNode VisitBreakStatement(BoundBreakStatement node)
3241public override BoundNode VisitContinueStatement(BoundContinueStatement node)
3249public override BoundNode VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node)
3254public override BoundNode VisitConditionalOperator(BoundConditionalOperator node)
3261protected virtual BoundNode? VisitConditionalOperatorCore(
3325public override BoundNode VisitBaseReference(BoundBaseReference node)
3330public override BoundNode VisitDoStatement(BoundDoStatement node)
3344public override BoundNode VisitGotoStatement(BoundGotoStatement node)
3367public override BoundNode VisitLabelStatement(BoundLabelStatement node)
3373public override BoundNode VisitLabeledStatement(BoundLabeledStatement node)
3380public override BoundNode VisitLockStatement(BoundLockStatement node)
3387public override BoundNode VisitNoOpStatement(BoundNoOpStatement node)
3392public override BoundNode VisitNamespaceExpression(BoundNamespaceExpression node)
3397public override BoundNode VisitUsingStatement(BoundUsingStatement node)
3420public override BoundNode VisitFixedStatement(BoundFixedStatement node)
3427public override BoundNode VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
3433public override BoundNode VisitThrowStatement(BoundThrowStatement node)
3441public override BoundNode VisitYieldBreakStatement(BoundYieldBreakStatement node)
3449public override BoundNode VisitYieldReturnStatement(BoundYieldReturnStatement node)
3456public override BoundNode VisitDefaultLiteral(BoundDefaultLiteral node)
3461public override BoundNode VisitDefaultExpression(BoundDefaultExpression node)
3466public override BoundNode VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
3471public override BoundNode VisitTypeOfOperator(BoundTypeOfOperator node)
3477public override BoundNode VisitNameOfOperator(BoundNameOfOperator node)
3486public override BoundNode VisitAddressOfOperator(BoundAddressOfOperator node)
3506public override BoundNode VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
3512public override BoundNode VisitPointerElementAccess(BoundPointerElementAccess node)
3519public override BoundNode VisitSizeOfOperator(BoundSizeOfOperator node)
3524private BoundNode VisitStackAllocArrayCreationBase(BoundStackAllocArrayCreationBase node)
3531public override BoundNode VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
3536public override BoundNode VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
3541public override BoundNode VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
3549public override BoundNode VisitArrayLength(BoundArrayLength node)
3555public override BoundNode VisitConditionalGoto(BoundConditionalGoto node)
3573public override BoundNode VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
3578public override BoundNode VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
3583private BoundNode VisitObjectOrCollectionInitializerExpression(ImmutableArray<BoundExpression> initializers)
3593public override BoundNode VisitObjectInitializerMember(BoundObjectInitializerMember node)
3612public override BoundNode VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
3617public override BoundNode VisitCollectionElementInitializer(BoundCollectionElementInitializer node)
3640public override BoundNode VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
3646public override BoundNode VisitImplicitReceiver(BoundImplicitReceiver node)
3651public override BoundNode VisitFieldEqualsValue(BoundFieldEqualsValue node)
3657public override BoundNode VisitPropertyEqualsValue(BoundPropertyEqualsValue node)
3663public override BoundNode VisitParameterEqualsValue(BoundParameterEqualsValue node)
3669public override BoundNode VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node)
3674public override BoundNode VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node)
3679public override BoundNode VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
3684public sealed override BoundNode VisitOutVariablePendingInference(OutVariablePendingInference node)
3689public sealed override BoundNode VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node)
3694public override BoundNode VisitDiscardExpression(BoundDiscardExpression node)
3705public override BoundNode VisitConstructorMethodBody(BoundConstructorMethodBody node)
3712public override BoundNode VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node)
3718public override BoundNode VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
3751public override BoundNode VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node)
3757public override BoundNode VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
3764public override BoundNode VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node)
3789public override BoundNode VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node)
3794public override BoundNode VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node)
3799public 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)
429var pendingBranch = pending.Branch;
552BoundNode 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)
2135public override BoundNode? VisitBlock(BoundBlock node)
2220public override BoundNode VisitSwitchStatement(BoundSwitchStatement node)
2223var result = base.VisitSwitchStatement(node);
2235public override BoundNode VisitForStatement(BoundForStatement node)
2239var result = base.VisitForStatement(node);
2245public override BoundNode VisitDoStatement(BoundDoStatement node)
2248var result = base.VisitDoStatement(node);
2253public override BoundNode VisitWhileStatement(BoundWhileStatement node)
2256var result = base.VisitWhileStatement(node);
2264public override BoundNode VisitUsingStatement(BoundUsingStatement node)
2268var result = base.VisitUsingStatement(node);
2285public override BoundNode VisitFixedStatement(BoundFixedStatement node)
2291public override BoundNode VisitSequence(BoundSequence node)
2294var result = base.VisitSequence(node);
2363public override BoundNode VisitLocal(BoundLocal node)
2394public override BoundNode VisitLocalDeclaration(BoundLocalDeclaration node)
2405var result = base.VisitLocalDeclaration(node);
2413public override BoundNode VisitLocalId(BoundLocalId node)
2416public override BoundNode VisitParameterId(BoundParameterId node)
2419public override BoundNode VisitStateMachineInstanceId(BoundStateMachineInstanceId node)
2422public override BoundNode VisitMethodGroup(BoundMethodGroup node)
2434public override BoundNode VisitLambda(BoundLambda node)
2480public override BoundNode VisitThisReference(BoundThisReference node)
2487public override BoundNode VisitParameter(BoundParameter node)
2501public override BoundNode VisitAssignmentOperator(BoundAssignmentOperator node)
2508public override BoundNode VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
2515public override BoundNode VisitIncrementOperator(BoundIncrementOperator node)
2522public override BoundNode VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
2531public override BoundNode VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
2549public override BoundNode VisitAddressOfOperator(BoundAddressOfOperator node)
2683public override BoundNode VisitBaseReference(BoundBaseReference node)
2707public override BoundNode VisitFieldAccess(BoundFieldAccess node)
2709var result = base.VisitFieldAccess(node);
2733public override BoundNode VisitPropertyAccess(BoundPropertyAccess node)
2735var result = base.VisitPropertyAccess(node);
2756public override BoundNode VisitEventAccess(BoundEventAccess node)
2758var result = base.VisitEventAccess(node);
2787public 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)
461BoundNode node,
1424BoundNode node,
1451BoundNode node,
1491internal static VariableState? GetAfterInitializersState(CSharpCompilation compilation, Symbol? symbol, BoundNode constructorBody)
1509internal static VariableState? GetAfterInitializersState(CSharpCompilation compilation, MethodSymbol method, BoundNode nodeToAnalyze, BoundNode? constructorBody, BindingDiagnosticBag diagnostics)
1547private static MethodSymbol? GetConstructorThisOrBaseSymbol(BoundNode? constructorBody)
1562BoundNode node,
1574internal static BoundNode AnalyzeAndRewrite(
1577BoundNode node,
1593BoundNode node,
1650internal static BoundNode AnalyzeAndRewriteSpeculation(
1652BoundNode node,
1698private static BoundNode Rewrite(ImmutableDictionary<BoundExpression, (NullabilityInfo, TypeSymbol?)> updatedNullabilities, SnapshotManager? snapshotManager, BoundNode node, ref ImmutableDictionary<Symbol, Symbol>? remappedSymbols)
1708var rewrittenNode = rewriter.Visit(node);
1732BoundNode node,
1813BoundNode node,
1923private void TakeIncrementalSnapshot(BoundNode? node)
1929private void SetUpdatedSymbol(BoundNode node, Symbol originalSymbol, Symbol updatedSymbol)
2271private void VisitAndUnsplitAll<T>(ImmutableArray<T> nodes) where T : BoundNode
2285private void VisitWithoutDiagnostics(BoundNode? node)
3000public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue equalsValue)
3035public sealed override BoundNode? VisitReturnStatement(BoundReturnStatement node)
3171public override BoundNode? VisitLocal(BoundLocal node)
3202public override BoundNode? VisitBlock(BoundBlock node)
3307public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
3529public override BoundNode? VisitDoStatement(BoundDoStatement node)
3535public override BoundNode? VisitWhileStatement(BoundWhileStatement node)
3541public override BoundNode? VisitWithExpression(BoundWithExpression withExpr)
3563public override BoundNode? VisitForStatement(BoundForStatement node)
3570public override BoundNode? VisitForEachStatement(BoundForEachStatement node)
3576public override BoundNode? VisitUsingStatement(BoundUsingStatement node)
3583public override BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node)
3589public override BoundNode? VisitFixedStatement(BoundFixedStatement node)
3595public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node)
3622public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node)
3684protected override BoundNode? VisitExpressionOrPatternWithoutStackGuard(BoundNode node)
3776public override BoundNode? Visit(BoundNode? node)
3781private BoundNode VisitLValue(BoundNode node)
3800private BoundNode Visit(BoundNode? node, bool expressionIsRead)
3809var result = base.Visit(node);
3822public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node)
3828public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
3836public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
3839var result = base.VisitUnconvertedCollectionExpression(node);
3844public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node)
3854foreach (var element in node.Elements)
3983public override BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node)
4646public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
4707public override BoundNode? VisitArrayCreation(BoundArrayCreation node)
4863BoundNode node,
4941public override BoundNode? VisitArrayAccess(BoundArrayAccess node)
4975public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node)
5702public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
5739public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
6023public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
6029protected override BoundNode? VisitConditionalOperatorCore(
6320public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node)
6331public override BoundNode? VisitCall(BoundCall node)
6946private static bool HasImplicitTypeArguments(BoundNode node)
7014BoundNode node,
7035BoundNode node,
7073BoundNode node,
7249BoundNode node,
8255var elementsBuilder = ArrayBuilder<BoundNode>.GetInstance(collectionExpressionVisitResults.Length);
8556public override BoundNode? VisitConversion(BoundConversion node)
8693public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node)
8699public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
8922public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
9886public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
10062public override BoundNode? VisitMethodGroup(BoundMethodGroup node)
10157public override BoundNode? VisitLambda(BoundLambda node)
10206public override BoundNode? VisitUnboundLambda(UnboundLambda node)
10216public override BoundNode? VisitThisReference(BoundThisReference node)
10229public override BoundNode? VisitParameter(BoundParameter node)
10239public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
10418public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
10423private BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node, TypeWithState? rightResultOpt)
10537var underlyingConversion = BoundNode.GetConversion(placeholderConversion, placeholder);
10578var underlyingConversion = BoundNode.GetConversion(placeholderConversion, placeholder);
10737public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node)
10788BoundNode.GetConversion(node.OperandConversion, node.OperandPlaceholder),
10818BoundNode.GetConversion(node.ResultConversion, node.ResultPlaceholder),
10846public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
10896BoundNode.GetConversion(node.LeftConversion, node.LeftPlaceholder),
10910BoundNode.GetConversion(node.FinalConversion, node.FinalPlaceholder),
10931public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
10948public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node)
11006public override BoundNode? VisitBaseReference(BoundBaseReference node)
11012public override BoundNode? VisitFieldAccess(BoundFieldAccess node)
11021public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
11042public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
11066public override BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node)
11080public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node)
11088public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node)
11094public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node)
11100public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node)
11106public override BoundNode? VisitEventAccess(BoundEventAccess node)
11216BoundNode node,
11481Conversion conversion = BoundNode.GetConversion(node.ElementConversion, node.ElementPlaceholder);
11518public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
11520var result = base.VisitFromEndIndexExpression(node);
11525public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node)
11531public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
11537public override BoundNode? VisitBadExpression(BoundBadExpression node)
11559public override BoundNode? VisitTypeExpression(BoundTypeExpression node)
11561var result = base.VisitTypeExpression(node);
11572public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node)
11575var result = base.VisitTypeOrValueExpression(node);
11580public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node)
11652public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
11654var result = base.VisitPointerIndirectionOperator(node);
11660public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node)
11662var result = base.VisitPointerElementAccess(node);
11668public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node)
11675public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node)
11677var result = base.VisitMakeRefOperator(node);
11682public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node)
11684var result = base.VisitRefValueOperator(node);
11780public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
11782var result = base.VisitAwaitExpression(node);
11811public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node)
11813var result = base.VisitTypeOfOperator(node);
11818public override BoundNode? VisitMethodInfo(BoundMethodInfo node)
11820var result = base.VisitMethodInfo(node);
11825public override BoundNode? VisitFieldInfo(BoundFieldInfo node)
11827var result = base.VisitFieldInfo(node);
11832public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node)
11835var result = base.VisitDefaultLiteral(node);
11840public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node)
11844var result = base.VisitDefaultExpression(node);
11860public override BoundNode? VisitIsOperator(BoundIsOperator node)
11894public override BoundNode? VisitAsOperator(BoundAsOperator node)
11902switch (BoundNode.GetConversion(node.OperandConversion, node.OperandPlaceholder).Kind)
11922public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node)
11924var result = base.VisitSizeOfOperator(node);
11930public override BoundNode? VisitArgList(BoundArgList node)
11932var result = base.VisitArgList(node);
11938public override BoundNode? VisitArgListOperator(BoundArgListOperator node)
11946public override BoundNode? VisitLiteral(BoundLiteral node)
11949var result = base.VisitLiteral(node);
11954public override BoundNode? VisitUtf8String(BoundUtf8String node)
11957var result = base.VisitUtf8String(node);
11962public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node)
11964var result = base.VisitPreviousSubmissionReference(node);
11970public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node)
11972var result = base.VisitHostObjectMemberReference(node);
11978public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node)
11980var result = base.VisitPseudoVariable(node);
11985public override BoundNode? VisitRangeExpression(BoundRangeExpression node)
11987var result = base.VisitRangeExpression(node);
11992public override BoundNode? VisitRangeVariable(BoundRangeVariable node)
11999public override BoundNode? VisitLabel(BoundLabel node)
12001var result = base.VisitLabel(node);
12006public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
12018public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node)
12038public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
12064public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
12070public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
12078public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
12086public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
12094public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node)
12096var result = base.VisitImplicitReceiver(node);
12101public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node)
12106public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
12112public override BoundNode? VisitNewT(BoundNewT node)
12118public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node)
12120var result = base.VisitArrayInitialization(node);
12130public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
12224public override BoundNode? VisitQueryClause(BoundQueryClause node)
12226var result = base.VisitQueryClause(node);
12231public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node)
12233var result = base.VisitNameOfOperator(node);
12238public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node)
12240var result = base.VisitNamespaceExpression(node);
12245public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
12248var result = base.VisitUnconvertedInterpolatedString(node);
12253public override BoundNode? VisitStringInsert(BoundStringInsert node)
12255var result = base.VisitStringInsert(node);
12266public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node)
12274public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node)
12280public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
12286public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
12291private BoundNode? VisitStackAllocArrayCreationBase(BoundStackAllocArrayCreationBase node)
12308public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node)
12316public override BoundNode? VisitThrowExpression(BoundThrowExpression node)
12323public override BoundNode? VisitThrowStatement(BoundThrowStatement node)
12346public override BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node)
12384public override BoundNode? VisitLockStatement(BoundLockStatement node)
12392public override BoundNode? VisitAttribute(BoundAttribute node)
12405public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node)
12412public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node)
12420public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node)
12428public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
12451public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node)
12458public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
13026private sealed class ExpressionAndSymbolEqualityComparer : IEqualityComparer<(BoundNode? expr, Symbol symbol)>
13032public bool Equals((BoundNode? expr, Symbol symbol) x, (BoundNode? expr, Symbol symbol) y)
13043public 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,
236protected override void AssignImpl(BoundNode node, BoundExpression value, bool isRef, bool written, bool read)
283public override BoundNode VisitUnboundLambda(UnboundLambda node)
288public override BoundNode VisitRangeVariable(BoundRangeVariable node)
300private static ParameterSymbol GetRangeVariableUnderlyingParameter(BoundNode underlying)
319public 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);
2978public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConversion(this);
3011public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitReadOnlySpanFromArray(this);
3046public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArgList(this);
3077public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArgListOperator(this);
3116public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFixedLocalCollectionInitializer(this);
3155public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequencePoint(this);
3182public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequencePointWithSpan(this);
3219public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSavePreviousSequencePoint(this);
3256public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRestorePreviousSequencePoint(this);
3287public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStepThroughSequencePoint(this);
3323public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBlock(this);
3352public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitScope(this);
3383public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStateMachineScope(this);
3419public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocalDeclaration(this);
3459public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMultipleLocalDeclarations(this);
3489public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUsingLocalDeclarations(this);
3521public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocalFunctionStatement(this);
3552public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNoOpStatement(this);
3581public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitReturnStatement(this);
3609public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitYieldReturnStatement(this);
3637public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitYieldBreakStatement(this);
3651public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThrowStatement(this);
3679public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitExpressionStatement(this);
3716public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBreakStatement(this);
3753public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitContinueStatement(this);
3798public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchStatement(this);
3834public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchDispatch(this);
3867public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIfStatement(this);
3947public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDoStatement(this);
3977public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitWhileStatement(this);
4019public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitForStatement(this);
4070public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitForEachStatement(this);
4101public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitForEachDeconstructStep(this);
4140public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUsingStatement(this);
4174public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFixedStatement(this);
4205public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLockStatement(this);
4242public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTryStatement(this);
4283public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCatchBlock(this);
4314public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLiteral(this);
4354public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUtf8String(this);
4389public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThisReference(this);
4424public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPreviousSubmissionReference(this);
4459public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitHostObjectMemberReference(this);
4488public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBaseReference(this);
4537public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocal(this);
4582public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPseudoVariable(this);
4615public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRangeVariable(this);
4655public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitParameter(this);
4692public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLabelStatement(this);
4724public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitGotoStatement(this);
4755public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLabeledStatement(this);
4792public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLabel(this);
4829public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStatementList(this);
4862public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalGoto(this);
4925public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchExpressionArm(this);
4953public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedSwitchExpression(this);
4987public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConvertedSwitchExpression(this);
5015public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDecisionDag(this);
5060public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitEvaluationDecisionDagNode(this);
5094public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTestDecisionDagNode(this);
5129public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitWhenDecisionDagNode(this);
5166public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLeafDecisionDagNode(this);
5212public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagTemp(this);
5241public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagTypeTest(this);
5269public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagNonNullTest(this);
5295public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagExplicitNullTest(this);
5324public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagValueTest(this);
5355public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagRelationalTest(this);
5396public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagDeconstructEvaluation(this);
5425public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagTypeEvaluation(this);
5454public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagFieldEvaluation(this);
5485public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagPropertyEvaluation(this);
5516public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagIndexEvaluation(this);
5563public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagIndexerEvaluation(this);
5612public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagSliceEvaluation(this);
5641public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagAssignmentEvaluation(this);
5673public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchSection(this);
5706public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchLabel(this);
5748public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequencePointExpression(this);
5784public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequence(this);
5820public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSpillSequence(this);
5859public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicMemberAccess(this);
5912public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicInvocation(this);
5945public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalAccess(this);
5986public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLoweredConditionalAccess(this);
6024public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalReceiver(this);
6057public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitComplexConditionalReceiver(this);
6098public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMethodGroup(this);
6126public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertyGroup(this);
6181public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCall(this);
6220public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitEventAssignmentOperator(this);
6265public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAttribute(this);
6303public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedObjectCreationExpression(this);
6375public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectCreationExpression(this);
6391protected BoundCollectionExpressionBase(BoundKind kind, SyntaxNode syntax, ImmutableArray<BoundNode> elements, TypeSymbol? type, bool hasErrors = false)
6400public ImmutableArray<BoundNode> Elements { get; }
6405public BoundUnconvertedCollectionExpression(SyntaxNode syntax, ImmutableArray<BoundNode> elements, bool hasErrors = false)
6416public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedCollectionExpression(this);
6418public BoundUnconvertedCollectionExpression Update(ImmutableArray<BoundNode> elements)
6432public 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)
6461public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionExpression(this);
6463public BoundCollectionExpression Update(CollectionExpressionTypeKind collectionTypeKind, BoundObjectOrCollectionValuePlaceholder? placeholder, BoundExpression? collectionCreation, MethodSymbol? collectionBuilderMethod, BoundValuePlaceholder? collectionBuilderInvocationPlaceholder, BoundExpression? collectionBuilderInvocationConversion, bool wasTargetTyped, BoundUnconvertedCollectionExpression unconvertedCollectionExpression, ImmutableArray<BoundNode> elements, TypeSymbol type)
6489public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionExpressionSpreadExpressionPlaceholder(this);
6529public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionExpressionSpreadElement(this);
6574public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTupleLiteral(this);
6604public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConvertedTupleLiteral(this);
6647public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicObjectCreationExpression(this);
6679public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNoPiaObjectCreationExpression(this);
6726public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectInitializerExpression(this);
6775public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectInitializerMember(this);
6820public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicObjectInitializerMember(this);
6848public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionInitializerExpression(this);
6893public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionElementInitializer(this);
6925public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicCollectionElementInitializer(this);
6960public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitReceiver(this);
6996public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAnonymousObjectCreationExpression(this);
7036public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAnonymousPropertyDeclaration(this);
7066public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNewT(this);
7102public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDelegateCreationExpression(this);
7134public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayCreation(this);
7165public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayInitialization(this);
7211public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStackAllocArrayCreation(this);
7240public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConvertedStackAllocExpression(this);
7280public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFieldAccess(this);
7320public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitHoistedFieldAccess(this);
7358public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertyAccess(this);
7394public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitEventAccess(this);
7445public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIndexerAccess(this);
7494public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitIndexerAccess(this);
7535public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInlineArrayAccess(this);
7575public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicIndexerAccess(this);
7615public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLambda(this);
7659public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnboundLambda(this);
7700public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitQueryClause(this);
7726public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeOrInstanceInitializers(this);
7759public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNameOfOperator(this);
7801public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedInterpolatedString(this);
7829public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedString(this);
7857public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedStringHandlerPlaceholder(this);
7895public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedStringArgumentPlaceholder(this);
7930public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStringInsert(this);
7972public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIsPatternExpression(this);
8037public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConstantPattern(this);
8077public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDiscardPattern(this);
8130public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeclarationPattern(this);
8171public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRecursivePattern(this);
8215public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitListPattern(this);
8254public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSlicePattern(this);
8294public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitITuplePattern(this);
8336public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPositionalSubpattern(this);
8366public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertySubpattern(this);
8398public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertySubpatternMember(this);
8434public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypePattern(this);
8473public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBinaryPattern(this);
8507public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNegatedPattern(this);
8546public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRelationalPattern(this);
8581public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDiscardExpression(this);
8609public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThrowExpression(this);
8652public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitOutVariablePendingInference(this);
8678public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeconstructionVariablePendingInference(this);
8713public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitOutDeconstructVarPendingInference(this);
8749public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNonConstructorMethodBody(this);
8779public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConstructorMethodBody(this);
8810public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitExpressionWithNullability(this);
8845public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitWithExpression(this);
8863internal R VisitInternal(BoundNode node, A arg)
9575public virtual BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node) => this.DefaultVisit(node);
9576public virtual BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node) => this.DefaultVisit(node);
9577public virtual BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node) => this.DefaultVisit(node);
9578public virtual BoundNode? VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node) => this.DefaultVisit(node);
9579public virtual BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node) => this.DefaultVisit(node);
9580public virtual BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node) => this.DefaultVisit(node);
9581public virtual BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node) => this.DefaultVisit(node);
9582public virtual BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node) => this.DefaultVisit(node);
9583public virtual BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node) => this.DefaultVisit(node);
9584public virtual BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node) => this.DefaultVisit(node);
9585public virtual BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node) => this.DefaultVisit(node);
9586public virtual BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node) => this.DefaultVisit(node);
9587public virtual BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node) => this.DefaultVisit(node);
9588public virtual BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node) => this.DefaultVisit(node);
9589public virtual BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node) => this.DefaultVisit(node);
9590public virtual BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node) => this.DefaultVisit(node);
9591public virtual BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node) => this.DefaultVisit(node);
9592public virtual BoundNode? VisitDup(BoundDup node) => this.DefaultVisit(node);
9593public virtual BoundNode? VisitPassByCopy(BoundPassByCopy node) => this.DefaultVisit(node);
9594public virtual BoundNode? VisitBadExpression(BoundBadExpression node) => this.DefaultVisit(node);
9595public virtual BoundNode? VisitBadStatement(BoundBadStatement node) => this.DefaultVisit(node);
9596public virtual BoundNode? VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node) => this.DefaultVisit(node);
9597public virtual BoundNode? VisitTypeExpression(BoundTypeExpression node) => this.DefaultVisit(node);
9598public virtual BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node) => this.DefaultVisit(node);
9599public virtual BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node) => this.DefaultVisit(node);
9600public virtual BoundNode? VisitUnaryOperator(BoundUnaryOperator node) => this.DefaultVisit(node);
9601public virtual BoundNode? VisitIncrementOperator(BoundIncrementOperator node) => this.DefaultVisit(node);
9602public virtual BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node) => this.DefaultVisit(node);
9603public virtual BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node) => this.DefaultVisit(node);
9604public virtual BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node) => this.DefaultVisit(node);
9605public virtual BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node) => this.DefaultVisit(node);
9606public virtual BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node) => this.DefaultVisit(node);
9607public virtual BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node) => this.DefaultVisit(node);
9608public virtual BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node) => this.DefaultVisit(node);
9609public virtual BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node) => this.DefaultVisit(node);
9610public virtual BoundNode? VisitRefValueOperator(BoundRefValueOperator node) => this.DefaultVisit(node);
9611public virtual BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node) => this.DefaultVisit(node);
9612public virtual BoundNode? VisitRangeExpression(BoundRangeExpression node) => this.DefaultVisit(node);
9613public virtual BoundNode? VisitBinaryOperator(BoundBinaryOperator node) => this.DefaultVisit(node);
9614public virtual BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node) => this.DefaultVisit(node);
9615public virtual BoundNode? VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node) => this.DefaultVisit(node);
9616public virtual BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node) => this.DefaultVisit(node);
9617public virtual BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node) => this.DefaultVisit(node);
9618public virtual BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node) => this.DefaultVisit(node);
9619public virtual BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node) => this.DefaultVisit(node);
9620public virtual BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node) => this.DefaultVisit(node);
9621public virtual BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node) => this.DefaultVisit(node);
9622public virtual BoundNode? VisitConditionalOperator(BoundConditionalOperator node) => this.DefaultVisit(node);
9623public virtual BoundNode? VisitArrayAccess(BoundArrayAccess node) => this.DefaultVisit(node);
9624public virtual BoundNode? VisitRefArrayAccess(BoundRefArrayAccess node) => this.DefaultVisit(node);
9625public virtual BoundNode? VisitArrayLength(BoundArrayLength node) => this.DefaultVisit(node);
9626public virtual BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node) => this.DefaultVisit(node);
9627public virtual BoundNode? VisitAwaitExpression(BoundAwaitExpression node) => this.DefaultVisit(node);
9628public virtual BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node) => this.DefaultVisit(node);
9629public virtual BoundNode? VisitBlockInstrumentation(BoundBlockInstrumentation node) => this.DefaultVisit(node);
9630public virtual BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node) => this.DefaultVisit(node);
9631public virtual BoundNode? VisitLocalId(BoundLocalId node) => this.DefaultVisit(node);
9632public virtual BoundNode? VisitParameterId(BoundParameterId node) => this.DefaultVisit(node);
9633public virtual BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node) => this.DefaultVisit(node);
9634public virtual BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node) => this.DefaultVisit(node);
9635public virtual BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node) => this.DefaultVisit(node);
9636public virtual BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node) => this.DefaultVisit(node);
9637public virtual BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node) => this.DefaultVisit(node);
9638public virtual BoundNode? VisitModuleVersionId(BoundModuleVersionId node) => this.DefaultVisit(node);
9639public virtual BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node) => this.DefaultVisit(node);
9640public virtual BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node) => this.DefaultVisit(node);
9641public virtual BoundNode? VisitMethodInfo(BoundMethodInfo node) => this.DefaultVisit(node);
9642public virtual BoundNode? VisitFieldInfo(BoundFieldInfo node) => this.DefaultVisit(node);
9643public virtual BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node) => this.DefaultVisit(node);
9644public virtual BoundNode? VisitDefaultExpression(BoundDefaultExpression node) => this.DefaultVisit(node);
9645public virtual BoundNode? VisitIsOperator(BoundIsOperator node) => this.DefaultVisit(node);
9646public virtual BoundNode? VisitAsOperator(BoundAsOperator node) => this.DefaultVisit(node);
9647public virtual BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node) => this.DefaultVisit(node);
9648public virtual BoundNode? VisitConversion(BoundConversion node) => this.DefaultVisit(node);
9649public virtual BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node) => this.DefaultVisit(node);
9650public virtual BoundNode? VisitArgList(BoundArgList node) => this.DefaultVisit(node);
9651public virtual BoundNode? VisitArgListOperator(BoundArgListOperator node) => this.DefaultVisit(node);
9652public virtual BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node) => this.DefaultVisit(node);
9653public virtual BoundNode? VisitSequencePoint(BoundSequencePoint node) => this.DefaultVisit(node);
9654public virtual BoundNode? VisitSequencePointWithSpan(BoundSequencePointWithSpan node) => this.DefaultVisit(node);
9655public virtual BoundNode? VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node) => this.DefaultVisit(node);
9656public virtual BoundNode? VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node) => this.DefaultVisit(node);
9657public virtual BoundNode? VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node) => this.DefaultVisit(node);
9658public virtual BoundNode? VisitBlock(BoundBlock node) => this.DefaultVisit(node);
9659public virtual BoundNode? VisitScope(BoundScope node) => this.DefaultVisit(node);
9660public virtual BoundNode? VisitStateMachineScope(BoundStateMachineScope node) => this.DefaultVisit(node);
9661public virtual BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node) => this.DefaultVisit(node);
9662public virtual BoundNode? VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node) => this.DefaultVisit(node);
9663public virtual BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node) => this.DefaultVisit(node);
9664public virtual BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node) => this.DefaultVisit(node);
9665public virtual BoundNode? VisitNoOpStatement(BoundNoOpStatement node) => this.DefaultVisit(node);
9666public virtual BoundNode? VisitReturnStatement(BoundReturnStatement node) => this.DefaultVisit(node);
9667public virtual BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node) => this.DefaultVisit(node);
9668public virtual BoundNode? VisitYieldBreakStatement(BoundYieldBreakStatement node) => this.DefaultVisit(node);
9669public virtual BoundNode? VisitThrowStatement(BoundThrowStatement node) => this.DefaultVisit(node);
9670public virtual BoundNode? VisitExpressionStatement(BoundExpressionStatement node) => this.DefaultVisit(node);
9671public virtual BoundNode? VisitBreakStatement(BoundBreakStatement node) => this.DefaultVisit(node);
9672public virtual BoundNode? VisitContinueStatement(BoundContinueStatement node) => this.DefaultVisit(node);
9673public virtual BoundNode? VisitSwitchStatement(BoundSwitchStatement node) => this.DefaultVisit(node);
9674public virtual BoundNode? VisitSwitchDispatch(BoundSwitchDispatch node) => this.DefaultVisit(node);
9675public virtual BoundNode? VisitIfStatement(BoundIfStatement node) => this.DefaultVisit(node);
9676public virtual BoundNode? VisitDoStatement(BoundDoStatement node) => this.DefaultVisit(node);
9677public virtual BoundNode? VisitWhileStatement(BoundWhileStatement node) => this.DefaultVisit(node);
9678public virtual BoundNode? VisitForStatement(BoundForStatement node) => this.DefaultVisit(node);
9679public virtual BoundNode? VisitForEachStatement(BoundForEachStatement node) => this.DefaultVisit(node);
9680public virtual BoundNode? VisitForEachDeconstructStep(BoundForEachDeconstructStep node) => this.DefaultVisit(node);
9681public virtual BoundNode? VisitUsingStatement(BoundUsingStatement node) => this.DefaultVisit(node);
9682public virtual BoundNode? VisitFixedStatement(BoundFixedStatement node) => this.DefaultVisit(node);
9683public virtual BoundNode? VisitLockStatement(BoundLockStatement node) => this.DefaultVisit(node);
9684public virtual BoundNode? VisitTryStatement(BoundTryStatement node) => this.DefaultVisit(node);
9685public virtual BoundNode? VisitCatchBlock(BoundCatchBlock node) => this.DefaultVisit(node);
9686public virtual BoundNode? VisitLiteral(BoundLiteral node) => this.DefaultVisit(node);
9687public virtual BoundNode? VisitUtf8String(BoundUtf8String node) => this.DefaultVisit(node);
9688public virtual BoundNode? VisitThisReference(BoundThisReference node) => this.DefaultVisit(node);
9689public virtual BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node) => this.DefaultVisit(node);
9690public virtual BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node) => this.DefaultVisit(node);
9691public virtual BoundNode? VisitBaseReference(BoundBaseReference node) => this.DefaultVisit(node);
9692public virtual BoundNode? VisitLocal(BoundLocal node) => this.DefaultVisit(node);
9693public virtual BoundNode? VisitPseudoVariable(BoundPseudoVariable node) => this.DefaultVisit(node);
9694public virtual BoundNode? VisitRangeVariable(BoundRangeVariable node) => this.DefaultVisit(node);
9695public virtual BoundNode? VisitParameter(BoundParameter node) => this.DefaultVisit(node);
9696public virtual BoundNode? VisitLabelStatement(BoundLabelStatement node) => this.DefaultVisit(node);
9697public virtual BoundNode? VisitGotoStatement(BoundGotoStatement node) => this.DefaultVisit(node);
9698public virtual BoundNode? VisitLabeledStatement(BoundLabeledStatement node) => this.DefaultVisit(node);
9699public virtual BoundNode? VisitLabel(BoundLabel node) => this.DefaultVisit(node);
9700public virtual BoundNode? VisitStatementList(BoundStatementList node) => this.DefaultVisit(node);
9701public virtual BoundNode? VisitConditionalGoto(BoundConditionalGoto node) => this.DefaultVisit(node);
9702public virtual BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node) => this.DefaultVisit(node);
9703public virtual BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node) => this.DefaultVisit(node);
9704public virtual BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node) => this.DefaultVisit(node);
9705public virtual BoundNode? VisitDecisionDag(BoundDecisionDag node) => this.DefaultVisit(node);
9706public virtual BoundNode? VisitEvaluationDecisionDagNode(BoundEvaluationDecisionDagNode node) => this.DefaultVisit(node);
9707public virtual BoundNode? VisitTestDecisionDagNode(BoundTestDecisionDagNode node) => this.DefaultVisit(node);
9708public virtual BoundNode? VisitWhenDecisionDagNode(BoundWhenDecisionDagNode node) => this.DefaultVisit(node);
9709public virtual BoundNode? VisitLeafDecisionDagNode(BoundLeafDecisionDagNode node) => this.DefaultVisit(node);
9710public virtual BoundNode? VisitDagTemp(BoundDagTemp node) => this.DefaultVisit(node);
9711public virtual BoundNode? VisitDagTypeTest(BoundDagTypeTest node) => this.DefaultVisit(node);
9712public virtual BoundNode? VisitDagNonNullTest(BoundDagNonNullTest node) => this.DefaultVisit(node);
9713public virtual BoundNode? VisitDagExplicitNullTest(BoundDagExplicitNullTest node) => this.DefaultVisit(node);
9714public virtual BoundNode? VisitDagValueTest(BoundDagValueTest node) => this.DefaultVisit(node);
9715public virtual BoundNode? VisitDagRelationalTest(BoundDagRelationalTest node) => this.DefaultVisit(node);
9716public virtual BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node) => this.DefaultVisit(node);
9717public virtual BoundNode? VisitDagTypeEvaluation(BoundDagTypeEvaluation node) => this.DefaultVisit(node);
9718public virtual BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node) => this.DefaultVisit(node);
9719public virtual BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node) => this.DefaultVisit(node);
9720public virtual BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node) => this.DefaultVisit(node);
9721public virtual BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node) => this.DefaultVisit(node);
9722public virtual BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node) => this.DefaultVisit(node);
9723public virtual BoundNode? VisitDagAssignmentEvaluation(BoundDagAssignmentEvaluation node) => this.DefaultVisit(node);
9724public virtual BoundNode? VisitSwitchSection(BoundSwitchSection node) => this.DefaultVisit(node);
9725public virtual BoundNode? VisitSwitchLabel(BoundSwitchLabel node) => this.DefaultVisit(node);
9726public virtual BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node) => this.DefaultVisit(node);
9727public virtual BoundNode? VisitSequence(BoundSequence node) => this.DefaultVisit(node);
9728public virtual BoundNode? VisitSpillSequence(BoundSpillSequence node) => this.DefaultVisit(node);
9729public virtual BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node) => this.DefaultVisit(node);
9730public virtual BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node) => this.DefaultVisit(node);
9731public virtual BoundNode? VisitConditionalAccess(BoundConditionalAccess node) => this.DefaultVisit(node);
9732public virtual BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node) => this.DefaultVisit(node);
9733public virtual BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node) => this.DefaultVisit(node);
9734public virtual BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node) => this.DefaultVisit(node);
9735public virtual BoundNode? VisitMethodGroup(BoundMethodGroup node) => this.DefaultVisit(node);
9736public virtual BoundNode? VisitPropertyGroup(BoundPropertyGroup node) => this.DefaultVisit(node);
9737public virtual BoundNode? VisitCall(BoundCall node) => this.DefaultVisit(node);
9738public virtual BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node) => this.DefaultVisit(node);
9739public virtual BoundNode? VisitAttribute(BoundAttribute node) => this.DefaultVisit(node);
9740public virtual BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node) => this.DefaultVisit(node);
9741public virtual BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node) => this.DefaultVisit(node);
9742public virtual BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node) => this.DefaultVisit(node);
9743public virtual BoundNode? VisitCollectionExpression(BoundCollectionExpression node) => this.DefaultVisit(node);
9744public virtual BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node) => this.DefaultVisit(node);
9745public virtual BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node) => this.DefaultVisit(node);
9746public virtual BoundNode? VisitTupleLiteral(BoundTupleLiteral node) => this.DefaultVisit(node);
9747public virtual BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node) => this.DefaultVisit(node);
9748public virtual BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node) => this.DefaultVisit(node);
9749public virtual BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node) => this.DefaultVisit(node);
9750public virtual BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node) => this.DefaultVisit(node);
9751public virtual BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node) => this.DefaultVisit(node);
9752public virtual BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node) => this.DefaultVisit(node);
9753public virtual BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node) => this.DefaultVisit(node);
9754public virtual BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node) => this.DefaultVisit(node);
9755public virtual BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node) => this.DefaultVisit(node);
9756public virtual BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node) => this.DefaultVisit(node);
9757public virtual BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node) => this.DefaultVisit(node);
9758public virtual BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node) => this.DefaultVisit(node);
9759public virtual BoundNode? VisitNewT(BoundNewT node) => this.DefaultVisit(node);
9760public virtual BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node) => this.DefaultVisit(node);
9761public virtual BoundNode? VisitArrayCreation(BoundArrayCreation node) => this.DefaultVisit(node);
9762public virtual BoundNode? VisitArrayInitialization(BoundArrayInitialization node) => this.DefaultVisit(node);
9763public virtual BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node) => this.DefaultVisit(node);
9764public virtual BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node) => this.DefaultVisit(node);
9765public virtual BoundNode? VisitFieldAccess(BoundFieldAccess node) => this.DefaultVisit(node);
9766public virtual BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node) => this.DefaultVisit(node);
9767public virtual BoundNode? VisitPropertyAccess(BoundPropertyAccess node) => this.DefaultVisit(node);
9768public virtual BoundNode? VisitEventAccess(BoundEventAccess node) => this.DefaultVisit(node);
9769public virtual BoundNode? VisitIndexerAccess(BoundIndexerAccess node) => this.DefaultVisit(node);
9770public virtual BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node) => this.DefaultVisit(node);
9771public virtual BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node) => this.DefaultVisit(node);
9772public virtual BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node) => this.DefaultVisit(node);
9773public virtual BoundNode? VisitLambda(BoundLambda node) => this.DefaultVisit(node);
9774public virtual BoundNode? VisitUnboundLambda(UnboundLambda node) => this.DefaultVisit(node);
9775public virtual BoundNode? VisitQueryClause(BoundQueryClause node) => this.DefaultVisit(node);
9776public virtual BoundNode? VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node) => this.DefaultVisit(node);
9777public virtual BoundNode? VisitNameOfOperator(BoundNameOfOperator node) => this.DefaultVisit(node);
9778public virtual BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node) => this.DefaultVisit(node);
9779public virtual BoundNode? VisitInterpolatedString(BoundInterpolatedString node) => this.DefaultVisit(node);
9780public virtual BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node) => this.DefaultVisit(node);
9781public virtual BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node) => this.DefaultVisit(node);
9782public virtual BoundNode? VisitStringInsert(BoundStringInsert node) => this.DefaultVisit(node);
9783public virtual BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node) => this.DefaultVisit(node);
9784public virtual BoundNode? VisitConstantPattern(BoundConstantPattern node) => this.DefaultVisit(node);
9785public virtual BoundNode? VisitDiscardPattern(BoundDiscardPattern node) => this.DefaultVisit(node);
9786public virtual BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node) => this.DefaultVisit(node);
9787public virtual BoundNode? VisitRecursivePattern(BoundRecursivePattern node) => this.DefaultVisit(node);
9788public virtual BoundNode? VisitListPattern(BoundListPattern node) => this.DefaultVisit(node);
9789public virtual BoundNode? VisitSlicePattern(BoundSlicePattern node) => this.DefaultVisit(node);
9790public virtual BoundNode? VisitITuplePattern(BoundITuplePattern node) => this.DefaultVisit(node);
9791public virtual BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node) => this.DefaultVisit(node);
9792public virtual BoundNode? VisitPropertySubpattern(BoundPropertySubpattern node) => this.DefaultVisit(node);
9793public virtual BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node) => this.DefaultVisit(node);
9794public virtual BoundNode? VisitTypePattern(BoundTypePattern node) => this.DefaultVisit(node);
9795public virtual BoundNode? VisitBinaryPattern(BoundBinaryPattern node) => this.DefaultVisit(node);
9796public virtual BoundNode? VisitNegatedPattern(BoundNegatedPattern node) => this.DefaultVisit(node);
9797public virtual BoundNode? VisitRelationalPattern(BoundRelationalPattern node) => this.DefaultVisit(node);
9798public virtual BoundNode? VisitDiscardExpression(BoundDiscardExpression node) => this.DefaultVisit(node);
9799public virtual BoundNode? VisitThrowExpression(BoundThrowExpression node) => this.DefaultVisit(node);
9800public virtual BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node) => this.DefaultVisit(node);
9801public virtual BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node) => this.DefaultVisit(node);
9802public virtual BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node) => this.DefaultVisit(node);
9803public virtual BoundNode? VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node) => this.DefaultVisit(node);
9804public virtual BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node) => this.DefaultVisit(node);
9805public virtual BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node) => this.DefaultVisit(node);
9806public virtual BoundNode? VisitWithExpression(BoundWithExpression node) => this.DefaultVisit(node);
9811public override BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node)
9816public override BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node)
9821public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node)
9826public override BoundNode? VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node)
9831public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node) => null;
9832public override BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node)
9837public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node) => null;
9838public override BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node) => null;
9839public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node) => null;
9840public override BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node) => null;
9841public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node) => null;
9842public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node) => null;
9843public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node) => null;
9844public override BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node) => null;
9845public override BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node) => null;
9846public override BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node) => null;
9847public override BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node) => null;
9848public override BoundNode? VisitDup(BoundDup node) => null;
9849public override BoundNode? VisitPassByCopy(BoundPassByCopy node)
9854public override BoundNode? VisitBadExpression(BoundBadExpression node)
9859public override BoundNode? VisitBadStatement(BoundBadStatement node)
9864public override BoundNode? VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node)
9869public override BoundNode? VisitTypeExpression(BoundTypeExpression node)
9875public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node) => null;
9876public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node) => null;
9877public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node)
9882public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node)
9887public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node)
9892public override BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node)
9897public override BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node) => null;
9898public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
9903public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node)
9909public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
9915public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node)
9920public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node)
9925public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node)
9930public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
9935public override BoundNode? VisitRangeExpression(BoundRangeExpression node)
9941public override BoundNode? VisitBinaryOperator(BoundBinaryOperator node)
9947public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
9953public override BoundNode? VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node)
9959public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
9965public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
9971public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
9977public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
9983public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
9989public override BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node)
9996public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node)
10003public override BoundNode? VisitArrayAccess(BoundArrayAccess node)
10009public override BoundNode? VisitRefArrayAccess(BoundRefArrayAccess node)
10014public override BoundNode? VisitArrayLength(BoundArrayLength node)
10019public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node)
10025public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
10031public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node)
10036public override BoundNode? VisitBlockInstrumentation(BoundBlockInstrumentation node)
10042public override BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node) => null;
10043public override BoundNode? VisitLocalId(BoundLocalId node) => null;
10044public override BoundNode? VisitParameterId(BoundParameterId node) => null;
10045public override BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node) => null;
10046public override BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node) => null;
10047public override BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node) => null;
10048public override BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node) => null;
10049public override BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node) => null;
10050public override BoundNode? VisitModuleVersionId(BoundModuleVersionId node) => null;
10051public override BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node) => null;
10052public override BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node) => null;
10053public override BoundNode? VisitMethodInfo(BoundMethodInfo node) => null;
10054public override BoundNode? VisitFieldInfo(BoundFieldInfo node) => null;
10055public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node) => null;
10056public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node) => null;
10057public override BoundNode? VisitIsOperator(BoundIsOperator node)
10063public override BoundNode? VisitAsOperator(BoundAsOperator node)
10069public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node)
10074public override BoundNode? VisitConversion(BoundConversion node)
10079public override BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node)
10084public override BoundNode? VisitArgList(BoundArgList node) => null;
10085public override BoundNode? VisitArgListOperator(BoundArgListOperator node)
10090public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
10095public override BoundNode? VisitSequencePoint(BoundSequencePoint node)
10100public override BoundNode? VisitSequencePointWithSpan(BoundSequencePointWithSpan node)
10105public override BoundNode? VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node) => null;
10106public override BoundNode? VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node) => null;
10107public override BoundNode? VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node) => null;
10108public override BoundNode? VisitBlock(BoundBlock node)
10114public override BoundNode? VisitScope(BoundScope node)
10119public override BoundNode? VisitStateMachineScope(BoundStateMachineScope node)
10124public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node)
10131public override BoundNode? VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node)
10136public override BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node)
10142public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
10148public override BoundNode? VisitNoOpStatement(BoundNoOpStatement node) => null;
10149public override BoundNode? VisitReturnStatement(BoundReturnStatement node)
10154public override BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node)
10159public override BoundNode? VisitYieldBreakStatement(BoundYieldBreakStatement node) => null;
10160public override BoundNode? VisitThrowStatement(BoundThrowStatement node)
10165public override BoundNode? VisitExpressionStatement(BoundExpressionStatement node)
10170public override BoundNode? VisitBreakStatement(BoundBreakStatement node) => null;
10171public override BoundNode? VisitContinueStatement(BoundContinueStatement node) => null;
10172public override BoundNode? VisitSwitchStatement(BoundSwitchStatement node)
10179public override BoundNode? VisitSwitchDispatch(BoundSwitchDispatch node)
10184public override BoundNode? VisitIfStatement(BoundIfStatement node)
10191public override BoundNode? VisitDoStatement(BoundDoStatement node)
10197public override BoundNode? VisitWhileStatement(BoundWhileStatement node)
10203public override BoundNode? VisitForStatement(BoundForStatement node)
10211public override BoundNode? VisitForEachStatement(BoundForEachStatement node)
10221public override BoundNode? VisitForEachDeconstructStep(BoundForEachDeconstructStep node)
10227public override BoundNode? VisitUsingStatement(BoundUsingStatement node)
10235public override BoundNode? VisitFixedStatement(BoundFixedStatement node)
10241public override BoundNode? VisitLockStatement(BoundLockStatement node)
10247public override BoundNode? VisitTryStatement(BoundTryStatement node)
10254public override BoundNode? VisitCatchBlock(BoundCatchBlock node)
10262public override BoundNode? VisitLiteral(BoundLiteral node) => null;
10263public override BoundNode? VisitUtf8String(BoundUtf8String node) => null;
10264public override BoundNode? VisitThisReference(BoundThisReference node) => null;
10265public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node) => null;
10266public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node) => null;
10267public override BoundNode? VisitBaseReference(BoundBaseReference node) => null;
10268public override BoundNode? VisitLocal(BoundLocal node) => null;
10269public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node) => null;
10270public override BoundNode? VisitRangeVariable(BoundRangeVariable node)
10275public override BoundNode? VisitParameter(BoundParameter node) => null;
10276public override BoundNode? VisitLabelStatement(BoundLabelStatement node) => null;
10277public override BoundNode? VisitGotoStatement(BoundGotoStatement node)
10283public override BoundNode? VisitLabeledStatement(BoundLabeledStatement node)
10288public override BoundNode? VisitLabel(BoundLabel node) => null;
10289public override BoundNode? VisitStatementList(BoundStatementList node)
10294public override BoundNode? VisitConditionalGoto(BoundConditionalGoto node)
10299public override BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node)
10306public override BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node)
10312public override BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node)
10318public override BoundNode? VisitDecisionDag(BoundDecisionDag node)
10323public override BoundNode? VisitEvaluationDecisionDagNode(BoundEvaluationDecisionDagNode node)
10329public override BoundNode? VisitTestDecisionDagNode(BoundTestDecisionDagNode node)
10336public override BoundNode? VisitWhenDecisionDagNode(BoundWhenDecisionDagNode node)
10343public override BoundNode? VisitLeafDecisionDagNode(BoundLeafDecisionDagNode node) => null;
10344public override BoundNode? VisitDagTemp(BoundDagTemp node)
10349public override BoundNode? VisitDagTypeTest(BoundDagTypeTest node)
10354public override BoundNode? VisitDagNonNullTest(BoundDagNonNullTest node)
10359public override BoundNode? VisitDagExplicitNullTest(BoundDagExplicitNullTest node)
10364public override BoundNode? VisitDagValueTest(BoundDagValueTest node)
10369public override BoundNode? VisitDagRelationalTest(BoundDagRelationalTest node)
10374public override BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node)
10379public override BoundNode? VisitDagTypeEvaluation(BoundDagTypeEvaluation node)
10384public override BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node)
10389public override BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node)
10394public override BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node)
10399public override BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node)
10408public override BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node)
10417public override BoundNode? VisitDagAssignmentEvaluation(BoundDagAssignmentEvaluation node)
10423public override BoundNode? VisitSwitchSection(BoundSwitchSection node)
10429public override BoundNode? VisitSwitchLabel(BoundSwitchLabel node)
10435public override BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node)
10440public override BoundNode? VisitSequence(BoundSequence node)
10446public override BoundNode? VisitSpillSequence(BoundSpillSequence node)
10452public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
10457public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node)
10463public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
10469public override BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node)
10476public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node) => null;
10477public override BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node)
10483public override BoundNode? VisitMethodGroup(BoundMethodGroup node)
10488public override BoundNode? VisitPropertyGroup(BoundPropertyGroup node)
10493public override BoundNode? VisitCall(BoundCall node)
10499public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
10505public override BoundNode? VisitAttribute(BoundAttribute node)
10511public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
10516public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node)
10522public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
10527public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node)
10532public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node) => null;
10533public override BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node)
10538public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node)
10543public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
10548public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
10554public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
10559public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
10565public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node)
10570public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node) => null;
10571public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
10577public override BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node)
10583public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
10589public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node) => null;
10590public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
10596public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node) => null;
10597public override BoundNode? VisitNewT(BoundNewT node)
10602public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
10607public override BoundNode? VisitArrayCreation(BoundArrayCreation node)
10613public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node)
10618public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
10624public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
10630public override BoundNode? VisitFieldAccess(BoundFieldAccess node)
10635public override BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node) => null;
10636public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
10641public override BoundNode? VisitEventAccess(BoundEventAccess node)
10646public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
10652public override BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node)
10658public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node)
10664public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
10670public override BoundNode? VisitLambda(BoundLambda node)
10675public override BoundNode? VisitUnboundLambda(UnboundLambda node) => null;
10676public override BoundNode? VisitQueryClause(BoundQueryClause node)
10681public override BoundNode? VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node)
10686public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node)
10691public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
10696public override BoundNode? VisitInterpolatedString(BoundInterpolatedString node)
10701public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node) => null;
10702public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node) => null;
10703public override BoundNode? VisitStringInsert(BoundStringInsert node)
10710public override BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node)
10716public override BoundNode? VisitConstantPattern(BoundConstantPattern node)
10721public override BoundNode? VisitDiscardPattern(BoundDiscardPattern node) => null;
10722public override BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node)
10728public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node)
10736public override BoundNode? VisitListPattern(BoundListPattern node)
10742public override BoundNode? VisitSlicePattern(BoundSlicePattern node)
10747public override BoundNode? VisitITuplePattern(BoundITuplePattern node)
10752public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node)
10757public override BoundNode? VisitPropertySubpattern(BoundPropertySubpattern node)
10763public override BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node)
10768public override BoundNode? VisitTypePattern(BoundTypePattern node)
10773public override BoundNode? VisitBinaryPattern(BoundBinaryPattern node)
10779public override BoundNode? VisitNegatedPattern(BoundNegatedPattern node)
10784public override BoundNode? VisitRelationalPattern(BoundRelationalPattern node)
10789public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node) => null;
10790public override BoundNode? VisitThrowExpression(BoundThrowExpression node)
10795public override BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node)
10800public override BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node)
10805public override BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node) => null;
10806public override BoundNode? VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node)
10812public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node)
10819public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node)
10824public override BoundNode? VisitWithExpression(BoundWithExpression node)
10834public override BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node)
10841public override BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node)
10848public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node)
10855public override BoundNode? VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node)
10860public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node)
10865public override BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node)
10871public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node)
10877public override BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node)
10882public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
10887public override BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node)
10892public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node)
10897public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node)
10902public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node)
10907public override BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node)
10912public override BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node)
10917public override BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node)
10922public override BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node)
10927public override BoundNode? VisitDup(BoundDup node)
10932public override BoundNode? VisitPassByCopy(BoundPassByCopy node)
10938public override BoundNode? VisitBadExpression(BoundBadExpression node)
10945public override BoundNode? VisitBadStatement(BoundBadStatement node)
10947ImmutableArray<BoundNode> childBoundNodes = this.VisitList(node.ChildBoundNodes);
10950public override BoundNode? VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node)
10955public override BoundNode? VisitTypeExpression(BoundTypeExpression node)
10963public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node)
10968public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node)
10975public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node)
10984public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node)
10997public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node)
11003public override BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node)
11009public override BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node)
11016public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
11022public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node)
11029public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
11036public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node)
11043public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node)
11049public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node)
11055public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
11062public override BoundNode? VisitRangeExpression(BoundRangeExpression node)
11070public override BoundNode? VisitBinaryOperator(BoundBinaryOperator node)
11077public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
11084public override BoundNode? VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node)
11096public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
11108public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
11115public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
11122public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
11131public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
11138public override BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node)
11146public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node)
11155public override BoundNode? VisitArrayAccess(BoundArrayAccess node)
11162public override BoundNode? VisitRefArrayAccess(BoundRefArrayAccess node)
11168public override BoundNode? VisitArrayLength(BoundArrayLength node)
11174public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node)
11182public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
11189public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node)
11196public override BoundNode? VisitBlockInstrumentation(BoundBlockInstrumentation node)
11202public override BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node)
11208public override BoundNode? VisitLocalId(BoundLocalId node)
11215public override BoundNode? VisitParameterId(BoundParameterId node)
11222public override BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node)
11227public override BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node)
11232public override BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node)
11237public override BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node)
11242public override BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node)
11247public override BoundNode? VisitModuleVersionId(BoundModuleVersionId node)
11252public override BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node)
11257public override BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node)
11262public override BoundNode? VisitMethodInfo(BoundMethodInfo node)
11269public override BoundNode? VisitFieldInfo(BoundFieldInfo node)
11276public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node)
11281public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node)
11287public override BoundNode? VisitIsOperator(BoundIsOperator node)
11294public override BoundNode? VisitAsOperator(BoundAsOperator node)
11303public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node)
11309public override BoundNode? VisitConversion(BoundConversion node)
11315public override BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node)
11322public override BoundNode? VisitArgList(BoundArgList node)
11327public override BoundNode? VisitArgListOperator(BoundArgListOperator node)
11333public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
11343public override BoundNode? VisitSequencePoint(BoundSequencePoint node)
11348public override BoundNode? VisitSequencePointWithSpan(BoundSequencePointWithSpan node)
11353public override BoundNode? VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node) => node;
11354public override BoundNode? VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node) => node;
11355public override BoundNode? VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node) => node;
11356public override BoundNode? VisitBlock(BoundBlock node)
11364public override BoundNode? VisitScope(BoundScope node)
11370public override BoundNode? VisitStateMachineScope(BoundStateMachineScope node)
11376public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node)
11384public override BoundNode? VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node)
11389public override BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node)
11395public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
11402public override BoundNode? VisitNoOpStatement(BoundNoOpStatement node) => node;
11403public override BoundNode? VisitReturnStatement(BoundReturnStatement node)
11408public override BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node)
11413public override BoundNode? VisitYieldBreakStatement(BoundYieldBreakStatement node) => node;
11414public override BoundNode? VisitThrowStatement(BoundThrowStatement node)
11419public override BoundNode? VisitExpressionStatement(BoundExpressionStatement node)
11424public override BoundNode? VisitBreakStatement(BoundBreakStatement node)
11429public override BoundNode? VisitContinueStatement(BoundContinueStatement node)
11434public override BoundNode? VisitSwitchStatement(BoundSwitchStatement node)
11445public override BoundNode? VisitSwitchDispatch(BoundSwitchDispatch node)
11451public override BoundNode? VisitIfStatement(BoundIfStatement node)
11458public override BoundNode? VisitDoStatement(BoundDoStatement node)
11467public override BoundNode? VisitWhileStatement(BoundWhileStatement node)
11476public override BoundNode? VisitForStatement(BoundForStatement node)
11488public override BoundNode? VisitForEachStatement(BoundForEachStatement node)
11503public override BoundNode? VisitForEachDeconstructStep(BoundForEachDeconstructStep node)
11509public override BoundNode? VisitUsingStatement(BoundUsingStatement node)
11518public override BoundNode? VisitFixedStatement(BoundFixedStatement node)
11525public override BoundNode? VisitLockStatement(BoundLockStatement node)
11531public override BoundNode? VisitTryStatement(BoundTryStatement node)
11539public override BoundNode? VisitCatchBlock(BoundCatchBlock node)
11549public override BoundNode? VisitLiteral(BoundLiteral node)
11554public override BoundNode? VisitUtf8String(BoundUtf8String node)
11559public override BoundNode? VisitThisReference(BoundThisReference node)
11564public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node)
11569public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node)
11574public override BoundNode? VisitBaseReference(BoundBaseReference node)
11579public override BoundNode? VisitLocal(BoundLocal node)
11585public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node)
11591public override BoundNode? VisitRangeVariable(BoundRangeVariable node)
11598public override BoundNode? VisitParameter(BoundParameter node)
11604public override BoundNode? VisitLabelStatement(BoundLabelStatement node)
11609public override BoundNode? VisitGotoStatement(BoundGotoStatement node)
11616public override BoundNode? VisitLabeledStatement(BoundLabeledStatement node)
11622public override BoundNode? VisitLabel(BoundLabel node)
11628public override BoundNode? VisitStatementList(BoundStatementList node)
11633public override BoundNode? VisitConditionalGoto(BoundConditionalGoto node)
11639public override BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node)
11648public override BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node)
11657public override BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node)
11667public override BoundNode? VisitDecisionDag(BoundDecisionDag node)
11672public override BoundNode? VisitEvaluationDecisionDagNode(BoundEvaluationDecisionDagNode node)
11678public override BoundNode? VisitTestDecisionDagNode(BoundTestDecisionDagNode node)
11685public override BoundNode? VisitWhenDecisionDagNode(BoundWhenDecisionDagNode node)
11692public override BoundNode? VisitLeafDecisionDagNode(BoundLeafDecisionDagNode node)
11697public override BoundNode? VisitDagTemp(BoundDagTemp node)
11703public override BoundNode? VisitDagTypeTest(BoundDagTypeTest node)
11709public override BoundNode? VisitDagNonNullTest(BoundDagNonNullTest node)
11714public override BoundNode? VisitDagExplicitNullTest(BoundDagExplicitNullTest node)
11719public override BoundNode? VisitDagValueTest(BoundDagValueTest node)
11724public override BoundNode? VisitDagRelationalTest(BoundDagRelationalTest node)
11729public override BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node)
11735public override BoundNode? VisitDagTypeEvaluation(BoundDagTypeEvaluation node)
11741public override BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node)
11747public override BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node)
11753public override BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node)
11759public override BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node)
11769public override BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node)
11779public override BoundNode? VisitDagAssignmentEvaluation(BoundDagAssignmentEvaluation node)
11785public override BoundNode? VisitSwitchSection(BoundSwitchSection node)
11792public override BoundNode? VisitSwitchLabel(BoundSwitchLabel node)
11799public override BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node)
11805public override BoundNode? VisitSequence(BoundSequence node)
11813public override BoundNode? VisitSpillSequence(BoundSpillSequence node)
11821public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
11827public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node)
11835public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
11842public override BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node)
11851public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node)
11856public override BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node)
11863public override BoundNode? VisitMethodGroup(BoundMethodGroup node)
11872public override BoundNode? VisitPropertyGroup(BoundPropertyGroup node)
11879public override BoundNode? VisitCall(BoundCall node)
11888public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
11896public override BoundNode? VisitAttribute(BoundAttribute node)
11904public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
11910public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node)
11919public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
11921ImmutableArray<BoundNode> elements = this.VisitList(node.Elements);
11925public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node)
11933ImmutableArray<BoundNode> elements = this.VisitList(node.Elements);
11937public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node)
11942public override BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node)
11952public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node)
11958public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
11965public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
11973public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
11979public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
11986public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node)
11994public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
12000public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
12007public override BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node)
12015public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
12023public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node)
12028public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
12036public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node)
12042public override BoundNode? VisitNewT(BoundNewT node)
12048public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
12055public override BoundNode? VisitArrayCreation(BoundArrayCreation node)
12062public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node)
12068public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
12076public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
12084public override BoundNode? VisitFieldAccess(BoundFieldAccess node)
12091public override BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node)
12097public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
12104public override BoundNode? VisitEventAccess(BoundEventAccess node)
12111public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
12120public override BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node)
12131public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node)
12138public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
12146public override BoundNode? VisitLambda(BoundLambda node)
12154public override BoundNode? VisitUnboundLambda(UnboundLambda node)
12160public override BoundNode? VisitQueryClause(BoundQueryClause node)
12170public override BoundNode? VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node)
12175public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node)
12181public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
12187public override BoundNode? VisitInterpolatedString(BoundInterpolatedString node)
12193public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node)
12198public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node)
12203public override BoundNode? VisitStringInsert(BoundStringInsert node)
12211public override BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node)
12221public override BoundNode? VisitConstantPattern(BoundConstantPattern node)
12228public override BoundNode? VisitDiscardPattern(BoundDiscardPattern node)
12234public override BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node)
12243public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node)
12255public override BoundNode? VisitListPattern(BoundListPattern node)
12268public override BoundNode? VisitSlicePattern(BoundSlicePattern node)
12278public override BoundNode? VisitITuplePattern(BoundITuplePattern node)
12287public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node)
12293public override BoundNode? VisitPropertySubpattern(BoundPropertySubpattern node)
12299public override BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node)
12306public override BoundNode? VisitTypePattern(BoundTypePattern node)
12313public override BoundNode? VisitBinaryPattern(BoundBinaryPattern node)
12321public override BoundNode? VisitNegatedPattern(BoundNegatedPattern node)
12328public override BoundNode? VisitRelationalPattern(BoundRelationalPattern node)
12335public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node)
12340public override BoundNode? VisitThrowExpression(BoundThrowExpression node)
12346public override BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node)
12353public override BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node)
12360public override BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node)
12366public override BoundNode? VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node)
12372public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node)
12380public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node)
12386public override BoundNode? VisitWithExpression(BoundWithExpression node)
12409public override BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node)
12417public override BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node)
12425public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node)
12433public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node)
12445public override BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node)
12462public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node)
12479public override BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node)
12491public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
12503public override BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node)
12515public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node)
12527public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node)
12539public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node)
12551public override BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node)
12563public override BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node)
12575public override BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node)
12587public override BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node)
12599public override BoundNode? VisitDup(BoundDup node)
12611public override BoundNode? VisitPassByCopy(BoundPassByCopy node)
12628public override BoundNode? VisitBadExpression(BoundBadExpression node)
12646public override BoundNode? VisitTypeExpression(BoundTypeExpression node)
12664public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node)
12676public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node)
12688public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node)
12708public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node)
12732public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node)
12749public override BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node)
12766public override BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node)
12784public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
12801public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node)
12819public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
12837public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node)
12855public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node)
12872public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node)
12889public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
12907public override BoundNode? VisitRangeExpression(BoundRangeExpression node)
12926public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
12944public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
12967public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
12985public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
13003public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
13023public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
13041public override BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node)
13060public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node)
13080public override BoundNode? VisitArrayAccess(BoundArrayAccess node)
13098public override BoundNode? VisitRefArrayAccess(BoundRefArrayAccess node)
13115public override BoundNode? VisitArrayLength(BoundArrayLength node)
13132public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node)
13141public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
13159public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node)
13177public override BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node)
13194public override BoundNode? VisitLocalId(BoundLocalId node)
13212public override BoundNode? VisitParameterId(BoundParameterId node)
13230public override BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node)
13242public override BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node)
13254public override BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node)
13266public override BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node)
13278public override BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node)
13290public override BoundNode? VisitModuleVersionId(BoundModuleVersionId node)
13302public override BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node)
13314public override BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node)
13326public override BoundNode? VisitMethodInfo(BoundMethodInfo node)
13344public override BoundNode? VisitFieldInfo(BoundFieldInfo node)
13362public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node)
13374public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node)
13391public override BoundNode? VisitIsOperator(BoundIsOperator node)
13409public override BoundNode? VisitAsOperator(BoundAsOperator node)
13429public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node)
13446public override BoundNode? VisitConversion(BoundConversion node)
13463public override BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node)
13481public override BoundNode? VisitArgList(BoundArgList node)
13493public override BoundNode? VisitArgListOperator(BoundArgListOperator node)
13510public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
13531public override BoundNode? VisitBlock(BoundBlock node)
13540public override BoundNode? VisitScope(BoundScope node)
13547public override BoundNode? VisitStateMachineScope(BoundStateMachineScope node)
13554public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node)
13563public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
13571public override BoundNode? VisitSwitchStatement(BoundSwitchStatement node)
13582public override BoundNode? VisitDoStatement(BoundDoStatement node)
13590public override BoundNode? VisitWhileStatement(BoundWhileStatement node)
13598public override BoundNode? VisitForStatement(BoundForStatement node)
13609public override BoundNode? VisitForEachStatement(BoundForEachStatement node)
13623public override BoundNode? VisitUsingStatement(BoundUsingStatement node)
13633public override BoundNode? VisitFixedStatement(BoundFixedStatement node)
13641public override BoundNode? VisitCatchBlock(BoundCatchBlock node)
13652public override BoundNode? VisitLiteral(BoundLiteral node)
13664public override BoundNode? VisitUtf8String(BoundUtf8String node)
13676public override BoundNode? VisitThisReference(BoundThisReference node)
13688public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node)
13700public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node)
13712public override BoundNode? VisitBaseReference(BoundBaseReference node)
13724public override BoundNode? VisitLocal(BoundLocal node)
13741public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node)
13758public override BoundNode? VisitRangeVariable(BoundRangeVariable node)
13776public override BoundNode? VisitParameter(BoundParameter node)
13793public override BoundNode? VisitLabel(BoundLabel node)
13805public override BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node)
13814public override BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node)
13833public override BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node)
13853public override BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node)
13860public override BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node)
13867public override BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node)
13874public override BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node)
13881public override BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node)
13892public override BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node)
13903public override BoundNode? VisitSwitchSection(BoundSwitchSection node)
13911public override BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node)
13928public override BoundNode? VisitSequence(BoundSequence node)
13947public override BoundNode? VisitSpillSequence(BoundSpillSequence node)
13966public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
13983public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node)
14002public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
14020public override BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node)
14040public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node)
14052public override BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node)
14070public override BoundNode? VisitMethodGroup(BoundMethodGroup node)
14090public override BoundNode? VisitPropertyGroup(BoundPropertyGroup node)
14108public override BoundNode? VisitCall(BoundCall node)
14128public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
14147public override BoundNode? VisitAttribute(BoundAttribute node)
14166public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
14183public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node)
14203public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
14205ImmutableArray<BoundNode> elements = this.VisitList(node.Elements);
14220public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node)
14228ImmutableArray<BoundNode> elements = this.VisitList(node.Elements);
14243public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node)
14255public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node)
14272public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
14290public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
14309public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
14326public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
14344public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node)
14363public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
14380public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
14398public override BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node)
14417public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
14436public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node)
14448public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
14467public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node)
14484public override BoundNode? VisitNewT(BoundNewT node)
14501public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
14519public override BoundNode? VisitArrayCreation(BoundArrayCreation node)
14537public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node)
14554public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
14573public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
14592public override BoundNode? VisitFieldAccess(BoundFieldAccess node)
14610public override BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node)
14627public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
14645public override BoundNode? VisitEventAccess(BoundEventAccess node)
14663public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
14683public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node)
14701public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
14720public override BoundNode? VisitLambda(BoundLambda node)
14739public override BoundNode? VisitUnboundLambda(UnboundLambda node)
14756public override BoundNode? VisitQueryClause(BoundQueryClause node)
14777public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node)
14794public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
14811public override BoundNode? VisitInterpolatedString(BoundInterpolatedString node)
14828public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node)
14840public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node)
14852public override BoundNode? VisitStringInsert(BoundStringInsert node)
14871public override BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node)
14890public override BoundNode? VisitConstantPattern(BoundConstantPattern node)
14898public override BoundNode? VisitDiscardPattern(BoundDiscardPattern node)
14905public override BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node)
14915public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node)
14928public override BoundNode? VisitListPattern(BoundListPattern node)
14942public override BoundNode? VisitSlicePattern(BoundSlicePattern node)
14953public override BoundNode? VisitITuplePattern(BoundITuplePattern node)
14963public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node)
14970public override BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node)
14977public override BoundNode? VisitTypePattern(BoundTypePattern node)
14985public override BoundNode? VisitBinaryPattern(BoundBinaryPattern node)
14994public override BoundNode? VisitNegatedPattern(BoundNegatedPattern node)
15002public override BoundNode? VisitRelationalPattern(BoundRelationalPattern node)
15010public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node)
15022public override BoundNode? VisitThrowExpression(BoundThrowExpression node)
15039public override BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node)
15057public override BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node)
15075public override BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node)
15092public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node)
15101public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node)
15118public override BoundNode? VisitWithExpression(BoundWithExpression node)
15143public 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>();
337static partial void CheckLocalsDefined(BoundNode node);
370var scopeBoundNode = scope.BoundNode;
640private static void InsertAndFreePrologue<T>(ArrayBuilder<BoundStatement> result, ArrayBuilder<T> prologue) where T : BoundNode
650result.Add(new BoundExpressionStatement(node.Syntax, (BoundExpression)(BoundNode)node));
664private BoundNode IntroduceFrame(BoundNode node, Analysis.ClosureEnvironment env, Func<ArrayBuilder<BoundExpression>, ArrayBuilder<LocalSymbol>, BoundNode> F)
730var result = F(prologue, addedLocals);
824protected override BoundNode VisitUnhoistedParameter(BoundParameter node)
835public override BoundNode VisitThisReference(BoundThisReference node)
852public override BoundNode VisitBaseReference(BoundBaseReference node)
859public override BoundNode VisitMethodDefIndex(BoundMethodDefIndex node)
1074public override BoundNode VisitCall(BoundCall node)
1108var visited = base.VisitCall(node);
1155public override BoundNode VisitBlock(BoundBlock node)
1203public override BoundNode VisitScope(BoundScope node)
1217public override BoundNode VisitCatchBlock(BoundCatchBlock node)
1233private BoundNode RewriteCatch(BoundCatchBlock node, ArrayBuilder<BoundExpression> prologue, ArrayBuilder<LocalSymbol> newLocals)
1291public override BoundNode VisitSequence(BoundSequence node)
1307public override BoundNode VisitStatementList(BoundStatementList node)
1332public override BoundNode VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
1365public override BoundNode VisitFunctionPointerLoad(BoundFunctionPointerLoad node)
1392public override BoundNode VisitConversion(BoundConversion conversion)
1422public override BoundNode VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
1427BoundNode lambdaScope;
1519out BoundNode lambdaScope,
1536BoundNode tmpScope = null;
1621private BoundNode RewriteLambdaConversion(BoundLambda node)
1631var result0 = wasInExpressionLambda ? node : ExpressionLambdaRewriter.RewriteLambda(node, CompilationState, TypeMap, RecursionDepth, Diagnostics);
1639BoundNode lambdaScope;
1791public 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);