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)
24internal static IEnumerable<LabeledStatementSyntax> Analyze(CSharpCompilation compilation, Symbol member, BoundNode node, BoundNode firstInRegion, BoundNode lastInRegion, out bool? succeeded)
49private EntryPointsWalker(CSharpCompilation compilation, Symbol member, BoundNode node, BoundNode firstInRegion, BoundNode lastInRegion)
59protected 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)
7017BoundNode node,
7039BoundNode node,
7078BoundNode node,
7268BoundNode node,
8275var elementsBuilder = ArrayBuilder<BoundNode>.GetInstance(collectionExpressionVisitResults.Length);
8606public override BoundNode? VisitConversion(BoundConversion node)
8743public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node)
8749public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
8972public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
9936public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
10112public override BoundNode? VisitMethodGroup(BoundMethodGroup node)
10207public override BoundNode? VisitLambda(BoundLambda node)
10256public override BoundNode? VisitUnboundLambda(UnboundLambda node)
10266public override BoundNode? VisitThisReference(BoundThisReference node)
10279public override BoundNode? VisitParameter(BoundParameter node)
10289public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
10468public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
10473private BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node, TypeWithState? rightResultOpt)
10587var underlyingConversion = BoundNode.GetConversion(placeholderConversion, placeholder);
10628var underlyingConversion = BoundNode.GetConversion(placeholderConversion, placeholder);
10787public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node)
10838BoundNode.GetConversion(node.OperandConversion, node.OperandPlaceholder),
10868BoundNode.GetConversion(node.ResultConversion, node.ResultPlaceholder),
10896public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
10946BoundNode.GetConversion(node.LeftConversion, node.LeftPlaceholder),
10960BoundNode.GetConversion(node.FinalConversion, node.FinalPlaceholder),
10981public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
10998public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node)
11056public override BoundNode? VisitBaseReference(BoundBaseReference node)
11062public override BoundNode? VisitFieldAccess(BoundFieldAccess node)
11071public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
11121public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
11145public override BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node)
11159public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node)
11167public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node)
11173public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node)
11179public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node)
11185public override BoundNode? VisitEventAccess(BoundEventAccess node)
11295BoundNode node,
11560Conversion conversion = BoundNode.GetConversion(node.ElementConversion, node.ElementPlaceholder);
11597public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
11599var result = base.VisitFromEndIndexExpression(node);
11604public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node)
11610public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
11616public override BoundNode? VisitBadExpression(BoundBadExpression node)
11638public override BoundNode? VisitTypeExpression(BoundTypeExpression node)
11640var result = base.VisitTypeExpression(node);
11651public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node)
11654var result = base.VisitTypeOrValueExpression(node);
11659public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node)
11731public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
11733var result = base.VisitPointerIndirectionOperator(node);
11739public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node)
11741var result = base.VisitPointerElementAccess(node);
11747public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node)
11754public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node)
11756var result = base.VisitMakeRefOperator(node);
11761public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node)
11763var result = base.VisitRefValueOperator(node);
11859public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
11861var result = base.VisitAwaitExpression(node);
11890public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node)
11892var result = base.VisitTypeOfOperator(node);
11897public override BoundNode? VisitMethodInfo(BoundMethodInfo node)
11899var result = base.VisitMethodInfo(node);
11904public override BoundNode? VisitFieldInfo(BoundFieldInfo node)
11906var result = base.VisitFieldInfo(node);
11911public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node)
11914var result = base.VisitDefaultLiteral(node);
11919public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node)
11923var result = base.VisitDefaultExpression(node);
11939public override BoundNode? VisitIsOperator(BoundIsOperator node)
11973public override BoundNode? VisitAsOperator(BoundAsOperator node)
11981switch (BoundNode.GetConversion(node.OperandConversion, node.OperandPlaceholder).Kind)
12001public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node)
12003var result = base.VisitSizeOfOperator(node);
12009public override BoundNode? VisitArgList(BoundArgList node)
12011var result = base.VisitArgList(node);
12017public override BoundNode? VisitArgListOperator(BoundArgListOperator node)
12025public override BoundNode? VisitLiteral(BoundLiteral node)
12028var result = base.VisitLiteral(node);
12033public override BoundNode? VisitUtf8String(BoundUtf8String node)
12036var result = base.VisitUtf8String(node);
12041public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node)
12043var result = base.VisitPreviousSubmissionReference(node);
12049public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node)
12051var result = base.VisitHostObjectMemberReference(node);
12057public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node)
12059var result = base.VisitPseudoVariable(node);
12064public override BoundNode? VisitRangeExpression(BoundRangeExpression node)
12066var result = base.VisitRangeExpression(node);
12071public override BoundNode? VisitRangeVariable(BoundRangeVariable node)
12078public override BoundNode? VisitLabel(BoundLabel node)
12080var result = base.VisitLabel(node);
12085public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
12097public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node)
12117public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
12143public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
12149public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
12157public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
12165public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
12173public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node)
12175var result = base.VisitImplicitReceiver(node);
12180public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node)
12185public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
12191public override BoundNode? VisitNewT(BoundNewT node)
12197public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node)
12199var result = base.VisitArrayInitialization(node);
12209public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
12303public override BoundNode? VisitQueryClause(BoundQueryClause node)
12305var result = base.VisitQueryClause(node);
12310public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node)
12312var result = base.VisitNameOfOperator(node);
12317public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node)
12319var result = base.VisitNamespaceExpression(node);
12324public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
12327var result = base.VisitUnconvertedInterpolatedString(node);
12332public override BoundNode? VisitStringInsert(BoundStringInsert node)
12334var result = base.VisitStringInsert(node);
12345public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node)
12353public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node)
12359public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
12365public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
12370private BoundNode? VisitStackAllocArrayCreationBase(BoundStackAllocArrayCreationBase node)
12387public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node)
12395public override BoundNode? VisitThrowExpression(BoundThrowExpression node)
12402public override BoundNode? VisitThrowStatement(BoundThrowStatement node)
12425public override BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node)
12463public override BoundNode? VisitLockStatement(BoundLockStatement node)
12471public override BoundNode? VisitAttribute(BoundAttribute node)
12484public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node)
12491public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node)
12499public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node)
12507public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
12530public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node)
12537public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
13105private sealed class ExpressionAndSymbolEqualityComparer : IEqualityComparer<(BoundNode? expr, Symbol symbol)>
13111public bool Equals((BoundNode? expr, Symbol symbol) x, (BoundNode? expr, Symbol symbol) y)
13122public 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);
1766public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUserDefinedConditionalLogicalOperator(this);
1813public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCompoundAssignmentOperator(this);
1847public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAssignmentOperator(this);
1882public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeconstructionAssignmentOperator(this);
1923public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNullCoalescingOperator(this);
1954public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNullCoalescingAssignmentOperator(this);
1993public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedConditionalOperator(this);
2037public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalOperator(this);
2070public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayAccess(this);
2099public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRefArrayAccess(this);
2129public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayLength(this);
2162public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAwaitableInfo(this);
2197public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAwaitExpression(this);
2250public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeOfOperator(this);
2282public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBlockInstrumentation(this);
2322public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMethodDefIndex(this);
2365public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocalId(this);
2408public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitParameterId(this);
2443public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStateMachineInstanceId(this);
2478public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMaximumMethodDefIndex(this);
2516public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInstrumentationPayloadRoot(this);
2551public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThrowIfModuleCancellationRequested(this);
2586public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitModuleCancellationTokenExpression(this);
2621public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitModuleVersionId(this);
2656public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitModuleVersionIdString(this);
2696public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSourceDocumentIndex(this);
2739public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMethodInfo(this);
2782public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFieldInfo(this);
2811public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDefaultLiteral(this);
2836public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDefaultExpression(this);
2871public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIsOperator(this);
2908public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAsOperator(this);
2940public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSizeOfOperator(this);
2982public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConversion(this);
3015public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitReadOnlySpanFromArray(this);
3050public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArgList(this);
3081public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArgListOperator(this);
3120public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFixedLocalCollectionInitializer(this);
3159public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequencePoint(this);
3186public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequencePointWithSpan(this);
3223public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSavePreviousSequencePoint(this);
3260public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRestorePreviousSequencePoint(this);
3291public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStepThroughSequencePoint(this);
3327public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBlock(this);
3356public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitScope(this);
3387public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStateMachineScope(this);
3423public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocalDeclaration(this);
3463public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMultipleLocalDeclarations(this);
3493public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUsingLocalDeclarations(this);
3525public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocalFunctionStatement(this);
3556public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNoOpStatement(this);
3585public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitReturnStatement(this);
3613public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitYieldReturnStatement(this);
3641public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitYieldBreakStatement(this);
3655public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThrowStatement(this);
3683public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitExpressionStatement(this);
3720public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBreakStatement(this);
3757public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitContinueStatement(this);
3802public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchStatement(this);
3838public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchDispatch(this);
3871public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIfStatement(this);
3951public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDoStatement(this);
3981public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitWhileStatement(this);
4023public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitForStatement(this);
4074public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitForEachStatement(this);
4105public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitForEachDeconstructStep(this);
4144public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUsingStatement(this);
4178public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFixedStatement(this);
4209public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLockStatement(this);
4246public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTryStatement(this);
4287public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCatchBlock(this);
4318public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLiteral(this);
4358public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUtf8String(this);
4393public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThisReference(this);
4428public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPreviousSubmissionReference(this);
4463public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitHostObjectMemberReference(this);
4492public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBaseReference(this);
4541public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocal(this);
4586public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPseudoVariable(this);
4619public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRangeVariable(this);
4659public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitParameter(this);
4696public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLabelStatement(this);
4728public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitGotoStatement(this);
4759public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLabeledStatement(this);
4796public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLabel(this);
4833public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStatementList(this);
4866public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalGoto(this);
4929public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchExpressionArm(this);
4957public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedSwitchExpression(this);
4991public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConvertedSwitchExpression(this);
5019public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDecisionDag(this);
5064public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitEvaluationDecisionDagNode(this);
5098public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTestDecisionDagNode(this);
5133public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitWhenDecisionDagNode(this);
5170public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLeafDecisionDagNode(this);
5216public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagTemp(this);
5245public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagTypeTest(this);
5273public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagNonNullTest(this);
5299public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagExplicitNullTest(this);
5328public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagValueTest(this);
5359public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagRelationalTest(this);
5400public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagDeconstructEvaluation(this);
5429public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagTypeEvaluation(this);
5458public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagFieldEvaluation(this);
5489public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagPropertyEvaluation(this);
5520public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagIndexEvaluation(this);
5567public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagIndexerEvaluation(this);
5616public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagSliceEvaluation(this);
5645public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagAssignmentEvaluation(this);
5677public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchSection(this);
5710public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchLabel(this);
5752public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequencePointExpression(this);
5788public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequence(this);
5824public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSpillSequence(this);
5863public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicMemberAccess(this);
5916public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicInvocation(this);
5949public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalAccess(this);
5990public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLoweredConditionalAccess(this);
6028public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalReceiver(this);
6061public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitComplexConditionalReceiver(this);
6102public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMethodGroup(this);
6130public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertyGroup(this);
6185public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCall(this);
6224public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitEventAssignmentOperator(this);
6269public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAttribute(this);
6307public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedObjectCreationExpression(this);
6379public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectCreationExpression(this);
6395protected BoundCollectionExpressionBase(BoundKind kind, SyntaxNode syntax, ImmutableArray<BoundNode> elements, TypeSymbol? type, bool hasErrors = false)
6404public ImmutableArray<BoundNode> Elements { get; }
6409public BoundUnconvertedCollectionExpression(SyntaxNode syntax, ImmutableArray<BoundNode> elements, bool hasErrors = false)
6420public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedCollectionExpression(this);
6422public BoundUnconvertedCollectionExpression Update(ImmutableArray<BoundNode> elements)
6436public 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)
6465public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionExpression(this);
6467public BoundCollectionExpression Update(CollectionExpressionTypeKind collectionTypeKind, BoundObjectOrCollectionValuePlaceholder? placeholder, BoundExpression? collectionCreation, MethodSymbol? collectionBuilderMethod, BoundValuePlaceholder? collectionBuilderInvocationPlaceholder, BoundExpression? collectionBuilderInvocationConversion, bool wasTargetTyped, BoundUnconvertedCollectionExpression unconvertedCollectionExpression, ImmutableArray<BoundNode> elements, TypeSymbol type)
6493public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionExpressionSpreadExpressionPlaceholder(this);
6533public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionExpressionSpreadElement(this);
6578public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTupleLiteral(this);
6608public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConvertedTupleLiteral(this);
6651public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicObjectCreationExpression(this);
6683public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNoPiaObjectCreationExpression(this);
6730public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectInitializerExpression(this);
6779public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectInitializerMember(this);
6824public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicObjectInitializerMember(this);
6852public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionInitializerExpression(this);
6897public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionElementInitializer(this);
6929public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicCollectionElementInitializer(this);
6964public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitReceiver(this);
7000public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAnonymousObjectCreationExpression(this);
7040public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAnonymousPropertyDeclaration(this);
7070public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNewT(this);
7106public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDelegateCreationExpression(this);
7138public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayCreation(this);
7169public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayInitialization(this);
7215public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStackAllocArrayCreation(this);
7244public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConvertedStackAllocExpression(this);
7284public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFieldAccess(this);
7324public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitHoistedFieldAccess(this);
7362public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertyAccess(this);
7398public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitEventAccess(this);
7449public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIndexerAccess(this);
7498public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitIndexerAccess(this);
7539public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInlineArrayAccess(this);
7579public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicIndexerAccess(this);
7619public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLambda(this);
7663public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnboundLambda(this);
7704public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitQueryClause(this);
7730public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeOrInstanceInitializers(this);
7763public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNameOfOperator(this);
7805public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedInterpolatedString(this);
7833public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedString(this);
7861public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedStringHandlerPlaceholder(this);
7899public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedStringArgumentPlaceholder(this);
7934public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStringInsert(this);
7976public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIsPatternExpression(this);
8041public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConstantPattern(this);
8081public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDiscardPattern(this);
8134public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeclarationPattern(this);
8175public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRecursivePattern(this);
8219public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitListPattern(this);
8258public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSlicePattern(this);
8298public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitITuplePattern(this);
8340public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPositionalSubpattern(this);
8370public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertySubpattern(this);
8402public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertySubpatternMember(this);
8438public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypePattern(this);
8477public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBinaryPattern(this);
8511public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNegatedPattern(this);
8550public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRelationalPattern(this);
8585public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDiscardExpression(this);
8613public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThrowExpression(this);
8656public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitOutVariablePendingInference(this);
8682public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeconstructionVariablePendingInference(this);
8717public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitOutDeconstructVarPendingInference(this);
8753public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNonConstructorMethodBody(this);
8783public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConstructorMethodBody(this);
8814public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitExpressionWithNullability(this);
8849public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitWithExpression(this);
8867internal R VisitInternal(BoundNode node, A arg)
9579public virtual BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node) => this.DefaultVisit(node);
9580public virtual BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node) => this.DefaultVisit(node);
9581public virtual BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node) => this.DefaultVisit(node);
9582public virtual BoundNode? VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node) => this.DefaultVisit(node);
9583public virtual BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node) => this.DefaultVisit(node);
9584public virtual BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node) => this.DefaultVisit(node);
9585public virtual BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node) => this.DefaultVisit(node);
9586public virtual BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node) => this.DefaultVisit(node);
9587public virtual BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node) => this.DefaultVisit(node);
9588public virtual BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node) => this.DefaultVisit(node);
9589public virtual BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node) => this.DefaultVisit(node);
9590public virtual BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node) => this.DefaultVisit(node);
9591public virtual BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node) => this.DefaultVisit(node);
9592public virtual BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node) => this.DefaultVisit(node);
9593public virtual BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node) => this.DefaultVisit(node);
9594public virtual BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node) => this.DefaultVisit(node);
9595public virtual BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node) => this.DefaultVisit(node);
9596public virtual BoundNode? VisitDup(BoundDup node) => this.DefaultVisit(node);
9597public virtual BoundNode? VisitPassByCopy(BoundPassByCopy node) => this.DefaultVisit(node);
9598public virtual BoundNode? VisitBadExpression(BoundBadExpression node) => this.DefaultVisit(node);
9599public virtual BoundNode? VisitBadStatement(BoundBadStatement node) => this.DefaultVisit(node);
9600public virtual BoundNode? VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node) => this.DefaultVisit(node);
9601public virtual BoundNode? VisitTypeExpression(BoundTypeExpression node) => this.DefaultVisit(node);
9602public virtual BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node) => this.DefaultVisit(node);
9603public virtual BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node) => this.DefaultVisit(node);
9604public virtual BoundNode? VisitUnaryOperator(BoundUnaryOperator node) => this.DefaultVisit(node);
9605public virtual BoundNode? VisitIncrementOperator(BoundIncrementOperator node) => this.DefaultVisit(node);
9606public virtual BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node) => this.DefaultVisit(node);
9607public virtual BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node) => this.DefaultVisit(node);
9608public virtual BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node) => this.DefaultVisit(node);
9609public virtual BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node) => this.DefaultVisit(node);
9610public virtual BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node) => this.DefaultVisit(node);
9611public virtual BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node) => this.DefaultVisit(node);
9612public virtual BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node) => this.DefaultVisit(node);
9613public virtual BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node) => this.DefaultVisit(node);
9614public virtual BoundNode? VisitRefValueOperator(BoundRefValueOperator node) => this.DefaultVisit(node);
9615public virtual BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node) => this.DefaultVisit(node);
9616public virtual BoundNode? VisitRangeExpression(BoundRangeExpression node) => this.DefaultVisit(node);
9617public virtual BoundNode? VisitBinaryOperator(BoundBinaryOperator node) => this.DefaultVisit(node);
9618public virtual BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node) => this.DefaultVisit(node);
9619public virtual BoundNode? VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node) => this.DefaultVisit(node);
9620public virtual BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node) => this.DefaultVisit(node);
9621public virtual BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node) => this.DefaultVisit(node);
9622public virtual BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node) => this.DefaultVisit(node);
9623public virtual BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node) => this.DefaultVisit(node);
9624public virtual BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node) => this.DefaultVisit(node);
9625public virtual BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node) => this.DefaultVisit(node);
9626public virtual BoundNode? VisitConditionalOperator(BoundConditionalOperator node) => this.DefaultVisit(node);
9627public virtual BoundNode? VisitArrayAccess(BoundArrayAccess node) => this.DefaultVisit(node);
9628public virtual BoundNode? VisitRefArrayAccess(BoundRefArrayAccess node) => this.DefaultVisit(node);
9629public virtual BoundNode? VisitArrayLength(BoundArrayLength node) => this.DefaultVisit(node);
9630public virtual BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node) => this.DefaultVisit(node);
9631public virtual BoundNode? VisitAwaitExpression(BoundAwaitExpression node) => this.DefaultVisit(node);
9632public virtual BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node) => this.DefaultVisit(node);
9633public virtual BoundNode? VisitBlockInstrumentation(BoundBlockInstrumentation node) => this.DefaultVisit(node);
9634public virtual BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node) => this.DefaultVisit(node);
9635public virtual BoundNode? VisitLocalId(BoundLocalId node) => this.DefaultVisit(node);
9636public virtual BoundNode? VisitParameterId(BoundParameterId node) => this.DefaultVisit(node);
9637public virtual BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node) => this.DefaultVisit(node);
9638public virtual BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node) => this.DefaultVisit(node);
9639public virtual BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node) => this.DefaultVisit(node);
9640public virtual BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node) => this.DefaultVisit(node);
9641public virtual BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node) => this.DefaultVisit(node);
9642public virtual BoundNode? VisitModuleVersionId(BoundModuleVersionId node) => this.DefaultVisit(node);
9643public virtual BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node) => this.DefaultVisit(node);
9644public virtual BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node) => this.DefaultVisit(node);
9645public virtual BoundNode? VisitMethodInfo(BoundMethodInfo node) => this.DefaultVisit(node);
9646public virtual BoundNode? VisitFieldInfo(BoundFieldInfo node) => this.DefaultVisit(node);
9647public virtual BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node) => this.DefaultVisit(node);
9648public virtual BoundNode? VisitDefaultExpression(BoundDefaultExpression node) => this.DefaultVisit(node);
9649public virtual BoundNode? VisitIsOperator(BoundIsOperator node) => this.DefaultVisit(node);
9650public virtual BoundNode? VisitAsOperator(BoundAsOperator node) => this.DefaultVisit(node);
9651public virtual BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node) => this.DefaultVisit(node);
9652public virtual BoundNode? VisitConversion(BoundConversion node) => this.DefaultVisit(node);
9653public virtual BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node) => this.DefaultVisit(node);
9654public virtual BoundNode? VisitArgList(BoundArgList node) => this.DefaultVisit(node);
9655public virtual BoundNode? VisitArgListOperator(BoundArgListOperator node) => this.DefaultVisit(node);
9656public virtual BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node) => this.DefaultVisit(node);
9657public virtual BoundNode? VisitSequencePoint(BoundSequencePoint node) => this.DefaultVisit(node);
9658public virtual BoundNode? VisitSequencePointWithSpan(BoundSequencePointWithSpan node) => this.DefaultVisit(node);
9659public virtual BoundNode? VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node) => this.DefaultVisit(node);
9660public virtual BoundNode? VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node) => this.DefaultVisit(node);
9661public virtual BoundNode? VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node) => this.DefaultVisit(node);
9662public virtual BoundNode? VisitBlock(BoundBlock node) => this.DefaultVisit(node);
9663public virtual BoundNode? VisitScope(BoundScope node) => this.DefaultVisit(node);
9664public virtual BoundNode? VisitStateMachineScope(BoundStateMachineScope node) => this.DefaultVisit(node);
9665public virtual BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node) => this.DefaultVisit(node);
9666public virtual BoundNode? VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node) => this.DefaultVisit(node);
9667public virtual BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node) => this.DefaultVisit(node);
9668public virtual BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node) => this.DefaultVisit(node);
9669public virtual BoundNode? VisitNoOpStatement(BoundNoOpStatement node) => this.DefaultVisit(node);
9670public virtual BoundNode? VisitReturnStatement(BoundReturnStatement node) => this.DefaultVisit(node);
9671public virtual BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node) => this.DefaultVisit(node);
9672public virtual BoundNode? VisitYieldBreakStatement(BoundYieldBreakStatement node) => this.DefaultVisit(node);
9673public virtual BoundNode? VisitThrowStatement(BoundThrowStatement node) => this.DefaultVisit(node);
9674public virtual BoundNode? VisitExpressionStatement(BoundExpressionStatement node) => this.DefaultVisit(node);
9675public virtual BoundNode? VisitBreakStatement(BoundBreakStatement node) => this.DefaultVisit(node);
9676public virtual BoundNode? VisitContinueStatement(BoundContinueStatement node) => this.DefaultVisit(node);
9677public virtual BoundNode? VisitSwitchStatement(BoundSwitchStatement node) => this.DefaultVisit(node);
9678public virtual BoundNode? VisitSwitchDispatch(BoundSwitchDispatch node) => this.DefaultVisit(node);
9679public virtual BoundNode? VisitIfStatement(BoundIfStatement node) => this.DefaultVisit(node);
9680public virtual BoundNode? VisitDoStatement(BoundDoStatement node) => this.DefaultVisit(node);
9681public virtual BoundNode? VisitWhileStatement(BoundWhileStatement node) => this.DefaultVisit(node);
9682public virtual BoundNode? VisitForStatement(BoundForStatement node) => this.DefaultVisit(node);
9683public virtual BoundNode? VisitForEachStatement(BoundForEachStatement node) => this.DefaultVisit(node);
9684public virtual BoundNode? VisitForEachDeconstructStep(BoundForEachDeconstructStep node) => this.DefaultVisit(node);
9685public virtual BoundNode? VisitUsingStatement(BoundUsingStatement node) => this.DefaultVisit(node);
9686public virtual BoundNode? VisitFixedStatement(BoundFixedStatement node) => this.DefaultVisit(node);
9687public virtual BoundNode? VisitLockStatement(BoundLockStatement node) => this.DefaultVisit(node);
9688public virtual BoundNode? VisitTryStatement(BoundTryStatement node) => this.DefaultVisit(node);
9689public virtual BoundNode? VisitCatchBlock(BoundCatchBlock node) => this.DefaultVisit(node);
9690public virtual BoundNode? VisitLiteral(BoundLiteral node) => this.DefaultVisit(node);
9691public virtual BoundNode? VisitUtf8String(BoundUtf8String node) => this.DefaultVisit(node);
9692public virtual BoundNode? VisitThisReference(BoundThisReference node) => this.DefaultVisit(node);
9693public virtual BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node) => this.DefaultVisit(node);
9694public virtual BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node) => this.DefaultVisit(node);
9695public virtual BoundNode? VisitBaseReference(BoundBaseReference node) => this.DefaultVisit(node);
9696public virtual BoundNode? VisitLocal(BoundLocal node) => this.DefaultVisit(node);
9697public virtual BoundNode? VisitPseudoVariable(BoundPseudoVariable node) => this.DefaultVisit(node);
9698public virtual BoundNode? VisitRangeVariable(BoundRangeVariable node) => this.DefaultVisit(node);
9699public virtual BoundNode? VisitParameter(BoundParameter node) => this.DefaultVisit(node);
9700public virtual BoundNode? VisitLabelStatement(BoundLabelStatement node) => this.DefaultVisit(node);
9701public virtual BoundNode? VisitGotoStatement(BoundGotoStatement node) => this.DefaultVisit(node);
9702public virtual BoundNode? VisitLabeledStatement(BoundLabeledStatement node) => this.DefaultVisit(node);
9703public virtual BoundNode? VisitLabel(BoundLabel node) => this.DefaultVisit(node);
9704public virtual BoundNode? VisitStatementList(BoundStatementList node) => this.DefaultVisit(node);
9705public virtual BoundNode? VisitConditionalGoto(BoundConditionalGoto node) => this.DefaultVisit(node);
9706public virtual BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node) => this.DefaultVisit(node);
9707public virtual BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node) => this.DefaultVisit(node);
9708public virtual BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node) => this.DefaultVisit(node);
9709public virtual BoundNode? VisitDecisionDag(BoundDecisionDag node) => this.DefaultVisit(node);
9710public virtual BoundNode? VisitEvaluationDecisionDagNode(BoundEvaluationDecisionDagNode node) => this.DefaultVisit(node);
9711public virtual BoundNode? VisitTestDecisionDagNode(BoundTestDecisionDagNode node) => this.DefaultVisit(node);
9712public virtual BoundNode? VisitWhenDecisionDagNode(BoundWhenDecisionDagNode node) => this.DefaultVisit(node);
9713public virtual BoundNode? VisitLeafDecisionDagNode(BoundLeafDecisionDagNode node) => this.DefaultVisit(node);
9714public virtual BoundNode? VisitDagTemp(BoundDagTemp node) => this.DefaultVisit(node);
9715public virtual BoundNode? VisitDagTypeTest(BoundDagTypeTest node) => this.DefaultVisit(node);
9716public virtual BoundNode? VisitDagNonNullTest(BoundDagNonNullTest node) => this.DefaultVisit(node);
9717public virtual BoundNode? VisitDagExplicitNullTest(BoundDagExplicitNullTest node) => this.DefaultVisit(node);
9718public virtual BoundNode? VisitDagValueTest(BoundDagValueTest node) => this.DefaultVisit(node);
9719public virtual BoundNode? VisitDagRelationalTest(BoundDagRelationalTest node) => this.DefaultVisit(node);
9720public virtual BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node) => this.DefaultVisit(node);
9721public virtual BoundNode? VisitDagTypeEvaluation(BoundDagTypeEvaluation node) => this.DefaultVisit(node);
9722public virtual BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node) => this.DefaultVisit(node);
9723public virtual BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node) => this.DefaultVisit(node);
9724public virtual BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node) => this.DefaultVisit(node);
9725public virtual BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node) => this.DefaultVisit(node);
9726public virtual BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node) => this.DefaultVisit(node);
9727public virtual BoundNode? VisitDagAssignmentEvaluation(BoundDagAssignmentEvaluation node) => this.DefaultVisit(node);
9728public virtual BoundNode? VisitSwitchSection(BoundSwitchSection node) => this.DefaultVisit(node);
9729public virtual BoundNode? VisitSwitchLabel(BoundSwitchLabel node) => this.DefaultVisit(node);
9730public virtual BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node) => this.DefaultVisit(node);
9731public virtual BoundNode? VisitSequence(BoundSequence node) => this.DefaultVisit(node);
9732public virtual BoundNode? VisitSpillSequence(BoundSpillSequence node) => this.DefaultVisit(node);
9733public virtual BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node) => this.DefaultVisit(node);
9734public virtual BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node) => this.DefaultVisit(node);
9735public virtual BoundNode? VisitConditionalAccess(BoundConditionalAccess node) => this.DefaultVisit(node);
9736public virtual BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node) => this.DefaultVisit(node);
9737public virtual BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node) => this.DefaultVisit(node);
9738public virtual BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node) => this.DefaultVisit(node);
9739public virtual BoundNode? VisitMethodGroup(BoundMethodGroup node) => this.DefaultVisit(node);
9740public virtual BoundNode? VisitPropertyGroup(BoundPropertyGroup node) => this.DefaultVisit(node);
9741public virtual BoundNode? VisitCall(BoundCall node) => this.DefaultVisit(node);
9742public virtual BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node) => this.DefaultVisit(node);
9743public virtual BoundNode? VisitAttribute(BoundAttribute node) => this.DefaultVisit(node);
9744public virtual BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node) => this.DefaultVisit(node);
9745public virtual BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node) => this.DefaultVisit(node);
9746public virtual BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node) => this.DefaultVisit(node);
9747public virtual BoundNode? VisitCollectionExpression(BoundCollectionExpression node) => this.DefaultVisit(node);
9748public virtual BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node) => this.DefaultVisit(node);
9749public virtual BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node) => this.DefaultVisit(node);
9750public virtual BoundNode? VisitTupleLiteral(BoundTupleLiteral node) => this.DefaultVisit(node);
9751public virtual BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node) => this.DefaultVisit(node);
9752public virtual BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node) => this.DefaultVisit(node);
9753public virtual BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node) => this.DefaultVisit(node);
9754public virtual BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node) => this.DefaultVisit(node);
9755public virtual BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node) => this.DefaultVisit(node);
9756public virtual BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node) => this.DefaultVisit(node);
9757public virtual BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node) => this.DefaultVisit(node);
9758public virtual BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node) => this.DefaultVisit(node);
9759public virtual BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node) => this.DefaultVisit(node);
9760public virtual BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node) => this.DefaultVisit(node);
9761public virtual BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node) => this.DefaultVisit(node);
9762public virtual BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node) => this.DefaultVisit(node);
9763public virtual BoundNode? VisitNewT(BoundNewT node) => this.DefaultVisit(node);
9764public virtual BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node) => this.DefaultVisit(node);
9765public virtual BoundNode? VisitArrayCreation(BoundArrayCreation node) => this.DefaultVisit(node);
9766public virtual BoundNode? VisitArrayInitialization(BoundArrayInitialization node) => this.DefaultVisit(node);
9767public virtual BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node) => this.DefaultVisit(node);
9768public virtual BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node) => this.DefaultVisit(node);
9769public virtual BoundNode? VisitFieldAccess(BoundFieldAccess node) => this.DefaultVisit(node);
9770public virtual BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node) => this.DefaultVisit(node);
9771public virtual BoundNode? VisitPropertyAccess(BoundPropertyAccess node) => this.DefaultVisit(node);
9772public virtual BoundNode? VisitEventAccess(BoundEventAccess node) => this.DefaultVisit(node);
9773public virtual BoundNode? VisitIndexerAccess(BoundIndexerAccess node) => this.DefaultVisit(node);
9774public virtual BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node) => this.DefaultVisit(node);
9775public virtual BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node) => this.DefaultVisit(node);
9776public virtual BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node) => this.DefaultVisit(node);
9777public virtual BoundNode? VisitLambda(BoundLambda node) => this.DefaultVisit(node);
9778public virtual BoundNode? VisitUnboundLambda(UnboundLambda node) => this.DefaultVisit(node);
9779public virtual BoundNode? VisitQueryClause(BoundQueryClause node) => this.DefaultVisit(node);
9780public virtual BoundNode? VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node) => this.DefaultVisit(node);
9781public virtual BoundNode? VisitNameOfOperator(BoundNameOfOperator node) => this.DefaultVisit(node);
9782public virtual BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node) => this.DefaultVisit(node);
9783public virtual BoundNode? VisitInterpolatedString(BoundInterpolatedString node) => this.DefaultVisit(node);
9784public virtual BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node) => this.DefaultVisit(node);
9785public virtual BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node) => this.DefaultVisit(node);
9786public virtual BoundNode? VisitStringInsert(BoundStringInsert node) => this.DefaultVisit(node);
9787public virtual BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node) => this.DefaultVisit(node);
9788public virtual BoundNode? VisitConstantPattern(BoundConstantPattern node) => this.DefaultVisit(node);
9789public virtual BoundNode? VisitDiscardPattern(BoundDiscardPattern node) => this.DefaultVisit(node);
9790public virtual BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node) => this.DefaultVisit(node);
9791public virtual BoundNode? VisitRecursivePattern(BoundRecursivePattern node) => this.DefaultVisit(node);
9792public virtual BoundNode? VisitListPattern(BoundListPattern node) => this.DefaultVisit(node);
9793public virtual BoundNode? VisitSlicePattern(BoundSlicePattern node) => this.DefaultVisit(node);
9794public virtual BoundNode? VisitITuplePattern(BoundITuplePattern node) => this.DefaultVisit(node);
9795public virtual BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node) => this.DefaultVisit(node);
9796public virtual BoundNode? VisitPropertySubpattern(BoundPropertySubpattern node) => this.DefaultVisit(node);
9797public virtual BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node) => this.DefaultVisit(node);
9798public virtual BoundNode? VisitTypePattern(BoundTypePattern node) => this.DefaultVisit(node);
9799public virtual BoundNode? VisitBinaryPattern(BoundBinaryPattern node) => this.DefaultVisit(node);
9800public virtual BoundNode? VisitNegatedPattern(BoundNegatedPattern node) => this.DefaultVisit(node);
9801public virtual BoundNode? VisitRelationalPattern(BoundRelationalPattern node) => this.DefaultVisit(node);
9802public virtual BoundNode? VisitDiscardExpression(BoundDiscardExpression node) => this.DefaultVisit(node);
9803public virtual BoundNode? VisitThrowExpression(BoundThrowExpression node) => this.DefaultVisit(node);
9804public virtual BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node) => this.DefaultVisit(node);
9805public virtual BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node) => this.DefaultVisit(node);
9806public virtual BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node) => this.DefaultVisit(node);
9807public virtual BoundNode? VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node) => this.DefaultVisit(node);
9808public virtual BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node) => this.DefaultVisit(node);
9809public virtual BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node) => this.DefaultVisit(node);
9810public virtual BoundNode? VisitWithExpression(BoundWithExpression node) => this.DefaultVisit(node);
9815public override BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node)
9820public override BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node)
9825public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node)
9830public override BoundNode? VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node)
9835public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node) => null;
9836public override BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node)
9841public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node) => null;
9842public override BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node) => null;
9843public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node) => null;
9844public override BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node) => null;
9845public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node) => null;
9846public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node) => null;
9847public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node) => null;
9848public override BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node) => null;
9849public override BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node) => null;
9850public override BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node) => null;
9851public override BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node) => null;
9852public override BoundNode? VisitDup(BoundDup node) => null;
9853public override BoundNode? VisitPassByCopy(BoundPassByCopy node)
9858public override BoundNode? VisitBadExpression(BoundBadExpression node)
9863public override BoundNode? VisitBadStatement(BoundBadStatement node)
9868public override BoundNode? VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node)
9873public override BoundNode? VisitTypeExpression(BoundTypeExpression node)
9879public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node) => null;
9880public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node) => null;
9881public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node)
9886public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node)
9891public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node)
9896public override BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node)
9901public override BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node) => null;
9902public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
9907public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node)
9913public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
9919public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node)
9924public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node)
9929public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node)
9934public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
9939public override BoundNode? VisitRangeExpression(BoundRangeExpression node)
9945public override BoundNode? VisitBinaryOperator(BoundBinaryOperator node)
9951public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
9957public override BoundNode? VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node)
9963public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
9969public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
9975public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
9981public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
9987public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
9993public override BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node)
10000public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node)
10007public override BoundNode? VisitArrayAccess(BoundArrayAccess node)
10013public override BoundNode? VisitRefArrayAccess(BoundRefArrayAccess node)
10018public override BoundNode? VisitArrayLength(BoundArrayLength node)
10023public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node)
10029public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
10035public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node)
10040public override BoundNode? VisitBlockInstrumentation(BoundBlockInstrumentation node)
10046public override BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node) => null;
10047public override BoundNode? VisitLocalId(BoundLocalId node) => null;
10048public override BoundNode? VisitParameterId(BoundParameterId node) => null;
10049public override BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node) => null;
10050public override BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node) => null;
10051public override BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node) => null;
10052public override BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node) => null;
10053public override BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node) => null;
10054public override BoundNode? VisitModuleVersionId(BoundModuleVersionId node) => null;
10055public override BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node) => null;
10056public override BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node) => null;
10057public override BoundNode? VisitMethodInfo(BoundMethodInfo node) => null;
10058public override BoundNode? VisitFieldInfo(BoundFieldInfo node) => null;
10059public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node) => null;
10060public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node) => null;
10061public override BoundNode? VisitIsOperator(BoundIsOperator node)
10067public override BoundNode? VisitAsOperator(BoundAsOperator node)
10073public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node)
10078public override BoundNode? VisitConversion(BoundConversion node)
10083public override BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node)
10088public override BoundNode? VisitArgList(BoundArgList node) => null;
10089public override BoundNode? VisitArgListOperator(BoundArgListOperator node)
10094public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
10099public override BoundNode? VisitSequencePoint(BoundSequencePoint node)
10104public override BoundNode? VisitSequencePointWithSpan(BoundSequencePointWithSpan node)
10109public override BoundNode? VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node) => null;
10110public override BoundNode? VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node) => null;
10111public override BoundNode? VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node) => null;
10112public override BoundNode? VisitBlock(BoundBlock node)
10118public override BoundNode? VisitScope(BoundScope node)
10123public override BoundNode? VisitStateMachineScope(BoundStateMachineScope node)
10128public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node)
10135public override BoundNode? VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node)
10140public override BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node)
10146public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
10152public override BoundNode? VisitNoOpStatement(BoundNoOpStatement node) => null;
10153public override BoundNode? VisitReturnStatement(BoundReturnStatement node)
10158public override BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node)
10163public override BoundNode? VisitYieldBreakStatement(BoundYieldBreakStatement node) => null;
10164public override BoundNode? VisitThrowStatement(BoundThrowStatement node)
10169public override BoundNode? VisitExpressionStatement(BoundExpressionStatement node)
10174public override BoundNode? VisitBreakStatement(BoundBreakStatement node) => null;
10175public override BoundNode? VisitContinueStatement(BoundContinueStatement node) => null;
10176public override BoundNode? VisitSwitchStatement(BoundSwitchStatement node)
10183public override BoundNode? VisitSwitchDispatch(BoundSwitchDispatch node)
10188public override BoundNode? VisitIfStatement(BoundIfStatement node)
10195public override BoundNode? VisitDoStatement(BoundDoStatement node)
10201public override BoundNode? VisitWhileStatement(BoundWhileStatement node)
10207public override BoundNode? VisitForStatement(BoundForStatement node)
10215public override BoundNode? VisitForEachStatement(BoundForEachStatement node)
10225public override BoundNode? VisitForEachDeconstructStep(BoundForEachDeconstructStep node)
10231public override BoundNode? VisitUsingStatement(BoundUsingStatement node)
10239public override BoundNode? VisitFixedStatement(BoundFixedStatement node)
10245public override BoundNode? VisitLockStatement(BoundLockStatement node)
10251public override BoundNode? VisitTryStatement(BoundTryStatement node)
10258public override BoundNode? VisitCatchBlock(BoundCatchBlock node)
10266public override BoundNode? VisitLiteral(BoundLiteral node) => null;
10267public override BoundNode? VisitUtf8String(BoundUtf8String node) => null;
10268public override BoundNode? VisitThisReference(BoundThisReference node) => null;
10269public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node) => null;
10270public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node) => null;
10271public override BoundNode? VisitBaseReference(BoundBaseReference node) => null;
10272public override BoundNode? VisitLocal(BoundLocal node) => null;
10273public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node) => null;
10274public override BoundNode? VisitRangeVariable(BoundRangeVariable node)
10279public override BoundNode? VisitParameter(BoundParameter node) => null;
10280public override BoundNode? VisitLabelStatement(BoundLabelStatement node) => null;
10281public override BoundNode? VisitGotoStatement(BoundGotoStatement node)
10287public override BoundNode? VisitLabeledStatement(BoundLabeledStatement node)
10292public override BoundNode? VisitLabel(BoundLabel node) => null;
10293public override BoundNode? VisitStatementList(BoundStatementList node)
10298public override BoundNode? VisitConditionalGoto(BoundConditionalGoto node)
10303public override BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node)
10310public override BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node)
10316public override BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node)
10322public override BoundNode? VisitDecisionDag(BoundDecisionDag node)
10327public override BoundNode? VisitEvaluationDecisionDagNode(BoundEvaluationDecisionDagNode node)
10333public override BoundNode? VisitTestDecisionDagNode(BoundTestDecisionDagNode node)
10340public override BoundNode? VisitWhenDecisionDagNode(BoundWhenDecisionDagNode node)
10347public override BoundNode? VisitLeafDecisionDagNode(BoundLeafDecisionDagNode node) => null;
10348public override BoundNode? VisitDagTemp(BoundDagTemp node)
10353public override BoundNode? VisitDagTypeTest(BoundDagTypeTest node)
10358public override BoundNode? VisitDagNonNullTest(BoundDagNonNullTest node)
10363public override BoundNode? VisitDagExplicitNullTest(BoundDagExplicitNullTest node)
10368public override BoundNode? VisitDagValueTest(BoundDagValueTest node)
10373public override BoundNode? VisitDagRelationalTest(BoundDagRelationalTest node)
10378public override BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node)
10383public override BoundNode? VisitDagTypeEvaluation(BoundDagTypeEvaluation node)
10388public override BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node)
10393public override BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node)
10398public override BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node)
10403public override BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node)
10412public override BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node)
10421public override BoundNode? VisitDagAssignmentEvaluation(BoundDagAssignmentEvaluation node)
10427public override BoundNode? VisitSwitchSection(BoundSwitchSection node)
10433public override BoundNode? VisitSwitchLabel(BoundSwitchLabel node)
10439public override BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node)
10444public override BoundNode? VisitSequence(BoundSequence node)
10450public override BoundNode? VisitSpillSequence(BoundSpillSequence node)
10456public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
10461public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node)
10467public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
10473public override BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node)
10480public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node) => null;
10481public override BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node)
10487public override BoundNode? VisitMethodGroup(BoundMethodGroup node)
10492public override BoundNode? VisitPropertyGroup(BoundPropertyGroup node)
10497public override BoundNode? VisitCall(BoundCall node)
10503public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
10509public override BoundNode? VisitAttribute(BoundAttribute node)
10515public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
10520public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node)
10526public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
10531public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node)
10536public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node) => null;
10537public override BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node)
10542public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node)
10547public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
10552public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
10558public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
10563public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
10569public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node)
10574public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node) => null;
10575public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
10581public override BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node)
10587public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
10593public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node) => null;
10594public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
10600public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node) => null;
10601public override BoundNode? VisitNewT(BoundNewT node)
10606public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
10611public override BoundNode? VisitArrayCreation(BoundArrayCreation node)
10617public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node)
10622public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
10628public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
10634public override BoundNode? VisitFieldAccess(BoundFieldAccess node)
10639public override BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node) => null;
10640public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
10645public override BoundNode? VisitEventAccess(BoundEventAccess node)
10650public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
10656public override BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node)
10662public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node)
10668public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
10674public override BoundNode? VisitLambda(BoundLambda node)
10679public override BoundNode? VisitUnboundLambda(UnboundLambda node) => null;
10680public override BoundNode? VisitQueryClause(BoundQueryClause node)
10685public override BoundNode? VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node)
10690public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node)
10695public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
10700public override BoundNode? VisitInterpolatedString(BoundInterpolatedString node)
10705public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node) => null;
10706public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node) => null;
10707public override BoundNode? VisitStringInsert(BoundStringInsert node)
10714public override BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node)
10720public override BoundNode? VisitConstantPattern(BoundConstantPattern node)
10725public override BoundNode? VisitDiscardPattern(BoundDiscardPattern node) => null;
10726public override BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node)
10732public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node)
10740public override BoundNode? VisitListPattern(BoundListPattern node)
10746public override BoundNode? VisitSlicePattern(BoundSlicePattern node)
10751public override BoundNode? VisitITuplePattern(BoundITuplePattern node)
10756public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node)
10761public override BoundNode? VisitPropertySubpattern(BoundPropertySubpattern node)
10767public override BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node)
10772public override BoundNode? VisitTypePattern(BoundTypePattern node)
10777public override BoundNode? VisitBinaryPattern(BoundBinaryPattern node)
10783public override BoundNode? VisitNegatedPattern(BoundNegatedPattern node)
10788public override BoundNode? VisitRelationalPattern(BoundRelationalPattern node)
10793public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node) => null;
10794public override BoundNode? VisitThrowExpression(BoundThrowExpression node)
10799public override BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node)
10804public override BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node)
10809public override BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node) => null;
10810public override BoundNode? VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node)
10816public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node)
10823public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node)
10828public override BoundNode? VisitWithExpression(BoundWithExpression node)
10838public override BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node)
10845public override BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node)
10852public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node)
10859public override BoundNode? VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node)
10864public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node)
10869public override BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node)
10875public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node)
10881public override BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node)
10886public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
10891public override BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node)
10896public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node)
10901public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node)
10906public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node)
10911public override BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node)
10916public override BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node)
10921public override BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node)
10926public override BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node)
10931public override BoundNode? VisitDup(BoundDup node)
10936public override BoundNode? VisitPassByCopy(BoundPassByCopy node)
10942public override BoundNode? VisitBadExpression(BoundBadExpression node)
10949public override BoundNode? VisitBadStatement(BoundBadStatement node)
10951ImmutableArray<BoundNode> childBoundNodes = this.VisitList(node.ChildBoundNodes);
10954public override BoundNode? VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node)
10959public override BoundNode? VisitTypeExpression(BoundTypeExpression node)
10967public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node)
10972public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node)
10979public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node)
10988public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node)
11001public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node)
11007public override BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node)
11013public override BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node)
11020public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
11026public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node)
11033public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
11040public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node)
11047public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node)
11053public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node)
11059public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
11066public override BoundNode? VisitRangeExpression(BoundRangeExpression node)
11074public override BoundNode? VisitBinaryOperator(BoundBinaryOperator node)
11081public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
11088public override BoundNode? VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node)
11102public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
11114public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
11121public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
11128public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
11137public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
11144public override BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node)
11152public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node)
11161public override BoundNode? VisitArrayAccess(BoundArrayAccess node)
11168public override BoundNode? VisitRefArrayAccess(BoundRefArrayAccess node)
11174public override BoundNode? VisitArrayLength(BoundArrayLength node)
11180public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node)
11188public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
11195public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node)
11202public override BoundNode? VisitBlockInstrumentation(BoundBlockInstrumentation node)
11208public override BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node)
11214public override BoundNode? VisitLocalId(BoundLocalId node)
11221public override BoundNode? VisitParameterId(BoundParameterId node)
11228public override BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node)
11233public override BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node)
11238public override BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node)
11243public override BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node)
11248public override BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node)
11253public override BoundNode? VisitModuleVersionId(BoundModuleVersionId node)
11258public override BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node)
11263public override BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node)
11268public override BoundNode? VisitMethodInfo(BoundMethodInfo node)
11275public override BoundNode? VisitFieldInfo(BoundFieldInfo node)
11282public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node)
11287public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node)
11293public override BoundNode? VisitIsOperator(BoundIsOperator node)
11300public override BoundNode? VisitAsOperator(BoundAsOperator node)
11309public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node)
11315public override BoundNode? VisitConversion(BoundConversion node)
11321public override BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node)
11328public override BoundNode? VisitArgList(BoundArgList node)
11333public override BoundNode? VisitArgListOperator(BoundArgListOperator node)
11339public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
11349public override BoundNode? VisitSequencePoint(BoundSequencePoint node)
11354public override BoundNode? VisitSequencePointWithSpan(BoundSequencePointWithSpan node)
11359public override BoundNode? VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node) => node;
11360public override BoundNode? VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node) => node;
11361public override BoundNode? VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node) => node;
11362public override BoundNode? VisitBlock(BoundBlock node)
11370public override BoundNode? VisitScope(BoundScope node)
11376public override BoundNode? VisitStateMachineScope(BoundStateMachineScope node)
11382public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node)
11390public override BoundNode? VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node)
11395public override BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node)
11401public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
11408public override BoundNode? VisitNoOpStatement(BoundNoOpStatement node) => node;
11409public override BoundNode? VisitReturnStatement(BoundReturnStatement node)
11414public override BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node)
11419public override BoundNode? VisitYieldBreakStatement(BoundYieldBreakStatement node) => node;
11420public override BoundNode? VisitThrowStatement(BoundThrowStatement node)
11425public override BoundNode? VisitExpressionStatement(BoundExpressionStatement node)
11430public override BoundNode? VisitBreakStatement(BoundBreakStatement node)
11435public override BoundNode? VisitContinueStatement(BoundContinueStatement node)
11440public override BoundNode? VisitSwitchStatement(BoundSwitchStatement node)
11451public override BoundNode? VisitSwitchDispatch(BoundSwitchDispatch node)
11457public override BoundNode? VisitIfStatement(BoundIfStatement node)
11464public override BoundNode? VisitDoStatement(BoundDoStatement node)
11473public override BoundNode? VisitWhileStatement(BoundWhileStatement node)
11482public override BoundNode? VisitForStatement(BoundForStatement node)
11494public override BoundNode? VisitForEachStatement(BoundForEachStatement node)
11509public override BoundNode? VisitForEachDeconstructStep(BoundForEachDeconstructStep node)
11515public override BoundNode? VisitUsingStatement(BoundUsingStatement node)
11524public override BoundNode? VisitFixedStatement(BoundFixedStatement node)
11531public override BoundNode? VisitLockStatement(BoundLockStatement node)
11537public override BoundNode? VisitTryStatement(BoundTryStatement node)
11545public override BoundNode? VisitCatchBlock(BoundCatchBlock node)
11555public override BoundNode? VisitLiteral(BoundLiteral node)
11560public override BoundNode? VisitUtf8String(BoundUtf8String node)
11565public override BoundNode? VisitThisReference(BoundThisReference node)
11570public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node)
11575public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node)
11580public override BoundNode? VisitBaseReference(BoundBaseReference node)
11585public override BoundNode? VisitLocal(BoundLocal node)
11591public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node)
11597public override BoundNode? VisitRangeVariable(BoundRangeVariable node)
11604public override BoundNode? VisitParameter(BoundParameter node)
11610public override BoundNode? VisitLabelStatement(BoundLabelStatement node)
11615public override BoundNode? VisitGotoStatement(BoundGotoStatement node)
11622public override BoundNode? VisitLabeledStatement(BoundLabeledStatement node)
11628public override BoundNode? VisitLabel(BoundLabel node)
11634public override BoundNode? VisitStatementList(BoundStatementList node)
11639public override BoundNode? VisitConditionalGoto(BoundConditionalGoto node)
11645public override BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node)
11654public override BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node)
11663public override BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node)
11673public override BoundNode? VisitDecisionDag(BoundDecisionDag node)
11678public override BoundNode? VisitEvaluationDecisionDagNode(BoundEvaluationDecisionDagNode node)
11684public override BoundNode? VisitTestDecisionDagNode(BoundTestDecisionDagNode node)
11691public override BoundNode? VisitWhenDecisionDagNode(BoundWhenDecisionDagNode node)
11698public override BoundNode? VisitLeafDecisionDagNode(BoundLeafDecisionDagNode node)
11703public override BoundNode? VisitDagTemp(BoundDagTemp node)
11709public override BoundNode? VisitDagTypeTest(BoundDagTypeTest node)
11715public override BoundNode? VisitDagNonNullTest(BoundDagNonNullTest node)
11720public override BoundNode? VisitDagExplicitNullTest(BoundDagExplicitNullTest node)
11725public override BoundNode? VisitDagValueTest(BoundDagValueTest node)
11730public override BoundNode? VisitDagRelationalTest(BoundDagRelationalTest node)
11735public override BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node)
11741public override BoundNode? VisitDagTypeEvaluation(BoundDagTypeEvaluation node)
11747public override BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node)
11753public override BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node)
11759public override BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node)
11765public override BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node)
11775public override BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node)
11785public override BoundNode? VisitDagAssignmentEvaluation(BoundDagAssignmentEvaluation node)
11791public override BoundNode? VisitSwitchSection(BoundSwitchSection node)
11798public override BoundNode? VisitSwitchLabel(BoundSwitchLabel node)
11805public override BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node)
11811public override BoundNode? VisitSequence(BoundSequence node)
11819public override BoundNode? VisitSpillSequence(BoundSpillSequence node)
11827public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
11833public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node)
11841public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
11848public override BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node)
11857public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node)
11862public override BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node)
11869public override BoundNode? VisitMethodGroup(BoundMethodGroup node)
11878public override BoundNode? VisitPropertyGroup(BoundPropertyGroup node)
11885public override BoundNode? VisitCall(BoundCall node)
11894public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
11902public override BoundNode? VisitAttribute(BoundAttribute node)
11910public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
11916public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node)
11925public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
11927ImmutableArray<BoundNode> elements = this.VisitList(node.Elements);
11931public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node)
11939ImmutableArray<BoundNode> elements = this.VisitList(node.Elements);
11943public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node)
11948public override BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node)
11958public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node)
11964public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
11971public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
11979public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
11985public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
11992public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node)
12000public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
12006public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
12013public override BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node)
12021public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
12029public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node)
12034public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
12042public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node)
12048public override BoundNode? VisitNewT(BoundNewT node)
12054public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
12061public override BoundNode? VisitArrayCreation(BoundArrayCreation node)
12068public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node)
12074public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
12082public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
12090public override BoundNode? VisitFieldAccess(BoundFieldAccess node)
12097public override BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node)
12103public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
12110public override BoundNode? VisitEventAccess(BoundEventAccess node)
12117public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
12126public override BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node)
12137public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node)
12144public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
12152public override BoundNode? VisitLambda(BoundLambda node)
12160public override BoundNode? VisitUnboundLambda(UnboundLambda node)
12166public override BoundNode? VisitQueryClause(BoundQueryClause node)
12176public override BoundNode? VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node)
12181public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node)
12187public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
12193public override BoundNode? VisitInterpolatedString(BoundInterpolatedString node)
12199public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node)
12204public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node)
12209public override BoundNode? VisitStringInsert(BoundStringInsert node)
12217public override BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node)
12227public override BoundNode? VisitConstantPattern(BoundConstantPattern node)
12234public override BoundNode? VisitDiscardPattern(BoundDiscardPattern node)
12240public override BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node)
12249public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node)
12261public override BoundNode? VisitListPattern(BoundListPattern node)
12274public override BoundNode? VisitSlicePattern(BoundSlicePattern node)
12284public override BoundNode? VisitITuplePattern(BoundITuplePattern node)
12293public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node)
12299public override BoundNode? VisitPropertySubpattern(BoundPropertySubpattern node)
12305public override BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node)
12312public override BoundNode? VisitTypePattern(BoundTypePattern node)
12319public override BoundNode? VisitBinaryPattern(BoundBinaryPattern node)
12327public override BoundNode? VisitNegatedPattern(BoundNegatedPattern node)
12334public override BoundNode? VisitRelationalPattern(BoundRelationalPattern node)
12341public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node)
12346public override BoundNode? VisitThrowExpression(BoundThrowExpression node)
12352public override BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node)
12359public override BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node)
12366public override BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node)
12372public override BoundNode? VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node)
12378public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node)
12386public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node)
12392public override BoundNode? VisitWithExpression(BoundWithExpression node)
12415public override BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node)
12423public override BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node)
12431public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node)
12439public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node)
12451public override BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node)
12468public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node)
12485public override BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node)
12497public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
12509public override BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node)
12521public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node)
12533public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node)
12545public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node)
12557public override BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node)
12569public override BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node)
12581public override BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node)
12593public override BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node)
12605public override BoundNode? VisitDup(BoundDup node)
12617public override BoundNode? VisitPassByCopy(BoundPassByCopy node)
12634public override BoundNode? VisitBadExpression(BoundBadExpression node)
12652public override BoundNode? VisitTypeExpression(BoundTypeExpression node)
12670public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node)
12682public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node)
12694public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node)
12714public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node)
12738public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node)
12755public override BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node)
12772public override BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node)
12790public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
12807public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node)
12825public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
12843public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node)
12861public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node)
12878public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node)
12895public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
12913public override BoundNode? VisitRangeExpression(BoundRangeExpression node)
12932public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
12950public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
12973public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
12991public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
13009public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
13029public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
13047public override BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node)
13066public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node)
13086public override BoundNode? VisitArrayAccess(BoundArrayAccess node)
13104public override BoundNode? VisitRefArrayAccess(BoundRefArrayAccess node)
13121public override BoundNode? VisitArrayLength(BoundArrayLength node)
13138public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node)
13147public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
13165public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node)
13183public override BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node)
13200public override BoundNode? VisitLocalId(BoundLocalId node)
13218public override BoundNode? VisitParameterId(BoundParameterId node)
13236public override BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node)
13248public override BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node)
13260public override BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node)
13272public override BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node)
13284public override BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node)
13296public override BoundNode? VisitModuleVersionId(BoundModuleVersionId node)
13308public override BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node)
13320public override BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node)
13332public override BoundNode? VisitMethodInfo(BoundMethodInfo node)
13350public override BoundNode? VisitFieldInfo(BoundFieldInfo node)
13368public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node)
13380public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node)
13397public override BoundNode? VisitIsOperator(BoundIsOperator node)
13415public override BoundNode? VisitAsOperator(BoundAsOperator node)
13435public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node)
13452public override BoundNode? VisitConversion(BoundConversion node)
13469public override BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node)
13487public override BoundNode? VisitArgList(BoundArgList node)
13499public override BoundNode? VisitArgListOperator(BoundArgListOperator node)
13516public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
13537public override BoundNode? VisitBlock(BoundBlock node)
13546public override BoundNode? VisitScope(BoundScope node)
13553public override BoundNode? VisitStateMachineScope(BoundStateMachineScope node)
13560public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node)
13569public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
13577public override BoundNode? VisitSwitchStatement(BoundSwitchStatement node)
13588public override BoundNode? VisitDoStatement(BoundDoStatement node)
13596public override BoundNode? VisitWhileStatement(BoundWhileStatement node)
13604public override BoundNode? VisitForStatement(BoundForStatement node)
13615public override BoundNode? VisitForEachStatement(BoundForEachStatement node)
13629public override BoundNode? VisitUsingStatement(BoundUsingStatement node)
13639public override BoundNode? VisitFixedStatement(BoundFixedStatement node)
13647public override BoundNode? VisitCatchBlock(BoundCatchBlock node)
13658public override BoundNode? VisitLiteral(BoundLiteral node)
13670public override BoundNode? VisitUtf8String(BoundUtf8String node)
13682public override BoundNode? VisitThisReference(BoundThisReference node)
13694public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node)
13706public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node)
13718public override BoundNode? VisitBaseReference(BoundBaseReference node)
13730public override BoundNode? VisitLocal(BoundLocal node)
13747public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node)
13764public override BoundNode? VisitRangeVariable(BoundRangeVariable node)
13782public override BoundNode? VisitParameter(BoundParameter node)
13799public override BoundNode? VisitLabel(BoundLabel node)
13811public override BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node)
13820public override BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node)
13839public override BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node)
13859public override BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node)
13866public override BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node)
13873public override BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node)
13880public override BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node)
13887public override BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node)
13898public override BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node)
13909public override BoundNode? VisitSwitchSection(BoundSwitchSection node)
13917public override BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node)
13934public override BoundNode? VisitSequence(BoundSequence node)
13953public override BoundNode? VisitSpillSequence(BoundSpillSequence node)
13972public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
13989public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node)
14008public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
14026public override BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node)
14046public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node)
14058public override BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node)
14076public override BoundNode? VisitMethodGroup(BoundMethodGroup node)
14096public override BoundNode? VisitPropertyGroup(BoundPropertyGroup node)
14114public override BoundNode? VisitCall(BoundCall node)
14134public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
14153public override BoundNode? VisitAttribute(BoundAttribute node)
14172public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
14189public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node)
14209public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
14211ImmutableArray<BoundNode> elements = this.VisitList(node.Elements);
14226public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node)
14234ImmutableArray<BoundNode> elements = this.VisitList(node.Elements);
14249public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node)
14261public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node)
14278public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
14296public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
14315public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
14332public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
14350public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node)
14369public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
14386public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
14404public override BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node)
14423public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
14442public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node)
14454public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
14473public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node)
14490public override BoundNode? VisitNewT(BoundNewT node)
14507public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
14525public override BoundNode? VisitArrayCreation(BoundArrayCreation node)
14543public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node)
14560public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
14579public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
14598public override BoundNode? VisitFieldAccess(BoundFieldAccess node)
14616public override BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node)
14633public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
14651public override BoundNode? VisitEventAccess(BoundEventAccess node)
14669public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
14689public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node)
14707public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
14726public override BoundNode? VisitLambda(BoundLambda node)
14745public override BoundNode? VisitUnboundLambda(UnboundLambda node)
14762public override BoundNode? VisitQueryClause(BoundQueryClause node)
14783public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node)
14800public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
14817public override BoundNode? VisitInterpolatedString(BoundInterpolatedString node)
14834public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node)
14846public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node)
14858public override BoundNode? VisitStringInsert(BoundStringInsert node)
14877public override BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node)
14896public override BoundNode? VisitConstantPattern(BoundConstantPattern node)
14904public override BoundNode? VisitDiscardPattern(BoundDiscardPattern node)
14911public override BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node)
14921public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node)
14934public override BoundNode? VisitListPattern(BoundListPattern node)
14948public override BoundNode? VisitSlicePattern(BoundSlicePattern node)
14959public override BoundNode? VisitITuplePattern(BoundITuplePattern node)
14969public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node)
14976public override BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node)
14983public override BoundNode? VisitTypePattern(BoundTypePattern node)
14991public override BoundNode? VisitBinaryPattern(BoundBinaryPattern node)
15000public override BoundNode? VisitNegatedPattern(BoundNegatedPattern node)
15008public override BoundNode? VisitRelationalPattern(BoundRelationalPattern node)
15016public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node)
15028public override BoundNode? VisitThrowExpression(BoundThrowExpression node)
15045public override BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node)
15063public override BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node)
15081public override BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node)
15098public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node)
15107public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node)
15124public override BoundNode? VisitWithExpression(BoundWithExpression node)
15149public 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);