Binder\Binder_Statements.cs (11)
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;
3711public virtual BoundNode BindMethodBody(CSharpSyntaxNode syntax, BindingDiagnosticBag diagnostics)
3740private BoundNode BindSimpleProgram(CompilationUnitSyntax compilationUnit, BindingDiagnosticBag diagnostics)
3745private BoundNode BindSimpleProgramCompilationUnit(CompilationUnitSyntax compilationUnit, BindingDiagnosticBag diagnostics)
3769private BoundNode BindPrimaryConstructorBody(TypeDeclarationSyntax typeDecl, BindingDiagnosticBag diagnostics)
3804private BoundNode BindConstructorBody(ConstructorDeclarationSyntax constructor, BindingDiagnosticBag diagnostics)
4135private 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)
738BoundNode boundNode = GetSpeculativelyBoundExpression(position, expression, bindingOption, out binder, out crefSymbols); //calls CheckAndAdjustPosition
768BoundNode boundNode = GetSpeculativelyBoundAttribute(position, attribute, out binder); //calls CheckAndAdjustPosition
1068BoundNode boundNode = GetSpeculativelyBoundExpression(position, expression, bindingOption, out _, out crefSymbols); //calls CheckAndAdjustPosition
1215BoundNode boundNode = GetSpeculativelyBoundExpression(position, nameSyntax, bindingOption, out binder, out crefSymbols); //calls CheckAndAdjustPosition
1895BoundNode lowestBoundNode,
1896BoundNode highestBoundNode,
1897BoundNode boundNodeForSyntacticParent,
2030BoundNode lowestBoundNode,
2031BoundNode highestBoundNode,
2032BoundNode 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,
3988BoundNode boundNodeForSyntacticParent,
4039BoundNode lowestBoundNode,
4259BoundNode boundNodeForSyntacticParent,
4412BoundNode boundNodeForSyntacticParent,
Compilation\MemberSemanticModel.cs (63)
33private readonly Dictionary<SyntaxNode, OneOrMany<BoundNode>> _guardedBoundNodeMap = new Dictionary<SyntaxNode, OneOrMany<BoundNode>>();
521internal virtual BoundNode GetBoundRoot()
529internal BoundNode GetUpperBoundNode(CSharpSyntaxNode node, bool promoteToBindable = false)
557internal BoundNode GetLowerBoundNode(CSharpSyntaxNode node)
574private static BoundNode GetLowerBoundNode(OneOrMany<BoundNode> boundNodes)
931var bound = GetLowerBoundNode(node);
943var bound = GetLowerBoundNode(node);
955var bound = GetLowerBoundNode(node);
1039BoundNode.GetConversion(boundForEach.ElementConversion, boundForEach.ElementPlaceholder),
1040BoundNode.GetConversion(enumeratorInfoOpt.CurrentConversion, enumeratorInfoOpt.CurrentPlaceholder));
1045var lowerNode = GetLowerBoundNode(node);
1188var bound = this.GetLowerBoundNode(declaratorSyntax);
1233BoundNode highestBoundNode = GetBoundRoot();
1258BoundNode lowestBoundNode;
1259BoundNode highestBoundNode;
1260BoundNode boundParent;
1270BoundNode lowestBoundNode;
1271BoundNode highestBoundNode;
1272BoundNode boundParent;
1281BoundNode lowestBoundNode;
1282BoundNode highestBoundNode;
1283BoundNode boundParent;
1293BoundNode lowestBoundNode;
1294BoundNode highestBoundNode;
1295BoundNode boundParent;
1347private void GetBoundNodes(CSharpSyntaxNode node, out CSharpSyntaxNode bindableNode, out BoundNode lowestBoundNode, out BoundNode highestBoundNode, out BoundNode boundParent)
1478private OneOrMany<BoundNode> GuardedGetBoundNodesFromMap(CSharpSyntaxNode node)
1481OneOrMany<BoundNode> result;
1482return _guardedBoundNodeMap.TryGetValue(node, out result) ? result : OneOrMany<BoundNode>.Empty;
1488internal OneOrMany<BoundNode> TestOnlyTryGetBoundNodesFromMap(CSharpSyntaxNode node)
1490OneOrMany<BoundNode> result;
1491return _guardedBoundNodeMap.TryGetValue(node, out result) ? result : OneOrMany<BoundNode>.Empty;
1496private OneOrMany<BoundNode> GuardedAddBoundTreeAndGetBoundNodeFromMap(CSharpSyntaxNode syntax, BoundNode bound)
1515OneOrMany<BoundNode> result;
1516return _guardedBoundNodeMap.TryGetValue(syntax, out result) ? result : OneOrMany<BoundNode>.Empty;
1519protected void UnguardedAddBoundTreeForStandaloneSyntax(SyntaxNode syntax, BoundNode bound, NullableWalker.SnapshotManager manager = null, ImmutableDictionary<Symbol, Symbol> remappedSymbols = null)
1527protected void GuardedAddBoundTreeForStandaloneSyntax(SyntaxNode syntax, BoundNode bound, NullableWalker.SnapshotManager manager = null, ImmutableDictionary<Symbol, Symbol> remappedSymbols = null)
1670BoundNode boundInnerLambdaOrQuery = GetBoundLambdaOrQuery(innerLambdaOrQuery);
1674private BoundNode GetBoundLambdaOrQuery(CSharpSyntaxNode lambdaOrQuery)
1678OneOrMany<BoundNode> nodes;
1697BoundNode boundEnclosingLambdaOrQuery = null;
1738BoundNode boundOuterExpression = this.Bind(incrementalBinder, nodeToBind, BindingDiagnosticBag.Discarded);
1770BoundNode boundOuterExpression = this.Bind(incrementalBinder, lambdaOrQuery, BindingDiagnosticBag.Discarded);
1784private Binder GetEnclosingBinderInLambdaOrQuery(int position, CSharpSyntaxNode node, CSharpSyntaxNode innerLambdaOrQuery, ref BoundNode boundInnerLambdaOrQuery)
2009BoundNode boundRoot = bind(bindableRoot, out binder);
2031BoundNode bind(CSharpSyntaxNode root, out Binder binder)
2085protected abstract BoundNode RewriteNullableBoundNodesWithSnapshots(
2086BoundNode boundRoot,
2099protected abstract void AnalyzeBoundNodeNullability(BoundNode boundRoot, Binder binder, DiagnosticBag diagnostics, bool createSnapshots);
2113internal OneOrMany<BoundNode> GetBoundNodes(CSharpSyntaxNode node)
2137OneOrMany<BoundNode> results;
2160BoundNode boundStatement = this.Bind(incrementalBinder, nodeToBind, BindingDiagnosticBag.Discarded);
2189var boundNode = this.Bind(incrementalBinder, node, BindingDiagnosticBag.Discarded);
2204return OneOrMany<BoundNode>.Empty;
2523private BoundNode TryGetBoundNodeFromMap(CSharpSyntaxNode node)
2527OneOrMany<BoundNode> boundNodes = _semanticModel.GuardedGetBoundNodesFromMap(node);
2539public override BoundNode BindMethodBody(CSharpSyntaxNode node, BindingDiagnosticBag diagnostics)
2541BoundNode boundNode = TryGetBoundNodeFromMap(node);
FlowAnalysis\AbstractFlowPass.cs (204)
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)
394public readonly BoundNode Branch;
403public PendingBranch(BoundNode branch, TLocalState state, LabelSymbol label, bool isConditionalState = false, TLocalState stateWhenTrue = default, TLocalState stateWhenFalse = default)
762protected virtual void NoteBranch(PendingBranch pending, BoundNode gotoStmt, BoundStatement target)
895public override BoundNode DefaultVisit(BoundNode node)
902public override BoundNode VisitAttribute(BoundAttribute node)
908public override BoundNode VisitThrowExpression(BoundThrowExpression node)
915public override BoundNode VisitPassByCopy(BoundPassByCopy node)
921public override BoundNode VisitIsPatternExpression(BoundIsPatternExpression node)
1108public override BoundNode VisitConstantPattern(BoundConstantPattern node)
1114public override BoundNode VisitBinaryPattern(BoundBinaryPattern node)
1120public override BoundNode VisitTupleLiteral(BoundTupleLiteral node)
1125public override BoundNode VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
1130private BoundNode VisitTupleExpression(BoundTupleExpression node)
1136public override BoundNode VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
1143public override BoundNode VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
1150public override BoundNode VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
1157public override BoundNode VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
1163public override BoundNode VisitDynamicInvocation(BoundDynamicInvocation node)
1171protected BoundNode? VisitInterpolatedStringBase(BoundInterpolatedStringBase node, InterpolatedStringHandlerData? data)
1202public override BoundNode VisitInterpolatedString(BoundInterpolatedString node)
1207public override BoundNode VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
1213public override BoundNode VisitStringInsert(BoundStringInsert node)
1229public override BoundNode VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node)
1234public override BoundNode VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node)
1239public override BoundNode VisitArgList(BoundArgList node)
1246public override BoundNode VisitArgListOperator(BoundArgListOperator node)
1253public override BoundNode VisitRefTypeOperator(BoundRefTypeOperator node)
1259public override BoundNode VisitMakeRefOperator(BoundMakeRefOperator node)
1268public override BoundNode VisitRefValueOperator(BoundRefValueOperator node)
1274public override BoundNode VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node)
1280public override BoundNode VisitLambda(BoundLambda node) => null;
1282public override BoundNode VisitLocal(BoundLocal node)
1288public override BoundNode VisitLocalDeclaration(BoundLocalDeclaration node)
1305public override BoundNode VisitBlock(BoundBlock node)
1319public override BoundNode VisitScope(BoundScope node)
1325public override BoundNode VisitExpressionStatement(BoundExpressionStatement node)
1331public override BoundNode VisitCall(BoundCall node)
1481public override BoundNode VisitIndexerAccess(BoundIndexerAccess node)
1494public override BoundNode VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node)
1507public override BoundNode VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
1583public override BoundNode VisitBadExpression(BoundBadExpression node)
1593public override BoundNode VisitBadStatement(BoundBadStatement node)
1595foreach (var child in node.ChildBoundNodes)
1610public override BoundNode VisitArrayInitialization(BoundArrayInitialization node)
1620public override BoundNode VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
1650public override BoundNode VisitTypeExpression(BoundTypeExpression node)
1655public override BoundNode VisitTypeOrValueExpression(BoundTypeOrValueExpression node)
1661public override BoundNode VisitLiteral(BoundLiteral node)
1667public override BoundNode VisitUtf8String(BoundUtf8String node)
1690public override BoundNode VisitLocalId(BoundLocalId node)
1695public override BoundNode VisitParameterId(BoundParameterId node)
1700public override BoundNode VisitMethodDefIndex(BoundMethodDefIndex node)
1705public override BoundNode VisitStateMachineInstanceId(BoundStateMachineInstanceId node)
1710public override BoundNode VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node)
1715public override BoundNode VisitModuleVersionId(BoundModuleVersionId node)
1720public override BoundNode VisitModuleVersionIdString(BoundModuleVersionIdString node)
1725public override BoundNode VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node)
1730public override BoundNode VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node)
1735public override BoundNode VisitSourceDocumentIndex(BoundSourceDocumentIndex node)
1740public override BoundNode VisitConversion(BoundConversion node)
1771public sealed override BoundNode VisitIfStatement(BoundIfStatement node)
1822public override BoundNode VisitTryStatement(BoundTryStatement node)
1967public override BoundNode VisitCatchBlock(BoundCatchBlock catchBlock)
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)
2082public override BoundNode VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
2088private void VisitCollectionExpression(ImmutableArray<BoundNode> elements)
2090foreach (var element in elements)
2103public override BoundNode VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node)
2109public override BoundNode VisitNewT(BoundNewT node)
2115public override BoundNode VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
2140public override BoundNode VisitAssignmentOperator(BoundAssignmentOperator node)
2174public override BoundNode VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
2181public sealed override BoundNode VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node)
2187public override BoundNode VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
2232public override BoundNode VisitFieldAccess(BoundFieldAccess node)
2259public override BoundNode VisitFieldInfo(BoundFieldInfo node)
2264public override BoundNode VisitMethodInfo(BoundMethodInfo node)
2269public override BoundNode VisitPropertyAccess(BoundPropertyAccess node)
2299public override BoundNode VisitEventAccess(BoundEventAccess node)
2305public override BoundNode VisitRangeVariable(BoundRangeVariable node)
2310public override BoundNode VisitQueryClause(BoundQueryClause node)
2316private BoundNode VisitMultipleLocalDeclarationsBase(BoundMultipleLocalDeclarationsBase node)
2326public override BoundNode VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node)
2331public override BoundNode VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node)
2340public override BoundNode VisitWhileStatement(BoundWhileStatement node)
2355public override BoundNode VisitWithExpression(BoundWithExpression node)
2362public override BoundNode VisitArrayAccess(BoundArrayAccess node)
2373public override BoundNode VisitInlineArrayAccess(BoundInlineArrayAccess node)
2392public override BoundNode VisitBinaryOperator(BoundBinaryOperator node)
2411public override BoundNode VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node)
2787public override BoundNode VisitUnaryOperator(BoundUnaryOperator node)
2803public override BoundNode VisitRangeExpression(BoundRangeExpression node)
2818public override BoundNode VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
2824public override BoundNode VisitAwaitExpression(BoundAwaitExpression node)
2831public override BoundNode VisitIncrementOperator(BoundIncrementOperator node)
2855public override BoundNode VisitArrayCreation(BoundArrayCreation node)
2866public override BoundNode VisitForStatement(BoundForStatement node)
2899public override BoundNode VisitForEachStatement(BoundForEachStatement node)
2928public override BoundNode VisitAsOperator(BoundAsOperator node)
2934public override BoundNode VisitIsOperator(BoundIsOperator node)
2949public override BoundNode VisitMethodGroup(BoundMethodGroup node)
2962public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
3138public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
3146public override BoundNode VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node)
3165public override BoundNode VisitConditionalReceiver(BoundConditionalReceiver node)
3170public override BoundNode VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node)
3184public override BoundNode VisitSequence(BoundSequence node)
3199public override BoundNode VisitSequencePoint(BoundSequencePoint node)
3209public override BoundNode VisitSequencePointExpression(BoundSequencePointExpression node)
3215public override BoundNode VisitSequencePointWithSpan(BoundSequencePointWithSpan node)
3225public override BoundNode VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node)
3230public override BoundNode VisitStatementList(BoundStatementList node)
3235private BoundNode VisitStatementListWorker(BoundStatementList node)
3245public override BoundNode VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node)
3250public override BoundNode VisitUnboundLambda(UnboundLambda node)
3256public override BoundNode VisitBreakStatement(BoundBreakStatement node)
3264public override BoundNode VisitContinueStatement(BoundContinueStatement node)
3272public override BoundNode VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node)
3277public override BoundNode VisitConditionalOperator(BoundConditionalOperator node)
3284protected virtual BoundNode? VisitConditionalOperatorCore(
3348public override BoundNode VisitBaseReference(BoundBaseReference node)
3353public override BoundNode VisitDoStatement(BoundDoStatement node)
3367public override BoundNode VisitGotoStatement(BoundGotoStatement node)
3390public override BoundNode VisitLabelStatement(BoundLabelStatement node)
3396public override BoundNode VisitLabeledStatement(BoundLabeledStatement node)
3403public override BoundNode VisitLockStatement(BoundLockStatement node)
3410public override BoundNode VisitNoOpStatement(BoundNoOpStatement node)
3415public override BoundNode VisitNamespaceExpression(BoundNamespaceExpression node)
3420public override BoundNode VisitUsingStatement(BoundUsingStatement node)
3443public override BoundNode VisitFixedStatement(BoundFixedStatement node)
3450public override BoundNode VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
3456public override BoundNode VisitThrowStatement(BoundThrowStatement node)
3464public override BoundNode VisitYieldBreakStatement(BoundYieldBreakStatement node)
3472public override BoundNode VisitYieldReturnStatement(BoundYieldReturnStatement node)
3479public override BoundNode VisitDefaultLiteral(BoundDefaultLiteral node)
3484public override BoundNode VisitDefaultExpression(BoundDefaultExpression node)
3489public override BoundNode VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
3494public override BoundNode VisitTypeOfOperator(BoundTypeOfOperator node)
3500public override BoundNode VisitNameOfOperator(BoundNameOfOperator node)
3509public override BoundNode VisitAddressOfOperator(BoundAddressOfOperator node)
3529public override BoundNode VisitRefAccess(BoundRefAccess node)
3538public override BoundNode VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
3544public override BoundNode VisitPointerElementAccess(BoundPointerElementAccess node)
3551public override BoundNode VisitSizeOfOperator(BoundSizeOfOperator node)
3556private BoundNode VisitStackAllocArrayCreationBase(BoundStackAllocArrayCreationBase node)
3563public override BoundNode VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
3568public override BoundNode VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
3573public override BoundNode VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
3581public override BoundNode VisitArrayLength(BoundArrayLength node)
3587public override BoundNode VisitConditionalGoto(BoundConditionalGoto node)
3605public override BoundNode VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
3610public override BoundNode VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
3615private BoundNode VisitObjectOrCollectionInitializerExpression(ImmutableArray<BoundExpression> initializers)
3625public override BoundNode VisitObjectInitializerMember(BoundObjectInitializerMember node)
3644public override BoundNode VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
3649public override BoundNode VisitCollectionElementInitializer(BoundCollectionElementInitializer node)
3672public override BoundNode VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
3678public override BoundNode VisitImplicitReceiver(BoundImplicitReceiver node)
3683public override BoundNode VisitFieldEqualsValue(BoundFieldEqualsValue node)
3689public override BoundNode VisitPropertyEqualsValue(BoundPropertyEqualsValue node)
3695public override BoundNode VisitParameterEqualsValue(BoundParameterEqualsValue node)
3701public override BoundNode VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node)
3706public override BoundNode VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node)
3711public override BoundNode VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
3716public override BoundNode VisitValuePlaceholder(BoundValuePlaceholder node)
3721public override BoundNode VisitCollectionBuilderElementsPlaceholder(BoundCollectionBuilderElementsPlaceholder node)
3726public sealed override BoundNode VisitOutVariablePendingInference(OutVariablePendingInference node)
3731public sealed override BoundNode VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node)
3736public override BoundNode VisitDiscardExpression(BoundDiscardExpression node)
3747public override BoundNode VisitConstructorMethodBody(BoundConstructorMethodBody node)
3754public override BoundNode VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node)
3760public override BoundNode VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
3793public override BoundNode VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node)
3799public override BoundNode VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
3806public override BoundNode VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node)
3831public override BoundNode VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node)
3836public override BoundNode VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node)
3841public 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 (9)
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)
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)
504BoundNode node,
735private void NoteRead(BoundNode fieldOrEventAccess)
738BoundNode n = fieldOrEventAccess;
1469protected void Assign(BoundNode node, BoundExpression value, bool isRef = false, bool read = true)
1486protected virtual void AssignImpl(BoundNode node, BoundExpression value, bool isRef, bool written, bool read)
2088public override BoundNode? VisitBlock(BoundBlock node)
2173public override BoundNode VisitSwitchStatement(BoundSwitchStatement node)
2176var result = base.VisitSwitchStatement(node);
2188public override BoundNode VisitForStatement(BoundForStatement node)
2192var result = base.VisitForStatement(node);
2198public override BoundNode VisitDoStatement(BoundDoStatement node)
2201var result = base.VisitDoStatement(node);
2206public override BoundNode VisitWhileStatement(BoundWhileStatement node)
2209var result = base.VisitWhileStatement(node);
2217public override BoundNode VisitUsingStatement(BoundUsingStatement node)
2221var result = base.VisitUsingStatement(node);
2238public override BoundNode VisitFixedStatement(BoundFixedStatement node)
2244public override BoundNode VisitSequence(BoundSequence node)
2247var result = base.VisitSequence(node);
2308public override BoundNode VisitLocal(BoundLocal node)
2339public override BoundNode VisitLocalDeclaration(BoundLocalDeclaration node)
2350var result = base.VisitLocalDeclaration(node);
2390public override BoundNode VisitLocalId(BoundLocalId node)
2393public override BoundNode VisitParameterId(BoundParameterId node)
2396public override BoundNode VisitStateMachineInstanceId(BoundStateMachineInstanceId node)
2399public override BoundNode VisitMethodGroup(BoundMethodGroup node)
2411public override BoundNode VisitLambda(BoundLambda node)
2457public override BoundNode VisitThisReference(BoundThisReference node)
2464public override BoundNode VisitParameter(BoundParameter node)
2478public override BoundNode VisitAssignmentOperator(BoundAssignmentOperator node)
2485public override BoundNode VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
2492public override BoundNode VisitIncrementOperator(BoundIncrementOperator node)
2499public override BoundNode VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
2508public override BoundNode VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
2526public override BoundNode VisitAddressOfOperator(BoundAddressOfOperator node)
2662public override BoundNode VisitBaseReference(BoundBaseReference node)
2668public override BoundNode VisitCatchBlock(BoundCatchBlock catchBlock)
2688public override BoundNode VisitFieldAccess(BoundFieldAccess node)
2690var result = base.VisitFieldAccess(node);
2714public override BoundNode VisitPropertyAccess(BoundPropertyAccess node)
2716var result = base.VisitPropertyAccess(node);
2737public override BoundNode VisitEventAccess(BoundEventAccess node)
2739var result = base.VisitEventAccess(node);
2768public 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 (212)
503BoundNode node,
1503BoundNode node,
1530BoundNode node,
1570internal static VariableState? GetAfterInitializersState(CSharpCompilation compilation, Symbol? symbol, BoundNode constructorBody)
1588internal static VariableState? GetAfterInitializersState(CSharpCompilation compilation, MethodSymbol method, BoundNode nodeToAnalyze, BoundNode? constructorBody, BindingDiagnosticBag diagnostics)
1626private static MethodSymbol? GetConstructorThisOrBaseSymbol(BoundNode? constructorBody)
1641BoundNode node,
1653internal static BoundNode AnalyzeAndRewrite(
1656BoundNode node,
1672BoundNode node,
1729internal static BoundNode AnalyzeAndRewriteSpeculation(
1731BoundNode node,
1777private static BoundNode Rewrite(ImmutableDictionary<BoundExpression, (NullabilityInfo, TypeSymbol?)> updatedNullabilities, SnapshotManager? snapshotManager, BoundNode node, ref ImmutableDictionary<Symbol, Symbol>? remappedSymbols)
1787var rewrittenNode = rewriter.Visit(node);
1811BoundNode node,
1893BoundNode node,
2003private void TakeIncrementalSnapshot(BoundNode? node)
2009private void SetUpdatedSymbol(BoundNode node, Symbol originalSymbol, Symbol updatedSymbol)
2376private void VisitAndUnsplitAll<T>(ImmutableArray<T> nodes) where T : BoundNode
2390private void VisitWithoutDiagnostics(BoundNode? node)
3113public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue equalsValue)
3148public sealed override BoundNode? VisitReturnStatement(BoundReturnStatement node)
3284public override BoundNode? VisitLocal(BoundLocal node)
3314public override BoundNode? VisitBlock(BoundBlock node)
3419public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
3641public override BoundNode? VisitDoStatement(BoundDoStatement node)
3647public override BoundNode? VisitWhileStatement(BoundWhileStatement node)
3653public override BoundNode? VisitWithExpression(BoundWithExpression withExpr)
3673public override BoundNode? VisitForStatement(BoundForStatement node)
3680public override BoundNode? VisitForEachStatement(BoundForEachStatement node)
3686public override BoundNode? VisitUsingStatement(BoundUsingStatement node)
3693public override BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node)
3726public override BoundNode? VisitFixedStatement(BoundFixedStatement node)
3732public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node)
3759public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node)
3821protected override BoundNode? VisitExpressionOrPatternWithoutStackGuard(BoundNode node)
3913public override BoundNode? Visit(BoundNode? node)
3918private BoundNode VisitLValue(BoundNode node)
3937private BoundNode Visit(BoundNode? node, bool expressionIsRead)
3946var result = base.Visit(node);
3959public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node)
3965public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
3973public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
3976var result = base.VisitUnconvertedCollectionExpression(node);
3981public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node)
4000foreach (var element in node.Elements)
4138void visitElement(BoundNode element, BoundCollectionExpression node, TypeWithAnnotations targetElementType, ArrayBuilder<Action<TypeWithAnnotations, TypeSymbol>> elementConversionCompletions)
4308public override BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node)
5068public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
5129public override BoundNode? VisitArrayCreation(BoundArrayCreation node)
5285BoundNode node,
5363public override BoundNode? VisitArrayAccess(BoundArrayAccess node)
5397public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node)
6202public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
6239public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
6525public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
6531protected override BoundNode? VisitConditionalOperatorCore(
6822public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node)
6833public override BoundNode? VisitCall(BoundCall node)
7034BoundNode node,
7550private static bool HasImplicitTypeArguments(BoundNode node)
7642BoundNode node,
7683BoundNode node,
7876BoundNode node,
8968var elementsBuilder = ArrayBuilder<BoundNode>.GetInstance(collectionExpressionVisitResults.Length);
9311public override BoundNode? VisitConversion(BoundConversion node)
9448public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node)
9454public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
9735public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
10942public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
11118public override BoundNode? VisitMethodGroup(BoundMethodGroup node)
11213public override BoundNode? VisitLambda(BoundLambda node)
11262public override BoundNode? VisitUnboundLambda(UnboundLambda node)
11272public override BoundNode? VisitThisReference(BoundThisReference node)
11285public override BoundNode? VisitParameter(BoundParameter node)
11295public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
11479public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
11484private BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node, TypeWithState? rightResultOpt)
11597var underlyingConversion = BoundNode.GetConversion(placeholderConversion, placeholder);
11639var underlyingConversion = BoundNode.GetConversion(placeholderConversion, placeholder);
11798public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node)
11933BoundNode.GetConversion(node.OperandConversion, node.OperandPlaceholder),
11963BoundNode.GetConversion(node.ResultConversion, node.ResultPlaceholder),
11991public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
12091BoundNode.GetConversion(node.LeftConversion, node.LeftPlaceholder),
12105BoundNode.GetConversion(node.FinalConversion, node.FinalPlaceholder),
12126public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
12143public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node)
12190public override BoundNode? VisitBaseReference(BoundBaseReference node)
12196public override BoundNode? VisitFieldAccess(BoundFieldAccess node)
12206BoundNode node, PropertySymbol property, BoundExpression receiver)
12227BoundNode node,
12254public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
12293public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
12327public override BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node)
12341public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node)
12349public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node)
12355public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node)
12361public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node)
12367public override BoundNode? VisitCollectionBuilderElementsPlaceholder(BoundCollectionBuilderElementsPlaceholder node)
12373public override BoundNode? VisitEventAccess(BoundEventAccess node)
12510BoundNode node,
12770Conversion conversion = BoundNode.GetConversion(node.ElementConversion, node.ElementPlaceholder);
12807public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
12809var result = base.VisitFromEndIndexExpression(node);
12814public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node)
12820public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
12826public override BoundNode? VisitBadExpression(BoundBadExpression node)
12855public override BoundNode? VisitTypeExpression(BoundTypeExpression node)
12857var result = base.VisitTypeExpression(node);
12868public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node)
12871var result = base.VisitTypeOrValueExpression(node);
12876public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node)
12987public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
12989var result = base.VisitPointerIndirectionOperator(node);
12995public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node)
12997var result = base.VisitPointerElementAccess(node);
13003public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node)
13010public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node)
13012var result = base.VisitMakeRefOperator(node);
13017public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node)
13019var result = base.VisitRefValueOperator(node);
13156BoundNode.GetConversion(binary.TrueFalseOperandConversion, binary.TrueFalseOperandPlaceholder),
13180public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
13182var result = base.VisitAwaitExpression(node);
13209public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node)
13211var result = base.VisitTypeOfOperator(node);
13216public override BoundNode? VisitMethodInfo(BoundMethodInfo node)
13218var result = base.VisitMethodInfo(node);
13223public override BoundNode? VisitFieldInfo(BoundFieldInfo node)
13225var result = base.VisitFieldInfo(node);
13230public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node)
13233var result = base.VisitDefaultLiteral(node);
13238public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node)
13242var result = base.VisitDefaultExpression(node);
13258public override BoundNode? VisitIsOperator(BoundIsOperator node)
13292public override BoundNode? VisitAsOperator(BoundAsOperator node)
13300switch (BoundNode.GetConversion(node.OperandConversion, node.OperandPlaceholder).Kind)
13320public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node)
13322var result = base.VisitSizeOfOperator(node);
13328public override BoundNode? VisitArgList(BoundArgList node)
13330var result = base.VisitArgList(node);
13336public override BoundNode? VisitArgListOperator(BoundArgListOperator node)
13344public override BoundNode? VisitLiteral(BoundLiteral node)
13347var result = base.VisitLiteral(node);
13352public override BoundNode? VisitUtf8String(BoundUtf8String node)
13355var result = base.VisitUtf8String(node);
13360public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node)
13362var result = base.VisitPreviousSubmissionReference(node);
13368public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node)
13370var result = base.VisitHostObjectMemberReference(node);
13376public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node)
13378var result = base.VisitPseudoVariable(node);
13383public override BoundNode? VisitRangeExpression(BoundRangeExpression node)
13385var result = base.VisitRangeExpression(node);
13390public override BoundNode? VisitRangeVariable(BoundRangeVariable node)
13397public override BoundNode? VisitLabel(BoundLabel node)
13399var result = base.VisitLabel(node);
13404public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
13416public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node)
13436public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
13462public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
13468public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
13476public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
13484public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
13492public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node)
13494var result = base.VisitImplicitReceiver(node);
13499public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node)
13504public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
13510public override BoundNode? VisitNewT(BoundNewT node)
13516public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node)
13518var result = base.VisitArrayInitialization(node);
13528public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
13622public override BoundNode? VisitQueryClause(BoundQueryClause node)
13624var result = base.VisitQueryClause(node);
13629public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node)
13631var result = base.VisitNameOfOperator(node);
13636public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node)
13638var result = base.VisitNamespaceExpression(node);
13643public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
13646var result = base.VisitUnconvertedInterpolatedString(node);
13651public override BoundNode? VisitStringInsert(BoundStringInsert node)
13653var result = base.VisitStringInsert(node);
13664public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node)
13672public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node)
13678public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
13684public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
13689private BoundNode? VisitStackAllocArrayCreationBase(BoundStackAllocArrayCreationBase node)
13706public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node)
13714public override BoundNode? VisitThrowExpression(BoundThrowExpression node)
13721public override BoundNode? VisitThrowStatement(BoundThrowStatement node)
13744public override BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node)
13760public override BoundNode? VisitCatchBlock(BoundCatchBlock node)
13784public override BoundNode? VisitLockStatement(BoundLockStatement node)
13800public override BoundNode? VisitAttribute(BoundAttribute node)
13813public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node)
13820public override BoundNode? VisitValueForNullableAnalysis(BoundValueForNullableAnalysis node)
13826public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node)
13834public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node)
13842public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
13863public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node)
13917public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
14486private sealed class ExpressionAndSymbolEqualityComparer : IEqualityComparer<(BoundNode? expr, Symbol symbol)>
14492public bool Equals((BoundNode? expr, Symbol symbol) x, (BoundNode? expr, Symbol symbol) y)
14503public int GetHashCode((BoundNode? expr, Symbol symbol) obj)
FlowAnalysis\NullableWalker.SnapshotManager.cs (10)
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)
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 (1148)
309public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFieldEqualsValue(this);
339public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertyEqualsValue(this);
369public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitParameterEqualsValue(this);
397public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitGlobalStatementInitializer(this);
470public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitValuePlaceholder(this);
498public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCapturedReceiverPlaceholder(this);
539public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeconstructValuePlaceholder(this);
574public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTupleOperandPlaceholder(this);
603public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAwaitableValuePlaceholder(this);
638public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDisposableValuePlaceholder(this);
676public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectOrCollectionValuePlaceholder(this);
711public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitIndexerValuePlaceholder(this);
743public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitIndexerReceiverPlaceholder(this);
778public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitListPatternReceiverPlaceholder(this);
813public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitListPatternIndexPlaceholder(this);
848public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSlicePatternReceiverPlaceholder(this);
883public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSlicePatternRangePlaceholder(this);
911public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionBuilderElementsPlaceholder(this);
942public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDup(this);
970public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPassByCopy(this);
1007public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBadExpression(this);
1023public BoundBadStatement(SyntaxNode syntax, ImmutableArray<BoundNode> childBoundNodes, bool hasErrors = false)
1032public ImmutableArray<BoundNode> ChildBoundNodes { get; }
1035public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBadStatement(this);
1037public BoundBadStatement Update(ImmutableArray<BoundNode> childBoundNodes)
1063public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitExtractedFinallyBlock(this);
1098public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeExpression(this);
1147public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeOrValueExpression(this);
1188public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNamespaceExpression(this);
1230public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnaryOperator(this);
1278public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIncrementOperator(this);
1310public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAddressOfOperator(this);
1339public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedAddressOfOperator(this);
1382public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFunctionPointerLoad(this);
1414public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPointerIndirectionOperator(this);
1451public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPointerElementAccess(this);
1488public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFunctionPointerInvocation(this);
1520public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRefTypeOperator(this);
1550public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMakeRefOperator(this);
1582public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRefValueOperator(this);
1614public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFromEndIndexExpression(this);
1647public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRangeExpression(this);
1704public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBinaryOperator(this);
1742public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTupleBinaryOperator(this);
1795public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUserDefinedConditionalLogicalOperator(this);
1842public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCompoundAssignmentOperator(this);
1876public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAssignmentOperator(this);
1911public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeconstructionAssignmentOperator(this);
1952public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNullCoalescingOperator(this);
1983public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNullCoalescingAssignmentOperator(this);
2022public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedConditionalOperator(this);
2066public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalOperator(this);
2099public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayAccess(this);
2131public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRefAccess(this);
2161public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayLength(this);
2202public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAwaitableInfo(this);
2237public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAwaitExpression(this);
2290public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeOfOperator(this);
2322public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBlockInstrumentation(this);
2366public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMethodDefIndex(this);
2409public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocalId(this);
2452public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitParameterId(this);
2487public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStateMachineInstanceId(this);
2522public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMaximumMethodDefIndex(this);
2560public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInstrumentationPayloadRoot(this);
2595public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThrowIfModuleCancellationRequested(this);
2630public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitModuleCancellationTokenExpression(this);
2665public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitModuleVersionId(this);
2700public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitModuleVersionIdString(this);
2740public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSourceDocumentIndex(this);
2783public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMethodInfo(this);
2826public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFieldInfo(this);
2855public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDefaultLiteral(this);
2880public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDefaultExpression(this);
2915public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIsOperator(this);
2952public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAsOperator(this);
2984public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSizeOfOperator(this);
3032public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConversion(this);
3065public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitReadOnlySpanFromArray(this);
3100public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArgList(this);
3131public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArgListOperator(this);
3170public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFixedLocalCollectionInitializer(this);
3209public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequencePoint(this);
3236public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequencePointWithSpan(this);
3273public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSavePreviousSequencePoint(this);
3310public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRestorePreviousSequencePoint(this);
3341public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStepThroughSequencePoint(this);
3377public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBlock(this);
3406public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitScope(this);
3437public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStateMachineScope(this);
3473public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocalDeclaration(this);
3513public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMultipleLocalDeclarations(this);
3543public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUsingLocalDeclarations(this);
3575public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocalFunctionStatement(this);
3606public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNoOpStatement(this);
3639public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitReturnStatement(this);
3667public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitYieldReturnStatement(this);
3695public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitYieldBreakStatement(this);
3709public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThrowStatement(this);
3737public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitExpressionStatement(this);
3767public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBreakStatement(this);
3797public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitContinueStatement(this);
3842public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchStatement(this);
3878public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchDispatch(this);
3911public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIfStatement(this);
3991public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDoStatement(this);
4021public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitWhileStatement(this);
4063public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitForStatement(this);
4112public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitForEachStatement(this);
4143public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitForEachDeconstructStep(this);
4182public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUsingStatement(this);
4216public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFixedStatement(this);
4247public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLockStatement(this);
4284public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTryStatement(this);
4325public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCatchBlock(this);
4356public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLiteral(this);
4396public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUtf8String(this);
4431public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThisReference(this);
4466public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPreviousSubmissionReference(this);
4501public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitHostObjectMemberReference(this);
4530public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBaseReference(this);
4579public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocal(this);
4624public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPseudoVariable(this);
4657public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRangeVariable(this);
4697public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitParameter(this);
4734public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLabelStatement(this);
4766public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitGotoStatement(this);
4797public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLabeledStatement(this);
4834public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLabel(this);
4871public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStatementList(this);
4904public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalGoto(this);
4969public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchExpressionArm(this);
4997public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedSwitchExpression(this);
5031public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConvertedSwitchExpression(this);
5061public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDecisionDag(this);
5106public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitEvaluationDecisionDagNode(this);
5140public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTestDecisionDagNode(this);
5175public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitWhenDecisionDagNode(this);
5212public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLeafDecisionDagNode(this);
5258public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagTemp(this);
5287public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagTypeTest(this);
5315public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagNonNullTest(this);
5341public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagExplicitNullTest(this);
5370public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagValueTest(this);
5401public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagRelationalTest(this);
5442public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagDeconstructEvaluation(this);
5471public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagTypeEvaluation(this);
5500public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagFieldEvaluation(this);
5531public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagPropertyEvaluation(this);
5562public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagIndexEvaluation(this);
5609public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagIndexerEvaluation(this);
5658public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagSliceEvaluation(this);
5687public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagAssignmentEvaluation(this);
5713public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagPassThroughEvaluation(this);
5745public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchSection(this);
5780public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchLabel(this);
5822public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequencePointExpression(this);
5858public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequence(this);
5894public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSpillSequence(this);
5933public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicMemberAccess(this);
5986public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicInvocation(this);
6019public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalAccess(this);
6060public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLoweredConditionalAccess(this);
6098public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalReceiver(this);
6131public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitComplexConditionalReceiver(this);
6172public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMethodGroup(this);
6200public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertyGroup(this);
6259public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCall(this);
6298public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitEventAssignmentOperator(this);
6343public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAttribute(this);
6381public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedObjectCreationExpression(this);
6453public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectCreationExpression(this);
6469protected BoundCollectionExpressionBase(BoundKind kind, SyntaxNode syntax, ImmutableArray<BoundNode> elements, TypeSymbol? type, bool hasErrors = false)
6482public ImmutableArray<BoundNode> Elements { get; }
6487public BoundUnconvertedCollectionExpression(SyntaxNode syntax, BoundUnconvertedWithElement? withElement, ImmutableArray<BoundNode> elements, bool hasErrors = false)
6500public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedCollectionExpression(this);
6502public BoundUnconvertedCollectionExpression Update(BoundUnconvertedWithElement? withElement, ImmutableArray<BoundNode> elements)
6532public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedWithElement(this);
6548public BoundCollectionExpression(SyntaxNode syntax, CollectionExpressionTypeKind collectionTypeKind, BoundObjectOrCollectionValuePlaceholder? placeholder, BoundExpression? collectionCreation, MethodSymbol? collectionBuilderMethod, BoundCollectionBuilderElementsPlaceholder? collectionBuilderElementsPlaceholder, bool wasTargetTyped, bool hasWithElement, BoundUnconvertedCollectionExpression unconvertedCollectionExpression, ImmutableArray<BoundNode> elements, TypeSymbol type, bool hasErrors = false)
6581public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionExpression(this);
6583public BoundCollectionExpression Update(CollectionExpressionTypeKind collectionTypeKind, BoundObjectOrCollectionValuePlaceholder? placeholder, BoundExpression? collectionCreation, MethodSymbol? collectionBuilderMethod, BoundCollectionBuilderElementsPlaceholder? collectionBuilderElementsPlaceholder, bool wasTargetTyped, bool hasWithElement, BoundUnconvertedCollectionExpression unconvertedCollectionExpression, ImmutableArray<BoundNode> elements, TypeSymbol type)
6609public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionExpressionSpreadExpressionPlaceholder(this);
6649public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionExpressionSpreadElement(this);
6694public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTupleLiteral(this);
6724public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConvertedTupleLiteral(this);
6767public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicObjectCreationExpression(this);
6799public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNoPiaObjectCreationExpression(this);
6846public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectInitializerExpression(this);
6895public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectInitializerMember(this);
6940public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicObjectInitializerMember(this);
6968public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionInitializerExpression(this);
7013public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionElementInitializer(this);
7045public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicCollectionElementInitializer(this);
7080public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitReceiver(this);
7116public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAnonymousObjectCreationExpression(this);
7156public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAnonymousPropertyDeclaration(this);
7186public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNewT(this);
7222public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDelegateCreationExpression(this);
7254public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayCreation(this);
7285public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayInitialization(this);
7331public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStackAllocArrayCreation(this);
7360public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConvertedStackAllocExpression(this);
7400public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFieldAccess(this);
7440public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitHoistedFieldAccess(this);
7478public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertyAccess(this);
7514public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitEventAccess(this);
7565public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIndexerAccess(this);
7614public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitIndexerAccess(this);
7655public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInlineArrayAccess(this);
7695public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicIndexerAccess(this);
7735public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLambda(this);
7779public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnboundLambda(this);
7820public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitQueryClause(this);
7846public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeOrInstanceInitializers(this);
7883public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNameOfOperator(this);
7925public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedInterpolatedString(this);
7953public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedString(this);
7981public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedStringHandlerPlaceholder(this);
8019public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedStringArgumentPlaceholder(this);
8054public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStringInsert(this);
8098public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIsPatternExpression(this);
8169public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConstantPattern(this);
8211public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPatternWithUnionMatching(this);
8251public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDiscardPattern(this);
8306public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeclarationPattern(this);
8349public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRecursivePattern(this);
8393public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitListPattern(this);
8432public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSlicePattern(this);
8472public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitITuplePattern(this);
8518public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPositionalSubpattern(this);
8548public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertySubpattern(this);
8580public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertySubpatternMember(this);
8618public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypePattern(this);
8657public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBinaryPattern(this);
8691public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNegatedPattern(this);
8732public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRelationalPattern(this);
8767public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDiscardExpression(this);
8795public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThrowExpression(this);
8838public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitOutVariablePendingInference(this);
8864public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeconstructionVariablePendingInference(this);
8899public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitOutDeconstructVarPendingInference(this);
8935public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNonConstructorMethodBody(this);
8965public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConstructorMethodBody(this);
8996public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitExpressionWithNullability(this);
9021public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitValueForNullableAnalysis(this);
9056public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitWithExpression(this);
9074internal R VisitInternal(BoundNode node, A arg)
9801public virtual BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node) => this.DefaultVisit(node);
9802public virtual BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node) => this.DefaultVisit(node);
9803public virtual BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node) => this.DefaultVisit(node);
9804public virtual BoundNode? VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node) => this.DefaultVisit(node);
9805public virtual BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node) => this.DefaultVisit(node);
9806public virtual BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node) => this.DefaultVisit(node);
9807public virtual BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node) => this.DefaultVisit(node);
9808public virtual BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node) => this.DefaultVisit(node);
9809public virtual BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node) => this.DefaultVisit(node);
9810public virtual BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node) => this.DefaultVisit(node);
9811public virtual BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node) => this.DefaultVisit(node);
9812public virtual BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node) => this.DefaultVisit(node);
9813public virtual BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node) => this.DefaultVisit(node);
9814public virtual BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node) => this.DefaultVisit(node);
9815public virtual BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node) => this.DefaultVisit(node);
9816public virtual BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node) => this.DefaultVisit(node);
9817public virtual BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node) => this.DefaultVisit(node);
9818public virtual BoundNode? VisitCollectionBuilderElementsPlaceholder(BoundCollectionBuilderElementsPlaceholder node) => this.DefaultVisit(node);
9819public virtual BoundNode? VisitDup(BoundDup node) => this.DefaultVisit(node);
9820public virtual BoundNode? VisitPassByCopy(BoundPassByCopy node) => this.DefaultVisit(node);
9821public virtual BoundNode? VisitBadExpression(BoundBadExpression node) => this.DefaultVisit(node);
9822public virtual BoundNode? VisitBadStatement(BoundBadStatement node) => this.DefaultVisit(node);
9823public virtual BoundNode? VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node) => this.DefaultVisit(node);
9824public virtual BoundNode? VisitTypeExpression(BoundTypeExpression node) => this.DefaultVisit(node);
9825public virtual BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node) => this.DefaultVisit(node);
9826public virtual BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node) => this.DefaultVisit(node);
9827public virtual BoundNode? VisitUnaryOperator(BoundUnaryOperator node) => this.DefaultVisit(node);
9828public virtual BoundNode? VisitIncrementOperator(BoundIncrementOperator node) => this.DefaultVisit(node);
9829public virtual BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node) => this.DefaultVisit(node);
9830public virtual BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node) => this.DefaultVisit(node);
9831public virtual BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node) => this.DefaultVisit(node);
9832public virtual BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node) => this.DefaultVisit(node);
9833public virtual BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node) => this.DefaultVisit(node);
9834public virtual BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node) => this.DefaultVisit(node);
9835public virtual BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node) => this.DefaultVisit(node);
9836public virtual BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node) => this.DefaultVisit(node);
9837public virtual BoundNode? VisitRefValueOperator(BoundRefValueOperator node) => this.DefaultVisit(node);
9838public virtual BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node) => this.DefaultVisit(node);
9839public virtual BoundNode? VisitRangeExpression(BoundRangeExpression node) => this.DefaultVisit(node);
9840public virtual BoundNode? VisitBinaryOperator(BoundBinaryOperator node) => this.DefaultVisit(node);
9841public virtual BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node) => this.DefaultVisit(node);
9842public virtual BoundNode? VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node) => this.DefaultVisit(node);
9843public virtual BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node) => this.DefaultVisit(node);
9844public virtual BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node) => this.DefaultVisit(node);
9845public virtual BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node) => this.DefaultVisit(node);
9846public virtual BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node) => this.DefaultVisit(node);
9847public virtual BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node) => this.DefaultVisit(node);
9848public virtual BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node) => this.DefaultVisit(node);
9849public virtual BoundNode? VisitConditionalOperator(BoundConditionalOperator node) => this.DefaultVisit(node);
9850public virtual BoundNode? VisitArrayAccess(BoundArrayAccess node) => this.DefaultVisit(node);
9851public virtual BoundNode? VisitRefAccess(BoundRefAccess node) => this.DefaultVisit(node);
9852public virtual BoundNode? VisitArrayLength(BoundArrayLength node) => this.DefaultVisit(node);
9853public virtual BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node) => this.DefaultVisit(node);
9854public virtual BoundNode? VisitAwaitExpression(BoundAwaitExpression node) => this.DefaultVisit(node);
9855public virtual BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node) => this.DefaultVisit(node);
9856public virtual BoundNode? VisitBlockInstrumentation(BoundBlockInstrumentation node) => this.DefaultVisit(node);
9857public virtual BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node) => this.DefaultVisit(node);
9858public virtual BoundNode? VisitLocalId(BoundLocalId node) => this.DefaultVisit(node);
9859public virtual BoundNode? VisitParameterId(BoundParameterId node) => this.DefaultVisit(node);
9860public virtual BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node) => this.DefaultVisit(node);
9861public virtual BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node) => this.DefaultVisit(node);
9862public virtual BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node) => this.DefaultVisit(node);
9863public virtual BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node) => this.DefaultVisit(node);
9864public virtual BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node) => this.DefaultVisit(node);
9865public virtual BoundNode? VisitModuleVersionId(BoundModuleVersionId node) => this.DefaultVisit(node);
9866public virtual BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node) => this.DefaultVisit(node);
9867public virtual BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node) => this.DefaultVisit(node);
9868public virtual BoundNode? VisitMethodInfo(BoundMethodInfo node) => this.DefaultVisit(node);
9869public virtual BoundNode? VisitFieldInfo(BoundFieldInfo node) => this.DefaultVisit(node);
9870public virtual BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node) => this.DefaultVisit(node);
9871public virtual BoundNode? VisitDefaultExpression(BoundDefaultExpression node) => this.DefaultVisit(node);
9872public virtual BoundNode? VisitIsOperator(BoundIsOperator node) => this.DefaultVisit(node);
9873public virtual BoundNode? VisitAsOperator(BoundAsOperator node) => this.DefaultVisit(node);
9874public virtual BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node) => this.DefaultVisit(node);
9875public virtual BoundNode? VisitConversion(BoundConversion node) => this.DefaultVisit(node);
9876public virtual BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node) => this.DefaultVisit(node);
9877public virtual BoundNode? VisitArgList(BoundArgList node) => this.DefaultVisit(node);
9878public virtual BoundNode? VisitArgListOperator(BoundArgListOperator node) => this.DefaultVisit(node);
9879public virtual BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node) => this.DefaultVisit(node);
9880public virtual BoundNode? VisitSequencePoint(BoundSequencePoint node) => this.DefaultVisit(node);
9881public virtual BoundNode? VisitSequencePointWithSpan(BoundSequencePointWithSpan node) => this.DefaultVisit(node);
9882public virtual BoundNode? VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node) => this.DefaultVisit(node);
9883public virtual BoundNode? VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node) => this.DefaultVisit(node);
9884public virtual BoundNode? VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node) => this.DefaultVisit(node);
9885public virtual BoundNode? VisitBlock(BoundBlock node) => this.DefaultVisit(node);
9886public virtual BoundNode? VisitScope(BoundScope node) => this.DefaultVisit(node);
9887public virtual BoundNode? VisitStateMachineScope(BoundStateMachineScope node) => this.DefaultVisit(node);
9888public virtual BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node) => this.DefaultVisit(node);
9889public virtual BoundNode? VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node) => this.DefaultVisit(node);
9890public virtual BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node) => this.DefaultVisit(node);
9891public virtual BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node) => this.DefaultVisit(node);
9892public virtual BoundNode? VisitNoOpStatement(BoundNoOpStatement node) => this.DefaultVisit(node);
9893public virtual BoundNode? VisitReturnStatement(BoundReturnStatement node) => this.DefaultVisit(node);
9894public virtual BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node) => this.DefaultVisit(node);
9895public virtual BoundNode? VisitYieldBreakStatement(BoundYieldBreakStatement node) => this.DefaultVisit(node);
9896public virtual BoundNode? VisitThrowStatement(BoundThrowStatement node) => this.DefaultVisit(node);
9897public virtual BoundNode? VisitExpressionStatement(BoundExpressionStatement node) => this.DefaultVisit(node);
9898public virtual BoundNode? VisitBreakStatement(BoundBreakStatement node) => this.DefaultVisit(node);
9899public virtual BoundNode? VisitContinueStatement(BoundContinueStatement node) => this.DefaultVisit(node);
9900public virtual BoundNode? VisitSwitchStatement(BoundSwitchStatement node) => this.DefaultVisit(node);
9901public virtual BoundNode? VisitSwitchDispatch(BoundSwitchDispatch node) => this.DefaultVisit(node);
9902public virtual BoundNode? VisitIfStatement(BoundIfStatement node) => this.DefaultVisit(node);
9903public virtual BoundNode? VisitDoStatement(BoundDoStatement node) => this.DefaultVisit(node);
9904public virtual BoundNode? VisitWhileStatement(BoundWhileStatement node) => this.DefaultVisit(node);
9905public virtual BoundNode? VisitForStatement(BoundForStatement node) => this.DefaultVisit(node);
9906public virtual BoundNode? VisitForEachStatement(BoundForEachStatement node) => this.DefaultVisit(node);
9907public virtual BoundNode? VisitForEachDeconstructStep(BoundForEachDeconstructStep node) => this.DefaultVisit(node);
9908public virtual BoundNode? VisitUsingStatement(BoundUsingStatement node) => this.DefaultVisit(node);
9909public virtual BoundNode? VisitFixedStatement(BoundFixedStatement node) => this.DefaultVisit(node);
9910public virtual BoundNode? VisitLockStatement(BoundLockStatement node) => this.DefaultVisit(node);
9911public virtual BoundNode? VisitTryStatement(BoundTryStatement node) => this.DefaultVisit(node);
9912public virtual BoundNode? VisitCatchBlock(BoundCatchBlock node) => this.DefaultVisit(node);
9913public virtual BoundNode? VisitLiteral(BoundLiteral node) => this.DefaultVisit(node);
9914public virtual BoundNode? VisitUtf8String(BoundUtf8String node) => this.DefaultVisit(node);
9915public virtual BoundNode? VisitThisReference(BoundThisReference node) => this.DefaultVisit(node);
9916public virtual BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node) => this.DefaultVisit(node);
9917public virtual BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node) => this.DefaultVisit(node);
9918public virtual BoundNode? VisitBaseReference(BoundBaseReference node) => this.DefaultVisit(node);
9919public virtual BoundNode? VisitLocal(BoundLocal node) => this.DefaultVisit(node);
9920public virtual BoundNode? VisitPseudoVariable(BoundPseudoVariable node) => this.DefaultVisit(node);
9921public virtual BoundNode? VisitRangeVariable(BoundRangeVariable node) => this.DefaultVisit(node);
9922public virtual BoundNode? VisitParameter(BoundParameter node) => this.DefaultVisit(node);
9923public virtual BoundNode? VisitLabelStatement(BoundLabelStatement node) => this.DefaultVisit(node);
9924public virtual BoundNode? VisitGotoStatement(BoundGotoStatement node) => this.DefaultVisit(node);
9925public virtual BoundNode? VisitLabeledStatement(BoundLabeledStatement node) => this.DefaultVisit(node);
9926public virtual BoundNode? VisitLabel(BoundLabel node) => this.DefaultVisit(node);
9927public virtual BoundNode? VisitStatementList(BoundStatementList node) => this.DefaultVisit(node);
9928public virtual BoundNode? VisitConditionalGoto(BoundConditionalGoto node) => this.DefaultVisit(node);
9929public virtual BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node) => this.DefaultVisit(node);
9930public virtual BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node) => this.DefaultVisit(node);
9931public virtual BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node) => this.DefaultVisit(node);
9932public virtual BoundNode? VisitDecisionDag(BoundDecisionDag node) => this.DefaultVisit(node);
9933public virtual BoundNode? VisitEvaluationDecisionDagNode(BoundEvaluationDecisionDagNode node) => this.DefaultVisit(node);
9934public virtual BoundNode? VisitTestDecisionDagNode(BoundTestDecisionDagNode node) => this.DefaultVisit(node);
9935public virtual BoundNode? VisitWhenDecisionDagNode(BoundWhenDecisionDagNode node) => this.DefaultVisit(node);
9936public virtual BoundNode? VisitLeafDecisionDagNode(BoundLeafDecisionDagNode node) => this.DefaultVisit(node);
9937public virtual BoundNode? VisitDagTemp(BoundDagTemp node) => this.DefaultVisit(node);
9938public virtual BoundNode? VisitDagTypeTest(BoundDagTypeTest node) => this.DefaultVisit(node);
9939public virtual BoundNode? VisitDagNonNullTest(BoundDagNonNullTest node) => this.DefaultVisit(node);
9940public virtual BoundNode? VisitDagExplicitNullTest(BoundDagExplicitNullTest node) => this.DefaultVisit(node);
9941public virtual BoundNode? VisitDagValueTest(BoundDagValueTest node) => this.DefaultVisit(node);
9942public virtual BoundNode? VisitDagRelationalTest(BoundDagRelationalTest node) => this.DefaultVisit(node);
9943public virtual BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node) => this.DefaultVisit(node);
9944public virtual BoundNode? VisitDagTypeEvaluation(BoundDagTypeEvaluation node) => this.DefaultVisit(node);
9945public virtual BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node) => this.DefaultVisit(node);
9946public virtual BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node) => this.DefaultVisit(node);
9947public virtual BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node) => this.DefaultVisit(node);
9948public virtual BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node) => this.DefaultVisit(node);
9949public virtual BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node) => this.DefaultVisit(node);
9950public virtual BoundNode? VisitDagAssignmentEvaluation(BoundDagAssignmentEvaluation node) => this.DefaultVisit(node);
9951public virtual BoundNode? VisitDagPassThroughEvaluation(BoundDagPassThroughEvaluation node) => this.DefaultVisit(node);
9952public virtual BoundNode? VisitSwitchSection(BoundSwitchSection node) => this.DefaultVisit(node);
9953public virtual BoundNode? VisitSwitchLabel(BoundSwitchLabel node) => this.DefaultVisit(node);
9954public virtual BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node) => this.DefaultVisit(node);
9955public virtual BoundNode? VisitSequence(BoundSequence node) => this.DefaultVisit(node);
9956public virtual BoundNode? VisitSpillSequence(BoundSpillSequence node) => this.DefaultVisit(node);
9957public virtual BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node) => this.DefaultVisit(node);
9958public virtual BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node) => this.DefaultVisit(node);
9959public virtual BoundNode? VisitConditionalAccess(BoundConditionalAccess node) => this.DefaultVisit(node);
9960public virtual BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node) => this.DefaultVisit(node);
9961public virtual BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node) => this.DefaultVisit(node);
9962public virtual BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node) => this.DefaultVisit(node);
9963public virtual BoundNode? VisitMethodGroup(BoundMethodGroup node) => this.DefaultVisit(node);
9964public virtual BoundNode? VisitPropertyGroup(BoundPropertyGroup node) => this.DefaultVisit(node);
9965public virtual BoundNode? VisitCall(BoundCall node) => this.DefaultVisit(node);
9966public virtual BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node) => this.DefaultVisit(node);
9967public virtual BoundNode? VisitAttribute(BoundAttribute node) => this.DefaultVisit(node);
9968public virtual BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node) => this.DefaultVisit(node);
9969public virtual BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node) => this.DefaultVisit(node);
9970public virtual BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node) => this.DefaultVisit(node);
9971public virtual BoundNode? VisitUnconvertedWithElement(BoundUnconvertedWithElement node) => this.DefaultVisit(node);
9972public virtual BoundNode? VisitCollectionExpression(BoundCollectionExpression node) => this.DefaultVisit(node);
9973public virtual BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node) => this.DefaultVisit(node);
9974public virtual BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node) => this.DefaultVisit(node);
9975public virtual BoundNode? VisitTupleLiteral(BoundTupleLiteral node) => this.DefaultVisit(node);
9976public virtual BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node) => this.DefaultVisit(node);
9977public virtual BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node) => this.DefaultVisit(node);
9978public virtual BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node) => this.DefaultVisit(node);
9979public virtual BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node) => this.DefaultVisit(node);
9980public virtual BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node) => this.DefaultVisit(node);
9981public virtual BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node) => this.DefaultVisit(node);
9982public virtual BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node) => this.DefaultVisit(node);
9983public virtual BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node) => this.DefaultVisit(node);
9984public virtual BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node) => this.DefaultVisit(node);
9985public virtual BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node) => this.DefaultVisit(node);
9986public virtual BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node) => this.DefaultVisit(node);
9987public virtual BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node) => this.DefaultVisit(node);
9988public virtual BoundNode? VisitNewT(BoundNewT node) => this.DefaultVisit(node);
9989public virtual BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node) => this.DefaultVisit(node);
9990public virtual BoundNode? VisitArrayCreation(BoundArrayCreation node) => this.DefaultVisit(node);
9991public virtual BoundNode? VisitArrayInitialization(BoundArrayInitialization node) => this.DefaultVisit(node);
9992public virtual BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node) => this.DefaultVisit(node);
9993public virtual BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node) => this.DefaultVisit(node);
9994public virtual BoundNode? VisitFieldAccess(BoundFieldAccess node) => this.DefaultVisit(node);
9995public virtual BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node) => this.DefaultVisit(node);
9996public virtual BoundNode? VisitPropertyAccess(BoundPropertyAccess node) => this.DefaultVisit(node);
9997public virtual BoundNode? VisitEventAccess(BoundEventAccess node) => this.DefaultVisit(node);
9998public virtual BoundNode? VisitIndexerAccess(BoundIndexerAccess node) => this.DefaultVisit(node);
9999public virtual BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node) => this.DefaultVisit(node);
10000public virtual BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node) => this.DefaultVisit(node);
10001public virtual BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node) => this.DefaultVisit(node);
10002public virtual BoundNode? VisitLambda(BoundLambda node) => this.DefaultVisit(node);
10003public virtual BoundNode? VisitUnboundLambda(UnboundLambda node) => this.DefaultVisit(node);
10004public virtual BoundNode? VisitQueryClause(BoundQueryClause node) => this.DefaultVisit(node);
10005public virtual BoundNode? VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node) => this.DefaultVisit(node);
10006public virtual BoundNode? VisitNameOfOperator(BoundNameOfOperator node) => this.DefaultVisit(node);
10007public virtual BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node) => this.DefaultVisit(node);
10008public virtual BoundNode? VisitInterpolatedString(BoundInterpolatedString node) => this.DefaultVisit(node);
10009public virtual BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node) => this.DefaultVisit(node);
10010public virtual BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node) => this.DefaultVisit(node);
10011public virtual BoundNode? VisitStringInsert(BoundStringInsert node) => this.DefaultVisit(node);
10012public virtual BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node) => this.DefaultVisit(node);
10013public virtual BoundNode? VisitConstantPattern(BoundConstantPattern node) => this.DefaultVisit(node);
10014public virtual BoundNode? VisitPatternWithUnionMatching(BoundPatternWithUnionMatching node) => this.DefaultVisit(node);
10015public virtual BoundNode? VisitDiscardPattern(BoundDiscardPattern node) => this.DefaultVisit(node);
10016public virtual BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node) => this.DefaultVisit(node);
10017public virtual BoundNode? VisitRecursivePattern(BoundRecursivePattern node) => this.DefaultVisit(node);
10018public virtual BoundNode? VisitListPattern(BoundListPattern node) => this.DefaultVisit(node);
10019public virtual BoundNode? VisitSlicePattern(BoundSlicePattern node) => this.DefaultVisit(node);
10020public virtual BoundNode? VisitITuplePattern(BoundITuplePattern node) => this.DefaultVisit(node);
10021public virtual BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node) => this.DefaultVisit(node);
10022public virtual BoundNode? VisitPropertySubpattern(BoundPropertySubpattern node) => this.DefaultVisit(node);
10023public virtual BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node) => this.DefaultVisit(node);
10024public virtual BoundNode? VisitTypePattern(BoundTypePattern node) => this.DefaultVisit(node);
10025public virtual BoundNode? VisitBinaryPattern(BoundBinaryPattern node) => this.DefaultVisit(node);
10026public virtual BoundNode? VisitNegatedPattern(BoundNegatedPattern node) => this.DefaultVisit(node);
10027public virtual BoundNode? VisitRelationalPattern(BoundRelationalPattern node) => this.DefaultVisit(node);
10028public virtual BoundNode? VisitDiscardExpression(BoundDiscardExpression node) => this.DefaultVisit(node);
10029public virtual BoundNode? VisitThrowExpression(BoundThrowExpression node) => this.DefaultVisit(node);
10030public virtual BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node) => this.DefaultVisit(node);
10031public virtual BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node) => this.DefaultVisit(node);
10032public virtual BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node) => this.DefaultVisit(node);
10033public virtual BoundNode? VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node) => this.DefaultVisit(node);
10034public virtual BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node) => this.DefaultVisit(node);
10035public virtual BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node) => this.DefaultVisit(node);
10036public virtual BoundNode? VisitValueForNullableAnalysis(BoundValueForNullableAnalysis node) => this.DefaultVisit(node);
10037public virtual BoundNode? VisitWithExpression(BoundWithExpression node) => this.DefaultVisit(node);
10042public override BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node)
10047public override BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node)
10052public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node)
10057public override BoundNode? VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node)
10062public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node) => null;
10063public override BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node)
10068public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node) => null;
10069public override BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node) => null;
10070public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node) => null;
10071public override BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node) => null;
10072public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node) => null;
10073public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node) => null;
10074public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node)
10079public override BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node) => null;
10080public override BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node) => null;
10081public override BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node) => null;
10082public override BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node) => null;
10083public override BoundNode? VisitCollectionBuilderElementsPlaceholder(BoundCollectionBuilderElementsPlaceholder node) => null;
10084public override BoundNode? VisitDup(BoundDup node) => null;
10085public override BoundNode? VisitPassByCopy(BoundPassByCopy node)
10090public override BoundNode? VisitBadExpression(BoundBadExpression node)
10095public override BoundNode? VisitBadStatement(BoundBadStatement node)
10100public override BoundNode? VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node)
10105public override BoundNode? VisitTypeExpression(BoundTypeExpression node)
10111public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node) => null;
10112public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node) => null;
10113public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node)
10118public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node)
10123public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node)
10128public override BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node)
10133public override BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node) => null;
10134public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
10139public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node)
10145public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
10151public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node)
10156public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node)
10161public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node)
10166public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
10171public override BoundNode? VisitRangeExpression(BoundRangeExpression node)
10177public override BoundNode? VisitBinaryOperator(BoundBinaryOperator node)
10183public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
10189public override BoundNode? VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node)
10195public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
10201public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
10207public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
10213public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
10219public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
10225public override BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node)
10232public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node)
10239public override BoundNode? VisitArrayAccess(BoundArrayAccess node)
10245public override BoundNode? VisitRefAccess(BoundRefAccess node)
10250public override BoundNode? VisitArrayLength(BoundArrayLength node)
10255public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node)
10263public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
10269public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node)
10274public override BoundNode? VisitBlockInstrumentation(BoundBlockInstrumentation node)
10280public override BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node) => null;
10281public override BoundNode? VisitLocalId(BoundLocalId node) => null;
10282public override BoundNode? VisitParameterId(BoundParameterId node) => null;
10283public override BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node) => null;
10284public override BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node) => null;
10285public override BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node) => null;
10286public override BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node) => null;
10287public override BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node) => null;
10288public override BoundNode? VisitModuleVersionId(BoundModuleVersionId node) => null;
10289public override BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node) => null;
10290public override BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node) => null;
10291public override BoundNode? VisitMethodInfo(BoundMethodInfo node) => null;
10292public override BoundNode? VisitFieldInfo(BoundFieldInfo node) => null;
10293public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node) => null;
10294public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node) => null;
10295public override BoundNode? VisitIsOperator(BoundIsOperator node)
10301public override BoundNode? VisitAsOperator(BoundAsOperator node)
10307public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node)
10312public override BoundNode? VisitConversion(BoundConversion node)
10317public override BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node)
10322public override BoundNode? VisitArgList(BoundArgList node) => null;
10323public override BoundNode? VisitArgListOperator(BoundArgListOperator node)
10328public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
10333public override BoundNode? VisitSequencePoint(BoundSequencePoint node)
10338public override BoundNode? VisitSequencePointWithSpan(BoundSequencePointWithSpan node)
10343public override BoundNode? VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node) => null;
10344public override BoundNode? VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node) => null;
10345public override BoundNode? VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node) => null;
10346public override BoundNode? VisitBlock(BoundBlock node)
10352public override BoundNode? VisitScope(BoundScope node)
10357public override BoundNode? VisitStateMachineScope(BoundStateMachineScope node)
10362public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node)
10369public override BoundNode? VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node)
10374public override BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node)
10380public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
10386public override BoundNode? VisitNoOpStatement(BoundNoOpStatement node) => null;
10387public override BoundNode? VisitReturnStatement(BoundReturnStatement node)
10392public override BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node)
10397public override BoundNode? VisitYieldBreakStatement(BoundYieldBreakStatement node) => null;
10398public override BoundNode? VisitThrowStatement(BoundThrowStatement node)
10403public override BoundNode? VisitExpressionStatement(BoundExpressionStatement node)
10408public override BoundNode? VisitBreakStatement(BoundBreakStatement node)
10413public override BoundNode? VisitContinueStatement(BoundContinueStatement node)
10418public override BoundNode? VisitSwitchStatement(BoundSwitchStatement node)
10425public override BoundNode? VisitSwitchDispatch(BoundSwitchDispatch node)
10430public override BoundNode? VisitIfStatement(BoundIfStatement node)
10437public override BoundNode? VisitDoStatement(BoundDoStatement node)
10443public override BoundNode? VisitWhileStatement(BoundWhileStatement node)
10449public override BoundNode? VisitForStatement(BoundForStatement node)
10457public override BoundNode? VisitForEachStatement(BoundForEachStatement node)
10466public override BoundNode? VisitForEachDeconstructStep(BoundForEachDeconstructStep node)
10472public override BoundNode? VisitUsingStatement(BoundUsingStatement node)
10480public override BoundNode? VisitFixedStatement(BoundFixedStatement node)
10486public override BoundNode? VisitLockStatement(BoundLockStatement node)
10492public override BoundNode? VisitTryStatement(BoundTryStatement node)
10499public override BoundNode? VisitCatchBlock(BoundCatchBlock node)
10507public override BoundNode? VisitLiteral(BoundLiteral node) => null;
10508public override BoundNode? VisitUtf8String(BoundUtf8String node) => null;
10509public override BoundNode? VisitThisReference(BoundThisReference node) => null;
10510public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node) => null;
10511public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node) => null;
10512public override BoundNode? VisitBaseReference(BoundBaseReference node) => null;
10513public override BoundNode? VisitLocal(BoundLocal node) => null;
10514public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node) => null;
10515public override BoundNode? VisitRangeVariable(BoundRangeVariable node)
10520public override BoundNode? VisitParameter(BoundParameter node) => null;
10521public override BoundNode? VisitLabelStatement(BoundLabelStatement node) => null;
10522public override BoundNode? VisitGotoStatement(BoundGotoStatement node)
10528public override BoundNode? VisitLabeledStatement(BoundLabeledStatement node)
10533public override BoundNode? VisitLabel(BoundLabel node) => null;
10534public override BoundNode? VisitStatementList(BoundStatementList node)
10539public override BoundNode? VisitConditionalGoto(BoundConditionalGoto node)
10544public override BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node)
10551public override BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node)
10557public override BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node)
10563public override BoundNode? VisitDecisionDag(BoundDecisionDag node)
10568public override BoundNode? VisitEvaluationDecisionDagNode(BoundEvaluationDecisionDagNode node)
10574public override BoundNode? VisitTestDecisionDagNode(BoundTestDecisionDagNode node)
10581public override BoundNode? VisitWhenDecisionDagNode(BoundWhenDecisionDagNode node)
10588public override BoundNode? VisitLeafDecisionDagNode(BoundLeafDecisionDagNode node) => null;
10589public override BoundNode? VisitDagTemp(BoundDagTemp node)
10594public override BoundNode? VisitDagTypeTest(BoundDagTypeTest node)
10599public override BoundNode? VisitDagNonNullTest(BoundDagNonNullTest node)
10604public override BoundNode? VisitDagExplicitNullTest(BoundDagExplicitNullTest node)
10609public override BoundNode? VisitDagValueTest(BoundDagValueTest node)
10614public override BoundNode? VisitDagRelationalTest(BoundDagRelationalTest node)
10619public override BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node)
10624public override BoundNode? VisitDagTypeEvaluation(BoundDagTypeEvaluation node)
10629public override BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node)
10634public override BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node)
10639public override BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node)
10644public override BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node)
10653public override BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node)
10662public override BoundNode? VisitDagAssignmentEvaluation(BoundDagAssignmentEvaluation node)
10668public override BoundNode? VisitDagPassThroughEvaluation(BoundDagPassThroughEvaluation node)
10673public override BoundNode? VisitSwitchSection(BoundSwitchSection node)
10679public override BoundNode? VisitSwitchLabel(BoundSwitchLabel node)
10685public override BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node)
10690public override BoundNode? VisitSequence(BoundSequence node)
10696public override BoundNode? VisitSpillSequence(BoundSpillSequence node)
10702public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
10707public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node)
10713public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
10719public override BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node)
10726public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node) => null;
10727public override BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node)
10733public override BoundNode? VisitMethodGroup(BoundMethodGroup node)
10738public override BoundNode? VisitPropertyGroup(BoundPropertyGroup node)
10743public override BoundNode? VisitCall(BoundCall node)
10749public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
10755public override BoundNode? VisitAttribute(BoundAttribute node)
10761public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
10766public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node)
10772public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
10778public override BoundNode? VisitUnconvertedWithElement(BoundUnconvertedWithElement node)
10783public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node)
10789public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node) => null;
10790public override BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node)
10795public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node)
10800public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
10805public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
10811public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
10816public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
10822public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node)
10827public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node) => null;
10828public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
10834public override BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node)
10840public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
10846public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node) => null;
10847public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
10853public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node) => null;
10854public override BoundNode? VisitNewT(BoundNewT node)
10859public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
10864public override BoundNode? VisitArrayCreation(BoundArrayCreation node)
10870public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node)
10875public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
10881public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
10887public override BoundNode? VisitFieldAccess(BoundFieldAccess node)
10892public override BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node) => null;
10893public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
10898public override BoundNode? VisitEventAccess(BoundEventAccess node)
10903public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
10909public override BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node)
10915public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node)
10921public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
10927public override BoundNode? VisitLambda(BoundLambda node)
10932public override BoundNode? VisitUnboundLambda(UnboundLambda node) => null;
10933public override BoundNode? VisitQueryClause(BoundQueryClause node)
10938public override BoundNode? VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node)
10943public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node)
10948public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
10953public override BoundNode? VisitInterpolatedString(BoundInterpolatedString node)
10958public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node) => null;
10959public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node) => null;
10960public override BoundNode? VisitStringInsert(BoundStringInsert node)
10967public override BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node)
10973public override BoundNode? VisitConstantPattern(BoundConstantPattern node)
10978public override BoundNode? VisitPatternWithUnionMatching(BoundPatternWithUnionMatching node)
10985public override BoundNode? VisitDiscardPattern(BoundDiscardPattern node) => null;
10986public override BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node)
10992public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node)
11000public override BoundNode? VisitListPattern(BoundListPattern node)
11006public override BoundNode? VisitSlicePattern(BoundSlicePattern node)
11011public override BoundNode? VisitITuplePattern(BoundITuplePattern node)
11016public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node)
11021public override BoundNode? VisitPropertySubpattern(BoundPropertySubpattern node)
11027public override BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node)
11032public override BoundNode? VisitTypePattern(BoundTypePattern node)
11037public override BoundNode? VisitBinaryPattern(BoundBinaryPattern node)
11043public override BoundNode? VisitNegatedPattern(BoundNegatedPattern node)
11048public override BoundNode? VisitRelationalPattern(BoundRelationalPattern node)
11053public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node) => null;
11054public override BoundNode? VisitThrowExpression(BoundThrowExpression node)
11059public override BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node)
11064public override BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node)
11069public override BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node) => null;
11070public override BoundNode? VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node)
11076public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node)
11083public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node)
11088public override BoundNode? VisitValueForNullableAnalysis(BoundValueForNullableAnalysis node)
11093public override BoundNode? VisitWithExpression(BoundWithExpression node)
11103public override BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node)
11110public override BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node)
11117public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node)
11124public override BoundNode? VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node)
11129public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node)
11134public override BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node)
11140public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node)
11146public override BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node)
11151public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
11156public override BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node)
11161public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node)
11166public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node)
11171public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node)
11177public override BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node)
11182public override BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node)
11187public override BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node)
11192public override BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node)
11197public override BoundNode? VisitCollectionBuilderElementsPlaceholder(BoundCollectionBuilderElementsPlaceholder node)
11202public override BoundNode? VisitDup(BoundDup node)
11207public override BoundNode? VisitPassByCopy(BoundPassByCopy node)
11213public override BoundNode? VisitBadExpression(BoundBadExpression node)
11220public override BoundNode? VisitBadStatement(BoundBadStatement node)
11222ImmutableArray<BoundNode> childBoundNodes = this.VisitList(node.ChildBoundNodes);
11225public override BoundNode? VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node)
11230public override BoundNode? VisitTypeExpression(BoundTypeExpression node)
11238public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node)
11244public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node)
11251public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node)
11260public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node)
11273public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node)
11279public override BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node)
11285public override BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node)
11292public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
11298public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node)
11305public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
11312public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node)
11319public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node)
11325public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node)
11331public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
11338public override BoundNode? VisitRangeExpression(BoundRangeExpression node)
11346public override BoundNode? VisitBinaryOperator(BoundBinaryOperator node)
11353public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
11360public override BoundNode? VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node)
11374public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
11386public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
11393public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
11400public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
11409public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
11416public override BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node)
11424public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node)
11433public override BoundNode? VisitArrayAccess(BoundArrayAccess node)
11440public override BoundNode? VisitRefAccess(BoundRefAccess node)
11446public override BoundNode? VisitArrayLength(BoundArrayLength node)
11452public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node)
11462public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
11469public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node)
11476public override BoundNode? VisitBlockInstrumentation(BoundBlockInstrumentation node)
11483public override BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node)
11489public override BoundNode? VisitLocalId(BoundLocalId node)
11496public override BoundNode? VisitParameterId(BoundParameterId node)
11503public override BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node)
11508public override BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node)
11513public override BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node)
11518public override BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node)
11523public override BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node)
11528public override BoundNode? VisitModuleVersionId(BoundModuleVersionId node)
11533public override BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node)
11538public override BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node)
11543public override BoundNode? VisitMethodInfo(BoundMethodInfo node)
11550public override BoundNode? VisitFieldInfo(BoundFieldInfo node)
11557public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node)
11562public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node)
11568public override BoundNode? VisitIsOperator(BoundIsOperator node)
11575public override BoundNode? VisitAsOperator(BoundAsOperator node)
11584public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node)
11590public override BoundNode? VisitConversion(BoundConversion node)
11596public override BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node)
11603public override BoundNode? VisitArgList(BoundArgList node)
11608public override BoundNode? VisitArgListOperator(BoundArgListOperator node)
11614public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
11624public override BoundNode? VisitSequencePoint(BoundSequencePoint node)
11629public override BoundNode? VisitSequencePointWithSpan(BoundSequencePointWithSpan node)
11634public override BoundNode? VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node) => node;
11635public override BoundNode? VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node) => node;
11636public override BoundNode? VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node) => node;
11637public override BoundNode? VisitBlock(BoundBlock node)
11645public override BoundNode? VisitScope(BoundScope node)
11651public override BoundNode? VisitStateMachineScope(BoundStateMachineScope node)
11657public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node)
11665public override BoundNode? VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node)
11670public override BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node)
11676public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
11683public override BoundNode? VisitNoOpStatement(BoundNoOpStatement node) => node;
11684public override BoundNode? VisitReturnStatement(BoundReturnStatement node)
11689public override BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node)
11694public override BoundNode? VisitYieldBreakStatement(BoundYieldBreakStatement node) => node;
11695public override BoundNode? VisitThrowStatement(BoundThrowStatement node)
11700public override BoundNode? VisitExpressionStatement(BoundExpressionStatement node)
11705public override BoundNode? VisitBreakStatement(BoundBreakStatement node)
11711public override BoundNode? VisitContinueStatement(BoundContinueStatement node)
11717public override BoundNode? VisitSwitchStatement(BoundSwitchStatement node)
11728public override BoundNode? VisitSwitchDispatch(BoundSwitchDispatch node)
11734public override BoundNode? VisitIfStatement(BoundIfStatement node)
11741public override BoundNode? VisitDoStatement(BoundDoStatement node)
11750public override BoundNode? VisitWhileStatement(BoundWhileStatement node)
11759public override BoundNode? VisitForStatement(BoundForStatement node)
11771public override BoundNode? VisitForEachStatement(BoundForEachStatement node)
11785public override BoundNode? VisitForEachDeconstructStep(BoundForEachDeconstructStep node)
11791public override BoundNode? VisitUsingStatement(BoundUsingStatement node)
11800public override BoundNode? VisitFixedStatement(BoundFixedStatement node)
11807public override BoundNode? VisitLockStatement(BoundLockStatement node)
11813public override BoundNode? VisitTryStatement(BoundTryStatement node)
11821public override BoundNode? VisitCatchBlock(BoundCatchBlock node)
11831public override BoundNode? VisitLiteral(BoundLiteral node)
11836public override BoundNode? VisitUtf8String(BoundUtf8String node)
11841public override BoundNode? VisitThisReference(BoundThisReference node)
11846public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node)
11851public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node)
11856public override BoundNode? VisitBaseReference(BoundBaseReference node)
11861public override BoundNode? VisitLocal(BoundLocal node)
11867public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node)
11873public override BoundNode? VisitRangeVariable(BoundRangeVariable node)
11880public override BoundNode? VisitParameter(BoundParameter node)
11886public override BoundNode? VisitLabelStatement(BoundLabelStatement node)
11891public override BoundNode? VisitGotoStatement(BoundGotoStatement node)
11898public override BoundNode? VisitLabeledStatement(BoundLabeledStatement node)
11904public override BoundNode? VisitLabel(BoundLabel node)
11910public override BoundNode? VisitStatementList(BoundStatementList node)
11915public override BoundNode? VisitConditionalGoto(BoundConditionalGoto node)
11921public override BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node)
11930public override BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node)
11939public override BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node)
11949public override BoundNode? VisitDecisionDag(BoundDecisionDag node)
11954public override BoundNode? VisitEvaluationDecisionDagNode(BoundEvaluationDecisionDagNode node)
11960public override BoundNode? VisitTestDecisionDagNode(BoundTestDecisionDagNode node)
11967public override BoundNode? VisitWhenDecisionDagNode(BoundWhenDecisionDagNode node)
11974public override BoundNode? VisitLeafDecisionDagNode(BoundLeafDecisionDagNode node)
11979public override BoundNode? VisitDagTemp(BoundDagTemp node)
11985public override BoundNode? VisitDagTypeTest(BoundDagTypeTest node)
11991public override BoundNode? VisitDagNonNullTest(BoundDagNonNullTest node)
11996public override BoundNode? VisitDagExplicitNullTest(BoundDagExplicitNullTest node)
12001public override BoundNode? VisitDagValueTest(BoundDagValueTest node)
12006public override BoundNode? VisitDagRelationalTest(BoundDagRelationalTest node)
12011public override BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node)
12017public override BoundNode? VisitDagTypeEvaluation(BoundDagTypeEvaluation node)
12023public override BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node)
12029public override BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node)
12035public override BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node)
12041public override BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node)
12051public override BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node)
12061public override BoundNode? VisitDagAssignmentEvaluation(BoundDagAssignmentEvaluation node)
12067public override BoundNode? VisitDagPassThroughEvaluation(BoundDagPassThroughEvaluation node)
12072public override BoundNode? VisitSwitchSection(BoundSwitchSection node)
12079public override BoundNode? VisitSwitchLabel(BoundSwitchLabel node)
12086public override BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node)
12092public override BoundNode? VisitSequence(BoundSequence node)
12100public override BoundNode? VisitSpillSequence(BoundSpillSequence node)
12108public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
12114public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node)
12122public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
12129public override BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node)
12138public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node)
12143public override BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node)
12150public override BoundNode? VisitMethodGroup(BoundMethodGroup node)
12159public override BoundNode? VisitPropertyGroup(BoundPropertyGroup node)
12166public override BoundNode? VisitCall(BoundCall node)
12175public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
12183public override BoundNode? VisitAttribute(BoundAttribute node)
12191public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
12197public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node)
12206public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
12209ImmutableArray<BoundNode> elements = this.VisitList(node.Elements);
12213public override BoundNode? VisitUnconvertedWithElement(BoundUnconvertedWithElement node)
12218public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node)
12225ImmutableArray<BoundNode> elements = this.VisitList(node.Elements);
12229public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node)
12234public override BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node)
12244public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node)
12250public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
12257public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
12265public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
12271public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
12278public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node)
12286public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
12292public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
12299public override BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node)
12307public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
12315public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node)
12320public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
12328public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node)
12334public override BoundNode? VisitNewT(BoundNewT node)
12340public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
12347public override BoundNode? VisitArrayCreation(BoundArrayCreation node)
12354public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node)
12360public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
12368public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
12376public override BoundNode? VisitFieldAccess(BoundFieldAccess node)
12383public override BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node)
12389public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
12396public override BoundNode? VisitEventAccess(BoundEventAccess node)
12403public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
12412public override BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node)
12423public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node)
12430public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
12438public override BoundNode? VisitLambda(BoundLambda node)
12446public override BoundNode? VisitUnboundLambda(UnboundLambda node)
12452public override BoundNode? VisitQueryClause(BoundQueryClause node)
12462public override BoundNode? VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node)
12467public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node)
12473public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
12479public override BoundNode? VisitInterpolatedString(BoundInterpolatedString node)
12485public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node)
12490public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node)
12495public override BoundNode? VisitStringInsert(BoundStringInsert node)
12503public override BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node)
12513public override BoundNode? VisitConstantPattern(BoundConstantPattern node)
12520public override BoundNode? VisitPatternWithUnionMatching(BoundPatternWithUnionMatching node)
12530public override BoundNode? VisitDiscardPattern(BoundDiscardPattern node)
12536public override BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node)
12545public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node)
12557public override BoundNode? VisitListPattern(BoundListPattern node)
12570public override BoundNode? VisitSlicePattern(BoundSlicePattern node)
12580public override BoundNode? VisitITuplePattern(BoundITuplePattern node)
12589public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node)
12595public override BoundNode? VisitPropertySubpattern(BoundPropertySubpattern node)
12601public override BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node)
12608public override BoundNode? VisitTypePattern(BoundTypePattern node)
12615public override BoundNode? VisitBinaryPattern(BoundBinaryPattern node)
12623public override BoundNode? VisitNegatedPattern(BoundNegatedPattern node)
12630public override BoundNode? VisitRelationalPattern(BoundRelationalPattern node)
12637public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node)
12642public override BoundNode? VisitThrowExpression(BoundThrowExpression node)
12648public override BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node)
12655public override BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node)
12662public override BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node)
12668public override BoundNode? VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node)
12674public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node)
12682public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node)
12688public override BoundNode? VisitValueForNullableAnalysis(BoundValueForNullableAnalysis node)
12694public override BoundNode? VisitWithExpression(BoundWithExpression node)
12717public override BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node)
12725public override BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node)
12733public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node)
12741public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node)
12753public override BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node)
12770public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node)
12787public override BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node)
12799public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
12811public override BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node)
12823public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node)
12835public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node)
12847public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node)
12864public override BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node)
12876public override BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node)
12888public override BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node)
12900public override BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node)
12912public override BoundNode? VisitCollectionBuilderElementsPlaceholder(BoundCollectionBuilderElementsPlaceholder node)
12924public override BoundNode? VisitDup(BoundDup node)
12936public override BoundNode? VisitPassByCopy(BoundPassByCopy node)
12953public override BoundNode? VisitBadExpression(BoundBadExpression node)
12971public override BoundNode? VisitTypeExpression(BoundTypeExpression node)
12989public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node)
13006public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node)
13018public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node)
13038public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node)
13062public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node)
13079public override BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node)
13096public override BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node)
13114public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
13131public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node)
13149public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
13167public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node)
13185public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node)
13202public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node)
13219public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
13237public override BoundNode? VisitRangeExpression(BoundRangeExpression node)
13256public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
13274public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
13292public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
13310public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
13330public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
13348public override BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node)
13367public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node)
13387public override BoundNode? VisitArrayAccess(BoundArrayAccess node)
13405public override BoundNode? VisitRefAccess(BoundRefAccess node)
13422public override BoundNode? VisitArrayLength(BoundArrayLength node)
13439public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node)
13450public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
13468public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node)
13486public override BoundNode? VisitBlockInstrumentation(BoundBlockInstrumentation node)
13494public override BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node)
13511public override BoundNode? VisitLocalId(BoundLocalId node)
13529public override BoundNode? VisitParameterId(BoundParameterId node)
13547public override BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node)
13559public override BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node)
13571public override BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node)
13583public override BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node)
13595public override BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node)
13607public override BoundNode? VisitModuleVersionId(BoundModuleVersionId node)
13619public override BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node)
13631public override BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node)
13643public override BoundNode? VisitMethodInfo(BoundMethodInfo node)
13661public override BoundNode? VisitFieldInfo(BoundFieldInfo node)
13679public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node)
13691public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node)
13708public override BoundNode? VisitIsOperator(BoundIsOperator node)
13726public override BoundNode? VisitAsOperator(BoundAsOperator node)
13746public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node)
13763public override BoundNode? VisitConversion(BoundConversion node)
13780public override BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node)
13798public override BoundNode? VisitArgList(BoundArgList node)
13810public override BoundNode? VisitArgListOperator(BoundArgListOperator node)
13827public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
13848public override BoundNode? VisitBlock(BoundBlock node)
13857public override BoundNode? VisitScope(BoundScope node)
13864public override BoundNode? VisitStateMachineScope(BoundStateMachineScope node)
13871public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node)
13880public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
13888public override BoundNode? VisitSwitchStatement(BoundSwitchStatement node)
13899public override BoundNode? VisitDoStatement(BoundDoStatement node)
13907public override BoundNode? VisitWhileStatement(BoundWhileStatement node)
13915public override BoundNode? VisitForStatement(BoundForStatement node)
13926public override BoundNode? VisitForEachStatement(BoundForEachStatement node)
13939public override BoundNode? VisitUsingStatement(BoundUsingStatement node)
13949public override BoundNode? VisitFixedStatement(BoundFixedStatement node)
13957public override BoundNode? VisitCatchBlock(BoundCatchBlock node)
13968public override BoundNode? VisitLiteral(BoundLiteral node)
13980public override BoundNode? VisitUtf8String(BoundUtf8String node)
13992public override BoundNode? VisitThisReference(BoundThisReference node)
14004public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node)
14016public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node)
14028public override BoundNode? VisitBaseReference(BoundBaseReference node)
14040public override BoundNode? VisitLocal(BoundLocal node)
14057public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node)
14074public override BoundNode? VisitRangeVariable(BoundRangeVariable node)
14092public override BoundNode? VisitParameter(BoundParameter node)
14109public override BoundNode? VisitLabel(BoundLabel node)
14121public override BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node)
14130public override BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node)
14149public override BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node)
14169public override BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node)
14176public override BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node)
14183public override BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node)
14190public override BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node)
14197public override BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node)
14208public override BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node)
14219public override BoundNode? VisitSwitchSection(BoundSwitchSection node)
14227public override BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node)
14244public override BoundNode? VisitSequence(BoundSequence node)
14263public override BoundNode? VisitSpillSequence(BoundSpillSequence node)
14282public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
14299public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node)
14318public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
14336public override BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node)
14356public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node)
14368public override BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node)
14386public override BoundNode? VisitMethodGroup(BoundMethodGroup node)
14406public override BoundNode? VisitPropertyGroup(BoundPropertyGroup node)
14424public override BoundNode? VisitCall(BoundCall node)
14444public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
14463public override BoundNode? VisitAttribute(BoundAttribute node)
14482public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
14499public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node)
14519public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
14522ImmutableArray<BoundNode> elements = this.VisitList(node.Elements);
14537public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node)
14544ImmutableArray<BoundNode> elements = this.VisitList(node.Elements);
14559public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node)
14571public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node)
14588public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
14606public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
14625public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
14642public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
14660public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node)
14679public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
14696public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
14714public override BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node)
14733public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
14752public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node)
14764public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
14783public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node)
14800public override BoundNode? VisitNewT(BoundNewT node)
14817public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
14835public override BoundNode? VisitArrayCreation(BoundArrayCreation node)
14853public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node)
14870public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
14889public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
14908public override BoundNode? VisitFieldAccess(BoundFieldAccess node)
14926public override BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node)
14943public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
14961public override BoundNode? VisitEventAccess(BoundEventAccess node)
14979public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
14999public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node)
15017public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
15036public override BoundNode? VisitLambda(BoundLambda node)
15055public override BoundNode? VisitUnboundLambda(UnboundLambda node)
15072public override BoundNode? VisitQueryClause(BoundQueryClause node)
15093public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node)
15110public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
15127public override BoundNode? VisitInterpolatedString(BoundInterpolatedString node)
15144public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node)
15156public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node)
15168public override BoundNode? VisitStringInsert(BoundStringInsert node)
15187public override BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node)
15206public override BoundNode? VisitConstantPattern(BoundConstantPattern node)
15214public override BoundNode? VisitPatternWithUnionMatching(BoundPatternWithUnionMatching node)
15225public override BoundNode? VisitDiscardPattern(BoundDiscardPattern node)
15232public override BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node)
15242public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node)
15255public override BoundNode? VisitListPattern(BoundListPattern node)
15269public override BoundNode? VisitSlicePattern(BoundSlicePattern node)
15280public override BoundNode? VisitITuplePattern(BoundITuplePattern node)
15290public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node)
15297public override BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node)
15304public override BoundNode? VisitTypePattern(BoundTypePattern node)
15312public override BoundNode? VisitNegatedPattern(BoundNegatedPattern node)
15320public override BoundNode? VisitRelationalPattern(BoundRelationalPattern node)
15328public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node)
15340public override BoundNode? VisitThrowExpression(BoundThrowExpression node)
15357public override BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node)
15375public override BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node)
15393public override BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node)
15410public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node)
15419public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node)
15436public override BoundNode? VisitValueForNullableAnalysis(BoundValueForNullableAnalysis node)
15453public override BoundNode? VisitWithExpression(BoundWithExpression node)
15478public static TreeDumperNode MakeTree(BoundNode node) => (new BoundTreeDumperNodeProducer()).Visit(node, null);
Lowering\AsyncRewriter\RuntimeAsyncRewriter.cs (17)
45return new BoundBadStatement(node.Syntax, ImmutableArray.Create<BoundNode>(node), hasErrors: true);
114public override BoundNode? Visit(BoundNode? node)
119var result = base.Visit(node);
127var result = Visit(node);
131public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
159var call = Visit(awaitableInfo.RuntimeAsyncAwaitCall);
313public override BoundNode VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
318public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
368private bool TryReplaceWithProxy(Symbol localOrParameter, SyntaxNode syntax, [NotNullWhen(true)] out BoundNode? replacement)
380public override BoundNode VisitLocal(BoundLocal node)
382if (TryReplaceWithProxy(node.LocalSymbol, node.Syntax, out BoundNode? replacement))
391public override BoundNode? VisitParameter(BoundParameter node)
393if (TryReplaceWithProxy(node.ParameterSymbol, node.Syntax, out BoundNode? replacement))
405public override BoundNode? VisitThisReference(BoundThisReference node)
410if (TryReplaceWithProxy(thisParameter, node.Syntax, out BoundNode? replacement))
419public override BoundNode? VisitExpressionStatement(BoundExpressionStatement node)
Lowering\ClosureConversion\ClosureConversion.cs (33)
88private readonly Dictionary<BoundNode, Analysis.ClosureEnvironment> _frames = new Dictionary<BoundNode, Analysis.ClosureEnvironment>();
347static partial void CheckLocalsDefined(BoundNode node);
380var scopeBoundNode = scope.BoundNode;
650private static void InsertAndFreePrologue<T>(ArrayBuilder<BoundStatement> result, ArrayBuilder<T> prologue) where T : BoundNode
660result.Add(new BoundExpressionStatement(node.Syntax, (BoundExpression)(BoundNode)node));
674private BoundNode IntroduceFrame(BoundNode node, Analysis.ClosureEnvironment env, Func<ArrayBuilder<BoundExpression>, ArrayBuilder<LocalSymbol>, BoundNode> F)
740var result = F(prologue, addedLocals);
834protected override BoundNode VisitUnhoistedParameter(BoundParameter node)
845public override BoundNode VisitThisReference(BoundThisReference node)
862public override BoundNode VisitBaseReference(BoundBaseReference node)
869public override BoundNode VisitMethodDefIndex(BoundMethodDefIndex node)
1084public override BoundNode VisitCall(BoundCall node)
1118var visited = base.VisitCall(node);
1165public override BoundNode VisitBlock(BoundBlock node)
1213public override BoundNode VisitScope(BoundScope node)
1227public override BoundNode VisitCatchBlock(BoundCatchBlock node)
1243private BoundNode RewriteCatch(BoundCatchBlock node, ArrayBuilder<BoundExpression> prologue, ArrayBuilder<LocalSymbol> newLocals)
1301public override BoundNode VisitSequence(BoundSequence node)
1317public override BoundNode VisitStatementList(BoundStatementList node)
1342public override BoundNode VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
1375public override BoundNode VisitFunctionPointerLoad(BoundFunctionPointerLoad node)
1402public override BoundNode VisitConversion(BoundConversion conversion)
1433public override BoundNode VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
1438BoundNode lambdaScope;
1530out BoundNode lambdaScope,
1547BoundNode tmpScope = null;
1632private BoundNode RewriteLambdaConversion(BoundLambda node)
1642var result0 = wasInExpressionLambda ? node : ExpressionLambdaRewriter.RewriteLambda(node, CompilationState, TypeMap, RecursionDepth, Diagnostics);
1650BoundNode lambdaScope;
1802public override BoundNode VisitLambda(BoundLambda node)
Operations\CSharpOperationFactory.cs (25)
27public IOperation? Create(BoundNode? boundNode)
344public ImmutableArray<TOperation> CreateFromArray<TBoundNode, TOperation>(ImmutableArray<TBoundNode> boundNodes) where TBoundNode : BoundNode where TOperation : class, IOperation
389foreach (BoundNode? childNode in children)
403internal ImmutableArray<IVariableDeclaratorOperation> CreateVariableDeclarator(BoundNode declaration, SyntaxNode declarationSyntax)
457ImmutableArray<IOperation> children = CreateFromArray<BoundNode, IOperation>(((IBoundInvalidNode)boundCall).InvalidNodeChildren);
487ImmutableArray<IOperation> children = CreateFromArray<BoundNode, IOperation>(((IBoundInvalidNode)boundFunctionPointerInvocation).InvalidNodeChildren);
527internal ImmutableArray<IOperation> CreateIgnoredDimensions(BoundNode declaration)
602internal IOperation? CreateBoundPropertyReferenceInstance(BoundNode boundNode)
640var children = CreateFromArray<BoundNode, IOperation>(((IBoundInvalidNode)boundIndexerAccess).InvalidNodeChildren);
720var children = CreateFromArray<BoundNode, IOperation>(((IBoundInvalidNode)boundObjectCreationExpression).InvalidNodeChildren);
774internal IOperation CreateBoundDynamicInvocationExpressionReceiver(BoundNode receiver)
904var children = CreateFromArray<BoundNode, IOperation>(((IBoundInvalidNode)boundObjectInitializerMember).InvalidNodeChildren);
950var children = CreateFromArray<BoundNode, IOperation>(((IBoundInvalidNode)boundCollectionElementInitializer).InvalidNodeChildren);
1202Conversion conversion = BoundNode.GetConversion(boundAsOperator.OperandConversion, boundAsOperator.OperandPlaceholder);
1325? @this.CreateFromArray<BoundNode, IOperation>(((IBoundInvalidNode)objectCreation).InvalidNodeChildren)
1334? @this.CreateFromArray<BoundNode, IOperation>(((IBoundInvalidNode)boundCall).InvalidNodeChildren)
1352private IOperation CreateBoundCollectionExpressionElement(BoundCollectionExpression expr, BoundNode element)
1368var elementConversion = BoundNode.GetConversion(iteratorItem, element.ElementPlaceholder);
1454Conversion inConversion = BoundNode.GetConversion(boundCompoundAssignmentOperator.LeftConversion, boundCompoundAssignmentOperator.LeftPlaceholder);
1455Conversion outConversion = BoundNode.GetConversion(boundCompoundAssignmentOperator.FinalConversion, boundCompoundAssignmentOperator.FinalPlaceholder);
1678Conversion valueConversion = BoundNode.GetConversion(boundNullCoalescingOperator.LeftConversion, boundNullCoalescingOperator.LeftPlaceholder);
2002BoundNode.GetConversion(enumeratorInfoOpt.CurrentConversion, enumeratorInfoOpt.CurrentPlaceholder),
2003BoundNode.GetConversion(boundForEachStatement.ElementConversion, boundForEachStatement.ElementPlaceholder),
2118IOperation resources = Create(boundUsingStatement.DeclarationsOpt ?? (BoundNode)boundUsingStatement.ExpressionOpt!);
2180var children = CreateFromArray<BoundNode, IOperation>(boundBadStatement.ChildBoundNodes);