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;
2942return new BoundBadStatement(node, ImmutableArray<BoundNode>.Empty, hasErrors: true);
2953return new BoundBadStatement(node, ImmutableArray<BoundNode>.Empty, hasErrors: true);
3658public virtual BoundNode BindMethodBody(CSharpSyntaxNode syntax, BindingDiagnosticBag diagnostics)
3687private BoundNode BindSimpleProgram(CompilationUnitSyntax compilationUnit, BindingDiagnosticBag diagnostics)
3692private BoundNode BindSimpleProgramCompilationUnit(CompilationUnitSyntax compilationUnit, BindingDiagnosticBag diagnostics)
3716private BoundNode BindPrimaryConstructorBody(TypeDeclarationSyntax typeDecl, BindingDiagnosticBag diagnostics)
3751private BoundNode BindConstructorBody(ConstructorDeclarationSyntax constructor, BindingDiagnosticBag diagnostics)
4058private 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)
725BoundNode boundNode = GetSpeculativelyBoundExpression(position, expression, bindingOption, out binder, out crefSymbols); //calls CheckAndAdjustPosition
755BoundNode boundNode = GetSpeculativelyBoundAttribute(position, attribute, out binder); //calls CheckAndAdjustPosition
1055BoundNode boundNode = GetSpeculativelyBoundExpression(position, expression, bindingOption, out _, out crefSymbols); //calls CheckAndAdjustPosition
1202BoundNode boundNode = GetSpeculativelyBoundExpression(position, nameSyntax, bindingOption, out binder, out crefSymbols); //calls CheckAndAdjustPosition
1879BoundNode lowestBoundNode,
1880BoundNode highestBoundNode,
1881BoundNode boundNodeForSyntacticParent,
2027BoundNode lowestBoundNode,
2028BoundNode highestBoundNode,
2029BoundNode boundNodeForSyntacticParent)
2138conversion = BoundNode.GetConversion(initializer.ElementPointerConversion, initializer.ElementPointerPlaceholder);
2285BoundNode lowestBoundNode,
2286BoundNode boundNodeForSyntacticParent,
2307BoundNode lowestBoundNode,
2399internal virtual BoundNode Bind(Binder binder, CSharpSyntaxNode node, BindingDiagnosticBag diagnostics)
3354BoundNode boundNodeForSyntacticParent,
3975BoundNode boundNodeForSyntacticParent,
4026BoundNode lowestBoundNode,
4246BoundNode boundNodeForSyntacticParent,
4399BoundNode boundNodeForSyntacticParent,
Compilation\MemberSemanticModel.cs (60)
33private readonly Dictionary<SyntaxNode, OneOrMany<BoundNode>> _guardedBoundNodeMap = new Dictionary<SyntaxNode, OneOrMany<BoundNode>>();
514internal virtual BoundNode GetBoundRoot()
522internal BoundNode GetUpperBoundNode(CSharpSyntaxNode node, bool promoteToBindable = false)
550internal BoundNode GetLowerBoundNode(CSharpSyntaxNode node)
567private static BoundNode GetLowerBoundNode(OneOrMany<BoundNode> boundNodes)
923var bound = GetLowerBoundNode(node);
995BoundNode.GetConversion(boundForEach.ElementConversion, boundForEach.ElementPlaceholder),
996BoundNode.GetConversion(enumeratorInfoOpt.CurrentConversion, enumeratorInfoOpt.CurrentPlaceholder));
1144var bound = this.GetLowerBoundNode(declaratorSyntax);
1189BoundNode highestBoundNode = GetBoundRoot();
1214BoundNode lowestBoundNode;
1215BoundNode highestBoundNode;
1216BoundNode boundParent;
1226BoundNode lowestBoundNode;
1227BoundNode highestBoundNode;
1228BoundNode boundParent;
1237BoundNode lowestBoundNode;
1238BoundNode highestBoundNode;
1239BoundNode boundParent;
1249BoundNode lowestBoundNode;
1250BoundNode highestBoundNode;
1251BoundNode boundParent;
1303private void GetBoundNodes(CSharpSyntaxNode node, out CSharpSyntaxNode bindableNode, out BoundNode lowestBoundNode, out BoundNode highestBoundNode, out BoundNode boundParent)
1434private OneOrMany<BoundNode> GuardedGetBoundNodesFromMap(CSharpSyntaxNode node)
1437OneOrMany<BoundNode> result;
1438return _guardedBoundNodeMap.TryGetValue(node, out result) ? result : OneOrMany<BoundNode>.Empty;
1444internal OneOrMany<BoundNode> TestOnlyTryGetBoundNodesFromMap(CSharpSyntaxNode node)
1446OneOrMany<BoundNode> result;
1447return _guardedBoundNodeMap.TryGetValue(node, out result) ? result : OneOrMany<BoundNode>.Empty;
1452private OneOrMany<BoundNode> GuardedAddBoundTreeAndGetBoundNodeFromMap(CSharpSyntaxNode syntax, BoundNode bound)
1471OneOrMany<BoundNode> result;
1472return _guardedBoundNodeMap.TryGetValue(syntax, out result) ? result : OneOrMany<BoundNode>.Empty;
1475protected void UnguardedAddBoundTreeForStandaloneSyntax(SyntaxNode syntax, BoundNode bound, NullableWalker.SnapshotManager manager = null, ImmutableDictionary<Symbol, Symbol> remappedSymbols = null)
1483protected void GuardedAddBoundTreeForStandaloneSyntax(SyntaxNode syntax, BoundNode bound, NullableWalker.SnapshotManager manager = null, ImmutableDictionary<Symbol, Symbol> remappedSymbols = null)
1626BoundNode boundInnerLambdaOrQuery = GetBoundLambdaOrQuery(innerLambdaOrQuery);
1630private BoundNode GetBoundLambdaOrQuery(CSharpSyntaxNode lambdaOrQuery)
1634OneOrMany<BoundNode> nodes;
1653BoundNode boundEnclosingLambdaOrQuery = null;
1694BoundNode boundOuterExpression = this.Bind(incrementalBinder, nodeToBind, BindingDiagnosticBag.Discarded);
1726BoundNode boundOuterExpression = this.Bind(incrementalBinder, lambdaOrQuery, BindingDiagnosticBag.Discarded);
1740private Binder GetEnclosingBinderInLambdaOrQuery(int position, CSharpSyntaxNode node, CSharpSyntaxNode innerLambdaOrQuery, ref BoundNode boundInnerLambdaOrQuery)
1965BoundNode boundRoot = bind(bindableRoot, out binder);
1987BoundNode bind(CSharpSyntaxNode root, out Binder binder)
2041protected abstract BoundNode RewriteNullableBoundNodesWithSnapshots(
2042BoundNode boundRoot,
2055protected abstract void AnalyzeBoundNodeNullability(BoundNode boundRoot, Binder binder, DiagnosticBag diagnostics, bool createSnapshots);
2069internal OneOrMany<BoundNode> GetBoundNodes(CSharpSyntaxNode node)
2093OneOrMany<BoundNode> results;
2116BoundNode boundStatement = this.Bind(incrementalBinder, nodeToBind, BindingDiagnosticBag.Discarded);
2145var boundNode = this.Bind(incrementalBinder, node, BindingDiagnosticBag.Discarded);
2160return OneOrMany<BoundNode>.Empty;
2474private BoundNode TryGetBoundNodeFromMap(CSharpSyntaxNode node)
2478OneOrMany<BoundNode> boundNodes = _semanticModel.GuardedGetBoundNodesFromMap(node);
2490public override BoundNode BindMethodBody(CSharpSyntaxNode node, BindingDiagnosticBag diagnostics)
2492BoundNode 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)
1480public override BoundNode VisitIndexerAccess(BoundIndexerAccess node)
1493public override BoundNode VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node)
1506public override BoundNode VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
1582public override BoundNode VisitBadExpression(BoundBadExpression node)
1592public override BoundNode VisitBadStatement(BoundBadStatement node)
1594foreach (var child in node.ChildBoundNodes)
1609public override BoundNode VisitArrayInitialization(BoundArrayInitialization node)
1619public override BoundNode VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
1649public override BoundNode VisitTypeExpression(BoundTypeExpression node)
1654public override BoundNode VisitTypeOrValueExpression(BoundTypeOrValueExpression node)
1662public override BoundNode VisitLiteral(BoundLiteral node)
1668public override BoundNode VisitUtf8String(BoundUtf8String node)
1691public override BoundNode VisitLocalId(BoundLocalId node)
1696public override BoundNode VisitParameterId(BoundParameterId node)
1701public override BoundNode VisitMethodDefIndex(BoundMethodDefIndex node)
1706public override BoundNode VisitStateMachineInstanceId(BoundStateMachineInstanceId node)
1711public override BoundNode VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node)
1716public override BoundNode VisitModuleVersionId(BoundModuleVersionId node)
1721public override BoundNode VisitModuleVersionIdString(BoundModuleVersionIdString node)
1726public override BoundNode VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node)
1731public override BoundNode VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node)
1736public override BoundNode VisitSourceDocumentIndex(BoundSourceDocumentIndex node)
1741public override BoundNode VisitConversion(BoundConversion node)
1772public sealed override BoundNode VisitIfStatement(BoundIfStatement node)
1823public override BoundNode VisitTryStatement(BoundTryStatement node)
2018public override BoundNode VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node)
2023public override BoundNode VisitReturnStatement(BoundReturnStatement node)
2025var result = VisitReturnStatementNoAdjust(node);
2031protected virtual BoundNode VisitReturnStatementNoAdjust(BoundReturnStatement node)
2044public override BoundNode VisitThisReference(BoundThisReference node)
2049public override BoundNode VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node)
2054public override BoundNode VisitHostObjectMemberReference(BoundHostObjectMemberReference node)
2059public override BoundNode VisitParameter(BoundParameter node)
2068public override BoundNode VisitObjectCreationExpression(BoundObjectCreationExpression node)
2075public override BoundNode VisitCollectionExpression(BoundCollectionExpression node)
2081public override BoundNode VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
2087private void VisitCollectionExpression(ImmutableArray<BoundNode> elements)
2089foreach (var element in elements)
2102public override BoundNode VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node)
2108public override BoundNode VisitNewT(BoundNewT node)
2114public override BoundNode VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
2139public override BoundNode VisitAssignmentOperator(BoundAssignmentOperator node)
2173public override BoundNode VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
2180public sealed override BoundNode VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node)
2186public override BoundNode VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
2231public override BoundNode VisitFieldAccess(BoundFieldAccess node)
2258public override BoundNode VisitFieldInfo(BoundFieldInfo node)
2263public override BoundNode VisitMethodInfo(BoundMethodInfo node)
2268public override BoundNode VisitPropertyAccess(BoundPropertyAccess node)
2298public override BoundNode VisitEventAccess(BoundEventAccess node)
2304public override BoundNode VisitRangeVariable(BoundRangeVariable node)
2309public override BoundNode VisitQueryClause(BoundQueryClause node)
2315private BoundNode VisitMultipleLocalDeclarationsBase(BoundMultipleLocalDeclarationsBase node)
2325public override BoundNode VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node)
2330public override BoundNode VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node)
2339public override BoundNode VisitWhileStatement(BoundWhileStatement node)
2354public override BoundNode VisitWithExpression(BoundWithExpression node)
2361public override BoundNode VisitArrayAccess(BoundArrayAccess node)
2372public override BoundNode VisitInlineArrayAccess(BoundInlineArrayAccess node)
2391public override BoundNode VisitBinaryOperator(BoundBinaryOperator node)
2410public override BoundNode VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node)
2786public override BoundNode VisitUnaryOperator(BoundUnaryOperator node)
2802public override BoundNode VisitRangeExpression(BoundRangeExpression node)
2817public override BoundNode VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
2823public override BoundNode VisitAwaitExpression(BoundAwaitExpression node)
2830public override BoundNode VisitIncrementOperator(BoundIncrementOperator node)
2854public override BoundNode VisitArrayCreation(BoundArrayCreation node)
2865public override BoundNode VisitForStatement(BoundForStatement node)
2898public override BoundNode VisitForEachStatement(BoundForEachStatement node)
2927public override BoundNode VisitAsOperator(BoundAsOperator node)
2933public override BoundNode VisitIsOperator(BoundIsOperator node)
2948public override BoundNode VisitMethodGroup(BoundMethodGroup node)
2961public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
3137public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
3145public override BoundNode VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node)
3164public override BoundNode VisitConditionalReceiver(BoundConditionalReceiver node)
3169public override BoundNode VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node)
3183public override BoundNode VisitSequence(BoundSequence node)
3198public override BoundNode VisitSequencePoint(BoundSequencePoint node)
3208public override BoundNode VisitSequencePointExpression(BoundSequencePointExpression node)
3214public override BoundNode VisitSequencePointWithSpan(BoundSequencePointWithSpan node)
3224public override BoundNode VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node)
3229public override BoundNode VisitStatementList(BoundStatementList node)
3234private BoundNode VisitStatementListWorker(BoundStatementList node)
3244public override BoundNode VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node)
3249public override BoundNode VisitUnboundLambda(UnboundLambda node)
3255public override BoundNode VisitBreakStatement(BoundBreakStatement node)
3263public override BoundNode VisitContinueStatement(BoundContinueStatement node)
3271public override BoundNode VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node)
3276public override BoundNode VisitConditionalOperator(BoundConditionalOperator node)
3283protected virtual BoundNode? VisitConditionalOperatorCore(
3347public override BoundNode VisitBaseReference(BoundBaseReference node)
3352public override BoundNode VisitDoStatement(BoundDoStatement node)
3366public override BoundNode VisitGotoStatement(BoundGotoStatement node)
3389public override BoundNode VisitLabelStatement(BoundLabelStatement node)
3395public override BoundNode VisitLabeledStatement(BoundLabeledStatement node)
3402public override BoundNode VisitLockStatement(BoundLockStatement node)
3409public override BoundNode VisitNoOpStatement(BoundNoOpStatement node)
3414public override BoundNode VisitNamespaceExpression(BoundNamespaceExpression node)
3419public override BoundNode VisitUsingStatement(BoundUsingStatement node)
3442public override BoundNode VisitFixedStatement(BoundFixedStatement node)
3449public override BoundNode VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
3455public override BoundNode VisitThrowStatement(BoundThrowStatement node)
3463public override BoundNode VisitYieldBreakStatement(BoundYieldBreakStatement node)
3471public override BoundNode VisitYieldReturnStatement(BoundYieldReturnStatement node)
3478public override BoundNode VisitDefaultLiteral(BoundDefaultLiteral node)
3483public override BoundNode VisitDefaultExpression(BoundDefaultExpression node)
3488public override BoundNode VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
3493public override BoundNode VisitTypeOfOperator(BoundTypeOfOperator node)
3499public override BoundNode VisitNameOfOperator(BoundNameOfOperator node)
3508public override BoundNode VisitAddressOfOperator(BoundAddressOfOperator node)
3528public override BoundNode VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
3534public override BoundNode VisitPointerElementAccess(BoundPointerElementAccess node)
3541public override BoundNode VisitSizeOfOperator(BoundSizeOfOperator node)
3546private BoundNode VisitStackAllocArrayCreationBase(BoundStackAllocArrayCreationBase node)
3553public override BoundNode VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
3558public override BoundNode VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
3563public override BoundNode VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
3571public override BoundNode VisitArrayLength(BoundArrayLength node)
3577public override BoundNode VisitConditionalGoto(BoundConditionalGoto node)
3595public override BoundNode VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
3600public override BoundNode VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
3605private BoundNode VisitObjectOrCollectionInitializerExpression(ImmutableArray<BoundExpression> initializers)
3615public override BoundNode VisitObjectInitializerMember(BoundObjectInitializerMember node)
3634public override BoundNode VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
3639public override BoundNode VisitCollectionElementInitializer(BoundCollectionElementInitializer node)
3662public override BoundNode VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
3668public override BoundNode VisitImplicitReceiver(BoundImplicitReceiver node)
3673public override BoundNode VisitFieldEqualsValue(BoundFieldEqualsValue node)
3679public override BoundNode VisitPropertyEqualsValue(BoundPropertyEqualsValue node)
3685public override BoundNode VisitParameterEqualsValue(BoundParameterEqualsValue node)
3691public override BoundNode VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node)
3696public override BoundNode VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node)
3701public override BoundNode VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
3706public sealed override BoundNode VisitOutVariablePendingInference(OutVariablePendingInference node)
3711public sealed override BoundNode VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node)
3716public override BoundNode VisitDiscardExpression(BoundDiscardExpression node)
3727public override BoundNode VisitConstructorMethodBody(BoundConstructorMethodBody node)
3734public override BoundNode VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node)
3740public override BoundNode VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
3773public override BoundNode VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node)
3779public override BoundNode VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
3786public override BoundNode VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node)
3811public override BoundNode VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node)
3816public override BoundNode VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node)
3821public 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)
170BoundNode node,
195BoundNode node,
217BoundNode node,
218BoundNode firstInRegion,
219BoundNode lastInRegion,
236BoundNode node)
430var pendingBranch = pending.Branch;
553BoundNode node,
784private void NoteRead(BoundNode fieldOrEventAccess)
787BoundNode n = fieldOrEventAccess;
1517protected void Assign(BoundNode node, BoundExpression value, bool isRef = false, bool read = true)
1534protected virtual void AssignImpl(BoundNode node, BoundExpression value, bool isRef, bool written, bool read)
2136public override BoundNode? VisitBlock(BoundBlock node)
2221public override BoundNode VisitSwitchStatement(BoundSwitchStatement node)
2224var result = base.VisitSwitchStatement(node);
2236public override BoundNode VisitForStatement(BoundForStatement node)
2240var result = base.VisitForStatement(node);
2246public override BoundNode VisitDoStatement(BoundDoStatement node)
2249var result = base.VisitDoStatement(node);
2254public override BoundNode VisitWhileStatement(BoundWhileStatement node)
2257var result = base.VisitWhileStatement(node);
2265public override BoundNode VisitUsingStatement(BoundUsingStatement node)
2269var result = base.VisitUsingStatement(node);
2286public override BoundNode VisitFixedStatement(BoundFixedStatement node)
2292public override BoundNode VisitSequence(BoundSequence node)
2295var result = base.VisitSequence(node);
2356public override BoundNode VisitLocal(BoundLocal node)
2387public override BoundNode VisitLocalDeclaration(BoundLocalDeclaration node)
2398var result = base.VisitLocalDeclaration(node);
2406public override BoundNode VisitLocalId(BoundLocalId node)
2409public override BoundNode VisitParameterId(BoundParameterId node)
2412public override BoundNode VisitStateMachineInstanceId(BoundStateMachineInstanceId node)
2415public override BoundNode VisitMethodGroup(BoundMethodGroup node)
2427public override BoundNode VisitLambda(BoundLambda node)
2473public override BoundNode VisitThisReference(BoundThisReference node)
2480public override BoundNode VisitParameter(BoundParameter node)
2494public override BoundNode VisitAssignmentOperator(BoundAssignmentOperator node)
2501public override BoundNode VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
2508public override BoundNode VisitIncrementOperator(BoundIncrementOperator node)
2515public override BoundNode VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
2524public override BoundNode VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
2542public override BoundNode VisitAddressOfOperator(BoundAddressOfOperator node)
2678public override BoundNode VisitBaseReference(BoundBaseReference node)
2702public override BoundNode VisitFieldAccess(BoundFieldAccess node)
2704var result = base.VisitFieldAccess(node);
2728public override BoundNode VisitPropertyAccess(BoundPropertyAccess node)
2730var result = base.VisitPropertyAccess(node);
2751public override BoundNode VisitEventAccess(BoundEventAccess node)
2753var result = base.VisitEventAccess(node);
2782public 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 (209)
486BoundNode node,
1449BoundNode node,
1476BoundNode node,
1516internal static VariableState? GetAfterInitializersState(CSharpCompilation compilation, Symbol? symbol, BoundNode constructorBody)
1534internal static VariableState? GetAfterInitializersState(CSharpCompilation compilation, MethodSymbol method, BoundNode nodeToAnalyze, BoundNode? constructorBody, BindingDiagnosticBag diagnostics)
1572private static MethodSymbol? GetConstructorThisOrBaseSymbol(BoundNode? constructorBody)
1587BoundNode node,
1599internal static BoundNode AnalyzeAndRewrite(
1602BoundNode node,
1618BoundNode node,
1675internal static BoundNode AnalyzeAndRewriteSpeculation(
1677BoundNode node,
1723private static BoundNode Rewrite(ImmutableDictionary<BoundExpression, (NullabilityInfo, TypeSymbol?)> updatedNullabilities, SnapshotManager? snapshotManager, BoundNode node, ref ImmutableDictionary<Symbol, Symbol>? remappedSymbols)
1733var rewrittenNode = rewriter.Visit(node);
1757BoundNode node,
1839BoundNode node,
1949private void TakeIncrementalSnapshot(BoundNode? node)
1955private void SetUpdatedSymbol(BoundNode node, Symbol originalSymbol, Symbol updatedSymbol)
2297private void VisitAndUnsplitAll<T>(ImmutableArray<T> nodes) where T : BoundNode
2311private void VisitWithoutDiagnostics(BoundNode? node)
3026public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue equalsValue)
3061public sealed override BoundNode? VisitReturnStatement(BoundReturnStatement node)
3197public override BoundNode? VisitLocal(BoundLocal node)
3228public override BoundNode? VisitBlock(BoundBlock node)
3333public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
3555public override BoundNode? VisitDoStatement(BoundDoStatement node)
3561public override BoundNode? VisitWhileStatement(BoundWhileStatement node)
3567public override BoundNode? VisitWithExpression(BoundWithExpression withExpr)
3587public override BoundNode? VisitForStatement(BoundForStatement node)
3594public override BoundNode? VisitForEachStatement(BoundForEachStatement node)
3600public override BoundNode? VisitUsingStatement(BoundUsingStatement node)
3607public override BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node)
3613public override BoundNode? VisitFixedStatement(BoundFixedStatement node)
3619public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node)
3646public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node)
3708protected override BoundNode? VisitExpressionOrPatternWithoutStackGuard(BoundNode node)
3800public override BoundNode? Visit(BoundNode? node)
3805private BoundNode VisitLValue(BoundNode node)
3824private BoundNode Visit(BoundNode? node, bool expressionIsRead)
3833var result = base.Visit(node);
3846public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node)
3852public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
3860public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
3863var result = base.VisitUnconvertedCollectionExpression(node);
3868public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node)
3878foreach (var element in node.Elements)
3905void visitElement(BoundNode element, BoundCollectionExpression node, TypeWithAnnotations targetElementType, ArrayBuilder<Func<TypeWithAnnotations, TypeSymbol, TypeWithState>> elementConversionCompletions)
4061public override BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node)
4762public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
4823public override BoundNode? VisitArrayCreation(BoundArrayCreation node)
4979BoundNode node,
5057public override BoundNode? VisitArrayAccess(BoundArrayAccess node)
5091public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node)
5880public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
5917public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
6201public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
6207protected override BoundNode? VisitConditionalOperatorCore(
6498public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node)
6509public override BoundNode? VisitCall(BoundCall node)
6705BoundNode node,
7199private static bool HasImplicitTypeArguments(BoundNode node)
7265BoundNode node,
7287BoundNode node,
7326BoundNode node,
7516BoundNode node,
8569var elementsBuilder = ArrayBuilder<BoundNode>.GetInstance(collectionExpressionVisitResults.Length);
8901public override BoundNode? VisitConversion(BoundConversion node)
9038public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node)
9044public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
9267public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
10239public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
10415public override BoundNode? VisitMethodGroup(BoundMethodGroup node)
10510public override BoundNode? VisitLambda(BoundLambda node)
10559public override BoundNode? VisitUnboundLambda(UnboundLambda node)
10569public override BoundNode? VisitThisReference(BoundThisReference node)
10582public override BoundNode? VisitParameter(BoundParameter node)
10592public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
10771public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
10776private BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node, TypeWithState? rightResultOpt)
10888var underlyingConversion = BoundNode.GetConversion(placeholderConversion, placeholder);
10929var underlyingConversion = BoundNode.GetConversion(placeholderConversion, placeholder);
11088public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node)
11207BoundNode.GetConversion(node.OperandConversion, node.OperandPlaceholder),
11237BoundNode.GetConversion(node.ResultConversion, node.ResultPlaceholder),
11265public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
11361BoundNode.GetConversion(node.LeftConversion, node.LeftPlaceholder),
11375BoundNode.GetConversion(node.FinalConversion, node.FinalPlaceholder),
11396public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
11413public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node)
11460public override BoundNode? VisitBaseReference(BoundBaseReference node)
11466public override BoundNode? VisitFieldAccess(BoundFieldAccess node)
11475private (PropertySymbol updatedProperty, bool returnNotNull) ReInferAndVisitExtensionPropertyAccess(BoundNode node, PropertySymbol property, BoundExpression receiver)
11494public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
11531public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
11555public override BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node)
11569public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node)
11577public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node)
11583public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node)
11589public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node)
11595public override BoundNode? VisitEventAccess(BoundEventAccess node)
11705BoundNode node,
11975Conversion conversion = BoundNode.GetConversion(node.ElementConversion, node.ElementPlaceholder);
12012public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
12014var result = base.VisitFromEndIndexExpression(node);
12019public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node)
12025public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
12031public override BoundNode? VisitBadExpression(BoundBadExpression node)
12060public override BoundNode? VisitTypeExpression(BoundTypeExpression node)
12062var result = base.VisitTypeExpression(node);
12073public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node)
12076var result = base.VisitTypeOrValueExpression(node);
12081public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node)
12192public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
12194var result = base.VisitPointerIndirectionOperator(node);
12200public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node)
12202var result = base.VisitPointerElementAccess(node);
12208public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node)
12215public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node)
12217var result = base.VisitMakeRefOperator(node);
12222public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node)
12224var result = base.VisitRefValueOperator(node);
12361BoundNode.GetConversion(binary.TrueFalseOperandConversion, binary.TrueFalseOperandPlaceholder),
12385public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
12387var result = base.VisitAwaitExpression(node);
12416public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node)
12418var result = base.VisitTypeOfOperator(node);
12423public override BoundNode? VisitMethodInfo(BoundMethodInfo node)
12425var result = base.VisitMethodInfo(node);
12430public override BoundNode? VisitFieldInfo(BoundFieldInfo node)
12432var result = base.VisitFieldInfo(node);
12437public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node)
12440var result = base.VisitDefaultLiteral(node);
12445public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node)
12449var result = base.VisitDefaultExpression(node);
12465public override BoundNode? VisitIsOperator(BoundIsOperator node)
12499public override BoundNode? VisitAsOperator(BoundAsOperator node)
12507switch (BoundNode.GetConversion(node.OperandConversion, node.OperandPlaceholder).Kind)
12527public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node)
12529var result = base.VisitSizeOfOperator(node);
12535public override BoundNode? VisitArgList(BoundArgList node)
12537var result = base.VisitArgList(node);
12543public override BoundNode? VisitArgListOperator(BoundArgListOperator node)
12551public override BoundNode? VisitLiteral(BoundLiteral node)
12554var result = base.VisitLiteral(node);
12559public override BoundNode? VisitUtf8String(BoundUtf8String node)
12562var result = base.VisitUtf8String(node);
12567public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node)
12569var result = base.VisitPreviousSubmissionReference(node);
12575public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node)
12577var result = base.VisitHostObjectMemberReference(node);
12583public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node)
12585var result = base.VisitPseudoVariable(node);
12590public override BoundNode? VisitRangeExpression(BoundRangeExpression node)
12592var result = base.VisitRangeExpression(node);
12597public override BoundNode? VisitRangeVariable(BoundRangeVariable node)
12604public override BoundNode? VisitLabel(BoundLabel node)
12606var result = base.VisitLabel(node);
12611public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
12623public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node)
12643public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
12669public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
12675public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
12683public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
12691public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
12699public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node)
12701var result = base.VisitImplicitReceiver(node);
12706public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node)
12711public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
12717public override BoundNode? VisitNewT(BoundNewT node)
12723public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node)
12725var result = base.VisitArrayInitialization(node);
12735public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
12829public override BoundNode? VisitQueryClause(BoundQueryClause node)
12831var result = base.VisitQueryClause(node);
12836public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node)
12838var result = base.VisitNameOfOperator(node);
12843public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node)
12845var result = base.VisitNamespaceExpression(node);
12850public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
12853var result = base.VisitUnconvertedInterpolatedString(node);
12858public override BoundNode? VisitStringInsert(BoundStringInsert node)
12860var result = base.VisitStringInsert(node);
12871public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node)
12879public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node)
12885public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
12891public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
12896private BoundNode? VisitStackAllocArrayCreationBase(BoundStackAllocArrayCreationBase node)
12913public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node)
12921public override BoundNode? VisitThrowExpression(BoundThrowExpression node)
12928public override BoundNode? VisitThrowStatement(BoundThrowStatement node)
12951public override BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node)
12989public override BoundNode? VisitLockStatement(BoundLockStatement node)
12997public override BoundNode? VisitAttribute(BoundAttribute node)
13010public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node)
13017public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node)
13025public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node)
13033public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
13056public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node)
13063public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
13631private sealed class ExpressionAndSymbolEqualityComparer : IEqualityComparer<(BoundNode? expr, Symbol symbol)>
13637public bool Equals((BoundNode? expr, Symbol symbol) x, (BoundNode? expr, Symbol symbol) y)
13648public 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)
304public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFieldEqualsValue(this);
334public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertyEqualsValue(this);
364public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitParameterEqualsValue(this);
392public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitGlobalStatementInitializer(this);
465public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitValuePlaceholder(this);
495public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCapturedReceiverPlaceholder(this);
536public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeconstructValuePlaceholder(this);
571public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTupleOperandPlaceholder(this);
600public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAwaitableValuePlaceholder(this);
635public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDisposableValuePlaceholder(this);
673public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectOrCollectionValuePlaceholder(this);
708public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitIndexerValuePlaceholder(this);
746public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitIndexerReceiverPlaceholder(this);
781public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitListPatternReceiverPlaceholder(this);
816public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitListPatternIndexPlaceholder(this);
851public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSlicePatternReceiverPlaceholder(this);
886public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSlicePatternRangePlaceholder(this);
917public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDup(this);
945public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPassByCopy(this);
978public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBadExpression(this);
994public BoundBadStatement(SyntaxNode syntax, ImmutableArray<BoundNode> childBoundNodes, bool hasErrors = false)
1003public ImmutableArray<BoundNode> ChildBoundNodes { get; }
1006public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBadStatement(this);
1008public BoundBadStatement Update(ImmutableArray<BoundNode> childBoundNodes)
1034public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitExtractedFinallyBlock(this);
1069public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeExpression(this);
1107public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeOrValueExpression(this);
1148public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNamespaceExpression(this);
1190public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnaryOperator(this);
1238public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIncrementOperator(this);
1270public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAddressOfOperator(this);
1299public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedAddressOfOperator(this);
1342public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFunctionPointerLoad(this);
1374public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPointerIndirectionOperator(this);
1411public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPointerElementAccess(this);
1448public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFunctionPointerInvocation(this);
1480public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRefTypeOperator(this);
1510public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMakeRefOperator(this);
1542public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRefValueOperator(this);
1574public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFromEndIndexExpression(this);
1607public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRangeExpression(this);
1660public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBinaryOperator(this);
1698public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTupleBinaryOperator(this);
1751public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUserDefinedConditionalLogicalOperator(this);
1798public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCompoundAssignmentOperator(this);
1832public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAssignmentOperator(this);
1867public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeconstructionAssignmentOperator(this);
1908public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNullCoalescingOperator(this);
1939public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNullCoalescingAssignmentOperator(this);
1978public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedConditionalOperator(this);
2022public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalOperator(this);
2055public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayAccess(this);
2084public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRefArrayAccess(this);
2114public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayLength(this);
2155public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAwaitableInfo(this);
2190public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAwaitExpression(this);
2243public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeOfOperator(this);
2275public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBlockInstrumentation(this);
2319public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMethodDefIndex(this);
2362public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocalId(this);
2405public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitParameterId(this);
2440public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStateMachineInstanceId(this);
2475public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMaximumMethodDefIndex(this);
2513public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInstrumentationPayloadRoot(this);
2548public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThrowIfModuleCancellationRequested(this);
2583public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitModuleCancellationTokenExpression(this);
2618public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitModuleVersionId(this);
2653public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitModuleVersionIdString(this);
2693public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSourceDocumentIndex(this);
2736public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMethodInfo(this);
2779public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFieldInfo(this);
2808public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDefaultLiteral(this);
2833public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDefaultExpression(this);
2868public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIsOperator(this);
2905public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAsOperator(this);
2937public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSizeOfOperator(this);
2979public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConversion(this);
3012public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitReadOnlySpanFromArray(this);
3047public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArgList(this);
3078public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArgListOperator(this);
3117public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFixedLocalCollectionInitializer(this);
3156public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequencePoint(this);
3183public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequencePointWithSpan(this);
3220public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSavePreviousSequencePoint(this);
3257public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRestorePreviousSequencePoint(this);
3288public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStepThroughSequencePoint(this);
3324public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBlock(this);
3353public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitScope(this);
3384public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStateMachineScope(this);
3420public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocalDeclaration(this);
3460public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMultipleLocalDeclarations(this);
3490public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUsingLocalDeclarations(this);
3522public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocalFunctionStatement(this);
3553public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNoOpStatement(this);
3582public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitReturnStatement(this);
3610public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitYieldReturnStatement(this);
3638public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitYieldBreakStatement(this);
3652public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThrowStatement(this);
3680public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitExpressionStatement(this);
3717public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBreakStatement(this);
3754public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitContinueStatement(this);
3799public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchStatement(this);
3835public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchDispatch(this);
3868public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIfStatement(this);
3948public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDoStatement(this);
3978public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitWhileStatement(this);
4020public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitForStatement(this);
4071public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitForEachStatement(this);
4102public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitForEachDeconstructStep(this);
4141public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUsingStatement(this);
4175public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFixedStatement(this);
4206public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLockStatement(this);
4243public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTryStatement(this);
4284public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCatchBlock(this);
4315public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLiteral(this);
4355public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUtf8String(this);
4390public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThisReference(this);
4425public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPreviousSubmissionReference(this);
4460public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitHostObjectMemberReference(this);
4489public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBaseReference(this);
4538public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocal(this);
4583public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPseudoVariable(this);
4616public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRangeVariable(this);
4656public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitParameter(this);
4693public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLabelStatement(this);
4725public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitGotoStatement(this);
4756public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLabeledStatement(this);
4793public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLabel(this);
4830public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStatementList(this);
4863public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalGoto(this);
4926public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchExpressionArm(this);
4954public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedSwitchExpression(this);
4988public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConvertedSwitchExpression(this);
5016public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDecisionDag(this);
5061public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitEvaluationDecisionDagNode(this);
5095public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTestDecisionDagNode(this);
5130public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitWhenDecisionDagNode(this);
5167public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLeafDecisionDagNode(this);
5213public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagTemp(this);
5242public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagTypeTest(this);
5270public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagNonNullTest(this);
5296public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagExplicitNullTest(this);
5325public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagValueTest(this);
5356public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagRelationalTest(this);
5397public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagDeconstructEvaluation(this);
5426public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagTypeEvaluation(this);
5455public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagFieldEvaluation(this);
5486public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagPropertyEvaluation(this);
5517public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagIndexEvaluation(this);
5564public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagIndexerEvaluation(this);
5613public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagSliceEvaluation(this);
5642public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagAssignmentEvaluation(this);
5674public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchSection(this);
5707public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchLabel(this);
5749public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequencePointExpression(this);
5785public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequence(this);
5821public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSpillSequence(this);
5860public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicMemberAccess(this);
5913public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicInvocation(this);
5946public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalAccess(this);
5987public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLoweredConditionalAccess(this);
6025public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalReceiver(this);
6058public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitComplexConditionalReceiver(this);
6099public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMethodGroup(this);
6127public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertyGroup(this);
6186public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCall(this);
6225public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitEventAssignmentOperator(this);
6270public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAttribute(this);
6308public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedObjectCreationExpression(this);
6380public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectCreationExpression(this);
6396protected BoundCollectionExpressionBase(BoundKind kind, SyntaxNode syntax, ImmutableArray<BoundNode> elements, TypeSymbol? type, bool hasErrors = false)
6405public ImmutableArray<BoundNode> Elements { get; }
6410public BoundUnconvertedCollectionExpression(SyntaxNode syntax, ImmutableArray<BoundNode> elements, bool hasErrors = false)
6421public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedCollectionExpression(this);
6423public BoundUnconvertedCollectionExpression Update(ImmutableArray<BoundNode> elements)
6437public 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)
6466public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionExpression(this);
6468public BoundCollectionExpression Update(CollectionExpressionTypeKind collectionTypeKind, BoundObjectOrCollectionValuePlaceholder? placeholder, BoundExpression? collectionCreation, MethodSymbol? collectionBuilderMethod, BoundValuePlaceholder? collectionBuilderInvocationPlaceholder, BoundExpression? collectionBuilderInvocationConversion, bool wasTargetTyped, BoundUnconvertedCollectionExpression unconvertedCollectionExpression, ImmutableArray<BoundNode> elements, TypeSymbol type)
6494public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionExpressionSpreadExpressionPlaceholder(this);
6534public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionExpressionSpreadElement(this);
6579public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTupleLiteral(this);
6609public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConvertedTupleLiteral(this);
6652public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicObjectCreationExpression(this);
6684public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNoPiaObjectCreationExpression(this);
6731public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectInitializerExpression(this);
6780public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectInitializerMember(this);
6825public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicObjectInitializerMember(this);
6853public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionInitializerExpression(this);
6898public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionElementInitializer(this);
6930public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicCollectionElementInitializer(this);
6965public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitReceiver(this);
7001public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAnonymousObjectCreationExpression(this);
7041public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAnonymousPropertyDeclaration(this);
7071public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNewT(this);
7107public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDelegateCreationExpression(this);
7139public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayCreation(this);
7170public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayInitialization(this);
7216public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStackAllocArrayCreation(this);
7245public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConvertedStackAllocExpression(this);
7285public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFieldAccess(this);
7325public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitHoistedFieldAccess(this);
7363public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertyAccess(this);
7399public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitEventAccess(this);
7450public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIndexerAccess(this);
7499public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitIndexerAccess(this);
7540public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInlineArrayAccess(this);
7580public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicIndexerAccess(this);
7620public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLambda(this);
7664public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnboundLambda(this);
7705public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitQueryClause(this);
7731public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeOrInstanceInitializers(this);
7764public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNameOfOperator(this);
7806public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedInterpolatedString(this);
7834public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedString(this);
7862public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedStringHandlerPlaceholder(this);
7900public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedStringArgumentPlaceholder(this);
7935public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStringInsert(this);
7977public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIsPatternExpression(this);
8042public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConstantPattern(this);
8082public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDiscardPattern(this);
8135public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeclarationPattern(this);
8176public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRecursivePattern(this);
8220public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitListPattern(this);
8259public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSlicePattern(this);
8299public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitITuplePattern(this);
8341public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPositionalSubpattern(this);
8371public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertySubpattern(this);
8403public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertySubpatternMember(this);
8439public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypePattern(this);
8478public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBinaryPattern(this);
8512public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNegatedPattern(this);
8551public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRelationalPattern(this);
8586public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDiscardExpression(this);
8614public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThrowExpression(this);
8657public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitOutVariablePendingInference(this);
8683public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeconstructionVariablePendingInference(this);
8718public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitOutDeconstructVarPendingInference(this);
8754public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNonConstructorMethodBody(this);
8784public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConstructorMethodBody(this);
8815public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitExpressionWithNullability(this);
8850public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitWithExpression(this);
8868internal R VisitInternal(BoundNode node, A arg)
9580public virtual BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node) => this.DefaultVisit(node);
9581public virtual BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node) => this.DefaultVisit(node);
9582public virtual BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node) => this.DefaultVisit(node);
9583public virtual BoundNode? VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node) => this.DefaultVisit(node);
9584public virtual BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node) => this.DefaultVisit(node);
9585public virtual BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node) => this.DefaultVisit(node);
9586public virtual BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node) => this.DefaultVisit(node);
9587public virtual BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node) => this.DefaultVisit(node);
9588public virtual BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node) => this.DefaultVisit(node);
9589public virtual BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node) => this.DefaultVisit(node);
9590public virtual BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node) => this.DefaultVisit(node);
9591public virtual BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node) => this.DefaultVisit(node);
9592public virtual BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node) => this.DefaultVisit(node);
9593public virtual BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node) => this.DefaultVisit(node);
9594public virtual BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node) => this.DefaultVisit(node);
9595public virtual BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node) => this.DefaultVisit(node);
9596public virtual BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node) => this.DefaultVisit(node);
9597public virtual BoundNode? VisitDup(BoundDup node) => this.DefaultVisit(node);
9598public virtual BoundNode? VisitPassByCopy(BoundPassByCopy node) => this.DefaultVisit(node);
9599public virtual BoundNode? VisitBadExpression(BoundBadExpression node) => this.DefaultVisit(node);
9600public virtual BoundNode? VisitBadStatement(BoundBadStatement node) => this.DefaultVisit(node);
9601public virtual BoundNode? VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node) => this.DefaultVisit(node);
9602public virtual BoundNode? VisitTypeExpression(BoundTypeExpression node) => this.DefaultVisit(node);
9603public virtual BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node) => this.DefaultVisit(node);
9604public virtual BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node) => this.DefaultVisit(node);
9605public virtual BoundNode? VisitUnaryOperator(BoundUnaryOperator node) => this.DefaultVisit(node);
9606public virtual BoundNode? VisitIncrementOperator(BoundIncrementOperator node) => this.DefaultVisit(node);
9607public virtual BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node) => this.DefaultVisit(node);
9608public virtual BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node) => this.DefaultVisit(node);
9609public virtual BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node) => this.DefaultVisit(node);
9610public virtual BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node) => this.DefaultVisit(node);
9611public virtual BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node) => this.DefaultVisit(node);
9612public virtual BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node) => this.DefaultVisit(node);
9613public virtual BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node) => this.DefaultVisit(node);
9614public virtual BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node) => this.DefaultVisit(node);
9615public virtual BoundNode? VisitRefValueOperator(BoundRefValueOperator node) => this.DefaultVisit(node);
9616public virtual BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node) => this.DefaultVisit(node);
9617public virtual BoundNode? VisitRangeExpression(BoundRangeExpression node) => this.DefaultVisit(node);
9618public virtual BoundNode? VisitBinaryOperator(BoundBinaryOperator node) => this.DefaultVisit(node);
9619public virtual BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node) => this.DefaultVisit(node);
9620public virtual BoundNode? VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node) => this.DefaultVisit(node);
9621public virtual BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node) => this.DefaultVisit(node);
9622public virtual BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node) => this.DefaultVisit(node);
9623public virtual BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node) => this.DefaultVisit(node);
9624public virtual BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node) => this.DefaultVisit(node);
9625public virtual BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node) => this.DefaultVisit(node);
9626public virtual BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node) => this.DefaultVisit(node);
9627public virtual BoundNode? VisitConditionalOperator(BoundConditionalOperator node) => this.DefaultVisit(node);
9628public virtual BoundNode? VisitArrayAccess(BoundArrayAccess node) => this.DefaultVisit(node);
9629public virtual BoundNode? VisitRefArrayAccess(BoundRefArrayAccess node) => this.DefaultVisit(node);
9630public virtual BoundNode? VisitArrayLength(BoundArrayLength node) => this.DefaultVisit(node);
9631public virtual BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node) => this.DefaultVisit(node);
9632public virtual BoundNode? VisitAwaitExpression(BoundAwaitExpression node) => this.DefaultVisit(node);
9633public virtual BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node) => this.DefaultVisit(node);
9634public virtual BoundNode? VisitBlockInstrumentation(BoundBlockInstrumentation node) => this.DefaultVisit(node);
9635public virtual BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node) => this.DefaultVisit(node);
9636public virtual BoundNode? VisitLocalId(BoundLocalId node) => this.DefaultVisit(node);
9637public virtual BoundNode? VisitParameterId(BoundParameterId node) => this.DefaultVisit(node);
9638public virtual BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node) => this.DefaultVisit(node);
9639public virtual BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node) => this.DefaultVisit(node);
9640public virtual BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node) => this.DefaultVisit(node);
9641public virtual BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node) => this.DefaultVisit(node);
9642public virtual BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node) => this.DefaultVisit(node);
9643public virtual BoundNode? VisitModuleVersionId(BoundModuleVersionId node) => this.DefaultVisit(node);
9644public virtual BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node) => this.DefaultVisit(node);
9645public virtual BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node) => this.DefaultVisit(node);
9646public virtual BoundNode? VisitMethodInfo(BoundMethodInfo node) => this.DefaultVisit(node);
9647public virtual BoundNode? VisitFieldInfo(BoundFieldInfo node) => this.DefaultVisit(node);
9648public virtual BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node) => this.DefaultVisit(node);
9649public virtual BoundNode? VisitDefaultExpression(BoundDefaultExpression node) => this.DefaultVisit(node);
9650public virtual BoundNode? VisitIsOperator(BoundIsOperator node) => this.DefaultVisit(node);
9651public virtual BoundNode? VisitAsOperator(BoundAsOperator node) => this.DefaultVisit(node);
9652public virtual BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node) => this.DefaultVisit(node);
9653public virtual BoundNode? VisitConversion(BoundConversion node) => this.DefaultVisit(node);
9654public virtual BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node) => this.DefaultVisit(node);
9655public virtual BoundNode? VisitArgList(BoundArgList node) => this.DefaultVisit(node);
9656public virtual BoundNode? VisitArgListOperator(BoundArgListOperator node) => this.DefaultVisit(node);
9657public virtual BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node) => this.DefaultVisit(node);
9658public virtual BoundNode? VisitSequencePoint(BoundSequencePoint node) => this.DefaultVisit(node);
9659public virtual BoundNode? VisitSequencePointWithSpan(BoundSequencePointWithSpan node) => this.DefaultVisit(node);
9660public virtual BoundNode? VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node) => this.DefaultVisit(node);
9661public virtual BoundNode? VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node) => this.DefaultVisit(node);
9662public virtual BoundNode? VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node) => this.DefaultVisit(node);
9663public virtual BoundNode? VisitBlock(BoundBlock node) => this.DefaultVisit(node);
9664public virtual BoundNode? VisitScope(BoundScope node) => this.DefaultVisit(node);
9665public virtual BoundNode? VisitStateMachineScope(BoundStateMachineScope node) => this.DefaultVisit(node);
9666public virtual BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node) => this.DefaultVisit(node);
9667public virtual BoundNode? VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node) => this.DefaultVisit(node);
9668public virtual BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node) => this.DefaultVisit(node);
9669public virtual BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node) => this.DefaultVisit(node);
9670public virtual BoundNode? VisitNoOpStatement(BoundNoOpStatement node) => this.DefaultVisit(node);
9671public virtual BoundNode? VisitReturnStatement(BoundReturnStatement node) => this.DefaultVisit(node);
9672public virtual BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node) => this.DefaultVisit(node);
9673public virtual BoundNode? VisitYieldBreakStatement(BoundYieldBreakStatement node) => this.DefaultVisit(node);
9674public virtual BoundNode? VisitThrowStatement(BoundThrowStatement node) => this.DefaultVisit(node);
9675public virtual BoundNode? VisitExpressionStatement(BoundExpressionStatement node) => this.DefaultVisit(node);
9676public virtual BoundNode? VisitBreakStatement(BoundBreakStatement node) => this.DefaultVisit(node);
9677public virtual BoundNode? VisitContinueStatement(BoundContinueStatement node) => this.DefaultVisit(node);
9678public virtual BoundNode? VisitSwitchStatement(BoundSwitchStatement node) => this.DefaultVisit(node);
9679public virtual BoundNode? VisitSwitchDispatch(BoundSwitchDispatch node) => this.DefaultVisit(node);
9680public virtual BoundNode? VisitIfStatement(BoundIfStatement node) => this.DefaultVisit(node);
9681public virtual BoundNode? VisitDoStatement(BoundDoStatement node) => this.DefaultVisit(node);
9682public virtual BoundNode? VisitWhileStatement(BoundWhileStatement node) => this.DefaultVisit(node);
9683public virtual BoundNode? VisitForStatement(BoundForStatement node) => this.DefaultVisit(node);
9684public virtual BoundNode? VisitForEachStatement(BoundForEachStatement node) => this.DefaultVisit(node);
9685public virtual BoundNode? VisitForEachDeconstructStep(BoundForEachDeconstructStep node) => this.DefaultVisit(node);
9686public virtual BoundNode? VisitUsingStatement(BoundUsingStatement node) => this.DefaultVisit(node);
9687public virtual BoundNode? VisitFixedStatement(BoundFixedStatement node) => this.DefaultVisit(node);
9688public virtual BoundNode? VisitLockStatement(BoundLockStatement node) => this.DefaultVisit(node);
9689public virtual BoundNode? VisitTryStatement(BoundTryStatement node) => this.DefaultVisit(node);
9690public virtual BoundNode? VisitCatchBlock(BoundCatchBlock node) => this.DefaultVisit(node);
9691public virtual BoundNode? VisitLiteral(BoundLiteral node) => this.DefaultVisit(node);
9692public virtual BoundNode? VisitUtf8String(BoundUtf8String node) => this.DefaultVisit(node);
9693public virtual BoundNode? VisitThisReference(BoundThisReference node) => this.DefaultVisit(node);
9694public virtual BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node) => this.DefaultVisit(node);
9695public virtual BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node) => this.DefaultVisit(node);
9696public virtual BoundNode? VisitBaseReference(BoundBaseReference node) => this.DefaultVisit(node);
9697public virtual BoundNode? VisitLocal(BoundLocal node) => this.DefaultVisit(node);
9698public virtual BoundNode? VisitPseudoVariable(BoundPseudoVariable node) => this.DefaultVisit(node);
9699public virtual BoundNode? VisitRangeVariable(BoundRangeVariable node) => this.DefaultVisit(node);
9700public virtual BoundNode? VisitParameter(BoundParameter node) => this.DefaultVisit(node);
9701public virtual BoundNode? VisitLabelStatement(BoundLabelStatement node) => this.DefaultVisit(node);
9702public virtual BoundNode? VisitGotoStatement(BoundGotoStatement node) => this.DefaultVisit(node);
9703public virtual BoundNode? VisitLabeledStatement(BoundLabeledStatement node) => this.DefaultVisit(node);
9704public virtual BoundNode? VisitLabel(BoundLabel node) => this.DefaultVisit(node);
9705public virtual BoundNode? VisitStatementList(BoundStatementList node) => this.DefaultVisit(node);
9706public virtual BoundNode? VisitConditionalGoto(BoundConditionalGoto node) => this.DefaultVisit(node);
9707public virtual BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node) => this.DefaultVisit(node);
9708public virtual BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node) => this.DefaultVisit(node);
9709public virtual BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node) => this.DefaultVisit(node);
9710public virtual BoundNode? VisitDecisionDag(BoundDecisionDag node) => this.DefaultVisit(node);
9711public virtual BoundNode? VisitEvaluationDecisionDagNode(BoundEvaluationDecisionDagNode node) => this.DefaultVisit(node);
9712public virtual BoundNode? VisitTestDecisionDagNode(BoundTestDecisionDagNode node) => this.DefaultVisit(node);
9713public virtual BoundNode? VisitWhenDecisionDagNode(BoundWhenDecisionDagNode node) => this.DefaultVisit(node);
9714public virtual BoundNode? VisitLeafDecisionDagNode(BoundLeafDecisionDagNode node) => this.DefaultVisit(node);
9715public virtual BoundNode? VisitDagTemp(BoundDagTemp node) => this.DefaultVisit(node);
9716public virtual BoundNode? VisitDagTypeTest(BoundDagTypeTest node) => this.DefaultVisit(node);
9717public virtual BoundNode? VisitDagNonNullTest(BoundDagNonNullTest node) => this.DefaultVisit(node);
9718public virtual BoundNode? VisitDagExplicitNullTest(BoundDagExplicitNullTest node) => this.DefaultVisit(node);
9719public virtual BoundNode? VisitDagValueTest(BoundDagValueTest node) => this.DefaultVisit(node);
9720public virtual BoundNode? VisitDagRelationalTest(BoundDagRelationalTest node) => this.DefaultVisit(node);
9721public virtual BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node) => this.DefaultVisit(node);
9722public virtual BoundNode? VisitDagTypeEvaluation(BoundDagTypeEvaluation node) => this.DefaultVisit(node);
9723public virtual BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node) => this.DefaultVisit(node);
9724public virtual BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node) => this.DefaultVisit(node);
9725public virtual BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node) => this.DefaultVisit(node);
9726public virtual BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node) => this.DefaultVisit(node);
9727public virtual BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node) => this.DefaultVisit(node);
9728public virtual BoundNode? VisitDagAssignmentEvaluation(BoundDagAssignmentEvaluation node) => this.DefaultVisit(node);
9729public virtual BoundNode? VisitSwitchSection(BoundSwitchSection node) => this.DefaultVisit(node);
9730public virtual BoundNode? VisitSwitchLabel(BoundSwitchLabel node) => this.DefaultVisit(node);
9731public virtual BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node) => this.DefaultVisit(node);
9732public virtual BoundNode? VisitSequence(BoundSequence node) => this.DefaultVisit(node);
9733public virtual BoundNode? VisitSpillSequence(BoundSpillSequence node) => this.DefaultVisit(node);
9734public virtual BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node) => this.DefaultVisit(node);
9735public virtual BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node) => this.DefaultVisit(node);
9736public virtual BoundNode? VisitConditionalAccess(BoundConditionalAccess node) => this.DefaultVisit(node);
9737public virtual BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node) => this.DefaultVisit(node);
9738public virtual BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node) => this.DefaultVisit(node);
9739public virtual BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node) => this.DefaultVisit(node);
9740public virtual BoundNode? VisitMethodGroup(BoundMethodGroup node) => this.DefaultVisit(node);
9741public virtual BoundNode? VisitPropertyGroup(BoundPropertyGroup node) => this.DefaultVisit(node);
9742public virtual BoundNode? VisitCall(BoundCall node) => this.DefaultVisit(node);
9743public virtual BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node) => this.DefaultVisit(node);
9744public virtual BoundNode? VisitAttribute(BoundAttribute node) => this.DefaultVisit(node);
9745public virtual BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node) => this.DefaultVisit(node);
9746public virtual BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node) => this.DefaultVisit(node);
9747public virtual BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node) => this.DefaultVisit(node);
9748public virtual BoundNode? VisitCollectionExpression(BoundCollectionExpression node) => this.DefaultVisit(node);
9749public virtual BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node) => this.DefaultVisit(node);
9750public virtual BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node) => this.DefaultVisit(node);
9751public virtual BoundNode? VisitTupleLiteral(BoundTupleLiteral node) => this.DefaultVisit(node);
9752public virtual BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node) => this.DefaultVisit(node);
9753public virtual BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node) => this.DefaultVisit(node);
9754public virtual BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node) => this.DefaultVisit(node);
9755public virtual BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node) => this.DefaultVisit(node);
9756public virtual BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node) => this.DefaultVisit(node);
9757public virtual BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node) => this.DefaultVisit(node);
9758public virtual BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node) => this.DefaultVisit(node);
9759public virtual BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node) => this.DefaultVisit(node);
9760public virtual BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node) => this.DefaultVisit(node);
9761public virtual BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node) => this.DefaultVisit(node);
9762public virtual BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node) => this.DefaultVisit(node);
9763public virtual BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node) => this.DefaultVisit(node);
9764public virtual BoundNode? VisitNewT(BoundNewT node) => this.DefaultVisit(node);
9765public virtual BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node) => this.DefaultVisit(node);
9766public virtual BoundNode? VisitArrayCreation(BoundArrayCreation node) => this.DefaultVisit(node);
9767public virtual BoundNode? VisitArrayInitialization(BoundArrayInitialization node) => this.DefaultVisit(node);
9768public virtual BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node) => this.DefaultVisit(node);
9769public virtual BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node) => this.DefaultVisit(node);
9770public virtual BoundNode? VisitFieldAccess(BoundFieldAccess node) => this.DefaultVisit(node);
9771public virtual BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node) => this.DefaultVisit(node);
9772public virtual BoundNode? VisitPropertyAccess(BoundPropertyAccess node) => this.DefaultVisit(node);
9773public virtual BoundNode? VisitEventAccess(BoundEventAccess node) => this.DefaultVisit(node);
9774public virtual BoundNode? VisitIndexerAccess(BoundIndexerAccess node) => this.DefaultVisit(node);
9775public virtual BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node) => this.DefaultVisit(node);
9776public virtual BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node) => this.DefaultVisit(node);
9777public virtual BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node) => this.DefaultVisit(node);
9778public virtual BoundNode? VisitLambda(BoundLambda node) => this.DefaultVisit(node);
9779public virtual BoundNode? VisitUnboundLambda(UnboundLambda node) => this.DefaultVisit(node);
9780public virtual BoundNode? VisitQueryClause(BoundQueryClause node) => this.DefaultVisit(node);
9781public virtual BoundNode? VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node) => this.DefaultVisit(node);
9782public virtual BoundNode? VisitNameOfOperator(BoundNameOfOperator node) => this.DefaultVisit(node);
9783public virtual BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node) => this.DefaultVisit(node);
9784public virtual BoundNode? VisitInterpolatedString(BoundInterpolatedString node) => this.DefaultVisit(node);
9785public virtual BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node) => this.DefaultVisit(node);
9786public virtual BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node) => this.DefaultVisit(node);
9787public virtual BoundNode? VisitStringInsert(BoundStringInsert node) => this.DefaultVisit(node);
9788public virtual BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node) => this.DefaultVisit(node);
9789public virtual BoundNode? VisitConstantPattern(BoundConstantPattern node) => this.DefaultVisit(node);
9790public virtual BoundNode? VisitDiscardPattern(BoundDiscardPattern node) => this.DefaultVisit(node);
9791public virtual BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node) => this.DefaultVisit(node);
9792public virtual BoundNode? VisitRecursivePattern(BoundRecursivePattern node) => this.DefaultVisit(node);
9793public virtual BoundNode? VisitListPattern(BoundListPattern node) => this.DefaultVisit(node);
9794public virtual BoundNode? VisitSlicePattern(BoundSlicePattern node) => this.DefaultVisit(node);
9795public virtual BoundNode? VisitITuplePattern(BoundITuplePattern node) => this.DefaultVisit(node);
9796public virtual BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node) => this.DefaultVisit(node);
9797public virtual BoundNode? VisitPropertySubpattern(BoundPropertySubpattern node) => this.DefaultVisit(node);
9798public virtual BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node) => this.DefaultVisit(node);
9799public virtual BoundNode? VisitTypePattern(BoundTypePattern node) => this.DefaultVisit(node);
9800public virtual BoundNode? VisitBinaryPattern(BoundBinaryPattern node) => this.DefaultVisit(node);
9801public virtual BoundNode? VisitNegatedPattern(BoundNegatedPattern node) => this.DefaultVisit(node);
9802public virtual BoundNode? VisitRelationalPattern(BoundRelationalPattern node) => this.DefaultVisit(node);
9803public virtual BoundNode? VisitDiscardExpression(BoundDiscardExpression node) => this.DefaultVisit(node);
9804public virtual BoundNode? VisitThrowExpression(BoundThrowExpression node) => this.DefaultVisit(node);
9805public virtual BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node) => this.DefaultVisit(node);
9806public virtual BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node) => this.DefaultVisit(node);
9807public virtual BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node) => this.DefaultVisit(node);
9808public virtual BoundNode? VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node) => this.DefaultVisit(node);
9809public virtual BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node) => this.DefaultVisit(node);
9810public virtual BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node) => this.DefaultVisit(node);
9811public virtual BoundNode? VisitWithExpression(BoundWithExpression node) => this.DefaultVisit(node);
9816public override BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node)
9821public override BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node)
9826public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node)
9831public override BoundNode? VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node)
9836public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node) => null;
9837public override BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node)
9842public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node) => null;
9843public override BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node) => null;
9844public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node) => null;
9845public override BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node) => null;
9846public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node) => null;
9847public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node) => null;
9848public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node) => null;
9849public override BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node) => null;
9850public override BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node) => null;
9851public override BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node) => null;
9852public override BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node) => null;
9853public override BoundNode? VisitDup(BoundDup node) => null;
9854public override BoundNode? VisitPassByCopy(BoundPassByCopy node)
9859public override BoundNode? VisitBadExpression(BoundBadExpression node)
9864public override BoundNode? VisitBadStatement(BoundBadStatement node)
9869public override BoundNode? VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node)
9874public override BoundNode? VisitTypeExpression(BoundTypeExpression node)
9880public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node) => null;
9881public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node) => null;
9882public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node)
9887public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node)
9892public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node)
9897public override BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node)
9902public override BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node) => null;
9903public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
9908public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node)
9914public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
9920public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node)
9925public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node)
9930public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node)
9935public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
9940public override BoundNode? VisitRangeExpression(BoundRangeExpression node)
9946public override BoundNode? VisitBinaryOperator(BoundBinaryOperator node)
9952public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
9958public override BoundNode? VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node)
9964public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
9970public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
9976public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
9982public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
9988public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
9994public override BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node)
10001public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node)
10008public override BoundNode? VisitArrayAccess(BoundArrayAccess node)
10014public override BoundNode? VisitRefArrayAccess(BoundRefArrayAccess node)
10019public override BoundNode? VisitArrayLength(BoundArrayLength node)
10024public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node)
10032public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
10038public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node)
10043public override BoundNode? VisitBlockInstrumentation(BoundBlockInstrumentation node)
10049public override BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node) => null;
10050public override BoundNode? VisitLocalId(BoundLocalId node) => null;
10051public override BoundNode? VisitParameterId(BoundParameterId node) => null;
10052public override BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node) => null;
10053public override BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node) => null;
10054public override BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node) => null;
10055public override BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node) => null;
10056public override BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node) => null;
10057public override BoundNode? VisitModuleVersionId(BoundModuleVersionId node) => null;
10058public override BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node) => null;
10059public override BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node) => null;
10060public override BoundNode? VisitMethodInfo(BoundMethodInfo node) => null;
10061public override BoundNode? VisitFieldInfo(BoundFieldInfo node) => null;
10062public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node) => null;
10063public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node) => null;
10064public override BoundNode? VisitIsOperator(BoundIsOperator node)
10070public override BoundNode? VisitAsOperator(BoundAsOperator node)
10076public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node)
10081public override BoundNode? VisitConversion(BoundConversion node)
10086public override BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node)
10091public override BoundNode? VisitArgList(BoundArgList node) => null;
10092public override BoundNode? VisitArgListOperator(BoundArgListOperator node)
10097public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
10102public override BoundNode? VisitSequencePoint(BoundSequencePoint node)
10107public override BoundNode? VisitSequencePointWithSpan(BoundSequencePointWithSpan node)
10112public override BoundNode? VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node) => null;
10113public override BoundNode? VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node) => null;
10114public override BoundNode? VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node) => null;
10115public override BoundNode? VisitBlock(BoundBlock node)
10121public override BoundNode? VisitScope(BoundScope node)
10126public override BoundNode? VisitStateMachineScope(BoundStateMachineScope node)
10131public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node)
10138public override BoundNode? VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node)
10143public override BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node)
10149public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
10155public override BoundNode? VisitNoOpStatement(BoundNoOpStatement node) => null;
10156public override BoundNode? VisitReturnStatement(BoundReturnStatement node)
10161public override BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node)
10166public override BoundNode? VisitYieldBreakStatement(BoundYieldBreakStatement node) => null;
10167public override BoundNode? VisitThrowStatement(BoundThrowStatement node)
10172public override BoundNode? VisitExpressionStatement(BoundExpressionStatement node)
10177public override BoundNode? VisitBreakStatement(BoundBreakStatement node) => null;
10178public override BoundNode? VisitContinueStatement(BoundContinueStatement node) => null;
10179public override BoundNode? VisitSwitchStatement(BoundSwitchStatement node)
10186public override BoundNode? VisitSwitchDispatch(BoundSwitchDispatch node)
10191public override BoundNode? VisitIfStatement(BoundIfStatement node)
10198public override BoundNode? VisitDoStatement(BoundDoStatement node)
10204public override BoundNode? VisitWhileStatement(BoundWhileStatement node)
10210public override BoundNode? VisitForStatement(BoundForStatement node)
10218public override BoundNode? VisitForEachStatement(BoundForEachStatement node)
10228public override BoundNode? VisitForEachDeconstructStep(BoundForEachDeconstructStep node)
10234public override BoundNode? VisitUsingStatement(BoundUsingStatement node)
10242public override BoundNode? VisitFixedStatement(BoundFixedStatement node)
10248public override BoundNode? VisitLockStatement(BoundLockStatement node)
10254public override BoundNode? VisitTryStatement(BoundTryStatement node)
10261public override BoundNode? VisitCatchBlock(BoundCatchBlock node)
10269public override BoundNode? VisitLiteral(BoundLiteral node) => null;
10270public override BoundNode? VisitUtf8String(BoundUtf8String node) => null;
10271public override BoundNode? VisitThisReference(BoundThisReference node) => null;
10272public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node) => null;
10273public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node) => null;
10274public override BoundNode? VisitBaseReference(BoundBaseReference node) => null;
10275public override BoundNode? VisitLocal(BoundLocal node) => null;
10276public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node) => null;
10277public override BoundNode? VisitRangeVariable(BoundRangeVariable node)
10282public override BoundNode? VisitParameter(BoundParameter node) => null;
10283public override BoundNode? VisitLabelStatement(BoundLabelStatement node) => null;
10284public override BoundNode? VisitGotoStatement(BoundGotoStatement node)
10290public override BoundNode? VisitLabeledStatement(BoundLabeledStatement node)
10295public override BoundNode? VisitLabel(BoundLabel node) => null;
10296public override BoundNode? VisitStatementList(BoundStatementList node)
10301public override BoundNode? VisitConditionalGoto(BoundConditionalGoto node)
10306public override BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node)
10313public override BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node)
10319public override BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node)
10325public override BoundNode? VisitDecisionDag(BoundDecisionDag node)
10330public override BoundNode? VisitEvaluationDecisionDagNode(BoundEvaluationDecisionDagNode node)
10336public override BoundNode? VisitTestDecisionDagNode(BoundTestDecisionDagNode node)
10343public override BoundNode? VisitWhenDecisionDagNode(BoundWhenDecisionDagNode node)
10350public override BoundNode? VisitLeafDecisionDagNode(BoundLeafDecisionDagNode node) => null;
10351public override BoundNode? VisitDagTemp(BoundDagTemp node)
10356public override BoundNode? VisitDagTypeTest(BoundDagTypeTest node)
10361public override BoundNode? VisitDagNonNullTest(BoundDagNonNullTest node)
10366public override BoundNode? VisitDagExplicitNullTest(BoundDagExplicitNullTest node)
10371public override BoundNode? VisitDagValueTest(BoundDagValueTest node)
10376public override BoundNode? VisitDagRelationalTest(BoundDagRelationalTest node)
10381public override BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node)
10386public override BoundNode? VisitDagTypeEvaluation(BoundDagTypeEvaluation node)
10391public override BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node)
10396public override BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node)
10401public override BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node)
10406public override BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node)
10415public override BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node)
10424public override BoundNode? VisitDagAssignmentEvaluation(BoundDagAssignmentEvaluation node)
10430public override BoundNode? VisitSwitchSection(BoundSwitchSection node)
10436public override BoundNode? VisitSwitchLabel(BoundSwitchLabel node)
10442public override BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node)
10447public override BoundNode? VisitSequence(BoundSequence node)
10453public override BoundNode? VisitSpillSequence(BoundSpillSequence node)
10459public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
10464public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node)
10470public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
10476public override BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node)
10483public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node) => null;
10484public override BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node)
10490public override BoundNode? VisitMethodGroup(BoundMethodGroup node)
10495public override BoundNode? VisitPropertyGroup(BoundPropertyGroup node)
10500public override BoundNode? VisitCall(BoundCall node)
10506public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
10512public override BoundNode? VisitAttribute(BoundAttribute node)
10518public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
10523public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node)
10529public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
10534public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node)
10539public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node) => null;
10540public override BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node)
10545public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node)
10550public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
10555public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
10561public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
10566public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
10572public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node)
10577public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node) => null;
10578public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
10584public override BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node)
10590public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
10596public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node) => null;
10597public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
10603public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node) => null;
10604public override BoundNode? VisitNewT(BoundNewT node)
10609public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
10614public override BoundNode? VisitArrayCreation(BoundArrayCreation node)
10620public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node)
10625public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
10631public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
10637public override BoundNode? VisitFieldAccess(BoundFieldAccess node)
10642public override BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node) => null;
10643public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
10648public override BoundNode? VisitEventAccess(BoundEventAccess node)
10653public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
10659public override BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node)
10665public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node)
10671public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
10677public override BoundNode? VisitLambda(BoundLambda node)
10682public override BoundNode? VisitUnboundLambda(UnboundLambda node) => null;
10683public override BoundNode? VisitQueryClause(BoundQueryClause node)
10688public override BoundNode? VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node)
10693public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node)
10698public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
10703public override BoundNode? VisitInterpolatedString(BoundInterpolatedString node)
10708public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node) => null;
10709public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node) => null;
10710public override BoundNode? VisitStringInsert(BoundStringInsert node)
10717public override BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node)
10723public override BoundNode? VisitConstantPattern(BoundConstantPattern node)
10728public override BoundNode? VisitDiscardPattern(BoundDiscardPattern node) => null;
10729public override BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node)
10735public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node)
10743public override BoundNode? VisitListPattern(BoundListPattern node)
10749public override BoundNode? VisitSlicePattern(BoundSlicePattern node)
10754public override BoundNode? VisitITuplePattern(BoundITuplePattern node)
10759public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node)
10764public override BoundNode? VisitPropertySubpattern(BoundPropertySubpattern node)
10770public override BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node)
10775public override BoundNode? VisitTypePattern(BoundTypePattern node)
10780public override BoundNode? VisitBinaryPattern(BoundBinaryPattern node)
10786public override BoundNode? VisitNegatedPattern(BoundNegatedPattern node)
10791public override BoundNode? VisitRelationalPattern(BoundRelationalPattern node)
10796public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node) => null;
10797public override BoundNode? VisitThrowExpression(BoundThrowExpression node)
10802public override BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node)
10807public override BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node)
10812public override BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node) => null;
10813public override BoundNode? VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node)
10819public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node)
10826public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node)
10831public override BoundNode? VisitWithExpression(BoundWithExpression node)
10841public override BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node)
10848public override BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node)
10855public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node)
10862public override BoundNode? VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node)
10867public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node)
10872public override BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node)
10878public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node)
10884public override BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node)
10889public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
10894public override BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node)
10899public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node)
10904public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node)
10909public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node)
10914public override BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node)
10919public override BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node)
10924public override BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node)
10929public override BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node)
10934public override BoundNode? VisitDup(BoundDup node)
10939public override BoundNode? VisitPassByCopy(BoundPassByCopy node)
10945public override BoundNode? VisitBadExpression(BoundBadExpression node)
10952public override BoundNode? VisitBadStatement(BoundBadStatement node)
10954ImmutableArray<BoundNode> childBoundNodes = this.VisitList(node.ChildBoundNodes);
10957public override BoundNode? VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node)
10962public override BoundNode? VisitTypeExpression(BoundTypeExpression node)
10970public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node)
10975public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node)
10982public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node)
10991public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node)
11004public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node)
11010public override BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node)
11016public override BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node)
11023public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
11029public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node)
11036public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
11043public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node)
11050public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node)
11056public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node)
11062public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
11069public override BoundNode? VisitRangeExpression(BoundRangeExpression node)
11077public override BoundNode? VisitBinaryOperator(BoundBinaryOperator node)
11084public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
11091public override BoundNode? VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node)
11105public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
11117public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
11124public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
11131public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
11140public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
11147public override BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node)
11155public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node)
11164public override BoundNode? VisitArrayAccess(BoundArrayAccess node)
11171public override BoundNode? VisitRefArrayAccess(BoundRefArrayAccess node)
11177public override BoundNode? VisitArrayLength(BoundArrayLength node)
11183public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node)
11193public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
11200public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node)
11207public override BoundNode? VisitBlockInstrumentation(BoundBlockInstrumentation node)
11214public override BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node)
11220public override BoundNode? VisitLocalId(BoundLocalId node)
11227public override BoundNode? VisitParameterId(BoundParameterId node)
11234public override BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node)
11239public override BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node)
11244public override BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node)
11249public override BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node)
11254public override BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node)
11259public override BoundNode? VisitModuleVersionId(BoundModuleVersionId node)
11264public override BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node)
11269public override BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node)
11274public override BoundNode? VisitMethodInfo(BoundMethodInfo node)
11281public override BoundNode? VisitFieldInfo(BoundFieldInfo node)
11288public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node)
11293public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node)
11299public override BoundNode? VisitIsOperator(BoundIsOperator node)
11306public override BoundNode? VisitAsOperator(BoundAsOperator node)
11315public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node)
11321public override BoundNode? VisitConversion(BoundConversion node)
11327public override BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node)
11334public override BoundNode? VisitArgList(BoundArgList node)
11339public override BoundNode? VisitArgListOperator(BoundArgListOperator node)
11345public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
11355public override BoundNode? VisitSequencePoint(BoundSequencePoint node)
11360public override BoundNode? VisitSequencePointWithSpan(BoundSequencePointWithSpan node)
11365public override BoundNode? VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node) => node;
11366public override BoundNode? VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node) => node;
11367public override BoundNode? VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node) => node;
11368public override BoundNode? VisitBlock(BoundBlock node)
11376public override BoundNode? VisitScope(BoundScope node)
11382public override BoundNode? VisitStateMachineScope(BoundStateMachineScope node)
11388public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node)
11396public override BoundNode? VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node)
11401public override BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node)
11407public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
11414public override BoundNode? VisitNoOpStatement(BoundNoOpStatement node) => node;
11415public override BoundNode? VisitReturnStatement(BoundReturnStatement node)
11420public override BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node)
11425public override BoundNode? VisitYieldBreakStatement(BoundYieldBreakStatement node) => node;
11426public override BoundNode? VisitThrowStatement(BoundThrowStatement node)
11431public override BoundNode? VisitExpressionStatement(BoundExpressionStatement node)
11436public override BoundNode? VisitBreakStatement(BoundBreakStatement node)
11441public override BoundNode? VisitContinueStatement(BoundContinueStatement node)
11446public override BoundNode? VisitSwitchStatement(BoundSwitchStatement node)
11457public override BoundNode? VisitSwitchDispatch(BoundSwitchDispatch node)
11463public override BoundNode? VisitIfStatement(BoundIfStatement node)
11470public override BoundNode? VisitDoStatement(BoundDoStatement node)
11479public override BoundNode? VisitWhileStatement(BoundWhileStatement node)
11488public override BoundNode? VisitForStatement(BoundForStatement node)
11500public override BoundNode? VisitForEachStatement(BoundForEachStatement node)
11515public override BoundNode? VisitForEachDeconstructStep(BoundForEachDeconstructStep node)
11521public override BoundNode? VisitUsingStatement(BoundUsingStatement node)
11530public override BoundNode? VisitFixedStatement(BoundFixedStatement node)
11537public override BoundNode? VisitLockStatement(BoundLockStatement node)
11543public override BoundNode? VisitTryStatement(BoundTryStatement node)
11551public override BoundNode? VisitCatchBlock(BoundCatchBlock node)
11561public override BoundNode? VisitLiteral(BoundLiteral node)
11566public override BoundNode? VisitUtf8String(BoundUtf8String node)
11571public override BoundNode? VisitThisReference(BoundThisReference node)
11576public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node)
11581public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node)
11586public override BoundNode? VisitBaseReference(BoundBaseReference node)
11591public override BoundNode? VisitLocal(BoundLocal node)
11597public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node)
11603public override BoundNode? VisitRangeVariable(BoundRangeVariable node)
11610public override BoundNode? VisitParameter(BoundParameter node)
11616public override BoundNode? VisitLabelStatement(BoundLabelStatement node)
11621public override BoundNode? VisitGotoStatement(BoundGotoStatement node)
11628public override BoundNode? VisitLabeledStatement(BoundLabeledStatement node)
11634public override BoundNode? VisitLabel(BoundLabel node)
11640public override BoundNode? VisitStatementList(BoundStatementList node)
11645public override BoundNode? VisitConditionalGoto(BoundConditionalGoto node)
11651public override BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node)
11660public override BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node)
11669public override BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node)
11679public override BoundNode? VisitDecisionDag(BoundDecisionDag node)
11684public override BoundNode? VisitEvaluationDecisionDagNode(BoundEvaluationDecisionDagNode node)
11690public override BoundNode? VisitTestDecisionDagNode(BoundTestDecisionDagNode node)
11697public override BoundNode? VisitWhenDecisionDagNode(BoundWhenDecisionDagNode node)
11704public override BoundNode? VisitLeafDecisionDagNode(BoundLeafDecisionDagNode node)
11709public override BoundNode? VisitDagTemp(BoundDagTemp node)
11715public override BoundNode? VisitDagTypeTest(BoundDagTypeTest node)
11721public override BoundNode? VisitDagNonNullTest(BoundDagNonNullTest node)
11726public override BoundNode? VisitDagExplicitNullTest(BoundDagExplicitNullTest node)
11731public override BoundNode? VisitDagValueTest(BoundDagValueTest node)
11736public override BoundNode? VisitDagRelationalTest(BoundDagRelationalTest node)
11741public override BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node)
11747public override BoundNode? VisitDagTypeEvaluation(BoundDagTypeEvaluation node)
11753public override BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node)
11759public override BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node)
11765public override BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node)
11771public override BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node)
11781public override BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node)
11791public override BoundNode? VisitDagAssignmentEvaluation(BoundDagAssignmentEvaluation node)
11797public override BoundNode? VisitSwitchSection(BoundSwitchSection node)
11804public override BoundNode? VisitSwitchLabel(BoundSwitchLabel node)
11811public override BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node)
11817public override BoundNode? VisitSequence(BoundSequence node)
11825public override BoundNode? VisitSpillSequence(BoundSpillSequence node)
11833public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
11839public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node)
11847public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
11854public override BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node)
11863public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node)
11868public override BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node)
11875public override BoundNode? VisitMethodGroup(BoundMethodGroup node)
11884public override BoundNode? VisitPropertyGroup(BoundPropertyGroup node)
11891public override BoundNode? VisitCall(BoundCall node)
11900public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
11908public override BoundNode? VisitAttribute(BoundAttribute node)
11916public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
11922public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node)
11931public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
11933ImmutableArray<BoundNode> elements = this.VisitList(node.Elements);
11937public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node)
11945ImmutableArray<BoundNode> elements = this.VisitList(node.Elements);
11949public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node)
11954public override BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node)
11964public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node)
11970public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
11977public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
11985public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
11991public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
11998public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node)
12006public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
12012public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
12019public override BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node)
12027public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
12035public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node)
12040public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
12048public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node)
12054public override BoundNode? VisitNewT(BoundNewT node)
12060public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
12067public override BoundNode? VisitArrayCreation(BoundArrayCreation node)
12074public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node)
12080public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
12088public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
12096public override BoundNode? VisitFieldAccess(BoundFieldAccess node)
12103public override BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node)
12109public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
12116public override BoundNode? VisitEventAccess(BoundEventAccess node)
12123public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
12132public override BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node)
12143public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node)
12150public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
12158public override BoundNode? VisitLambda(BoundLambda node)
12166public override BoundNode? VisitUnboundLambda(UnboundLambda node)
12172public override BoundNode? VisitQueryClause(BoundQueryClause node)
12182public override BoundNode? VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node)
12187public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node)
12193public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
12199public override BoundNode? VisitInterpolatedString(BoundInterpolatedString node)
12205public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node)
12210public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node)
12215public override BoundNode? VisitStringInsert(BoundStringInsert node)
12223public override BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node)
12233public override BoundNode? VisitConstantPattern(BoundConstantPattern node)
12240public override BoundNode? VisitDiscardPattern(BoundDiscardPattern node)
12246public override BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node)
12255public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node)
12267public override BoundNode? VisitListPattern(BoundListPattern node)
12280public override BoundNode? VisitSlicePattern(BoundSlicePattern node)
12290public override BoundNode? VisitITuplePattern(BoundITuplePattern node)
12299public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node)
12305public override BoundNode? VisitPropertySubpattern(BoundPropertySubpattern node)
12311public override BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node)
12318public override BoundNode? VisitTypePattern(BoundTypePattern node)
12325public override BoundNode? VisitBinaryPattern(BoundBinaryPattern node)
12333public override BoundNode? VisitNegatedPattern(BoundNegatedPattern node)
12340public override BoundNode? VisitRelationalPattern(BoundRelationalPattern node)
12347public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node)
12352public override BoundNode? VisitThrowExpression(BoundThrowExpression node)
12358public override BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node)
12365public override BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node)
12372public override BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node)
12378public override BoundNode? VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node)
12384public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node)
12392public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node)
12398public override BoundNode? VisitWithExpression(BoundWithExpression node)
12421public override BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node)
12429public override BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node)
12437public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node)
12445public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node)
12457public override BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node)
12474public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node)
12491public override BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node)
12503public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
12515public override BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node)
12527public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node)
12539public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node)
12551public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node)
12563public override BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node)
12575public override BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node)
12587public override BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node)
12599public override BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node)
12611public override BoundNode? VisitDup(BoundDup node)
12623public override BoundNode? VisitPassByCopy(BoundPassByCopy node)
12640public override BoundNode? VisitBadExpression(BoundBadExpression node)
12658public override BoundNode? VisitTypeExpression(BoundTypeExpression node)
12676public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node)
12688public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node)
12700public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node)
12720public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node)
12744public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node)
12761public override BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node)
12778public override BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node)
12796public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
12813public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node)
12831public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
12849public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node)
12867public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node)
12884public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node)
12901public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
12919public override BoundNode? VisitRangeExpression(BoundRangeExpression node)
12938public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
12956public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
12974public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
12992public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
13012public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
13030public override BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node)
13049public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node)
13069public override BoundNode? VisitArrayAccess(BoundArrayAccess node)
13087public override BoundNode? VisitRefArrayAccess(BoundRefArrayAccess node)
13104public override BoundNode? VisitArrayLength(BoundArrayLength node)
13121public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node)
13132public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
13150public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node)
13168public override BoundNode? VisitBlockInstrumentation(BoundBlockInstrumentation node)
13176public override BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node)
13193public override BoundNode? VisitLocalId(BoundLocalId node)
13211public override BoundNode? VisitParameterId(BoundParameterId node)
13229public override BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node)
13241public override BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node)
13253public override BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node)
13265public override BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node)
13277public override BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node)
13289public override BoundNode? VisitModuleVersionId(BoundModuleVersionId node)
13301public override BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node)
13313public override BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node)
13325public override BoundNode? VisitMethodInfo(BoundMethodInfo node)
13343public override BoundNode? VisitFieldInfo(BoundFieldInfo node)
13361public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node)
13373public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node)
13390public override BoundNode? VisitIsOperator(BoundIsOperator node)
13408public override BoundNode? VisitAsOperator(BoundAsOperator node)
13428public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node)
13445public override BoundNode? VisitConversion(BoundConversion node)
13462public override BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node)
13480public override BoundNode? VisitArgList(BoundArgList node)
13492public override BoundNode? VisitArgListOperator(BoundArgListOperator node)
13509public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
13530public override BoundNode? VisitBlock(BoundBlock node)
13539public override BoundNode? VisitScope(BoundScope node)
13546public override BoundNode? VisitStateMachineScope(BoundStateMachineScope node)
13553public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node)
13562public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
13570public override BoundNode? VisitSwitchStatement(BoundSwitchStatement node)
13581public override BoundNode? VisitDoStatement(BoundDoStatement node)
13589public override BoundNode? VisitWhileStatement(BoundWhileStatement node)
13597public override BoundNode? VisitForStatement(BoundForStatement node)
13608public override BoundNode? VisitForEachStatement(BoundForEachStatement node)
13622public override BoundNode? VisitUsingStatement(BoundUsingStatement node)
13632public override BoundNode? VisitFixedStatement(BoundFixedStatement node)
13640public override BoundNode? VisitCatchBlock(BoundCatchBlock node)
13651public override BoundNode? VisitLiteral(BoundLiteral node)
13663public override BoundNode? VisitUtf8String(BoundUtf8String node)
13675public override BoundNode? VisitThisReference(BoundThisReference node)
13687public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node)
13699public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node)
13711public override BoundNode? VisitBaseReference(BoundBaseReference node)
13723public override BoundNode? VisitLocal(BoundLocal node)
13740public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node)
13757public override BoundNode? VisitRangeVariable(BoundRangeVariable node)
13775public override BoundNode? VisitParameter(BoundParameter node)
13792public override BoundNode? VisitLabel(BoundLabel node)
13804public override BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node)
13813public override BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node)
13832public override BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node)
13852public override BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node)
13859public override BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node)
13866public override BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node)
13873public override BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node)
13880public override BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node)
13891public override BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node)
13902public override BoundNode? VisitSwitchSection(BoundSwitchSection node)
13910public override BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node)
13927public override BoundNode? VisitSequence(BoundSequence node)
13946public override BoundNode? VisitSpillSequence(BoundSpillSequence node)
13965public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
13982public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node)
14001public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
14019public override BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node)
14039public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node)
14051public override BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node)
14069public override BoundNode? VisitMethodGroup(BoundMethodGroup node)
14089public override BoundNode? VisitPropertyGroup(BoundPropertyGroup node)
14107public override BoundNode? VisitCall(BoundCall node)
14127public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
14146public override BoundNode? VisitAttribute(BoundAttribute node)
14165public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
14182public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node)
14202public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
14204ImmutableArray<BoundNode> elements = this.VisitList(node.Elements);
14219public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node)
14227ImmutableArray<BoundNode> elements = this.VisitList(node.Elements);
14242public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node)
14254public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node)
14271public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
14289public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
14308public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
14325public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
14343public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node)
14362public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
14379public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
14397public override BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node)
14416public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
14435public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node)
14447public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
14466public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node)
14483public override BoundNode? VisitNewT(BoundNewT node)
14500public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
14518public override BoundNode? VisitArrayCreation(BoundArrayCreation node)
14536public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node)
14553public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
14572public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
14591public override BoundNode? VisitFieldAccess(BoundFieldAccess node)
14609public override BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node)
14626public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
14644public override BoundNode? VisitEventAccess(BoundEventAccess node)
14662public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
14682public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node)
14700public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
14719public override BoundNode? VisitLambda(BoundLambda node)
14738public override BoundNode? VisitUnboundLambda(UnboundLambda node)
14755public override BoundNode? VisitQueryClause(BoundQueryClause node)
14776public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node)
14793public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
14810public override BoundNode? VisitInterpolatedString(BoundInterpolatedString node)
14827public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node)
14839public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node)
14851public override BoundNode? VisitStringInsert(BoundStringInsert node)
14870public override BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node)
14889public override BoundNode? VisitConstantPattern(BoundConstantPattern node)
14897public override BoundNode? VisitDiscardPattern(BoundDiscardPattern node)
14904public override BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node)
14914public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node)
14927public override BoundNode? VisitListPattern(BoundListPattern node)
14941public override BoundNode? VisitSlicePattern(BoundSlicePattern node)
14952public override BoundNode? VisitITuplePattern(BoundITuplePattern node)
14962public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node)
14969public override BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node)
14976public override BoundNode? VisitTypePattern(BoundTypePattern node)
14984public override BoundNode? VisitBinaryPattern(BoundBinaryPattern node)
14993public override BoundNode? VisitNegatedPattern(BoundNegatedPattern node)
15001public override BoundNode? VisitRelationalPattern(BoundRelationalPattern node)
15009public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node)
15021public override BoundNode? VisitThrowExpression(BoundThrowExpression node)
15038public override BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node)
15056public override BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node)
15074public override BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node)
15091public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node)
15100public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node)
15117public override BoundNode? VisitWithExpression(BoundWithExpression node)
15142public 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);