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)
1491public override BoundNode VisitIndexerAccess(BoundIndexerAccess node)
1504public override BoundNode VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node)
1517public override BoundNode VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
1593public override BoundNode VisitBadExpression(BoundBadExpression node)
1603public override BoundNode VisitBadStatement(BoundBadStatement node)
1605foreach (var child in node.ChildBoundNodes)
1620public override BoundNode VisitArrayInitialization(BoundArrayInitialization node)
1630public override BoundNode VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
1660public override BoundNode VisitTypeExpression(BoundTypeExpression node)
1665public override BoundNode VisitTypeOrValueExpression(BoundTypeOrValueExpression node)
1671public override BoundNode VisitLiteral(BoundLiteral node)
1677public override BoundNode VisitUtf8String(BoundUtf8String node)
1700public override BoundNode VisitLocalId(BoundLocalId node)
1705public override BoundNode VisitParameterId(BoundParameterId node)
1710public override BoundNode VisitMethodDefIndex(BoundMethodDefIndex node)
1715public override BoundNode VisitStateMachineInstanceId(BoundStateMachineInstanceId node)
1720public override BoundNode VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node)
1725public override BoundNode VisitModuleVersionId(BoundModuleVersionId node)
1730public override BoundNode VisitModuleVersionIdString(BoundModuleVersionIdString node)
1735public override BoundNode VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node)
1740public override BoundNode VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node)
1745public override BoundNode VisitSourceDocumentIndex(BoundSourceDocumentIndex node)
1750public override BoundNode VisitConversion(BoundConversion node)
1781public sealed override BoundNode VisitIfStatement(BoundIfStatement node)
1832public override BoundNode VisitTryStatement(BoundTryStatement node)
1977public override BoundNode VisitCatchBlock(BoundCatchBlock catchBlock)
2028public override BoundNode VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node)
2033public override BoundNode VisitReturnStatement(BoundReturnStatement node)
2035var result = VisitReturnStatementNoAdjust(node);
2041protected virtual BoundNode VisitReturnStatementNoAdjust(BoundReturnStatement node)
2054public override BoundNode VisitThisReference(BoundThisReference node)
2059public override BoundNode VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node)
2064public override BoundNode VisitHostObjectMemberReference(BoundHostObjectMemberReference node)
2069public override BoundNode VisitParameter(BoundParameter node)
2078public override BoundNode VisitObjectCreationExpression(BoundObjectCreationExpression node)
2085public override BoundNode VisitCollectionExpression(BoundCollectionExpression node)
2092public override BoundNode VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
2098private void VisitCollectionExpression(ImmutableArray<BoundNode> elements)
2100foreach (var element in elements)
2113public override BoundNode VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node)
2119public override BoundNode VisitNewT(BoundNewT node)
2125public override BoundNode VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
2150public override BoundNode VisitAssignmentOperator(BoundAssignmentOperator node)
2184public override BoundNode VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
2191public sealed override BoundNode VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node)
2197public override BoundNode VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
2242public override BoundNode VisitFieldAccess(BoundFieldAccess node)
2269public override BoundNode VisitFieldInfo(BoundFieldInfo node)
2274public override BoundNode VisitMethodInfo(BoundMethodInfo node)
2279public override BoundNode VisitPropertyAccess(BoundPropertyAccess node)
2309public override BoundNode VisitEventAccess(BoundEventAccess node)
2315public override BoundNode VisitRangeVariable(BoundRangeVariable node)
2320public override BoundNode VisitQueryClause(BoundQueryClause node)
2326private BoundNode VisitMultipleLocalDeclarationsBase(BoundMultipleLocalDeclarationsBase node)
2336public override BoundNode VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node)
2341public override BoundNode VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node)
2350public override BoundNode VisitWhileStatement(BoundWhileStatement node)
2365public override BoundNode VisitWithExpression(BoundWithExpression node)
2372public override BoundNode VisitArrayAccess(BoundArrayAccess node)
2383public override BoundNode VisitInlineArrayAccess(BoundInlineArrayAccess node)
2402public override BoundNode VisitBinaryOperator(BoundBinaryOperator node)
2421public override BoundNode VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node)
2797public override BoundNode VisitUnaryOperator(BoundUnaryOperator node)
2813public override BoundNode VisitRangeExpression(BoundRangeExpression node)
2828public override BoundNode VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
2834public override BoundNode VisitAwaitExpression(BoundAwaitExpression node)
2841public override BoundNode VisitIncrementOperator(BoundIncrementOperator node)
2865public override BoundNode VisitArrayCreation(BoundArrayCreation node)
2876public override BoundNode VisitForStatement(BoundForStatement node)
2909public override BoundNode VisitForEachStatement(BoundForEachStatement node)
2938public override BoundNode VisitAsOperator(BoundAsOperator node)
2944public override BoundNode VisitIsOperator(BoundIsOperator node)
2959public override BoundNode VisitMethodGroup(BoundMethodGroup node)
2972public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
3148public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
3156public override BoundNode VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node)
3175public override BoundNode VisitConditionalReceiver(BoundConditionalReceiver node)
3180public override BoundNode VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node)
3194public override BoundNode VisitSequence(BoundSequence node)
3209public override BoundNode VisitSequencePoint(BoundSequencePoint node)
3219public override BoundNode VisitSequencePointExpression(BoundSequencePointExpression node)
3225public override BoundNode VisitSequencePointWithSpan(BoundSequencePointWithSpan node)
3235public override BoundNode VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node)
3240public override BoundNode VisitStatementList(BoundStatementList node)
3245private BoundNode VisitStatementListWorker(BoundStatementList node)
3255public override BoundNode VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node)
3260public override BoundNode VisitUnboundLambda(UnboundLambda node)
3266public override BoundNode VisitBreakStatement(BoundBreakStatement node)
3274public override BoundNode VisitContinueStatement(BoundContinueStatement node)
3282public override BoundNode VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node)
3287public override BoundNode VisitConditionalOperator(BoundConditionalOperator node)
3294protected virtual BoundNode? VisitConditionalOperatorCore(
3358public override BoundNode VisitBaseReference(BoundBaseReference node)
3363public override BoundNode VisitDoStatement(BoundDoStatement node)
3377public override BoundNode VisitGotoStatement(BoundGotoStatement node)
3400public override BoundNode VisitLabelStatement(BoundLabelStatement node)
3406public override BoundNode VisitLabeledStatement(BoundLabeledStatement node)
3413public override BoundNode VisitLockStatement(BoundLockStatement node)
3420public override BoundNode VisitNoOpStatement(BoundNoOpStatement node)
3425public override BoundNode VisitNamespaceExpression(BoundNamespaceExpression node)
3430public override BoundNode VisitUsingStatement(BoundUsingStatement node)
3453public override BoundNode VisitFixedStatement(BoundFixedStatement node)
3460public override BoundNode VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
3466public override BoundNode VisitThrowStatement(BoundThrowStatement node)
3474public override BoundNode VisitYieldBreakStatement(BoundYieldBreakStatement node)
3482public override BoundNode VisitYieldReturnStatement(BoundYieldReturnStatement node)
3489public override BoundNode VisitDefaultLiteral(BoundDefaultLiteral node)
3494public override BoundNode VisitDefaultExpression(BoundDefaultExpression node)
3499public override BoundNode VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
3504public override BoundNode VisitTypeOfOperator(BoundTypeOfOperator node)
3510public override BoundNode VisitNameOfOperator(BoundNameOfOperator node)
3519public override BoundNode VisitAddressOfOperator(BoundAddressOfOperator node)
3539public override BoundNode VisitRefAccess(BoundRefAccess node)
3548public override BoundNode VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
3554public override BoundNode VisitPointerElementAccess(BoundPointerElementAccess node)
3561public override BoundNode VisitSizeOfOperator(BoundSizeOfOperator node)
3566private BoundNode VisitStackAllocArrayCreationBase(BoundStackAllocArrayCreationBase node)
3573public override BoundNode VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
3578public override BoundNode VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
3583public override BoundNode VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
3591public override BoundNode VisitArrayLength(BoundArrayLength node)
3597public override BoundNode VisitConditionalGoto(BoundConditionalGoto node)
3615public override BoundNode VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
3620public override BoundNode VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
3625private BoundNode VisitObjectOrCollectionInitializerExpression(ImmutableArray<BoundExpression> initializers)
3635public override BoundNode VisitObjectInitializerMember(BoundObjectInitializerMember node)
3654public override BoundNode VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
3659public override BoundNode VisitCollectionElementInitializer(BoundCollectionElementInitializer node)
3682public override BoundNode VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
3688public override BoundNode VisitImplicitReceiver(BoundImplicitReceiver node)
3693public override BoundNode VisitFieldEqualsValue(BoundFieldEqualsValue node)
3699public override BoundNode VisitPropertyEqualsValue(BoundPropertyEqualsValue node)
3705public override BoundNode VisitParameterEqualsValue(BoundParameterEqualsValue node)
3711public override BoundNode VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node)
3716public override BoundNode VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node)
3721public override BoundNode VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
3726public override BoundNode VisitValuePlaceholder(BoundValuePlaceholder node)
3731public override BoundNode VisitCollectionBuilderElementsPlaceholder(BoundCollectionBuilderElementsPlaceholder node)
3736public sealed override BoundNode VisitOutVariablePendingInference(OutVariablePendingInference node)
3741public sealed override BoundNode VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node)
3746public override BoundNode VisitDiscardExpression(BoundDiscardExpression node)
3757public override BoundNode VisitConstructorMethodBody(BoundConstructorMethodBody node)
3764public override BoundNode VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node)
3770public override BoundNode VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
3803public override BoundNode VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node)
3809public override BoundNode VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
3816public override BoundNode VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node)
3841public override BoundNode VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node)
3846public override BoundNode VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node)
3851public 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)
175BoundNode node,
200BoundNode node,
222BoundNode node,
223BoundNode firstInRegion,
224BoundNode lastInRegion,
241BoundNode node)
510BoundNode node,
744private void NoteRead(BoundNode fieldOrEventAccess)
747BoundNode n = fieldOrEventAccess;
1478protected void Assign(BoundNode node, BoundExpression value, bool isRef = false, bool read = true)
1495protected virtual void AssignImpl(BoundNode node, BoundExpression value, bool isRef, bool written, bool read)
2097public override BoundNode? VisitBlock(BoundBlock node)
2182public override BoundNode VisitSwitchStatement(BoundSwitchStatement node)
2185var result = base.VisitSwitchStatement(node);
2197public override BoundNode VisitForStatement(BoundForStatement node)
2201var result = base.VisitForStatement(node);
2207public override BoundNode VisitDoStatement(BoundDoStatement node)
2210var result = base.VisitDoStatement(node);
2215public override BoundNode VisitWhileStatement(BoundWhileStatement node)
2218var result = base.VisitWhileStatement(node);
2226public override BoundNode VisitUsingStatement(BoundUsingStatement node)
2230var result = base.VisitUsingStatement(node);
2247public override BoundNode VisitFixedStatement(BoundFixedStatement node)
2253public override BoundNode VisitSequence(BoundSequence node)
2256var result = base.VisitSequence(node);
2317public override BoundNode VisitLocal(BoundLocal node)
2348public override BoundNode VisitLocalDeclaration(BoundLocalDeclaration node)
2359var result = base.VisitLocalDeclaration(node);
2399public override BoundNode VisitLocalId(BoundLocalId node)
2402public override BoundNode VisitParameterId(BoundParameterId node)
2405public override BoundNode VisitStateMachineInstanceId(BoundStateMachineInstanceId node)
2408public override BoundNode VisitMethodGroup(BoundMethodGroup node)
2420public override BoundNode VisitLambda(BoundLambda node)
2466public override BoundNode VisitThisReference(BoundThisReference node)
2473public override BoundNode VisitParameter(BoundParameter node)
2487public override BoundNode VisitAssignmentOperator(BoundAssignmentOperator node)
2494public override BoundNode VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
2501public override BoundNode VisitIncrementOperator(BoundIncrementOperator node)
2508public override BoundNode VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
2517public override BoundNode VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
2536public override BoundNode VisitAddressOfOperator(BoundAddressOfOperator node)
2701public override BoundNode VisitBaseReference(BoundBaseReference node)
2707public override BoundNode VisitCatchBlock(BoundCatchBlock catchBlock)
2727public override BoundNode VisitFieldAccess(BoundFieldAccess node)
2729var result = base.VisitFieldAccess(node);
2753public override BoundNode VisitPropertyAccess(BoundPropertyAccess node)
2755var result = base.VisitPropertyAccess(node);
2776public override BoundNode VisitEventAccess(BoundEventAccess node)
2778var result = base.VisitEventAccess(node);
2807public 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)
2369private void VisitAndUnsplitAll<T>(ImmutableArray<T> nodes) where T : BoundNode
2383private void VisitWithoutDiagnostics(BoundNode? node)
3106public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue equalsValue)
3141public sealed override BoundNode? VisitReturnStatement(BoundReturnStatement node)
3277public override BoundNode? VisitLocal(BoundLocal node)
3307public override BoundNode? VisitBlock(BoundBlock node)
3412public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
3634public override BoundNode? VisitDoStatement(BoundDoStatement node)
3640public override BoundNode? VisitWhileStatement(BoundWhileStatement node)
3646public override BoundNode? VisitWithExpression(BoundWithExpression withExpr)
3666public override BoundNode? VisitForStatement(BoundForStatement node)
3673public override BoundNode? VisitForEachStatement(BoundForEachStatement node)
3679public override BoundNode? VisitUsingStatement(BoundUsingStatement node)
3686public override BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node)
3719public override BoundNode? VisitFixedStatement(BoundFixedStatement node)
3725public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node)
3752public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node)
3814protected override BoundNode? VisitExpressionOrPatternWithoutStackGuard(BoundNode node)
3906public override BoundNode? Visit(BoundNode? node)
3911private BoundNode VisitLValue(BoundNode node)
3930private BoundNode Visit(BoundNode? node, bool expressionIsRead)
3939var result = base.Visit(node);
3952public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node)
3958public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
3966public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
3969var result = base.VisitUnconvertedCollectionExpression(node);
3974public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node)
3993foreach (var element in node.Elements)
4131void visitElement(BoundNode element, BoundCollectionExpression node, TypeWithAnnotations targetElementType, ArrayBuilder<Action<TypeWithAnnotations, TypeSymbol>> elementConversionCompletions)
4301public override BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node)
5078public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
5139public override BoundNode? VisitArrayCreation(BoundArrayCreation node)
5295BoundNode node,
5373public override BoundNode? VisitArrayAccess(BoundArrayAccess node)
5407public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node)
6212public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
6249public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
6535public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
6541protected override BoundNode? VisitConditionalOperatorCore(
6832public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node)
6843public override BoundNode? VisitCall(BoundCall node)
7044BoundNode node,
7568private static bool HasImplicitTypeArguments(BoundNode node)
7661BoundNode node,
7702BoundNode node,
7893BoundNode node,
8985var elementsBuilder = ArrayBuilder<BoundNode>.GetInstance(collectionExpressionVisitResults.Length);
9328public override BoundNode? VisitConversion(BoundConversion node)
9465public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node)
9471public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
9752public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
10959public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
11135public override BoundNode? VisitMethodGroup(BoundMethodGroup node)
11230public override BoundNode? VisitLambda(BoundLambda node)
11279public override BoundNode? VisitUnboundLambda(UnboundLambda node)
11289public override BoundNode? VisitThisReference(BoundThisReference node)
11302public override BoundNode? VisitParameter(BoundParameter node)
11312public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
11496public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
11501private BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node, TypeWithState? rightResultOpt)
11614var underlyingConversion = BoundNode.GetConversion(placeholderConversion, placeholder);
11656var underlyingConversion = BoundNode.GetConversion(placeholderConversion, placeholder);
11815public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node)
11950BoundNode.GetConversion(node.OperandConversion, node.OperandPlaceholder),
11980BoundNode.GetConversion(node.ResultConversion, node.ResultPlaceholder),
12008public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
12108BoundNode.GetConversion(node.LeftConversion, node.LeftPlaceholder),
12122BoundNode.GetConversion(node.FinalConversion, node.FinalPlaceholder),
12143public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
12160public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node)
12207public override BoundNode? VisitBaseReference(BoundBaseReference node)
12213public override BoundNode? VisitFieldAccess(BoundFieldAccess node)
12223BoundNode node, PropertySymbol property, BoundExpression receiver)
12244BoundNode node,
12271public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
12310public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
12344public override BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node)
12358public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node)
12366public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node)
12372public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node)
12378public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node)
12384public override BoundNode? VisitCollectionBuilderElementsPlaceholder(BoundCollectionBuilderElementsPlaceholder node)
12390public override BoundNode? VisitEventAccess(BoundEventAccess node)
12527BoundNode node,
12787Conversion conversion = BoundNode.GetConversion(node.ElementConversion, node.ElementPlaceholder);
12824public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
12826var result = base.VisitFromEndIndexExpression(node);
12831public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node)
12837public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
12843public override BoundNode? VisitBadExpression(BoundBadExpression node)
12872public override BoundNode? VisitTypeExpression(BoundTypeExpression node)
12874var result = base.VisitTypeExpression(node);
12885public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node)
12888var result = base.VisitTypeOrValueExpression(node);
12893public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node)
13004public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
13006var result = base.VisitPointerIndirectionOperator(node);
13012public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node)
13014var result = base.VisitPointerElementAccess(node);
13020public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node)
13027public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node)
13029var result = base.VisitMakeRefOperator(node);
13034public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node)
13036var result = base.VisitRefValueOperator(node);
13173BoundNode.GetConversion(binary.TrueFalseOperandConversion, binary.TrueFalseOperandPlaceholder),
13197public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
13199var result = base.VisitAwaitExpression(node);
13226public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node)
13228var result = base.VisitTypeOfOperator(node);
13233public override BoundNode? VisitMethodInfo(BoundMethodInfo node)
13235var result = base.VisitMethodInfo(node);
13240public override BoundNode? VisitFieldInfo(BoundFieldInfo node)
13242var result = base.VisitFieldInfo(node);
13247public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node)
13250var result = base.VisitDefaultLiteral(node);
13255public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node)
13259var result = base.VisitDefaultExpression(node);
13275public override BoundNode? VisitIsOperator(BoundIsOperator node)
13309public override BoundNode? VisitAsOperator(BoundAsOperator node)
13317switch (BoundNode.GetConversion(node.OperandConversion, node.OperandPlaceholder).Kind)
13337public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node)
13339var result = base.VisitSizeOfOperator(node);
13345public override BoundNode? VisitArgList(BoundArgList node)
13347var result = base.VisitArgList(node);
13353public override BoundNode? VisitArgListOperator(BoundArgListOperator node)
13361public override BoundNode? VisitLiteral(BoundLiteral node)
13364var result = base.VisitLiteral(node);
13369public override BoundNode? VisitUtf8String(BoundUtf8String node)
13372var result = base.VisitUtf8String(node);
13377public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node)
13379var result = base.VisitPreviousSubmissionReference(node);
13385public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node)
13387var result = base.VisitHostObjectMemberReference(node);
13393public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node)
13395var result = base.VisitPseudoVariable(node);
13400public override BoundNode? VisitRangeExpression(BoundRangeExpression node)
13402var result = base.VisitRangeExpression(node);
13407public override BoundNode? VisitRangeVariable(BoundRangeVariable node)
13414public override BoundNode? VisitLabel(BoundLabel node)
13416var result = base.VisitLabel(node);
13421public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
13433public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node)
13453public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
13479public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
13485public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
13493public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
13501public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
13509public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node)
13511var result = base.VisitImplicitReceiver(node);
13516public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node)
13521public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
13527public override BoundNode? VisitNewT(BoundNewT node)
13533public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node)
13535var result = base.VisitArrayInitialization(node);
13545public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
13639public override BoundNode? VisitQueryClause(BoundQueryClause node)
13641var result = base.VisitQueryClause(node);
13646public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node)
13648var result = base.VisitNameOfOperator(node);
13653public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node)
13655var result = base.VisitNamespaceExpression(node);
13660public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
13663var result = base.VisitUnconvertedInterpolatedString(node);
13668public override BoundNode? VisitStringInsert(BoundStringInsert node)
13670var result = base.VisitStringInsert(node);
13681public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node)
13689public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node)
13695public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
13701public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
13706private BoundNode? VisitStackAllocArrayCreationBase(BoundStackAllocArrayCreationBase node)
13723public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node)
13731public override BoundNode? VisitThrowExpression(BoundThrowExpression node)
13738public override BoundNode? VisitThrowStatement(BoundThrowStatement node)
13761public override BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node)
13777public override BoundNode? VisitCatchBlock(BoundCatchBlock node)
13801public override BoundNode? VisitLockStatement(BoundLockStatement node)
13817public override BoundNode? VisitAttribute(BoundAttribute node)
13830public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node)
13837public override BoundNode? VisitValueForNullableAnalysis(BoundValueForNullableAnalysis node)
13843public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node)
13851public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node)
13859public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
13880public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node)
13934public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
14503private sealed class ExpressionAndSymbolEqualityComparer : IEqualityComparer<(BoundNode? expr, Symbol symbol)>
14509public bool Equals((BoundNode? expr, Symbol symbol) x, (BoundNode? expr, Symbol symbol) y)
14520public 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);
945public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDup(this);
973public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPassByCopy(this);
1010public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBadExpression(this);
1026public BoundBadStatement(SyntaxNode syntax, ImmutableArray<BoundNode> childBoundNodes, bool hasErrors = false)
1035public ImmutableArray<BoundNode> ChildBoundNodes { get; }
1038public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBadStatement(this);
1040public BoundBadStatement Update(ImmutableArray<BoundNode> childBoundNodes)
1066public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitExtractedFinallyBlock(this);
1101public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeExpression(this);
1150public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeOrValueExpression(this);
1191public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNamespaceExpression(this);
1233public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnaryOperator(this);
1281public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIncrementOperator(this);
1315public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAddressOfOperator(this);
1344public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedAddressOfOperator(this);
1387public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFunctionPointerLoad(this);
1417public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPointerIndirectionOperator(this);
1452public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPointerElementAccess(this);
1489public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFunctionPointerInvocation(this);
1521public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRefTypeOperator(this);
1551public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMakeRefOperator(this);
1583public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRefValueOperator(this);
1615public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFromEndIndexExpression(this);
1648public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRangeExpression(this);
1705public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBinaryOperator(this);
1743public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTupleBinaryOperator(this);
1796public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUserDefinedConditionalLogicalOperator(this);
1843public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCompoundAssignmentOperator(this);
1877public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAssignmentOperator(this);
1912public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeconstructionAssignmentOperator(this);
1953public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNullCoalescingOperator(this);
1984public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNullCoalescingAssignmentOperator(this);
2023public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedConditionalOperator(this);
2067public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalOperator(this);
2100public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayAccess(this);
2132public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRefAccess(this);
2162public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayLength(this);
2203public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAwaitableInfo(this);
2238public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAwaitExpression(this);
2291public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeOfOperator(this);
2323public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBlockInstrumentation(this);
2367public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMethodDefIndex(this);
2410public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocalId(this);
2453public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitParameterId(this);
2488public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStateMachineInstanceId(this);
2523public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMaximumMethodDefIndex(this);
2561public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInstrumentationPayloadRoot(this);
2596public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThrowIfModuleCancellationRequested(this);
2631public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitModuleCancellationTokenExpression(this);
2666public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitModuleVersionId(this);
2701public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitModuleVersionIdString(this);
2741public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSourceDocumentIndex(this);
2784public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMethodInfo(this);
2827public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFieldInfo(this);
2856public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDefaultLiteral(this);
2881public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDefaultExpression(this);
2916public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIsOperator(this);
2953public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAsOperator(this);
2985public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSizeOfOperator(this);
3033public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConversion(this);
3066public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitReadOnlySpanFromArray(this);
3101public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArgList(this);
3132public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArgListOperator(this);
3171public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFixedLocalCollectionInitializer(this);
3210public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequencePoint(this);
3237public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequencePointWithSpan(this);
3274public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSavePreviousSequencePoint(this);
3311public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRestorePreviousSequencePoint(this);
3342public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStepThroughSequencePoint(this);
3378public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBlock(this);
3407public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitScope(this);
3438public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStateMachineScope(this);
3474public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocalDeclaration(this);
3514public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMultipleLocalDeclarations(this);
3544public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUsingLocalDeclarations(this);
3576public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocalFunctionStatement(this);
3607public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNoOpStatement(this);
3640public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitReturnStatement(this);
3668public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitYieldReturnStatement(this);
3696public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitYieldBreakStatement(this);
3710public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThrowStatement(this);
3738public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitExpressionStatement(this);
3768public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBreakStatement(this);
3798public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitContinueStatement(this);
3843public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchStatement(this);
3879public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchDispatch(this);
3912public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIfStatement(this);
3992public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDoStatement(this);
4022public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitWhileStatement(this);
4064public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitForStatement(this);
4113public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitForEachStatement(this);
4144public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitForEachDeconstructStep(this);
4183public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUsingStatement(this);
4217public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFixedStatement(this);
4248public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLockStatement(this);
4285public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTryStatement(this);
4326public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCatchBlock(this);
4357public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLiteral(this);
4397public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUtf8String(this);
4432public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThisReference(this);
4467public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPreviousSubmissionReference(this);
4502public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitHostObjectMemberReference(this);
4531public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBaseReference(this);
4580public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocal(this);
4625public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPseudoVariable(this);
4658public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRangeVariable(this);
4698public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitParameter(this);
4735public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLabelStatement(this);
4767public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitGotoStatement(this);
4798public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLabeledStatement(this);
4835public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLabel(this);
4872public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStatementList(this);
4905public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalGoto(this);
4970public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchExpressionArm(this);
4998public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedSwitchExpression(this);
5032public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConvertedSwitchExpression(this);
5062public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDecisionDag(this);
5107public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitEvaluationDecisionDagNode(this);
5141public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTestDecisionDagNode(this);
5176public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitWhenDecisionDagNode(this);
5213public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLeafDecisionDagNode(this);
5259public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagTemp(this);
5288public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagTypeTest(this);
5316public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagNonNullTest(this);
5342public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagExplicitNullTest(this);
5371public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagValueTest(this);
5402public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagRelationalTest(this);
5443public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagDeconstructEvaluation(this);
5472public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagTypeEvaluation(this);
5501public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagFieldEvaluation(this);
5532public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagPropertyEvaluation(this);
5563public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagIndexEvaluation(this);
5610public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagIndexerEvaluation(this);
5659public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagSliceEvaluation(this);
5688public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagAssignmentEvaluation(this);
5714public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagPassThroughEvaluation(this);
5746public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchSection(this);
5781public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchLabel(this);
5823public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequencePointExpression(this);
5859public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequence(this);
5895public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSpillSequence(this);
5934public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicMemberAccess(this);
5987public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicInvocation(this);
6020public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalAccess(this);
6061public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLoweredConditionalAccess(this);
6099public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalReceiver(this);
6132public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitComplexConditionalReceiver(this);
6173public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMethodGroup(this);
6201public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertyGroup(this);
6260public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCall(this);
6299public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitEventAssignmentOperator(this);
6344public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAttribute(this);
6382public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedObjectCreationExpression(this);
6454public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectCreationExpression(this);
6470protected BoundCollectionExpressionBase(BoundKind kind, SyntaxNode syntax, ImmutableArray<BoundNode> elements, TypeSymbol? type, bool hasErrors = false)
6483public ImmutableArray<BoundNode> Elements { get; }
6488public BoundUnconvertedCollectionExpression(SyntaxNode syntax, BoundUnconvertedWithElement? withElement, ImmutableArray<BoundNode> elements, bool hasErrors = false)
6501public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedCollectionExpression(this);
6503public BoundUnconvertedCollectionExpression Update(BoundUnconvertedWithElement? withElement, ImmutableArray<BoundNode> elements)
6533public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedWithElement(this);
6549public 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)
6582public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionExpression(this);
6584public BoundCollectionExpression Update(CollectionExpressionTypeKind collectionTypeKind, BoundObjectOrCollectionValuePlaceholder? placeholder, BoundExpression? collectionCreation, MethodSymbol? collectionBuilderMethod, BoundCollectionBuilderElementsPlaceholder? collectionBuilderElementsPlaceholder, bool wasTargetTyped, bool hasWithElement, BoundUnconvertedCollectionExpression unconvertedCollectionExpression, ImmutableArray<BoundNode> elements, TypeSymbol type)
6610public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionExpressionSpreadExpressionPlaceholder(this);
6650public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionExpressionSpreadElement(this);
6695public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTupleLiteral(this);
6725public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConvertedTupleLiteral(this);
6768public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicObjectCreationExpression(this);
6800public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNoPiaObjectCreationExpression(this);
6847public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectInitializerExpression(this);
6896public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectInitializerMember(this);
6941public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicObjectInitializerMember(this);
6969public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionInitializerExpression(this);
7014public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionElementInitializer(this);
7046public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicCollectionElementInitializer(this);
7081public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitReceiver(this);
7117public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAnonymousObjectCreationExpression(this);
7157public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAnonymousPropertyDeclaration(this);
7187public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNewT(this);
7223public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDelegateCreationExpression(this);
7255public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayCreation(this);
7286public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayInitialization(this);
7332public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStackAllocArrayCreation(this);
7361public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConvertedStackAllocExpression(this);
7401public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFieldAccess(this);
7441public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitHoistedFieldAccess(this);
7479public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertyAccess(this);
7515public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitEventAccess(this);
7566public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIndexerAccess(this);
7615public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitIndexerAccess(this);
7656public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInlineArrayAccess(this);
7696public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicIndexerAccess(this);
7736public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLambda(this);
7780public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnboundLambda(this);
7821public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitQueryClause(this);
7847public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeOrInstanceInitializers(this);
7884public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNameOfOperator(this);
7926public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedInterpolatedString(this);
7954public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedString(this);
7982public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedStringHandlerPlaceholder(this);
8020public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedStringArgumentPlaceholder(this);
8055public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStringInsert(this);
8099public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIsPatternExpression(this);
8170public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConstantPattern(this);
8212public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPatternWithUnionMatching(this);
8252public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDiscardPattern(this);
8307public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeclarationPattern(this);
8350public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRecursivePattern(this);
8394public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitListPattern(this);
8433public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSlicePattern(this);
8473public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitITuplePattern(this);
8519public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPositionalSubpattern(this);
8549public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertySubpattern(this);
8581public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertySubpatternMember(this);
8619public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypePattern(this);
8658public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBinaryPattern(this);
8692public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNegatedPattern(this);
8733public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRelationalPattern(this);
8768public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDiscardExpression(this);
8796public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThrowExpression(this);
8839public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitOutVariablePendingInference(this);
8865public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeconstructionVariablePendingInference(this);
8900public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitOutDeconstructVarPendingInference(this);
8936public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNonConstructorMethodBody(this);
8966public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConstructorMethodBody(this);
8997public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitExpressionWithNullability(this);
9022public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitValueForNullableAnalysis(this);
9057public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitWithExpression(this);
9075internal R VisitInternal(BoundNode node, A arg)
9802public virtual BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node) => this.DefaultVisit(node);
9803public virtual BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node) => this.DefaultVisit(node);
9804public virtual BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node) => this.DefaultVisit(node);
9805public virtual BoundNode? VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node) => this.DefaultVisit(node);
9806public virtual BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node) => this.DefaultVisit(node);
9807public virtual BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node) => this.DefaultVisit(node);
9808public virtual BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node) => this.DefaultVisit(node);
9809public virtual BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node) => this.DefaultVisit(node);
9810public virtual BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node) => this.DefaultVisit(node);
9811public virtual BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node) => this.DefaultVisit(node);
9812public virtual BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node) => this.DefaultVisit(node);
9813public virtual BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node) => this.DefaultVisit(node);
9814public virtual BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node) => this.DefaultVisit(node);
9815public virtual BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node) => this.DefaultVisit(node);
9816public virtual BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node) => this.DefaultVisit(node);
9817public virtual BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node) => this.DefaultVisit(node);
9818public virtual BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node) => this.DefaultVisit(node);
9819public virtual BoundNode? VisitCollectionBuilderElementsPlaceholder(BoundCollectionBuilderElementsPlaceholder node) => this.DefaultVisit(node);
9820public virtual BoundNode? VisitDup(BoundDup node) => this.DefaultVisit(node);
9821public virtual BoundNode? VisitPassByCopy(BoundPassByCopy node) => this.DefaultVisit(node);
9822public virtual BoundNode? VisitBadExpression(BoundBadExpression node) => this.DefaultVisit(node);
9823public virtual BoundNode? VisitBadStatement(BoundBadStatement node) => this.DefaultVisit(node);
9824public virtual BoundNode? VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node) => this.DefaultVisit(node);
9825public virtual BoundNode? VisitTypeExpression(BoundTypeExpression node) => this.DefaultVisit(node);
9826public virtual BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node) => this.DefaultVisit(node);
9827public virtual BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node) => this.DefaultVisit(node);
9828public virtual BoundNode? VisitUnaryOperator(BoundUnaryOperator node) => this.DefaultVisit(node);
9829public virtual BoundNode? VisitIncrementOperator(BoundIncrementOperator node) => this.DefaultVisit(node);
9830public virtual BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node) => this.DefaultVisit(node);
9831public virtual BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node) => this.DefaultVisit(node);
9832public virtual BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node) => this.DefaultVisit(node);
9833public virtual BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node) => this.DefaultVisit(node);
9834public virtual BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node) => this.DefaultVisit(node);
9835public virtual BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node) => this.DefaultVisit(node);
9836public virtual BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node) => this.DefaultVisit(node);
9837public virtual BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node) => this.DefaultVisit(node);
9838public virtual BoundNode? VisitRefValueOperator(BoundRefValueOperator node) => this.DefaultVisit(node);
9839public virtual BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node) => this.DefaultVisit(node);
9840public virtual BoundNode? VisitRangeExpression(BoundRangeExpression node) => this.DefaultVisit(node);
9841public virtual BoundNode? VisitBinaryOperator(BoundBinaryOperator node) => this.DefaultVisit(node);
9842public virtual BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node) => this.DefaultVisit(node);
9843public virtual BoundNode? VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node) => this.DefaultVisit(node);
9844public virtual BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node) => this.DefaultVisit(node);
9845public virtual BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node) => this.DefaultVisit(node);
9846public virtual BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node) => this.DefaultVisit(node);
9847public virtual BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node) => this.DefaultVisit(node);
9848public virtual BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node) => this.DefaultVisit(node);
9849public virtual BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node) => this.DefaultVisit(node);
9850public virtual BoundNode? VisitConditionalOperator(BoundConditionalOperator node) => this.DefaultVisit(node);
9851public virtual BoundNode? VisitArrayAccess(BoundArrayAccess node) => this.DefaultVisit(node);
9852public virtual BoundNode? VisitRefAccess(BoundRefAccess node) => this.DefaultVisit(node);
9853public virtual BoundNode? VisitArrayLength(BoundArrayLength node) => this.DefaultVisit(node);
9854public virtual BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node) => this.DefaultVisit(node);
9855public virtual BoundNode? VisitAwaitExpression(BoundAwaitExpression node) => this.DefaultVisit(node);
9856public virtual BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node) => this.DefaultVisit(node);
9857public virtual BoundNode? VisitBlockInstrumentation(BoundBlockInstrumentation node) => this.DefaultVisit(node);
9858public virtual BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node) => this.DefaultVisit(node);
9859public virtual BoundNode? VisitLocalId(BoundLocalId node) => this.DefaultVisit(node);
9860public virtual BoundNode? VisitParameterId(BoundParameterId node) => this.DefaultVisit(node);
9861public virtual BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node) => this.DefaultVisit(node);
9862public virtual BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node) => this.DefaultVisit(node);
9863public virtual BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node) => this.DefaultVisit(node);
9864public virtual BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node) => this.DefaultVisit(node);
9865public virtual BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node) => this.DefaultVisit(node);
9866public virtual BoundNode? VisitModuleVersionId(BoundModuleVersionId node) => this.DefaultVisit(node);
9867public virtual BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node) => this.DefaultVisit(node);
9868public virtual BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node) => this.DefaultVisit(node);
9869public virtual BoundNode? VisitMethodInfo(BoundMethodInfo node) => this.DefaultVisit(node);
9870public virtual BoundNode? VisitFieldInfo(BoundFieldInfo node) => this.DefaultVisit(node);
9871public virtual BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node) => this.DefaultVisit(node);
9872public virtual BoundNode? VisitDefaultExpression(BoundDefaultExpression node) => this.DefaultVisit(node);
9873public virtual BoundNode? VisitIsOperator(BoundIsOperator node) => this.DefaultVisit(node);
9874public virtual BoundNode? VisitAsOperator(BoundAsOperator node) => this.DefaultVisit(node);
9875public virtual BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node) => this.DefaultVisit(node);
9876public virtual BoundNode? VisitConversion(BoundConversion node) => this.DefaultVisit(node);
9877public virtual BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node) => this.DefaultVisit(node);
9878public virtual BoundNode? VisitArgList(BoundArgList node) => this.DefaultVisit(node);
9879public virtual BoundNode? VisitArgListOperator(BoundArgListOperator node) => this.DefaultVisit(node);
9880public virtual BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node) => this.DefaultVisit(node);
9881public virtual BoundNode? VisitSequencePoint(BoundSequencePoint node) => this.DefaultVisit(node);
9882public virtual BoundNode? VisitSequencePointWithSpan(BoundSequencePointWithSpan node) => this.DefaultVisit(node);
9883public virtual BoundNode? VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node) => this.DefaultVisit(node);
9884public virtual BoundNode? VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node) => this.DefaultVisit(node);
9885public virtual BoundNode? VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node) => this.DefaultVisit(node);
9886public virtual BoundNode? VisitBlock(BoundBlock node) => this.DefaultVisit(node);
9887public virtual BoundNode? VisitScope(BoundScope node) => this.DefaultVisit(node);
9888public virtual BoundNode? VisitStateMachineScope(BoundStateMachineScope node) => this.DefaultVisit(node);
9889public virtual BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node) => this.DefaultVisit(node);
9890public virtual BoundNode? VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node) => this.DefaultVisit(node);
9891public virtual BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node) => this.DefaultVisit(node);
9892public virtual BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node) => this.DefaultVisit(node);
9893public virtual BoundNode? VisitNoOpStatement(BoundNoOpStatement node) => this.DefaultVisit(node);
9894public virtual BoundNode? VisitReturnStatement(BoundReturnStatement node) => this.DefaultVisit(node);
9895public virtual BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node) => this.DefaultVisit(node);
9896public virtual BoundNode? VisitYieldBreakStatement(BoundYieldBreakStatement node) => this.DefaultVisit(node);
9897public virtual BoundNode? VisitThrowStatement(BoundThrowStatement node) => this.DefaultVisit(node);
9898public virtual BoundNode? VisitExpressionStatement(BoundExpressionStatement node) => this.DefaultVisit(node);
9899public virtual BoundNode? VisitBreakStatement(BoundBreakStatement node) => this.DefaultVisit(node);
9900public virtual BoundNode? VisitContinueStatement(BoundContinueStatement node) => this.DefaultVisit(node);
9901public virtual BoundNode? VisitSwitchStatement(BoundSwitchStatement node) => this.DefaultVisit(node);
9902public virtual BoundNode? VisitSwitchDispatch(BoundSwitchDispatch node) => this.DefaultVisit(node);
9903public virtual BoundNode? VisitIfStatement(BoundIfStatement node) => this.DefaultVisit(node);
9904public virtual BoundNode? VisitDoStatement(BoundDoStatement node) => this.DefaultVisit(node);
9905public virtual BoundNode? VisitWhileStatement(BoundWhileStatement node) => this.DefaultVisit(node);
9906public virtual BoundNode? VisitForStatement(BoundForStatement node) => this.DefaultVisit(node);
9907public virtual BoundNode? VisitForEachStatement(BoundForEachStatement node) => this.DefaultVisit(node);
9908public virtual BoundNode? VisitForEachDeconstructStep(BoundForEachDeconstructStep node) => this.DefaultVisit(node);
9909public virtual BoundNode? VisitUsingStatement(BoundUsingStatement node) => this.DefaultVisit(node);
9910public virtual BoundNode? VisitFixedStatement(BoundFixedStatement node) => this.DefaultVisit(node);
9911public virtual BoundNode? VisitLockStatement(BoundLockStatement node) => this.DefaultVisit(node);
9912public virtual BoundNode? VisitTryStatement(BoundTryStatement node) => this.DefaultVisit(node);
9913public virtual BoundNode? VisitCatchBlock(BoundCatchBlock node) => this.DefaultVisit(node);
9914public virtual BoundNode? VisitLiteral(BoundLiteral node) => this.DefaultVisit(node);
9915public virtual BoundNode? VisitUtf8String(BoundUtf8String node) => this.DefaultVisit(node);
9916public virtual BoundNode? VisitThisReference(BoundThisReference node) => this.DefaultVisit(node);
9917public virtual BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node) => this.DefaultVisit(node);
9918public virtual BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node) => this.DefaultVisit(node);
9919public virtual BoundNode? VisitBaseReference(BoundBaseReference node) => this.DefaultVisit(node);
9920public virtual BoundNode? VisitLocal(BoundLocal node) => this.DefaultVisit(node);
9921public virtual BoundNode? VisitPseudoVariable(BoundPseudoVariable node) => this.DefaultVisit(node);
9922public virtual BoundNode? VisitRangeVariable(BoundRangeVariable node) => this.DefaultVisit(node);
9923public virtual BoundNode? VisitParameter(BoundParameter node) => this.DefaultVisit(node);
9924public virtual BoundNode? VisitLabelStatement(BoundLabelStatement node) => this.DefaultVisit(node);
9925public virtual BoundNode? VisitGotoStatement(BoundGotoStatement node) => this.DefaultVisit(node);
9926public virtual BoundNode? VisitLabeledStatement(BoundLabeledStatement node) => this.DefaultVisit(node);
9927public virtual BoundNode? VisitLabel(BoundLabel node) => this.DefaultVisit(node);
9928public virtual BoundNode? VisitStatementList(BoundStatementList node) => this.DefaultVisit(node);
9929public virtual BoundNode? VisitConditionalGoto(BoundConditionalGoto node) => this.DefaultVisit(node);
9930public virtual BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node) => this.DefaultVisit(node);
9931public virtual BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node) => this.DefaultVisit(node);
9932public virtual BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node) => this.DefaultVisit(node);
9933public virtual BoundNode? VisitDecisionDag(BoundDecisionDag node) => this.DefaultVisit(node);
9934public virtual BoundNode? VisitEvaluationDecisionDagNode(BoundEvaluationDecisionDagNode node) => this.DefaultVisit(node);
9935public virtual BoundNode? VisitTestDecisionDagNode(BoundTestDecisionDagNode node) => this.DefaultVisit(node);
9936public virtual BoundNode? VisitWhenDecisionDagNode(BoundWhenDecisionDagNode node) => this.DefaultVisit(node);
9937public virtual BoundNode? VisitLeafDecisionDagNode(BoundLeafDecisionDagNode node) => this.DefaultVisit(node);
9938public virtual BoundNode? VisitDagTemp(BoundDagTemp node) => this.DefaultVisit(node);
9939public virtual BoundNode? VisitDagTypeTest(BoundDagTypeTest node) => this.DefaultVisit(node);
9940public virtual BoundNode? VisitDagNonNullTest(BoundDagNonNullTest node) => this.DefaultVisit(node);
9941public virtual BoundNode? VisitDagExplicitNullTest(BoundDagExplicitNullTest node) => this.DefaultVisit(node);
9942public virtual BoundNode? VisitDagValueTest(BoundDagValueTest node) => this.DefaultVisit(node);
9943public virtual BoundNode? VisitDagRelationalTest(BoundDagRelationalTest node) => this.DefaultVisit(node);
9944public virtual BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node) => this.DefaultVisit(node);
9945public virtual BoundNode? VisitDagTypeEvaluation(BoundDagTypeEvaluation node) => this.DefaultVisit(node);
9946public virtual BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node) => this.DefaultVisit(node);
9947public virtual BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node) => this.DefaultVisit(node);
9948public virtual BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node) => this.DefaultVisit(node);
9949public virtual BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node) => this.DefaultVisit(node);
9950public virtual BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node) => this.DefaultVisit(node);
9951public virtual BoundNode? VisitDagAssignmentEvaluation(BoundDagAssignmentEvaluation node) => this.DefaultVisit(node);
9952public virtual BoundNode? VisitDagPassThroughEvaluation(BoundDagPassThroughEvaluation node) => this.DefaultVisit(node);
9953public virtual BoundNode? VisitSwitchSection(BoundSwitchSection node) => this.DefaultVisit(node);
9954public virtual BoundNode? VisitSwitchLabel(BoundSwitchLabel node) => this.DefaultVisit(node);
9955public virtual BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node) => this.DefaultVisit(node);
9956public virtual BoundNode? VisitSequence(BoundSequence node) => this.DefaultVisit(node);
9957public virtual BoundNode? VisitSpillSequence(BoundSpillSequence node) => this.DefaultVisit(node);
9958public virtual BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node) => this.DefaultVisit(node);
9959public virtual BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node) => this.DefaultVisit(node);
9960public virtual BoundNode? VisitConditionalAccess(BoundConditionalAccess node) => this.DefaultVisit(node);
9961public virtual BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node) => this.DefaultVisit(node);
9962public virtual BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node) => this.DefaultVisit(node);
9963public virtual BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node) => this.DefaultVisit(node);
9964public virtual BoundNode? VisitMethodGroup(BoundMethodGroup node) => this.DefaultVisit(node);
9965public virtual BoundNode? VisitPropertyGroup(BoundPropertyGroup node) => this.DefaultVisit(node);
9966public virtual BoundNode? VisitCall(BoundCall node) => this.DefaultVisit(node);
9967public virtual BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node) => this.DefaultVisit(node);
9968public virtual BoundNode? VisitAttribute(BoundAttribute node) => this.DefaultVisit(node);
9969public virtual BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node) => this.DefaultVisit(node);
9970public virtual BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node) => this.DefaultVisit(node);
9971public virtual BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node) => this.DefaultVisit(node);
9972public virtual BoundNode? VisitUnconvertedWithElement(BoundUnconvertedWithElement node) => this.DefaultVisit(node);
9973public virtual BoundNode? VisitCollectionExpression(BoundCollectionExpression node) => this.DefaultVisit(node);
9974public virtual BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node) => this.DefaultVisit(node);
9975public virtual BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node) => this.DefaultVisit(node);
9976public virtual BoundNode? VisitTupleLiteral(BoundTupleLiteral node) => this.DefaultVisit(node);
9977public virtual BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node) => this.DefaultVisit(node);
9978public virtual BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node) => this.DefaultVisit(node);
9979public virtual BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node) => this.DefaultVisit(node);
9980public virtual BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node) => this.DefaultVisit(node);
9981public virtual BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node) => this.DefaultVisit(node);
9982public virtual BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node) => this.DefaultVisit(node);
9983public virtual BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node) => this.DefaultVisit(node);
9984public virtual BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node) => this.DefaultVisit(node);
9985public virtual BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node) => this.DefaultVisit(node);
9986public virtual BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node) => this.DefaultVisit(node);
9987public virtual BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node) => this.DefaultVisit(node);
9988public virtual BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node) => this.DefaultVisit(node);
9989public virtual BoundNode? VisitNewT(BoundNewT node) => this.DefaultVisit(node);
9990public virtual BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node) => this.DefaultVisit(node);
9991public virtual BoundNode? VisitArrayCreation(BoundArrayCreation node) => this.DefaultVisit(node);
9992public virtual BoundNode? VisitArrayInitialization(BoundArrayInitialization node) => this.DefaultVisit(node);
9993public virtual BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node) => this.DefaultVisit(node);
9994public virtual BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node) => this.DefaultVisit(node);
9995public virtual BoundNode? VisitFieldAccess(BoundFieldAccess node) => this.DefaultVisit(node);
9996public virtual BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node) => this.DefaultVisit(node);
9997public virtual BoundNode? VisitPropertyAccess(BoundPropertyAccess node) => this.DefaultVisit(node);
9998public virtual BoundNode? VisitEventAccess(BoundEventAccess node) => this.DefaultVisit(node);
9999public virtual BoundNode? VisitIndexerAccess(BoundIndexerAccess node) => this.DefaultVisit(node);
10000public virtual BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node) => this.DefaultVisit(node);
10001public virtual BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node) => this.DefaultVisit(node);
10002public virtual BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node) => this.DefaultVisit(node);
10003public virtual BoundNode? VisitLambda(BoundLambda node) => this.DefaultVisit(node);
10004public virtual BoundNode? VisitUnboundLambda(UnboundLambda node) => this.DefaultVisit(node);
10005public virtual BoundNode? VisitQueryClause(BoundQueryClause node) => this.DefaultVisit(node);
10006public virtual BoundNode? VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node) => this.DefaultVisit(node);
10007public virtual BoundNode? VisitNameOfOperator(BoundNameOfOperator node) => this.DefaultVisit(node);
10008public virtual BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node) => this.DefaultVisit(node);
10009public virtual BoundNode? VisitInterpolatedString(BoundInterpolatedString node) => this.DefaultVisit(node);
10010public virtual BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node) => this.DefaultVisit(node);
10011public virtual BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node) => this.DefaultVisit(node);
10012public virtual BoundNode? VisitStringInsert(BoundStringInsert node) => this.DefaultVisit(node);
10013public virtual BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node) => this.DefaultVisit(node);
10014public virtual BoundNode? VisitConstantPattern(BoundConstantPattern node) => this.DefaultVisit(node);
10015public virtual BoundNode? VisitPatternWithUnionMatching(BoundPatternWithUnionMatching node) => this.DefaultVisit(node);
10016public virtual BoundNode? VisitDiscardPattern(BoundDiscardPattern node) => this.DefaultVisit(node);
10017public virtual BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node) => this.DefaultVisit(node);
10018public virtual BoundNode? VisitRecursivePattern(BoundRecursivePattern node) => this.DefaultVisit(node);
10019public virtual BoundNode? VisitListPattern(BoundListPattern node) => this.DefaultVisit(node);
10020public virtual BoundNode? VisitSlicePattern(BoundSlicePattern node) => this.DefaultVisit(node);
10021public virtual BoundNode? VisitITuplePattern(BoundITuplePattern node) => this.DefaultVisit(node);
10022public virtual BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node) => this.DefaultVisit(node);
10023public virtual BoundNode? VisitPropertySubpattern(BoundPropertySubpattern node) => this.DefaultVisit(node);
10024public virtual BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node) => this.DefaultVisit(node);
10025public virtual BoundNode? VisitTypePattern(BoundTypePattern node) => this.DefaultVisit(node);
10026public virtual BoundNode? VisitBinaryPattern(BoundBinaryPattern node) => this.DefaultVisit(node);
10027public virtual BoundNode? VisitNegatedPattern(BoundNegatedPattern node) => this.DefaultVisit(node);
10028public virtual BoundNode? VisitRelationalPattern(BoundRelationalPattern node) => this.DefaultVisit(node);
10029public virtual BoundNode? VisitDiscardExpression(BoundDiscardExpression node) => this.DefaultVisit(node);
10030public virtual BoundNode? VisitThrowExpression(BoundThrowExpression node) => this.DefaultVisit(node);
10031public virtual BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node) => this.DefaultVisit(node);
10032public virtual BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node) => this.DefaultVisit(node);
10033public virtual BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node) => this.DefaultVisit(node);
10034public virtual BoundNode? VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node) => this.DefaultVisit(node);
10035public virtual BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node) => this.DefaultVisit(node);
10036public virtual BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node) => this.DefaultVisit(node);
10037public virtual BoundNode? VisitValueForNullableAnalysis(BoundValueForNullableAnalysis node) => this.DefaultVisit(node);
10038public virtual BoundNode? VisitWithExpression(BoundWithExpression node) => this.DefaultVisit(node);
10043public override BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node)
10048public override BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node)
10053public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node)
10058public override BoundNode? VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node)
10063public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node) => null;
10064public override BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node)
10069public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node) => null;
10070public override BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node) => null;
10071public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node) => null;
10072public override BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node) => null;
10073public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node) => null;
10074public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node) => null;
10075public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node)
10080public override BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node) => null;
10081public override BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node) => null;
10082public override BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node) => null;
10083public override BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node) => null;
10084public override BoundNode? VisitCollectionBuilderElementsPlaceholder(BoundCollectionBuilderElementsPlaceholder node) => null;
10085public override BoundNode? VisitDup(BoundDup node) => null;
10086public override BoundNode? VisitPassByCopy(BoundPassByCopy node)
10091public override BoundNode? VisitBadExpression(BoundBadExpression node)
10096public override BoundNode? VisitBadStatement(BoundBadStatement node)
10101public override BoundNode? VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node)
10106public override BoundNode? VisitTypeExpression(BoundTypeExpression node)
10112public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node) => null;
10113public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node) => null;
10114public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node)
10119public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node)
10124public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node)
10129public override BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node)
10134public override BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node) => null;
10135public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
10140public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node)
10146public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
10152public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node)
10157public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node)
10162public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node)
10167public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
10172public override BoundNode? VisitRangeExpression(BoundRangeExpression node)
10178public override BoundNode? VisitBinaryOperator(BoundBinaryOperator node)
10184public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
10190public override BoundNode? VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node)
10196public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
10202public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
10208public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
10214public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
10220public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
10226public override BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node)
10233public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node)
10240public override BoundNode? VisitArrayAccess(BoundArrayAccess node)
10246public override BoundNode? VisitRefAccess(BoundRefAccess node)
10251public override BoundNode? VisitArrayLength(BoundArrayLength node)
10256public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node)
10264public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
10270public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node)
10275public override BoundNode? VisitBlockInstrumentation(BoundBlockInstrumentation node)
10281public override BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node) => null;
10282public override BoundNode? VisitLocalId(BoundLocalId node) => null;
10283public override BoundNode? VisitParameterId(BoundParameterId node) => null;
10284public override BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node) => null;
10285public override BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node) => null;
10286public override BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node) => null;
10287public override BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node) => null;
10288public override BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node) => null;
10289public override BoundNode? VisitModuleVersionId(BoundModuleVersionId node) => null;
10290public override BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node) => null;
10291public override BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node) => null;
10292public override BoundNode? VisitMethodInfo(BoundMethodInfo node) => null;
10293public override BoundNode? VisitFieldInfo(BoundFieldInfo node) => null;
10294public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node) => null;
10295public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node) => null;
10296public override BoundNode? VisitIsOperator(BoundIsOperator node)
10302public override BoundNode? VisitAsOperator(BoundAsOperator node)
10308public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node)
10313public override BoundNode? VisitConversion(BoundConversion node)
10318public override BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node)
10323public override BoundNode? VisitArgList(BoundArgList node) => null;
10324public override BoundNode? VisitArgListOperator(BoundArgListOperator node)
10329public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
10334public override BoundNode? VisitSequencePoint(BoundSequencePoint node)
10339public override BoundNode? VisitSequencePointWithSpan(BoundSequencePointWithSpan node)
10344public override BoundNode? VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node) => null;
10345public override BoundNode? VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node) => null;
10346public override BoundNode? VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node) => null;
10347public override BoundNode? VisitBlock(BoundBlock node)
10353public override BoundNode? VisitScope(BoundScope node)
10358public override BoundNode? VisitStateMachineScope(BoundStateMachineScope node)
10363public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node)
10370public override BoundNode? VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node)
10375public override BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node)
10381public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
10387public override BoundNode? VisitNoOpStatement(BoundNoOpStatement node) => null;
10388public override BoundNode? VisitReturnStatement(BoundReturnStatement node)
10393public override BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node)
10398public override BoundNode? VisitYieldBreakStatement(BoundYieldBreakStatement node) => null;
10399public override BoundNode? VisitThrowStatement(BoundThrowStatement node)
10404public override BoundNode? VisitExpressionStatement(BoundExpressionStatement node)
10409public override BoundNode? VisitBreakStatement(BoundBreakStatement node)
10414public override BoundNode? VisitContinueStatement(BoundContinueStatement node)
10419public override BoundNode? VisitSwitchStatement(BoundSwitchStatement node)
10426public override BoundNode? VisitSwitchDispatch(BoundSwitchDispatch node)
10431public override BoundNode? VisitIfStatement(BoundIfStatement node)
10438public override BoundNode? VisitDoStatement(BoundDoStatement node)
10444public override BoundNode? VisitWhileStatement(BoundWhileStatement node)
10450public override BoundNode? VisitForStatement(BoundForStatement node)
10458public override BoundNode? VisitForEachStatement(BoundForEachStatement node)
10467public override BoundNode? VisitForEachDeconstructStep(BoundForEachDeconstructStep node)
10473public override BoundNode? VisitUsingStatement(BoundUsingStatement node)
10481public override BoundNode? VisitFixedStatement(BoundFixedStatement node)
10487public override BoundNode? VisitLockStatement(BoundLockStatement node)
10493public override BoundNode? VisitTryStatement(BoundTryStatement node)
10500public override BoundNode? VisitCatchBlock(BoundCatchBlock node)
10508public override BoundNode? VisitLiteral(BoundLiteral node) => null;
10509public override BoundNode? VisitUtf8String(BoundUtf8String node) => null;
10510public override BoundNode? VisitThisReference(BoundThisReference node) => null;
10511public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node) => null;
10512public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node) => null;
10513public override BoundNode? VisitBaseReference(BoundBaseReference node) => null;
10514public override BoundNode? VisitLocal(BoundLocal node) => null;
10515public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node) => null;
10516public override BoundNode? VisitRangeVariable(BoundRangeVariable node)
10521public override BoundNode? VisitParameter(BoundParameter node) => null;
10522public override BoundNode? VisitLabelStatement(BoundLabelStatement node) => null;
10523public override BoundNode? VisitGotoStatement(BoundGotoStatement node)
10529public override BoundNode? VisitLabeledStatement(BoundLabeledStatement node)
10534public override BoundNode? VisitLabel(BoundLabel node) => null;
10535public override BoundNode? VisitStatementList(BoundStatementList node)
10540public override BoundNode? VisitConditionalGoto(BoundConditionalGoto node)
10545public override BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node)
10552public override BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node)
10558public override BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node)
10564public override BoundNode? VisitDecisionDag(BoundDecisionDag node)
10569public override BoundNode? VisitEvaluationDecisionDagNode(BoundEvaluationDecisionDagNode node)
10575public override BoundNode? VisitTestDecisionDagNode(BoundTestDecisionDagNode node)
10582public override BoundNode? VisitWhenDecisionDagNode(BoundWhenDecisionDagNode node)
10589public override BoundNode? VisitLeafDecisionDagNode(BoundLeafDecisionDagNode node) => null;
10590public override BoundNode? VisitDagTemp(BoundDagTemp node)
10595public override BoundNode? VisitDagTypeTest(BoundDagTypeTest node)
10600public override BoundNode? VisitDagNonNullTest(BoundDagNonNullTest node)
10605public override BoundNode? VisitDagExplicitNullTest(BoundDagExplicitNullTest node)
10610public override BoundNode? VisitDagValueTest(BoundDagValueTest node)
10615public override BoundNode? VisitDagRelationalTest(BoundDagRelationalTest node)
10620public override BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node)
10625public override BoundNode? VisitDagTypeEvaluation(BoundDagTypeEvaluation node)
10630public override BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node)
10635public override BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node)
10640public override BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node)
10645public override BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node)
10654public override BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node)
10663public override BoundNode? VisitDagAssignmentEvaluation(BoundDagAssignmentEvaluation node)
10669public override BoundNode? VisitDagPassThroughEvaluation(BoundDagPassThroughEvaluation node)
10674public override BoundNode? VisitSwitchSection(BoundSwitchSection node)
10680public override BoundNode? VisitSwitchLabel(BoundSwitchLabel node)
10686public override BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node)
10691public override BoundNode? VisitSequence(BoundSequence node)
10697public override BoundNode? VisitSpillSequence(BoundSpillSequence node)
10703public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
10708public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node)
10714public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
10720public override BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node)
10727public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node) => null;
10728public override BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node)
10734public override BoundNode? VisitMethodGroup(BoundMethodGroup node)
10739public override BoundNode? VisitPropertyGroup(BoundPropertyGroup node)
10744public override BoundNode? VisitCall(BoundCall node)
10750public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
10756public override BoundNode? VisitAttribute(BoundAttribute node)
10762public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
10767public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node)
10773public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
10779public override BoundNode? VisitUnconvertedWithElement(BoundUnconvertedWithElement node)
10784public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node)
10790public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node) => null;
10791public override BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node)
10796public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node)
10801public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
10806public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
10812public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
10817public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
10823public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node)
10828public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node) => null;
10829public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
10835public override BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node)
10841public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
10847public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node) => null;
10848public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
10854public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node) => null;
10855public override BoundNode? VisitNewT(BoundNewT node)
10860public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
10865public override BoundNode? VisitArrayCreation(BoundArrayCreation node)
10871public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node)
10876public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
10882public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
10888public override BoundNode? VisitFieldAccess(BoundFieldAccess node)
10893public override BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node) => null;
10894public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
10899public override BoundNode? VisitEventAccess(BoundEventAccess node)
10904public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
10910public override BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node)
10916public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node)
10922public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
10928public override BoundNode? VisitLambda(BoundLambda node)
10933public override BoundNode? VisitUnboundLambda(UnboundLambda node) => null;
10934public override BoundNode? VisitQueryClause(BoundQueryClause node)
10939public override BoundNode? VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node)
10944public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node)
10949public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
10954public override BoundNode? VisitInterpolatedString(BoundInterpolatedString node)
10959public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node) => null;
10960public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node) => null;
10961public override BoundNode? VisitStringInsert(BoundStringInsert node)
10968public override BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node)
10974public override BoundNode? VisitConstantPattern(BoundConstantPattern node)
10979public override BoundNode? VisitPatternWithUnionMatching(BoundPatternWithUnionMatching node)
10986public override BoundNode? VisitDiscardPattern(BoundDiscardPattern node) => null;
10987public override BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node)
10993public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node)
11001public override BoundNode? VisitListPattern(BoundListPattern node)
11007public override BoundNode? VisitSlicePattern(BoundSlicePattern node)
11012public override BoundNode? VisitITuplePattern(BoundITuplePattern node)
11017public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node)
11022public override BoundNode? VisitPropertySubpattern(BoundPropertySubpattern node)
11028public override BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node)
11033public override BoundNode? VisitTypePattern(BoundTypePattern node)
11038public override BoundNode? VisitBinaryPattern(BoundBinaryPattern node)
11044public override BoundNode? VisitNegatedPattern(BoundNegatedPattern node)
11049public override BoundNode? VisitRelationalPattern(BoundRelationalPattern node)
11054public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node) => null;
11055public override BoundNode? VisitThrowExpression(BoundThrowExpression node)
11060public override BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node)
11065public override BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node)
11070public override BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node) => null;
11071public override BoundNode? VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node)
11077public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node)
11084public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node)
11089public override BoundNode? VisitValueForNullableAnalysis(BoundValueForNullableAnalysis node)
11094public override BoundNode? VisitWithExpression(BoundWithExpression node)
11104public override BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node)
11111public override BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node)
11118public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node)
11125public override BoundNode? VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node)
11130public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node)
11135public override BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node)
11141public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node)
11147public override BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node)
11152public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
11157public override BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node)
11162public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node)
11167public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node)
11172public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node)
11178public override BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node)
11183public override BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node)
11188public override BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node)
11193public override BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node)
11198public override BoundNode? VisitCollectionBuilderElementsPlaceholder(BoundCollectionBuilderElementsPlaceholder node)
11203public override BoundNode? VisitDup(BoundDup node)
11208public override BoundNode? VisitPassByCopy(BoundPassByCopy node)
11214public override BoundNode? VisitBadExpression(BoundBadExpression node)
11221public override BoundNode? VisitBadStatement(BoundBadStatement node)
11223ImmutableArray<BoundNode> childBoundNodes = this.VisitList(node.ChildBoundNodes);
11226public override BoundNode? VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node)
11231public override BoundNode? VisitTypeExpression(BoundTypeExpression node)
11239public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node)
11245public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node)
11252public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node)
11261public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node)
11274public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node)
11280public override BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node)
11286public override BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node)
11293public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
11299public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node)
11306public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
11313public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node)
11320public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node)
11326public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node)
11332public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
11339public override BoundNode? VisitRangeExpression(BoundRangeExpression node)
11347public override BoundNode? VisitBinaryOperator(BoundBinaryOperator node)
11354public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
11361public override BoundNode? VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node)
11375public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
11387public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
11394public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
11401public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
11410public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
11417public override BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node)
11425public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node)
11434public override BoundNode? VisitArrayAccess(BoundArrayAccess node)
11441public override BoundNode? VisitRefAccess(BoundRefAccess node)
11447public override BoundNode? VisitArrayLength(BoundArrayLength node)
11453public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node)
11463public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
11470public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node)
11477public override BoundNode? VisitBlockInstrumentation(BoundBlockInstrumentation node)
11484public override BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node)
11490public override BoundNode? VisitLocalId(BoundLocalId node)
11497public override BoundNode? VisitParameterId(BoundParameterId node)
11504public override BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node)
11509public override BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node)
11514public override BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node)
11519public override BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node)
11524public override BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node)
11529public override BoundNode? VisitModuleVersionId(BoundModuleVersionId node)
11534public override BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node)
11539public override BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node)
11544public override BoundNode? VisitMethodInfo(BoundMethodInfo node)
11551public override BoundNode? VisitFieldInfo(BoundFieldInfo node)
11558public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node)
11563public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node)
11569public override BoundNode? VisitIsOperator(BoundIsOperator node)
11576public override BoundNode? VisitAsOperator(BoundAsOperator node)
11585public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node)
11591public override BoundNode? VisitConversion(BoundConversion node)
11597public override BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node)
11604public override BoundNode? VisitArgList(BoundArgList node)
11609public override BoundNode? VisitArgListOperator(BoundArgListOperator node)
11615public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
11625public override BoundNode? VisitSequencePoint(BoundSequencePoint node)
11630public override BoundNode? VisitSequencePointWithSpan(BoundSequencePointWithSpan node)
11635public override BoundNode? VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node) => node;
11636public override BoundNode? VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node) => node;
11637public override BoundNode? VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node) => node;
11638public override BoundNode? VisitBlock(BoundBlock node)
11646public override BoundNode? VisitScope(BoundScope node)
11652public override BoundNode? VisitStateMachineScope(BoundStateMachineScope node)
11658public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node)
11666public override BoundNode? VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node)
11671public override BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node)
11677public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
11684public override BoundNode? VisitNoOpStatement(BoundNoOpStatement node) => node;
11685public override BoundNode? VisitReturnStatement(BoundReturnStatement node)
11690public override BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node)
11695public override BoundNode? VisitYieldBreakStatement(BoundYieldBreakStatement node) => node;
11696public override BoundNode? VisitThrowStatement(BoundThrowStatement node)
11701public override BoundNode? VisitExpressionStatement(BoundExpressionStatement node)
11706public override BoundNode? VisitBreakStatement(BoundBreakStatement node)
11712public override BoundNode? VisitContinueStatement(BoundContinueStatement node)
11718public override BoundNode? VisitSwitchStatement(BoundSwitchStatement node)
11729public override BoundNode? VisitSwitchDispatch(BoundSwitchDispatch node)
11735public override BoundNode? VisitIfStatement(BoundIfStatement node)
11742public override BoundNode? VisitDoStatement(BoundDoStatement node)
11751public override BoundNode? VisitWhileStatement(BoundWhileStatement node)
11760public override BoundNode? VisitForStatement(BoundForStatement node)
11772public override BoundNode? VisitForEachStatement(BoundForEachStatement node)
11786public override BoundNode? VisitForEachDeconstructStep(BoundForEachDeconstructStep node)
11792public override BoundNode? VisitUsingStatement(BoundUsingStatement node)
11801public override BoundNode? VisitFixedStatement(BoundFixedStatement node)
11808public override BoundNode? VisitLockStatement(BoundLockStatement node)
11814public override BoundNode? VisitTryStatement(BoundTryStatement node)
11822public override BoundNode? VisitCatchBlock(BoundCatchBlock node)
11832public override BoundNode? VisitLiteral(BoundLiteral node)
11837public override BoundNode? VisitUtf8String(BoundUtf8String node)
11842public override BoundNode? VisitThisReference(BoundThisReference node)
11847public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node)
11852public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node)
11857public override BoundNode? VisitBaseReference(BoundBaseReference node)
11862public override BoundNode? VisitLocal(BoundLocal node)
11868public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node)
11874public override BoundNode? VisitRangeVariable(BoundRangeVariable node)
11881public override BoundNode? VisitParameter(BoundParameter node)
11887public override BoundNode? VisitLabelStatement(BoundLabelStatement node)
11892public override BoundNode? VisitGotoStatement(BoundGotoStatement node)
11899public override BoundNode? VisitLabeledStatement(BoundLabeledStatement node)
11905public override BoundNode? VisitLabel(BoundLabel node)
11911public override BoundNode? VisitStatementList(BoundStatementList node)
11916public override BoundNode? VisitConditionalGoto(BoundConditionalGoto node)
11922public override BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node)
11931public override BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node)
11940public override BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node)
11950public override BoundNode? VisitDecisionDag(BoundDecisionDag node)
11955public override BoundNode? VisitEvaluationDecisionDagNode(BoundEvaluationDecisionDagNode node)
11961public override BoundNode? VisitTestDecisionDagNode(BoundTestDecisionDagNode node)
11968public override BoundNode? VisitWhenDecisionDagNode(BoundWhenDecisionDagNode node)
11975public override BoundNode? VisitLeafDecisionDagNode(BoundLeafDecisionDagNode node)
11980public override BoundNode? VisitDagTemp(BoundDagTemp node)
11986public override BoundNode? VisitDagTypeTest(BoundDagTypeTest node)
11992public override BoundNode? VisitDagNonNullTest(BoundDagNonNullTest node)
11997public override BoundNode? VisitDagExplicitNullTest(BoundDagExplicitNullTest node)
12002public override BoundNode? VisitDagValueTest(BoundDagValueTest node)
12007public override BoundNode? VisitDagRelationalTest(BoundDagRelationalTest node)
12012public override BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node)
12018public override BoundNode? VisitDagTypeEvaluation(BoundDagTypeEvaluation node)
12024public override BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node)
12030public override BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node)
12036public override BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node)
12042public override BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node)
12052public override BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node)
12062public override BoundNode? VisitDagAssignmentEvaluation(BoundDagAssignmentEvaluation node)
12068public override BoundNode? VisitDagPassThroughEvaluation(BoundDagPassThroughEvaluation node)
12073public override BoundNode? VisitSwitchSection(BoundSwitchSection node)
12080public override BoundNode? VisitSwitchLabel(BoundSwitchLabel node)
12087public override BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node)
12093public override BoundNode? VisitSequence(BoundSequence node)
12101public override BoundNode? VisitSpillSequence(BoundSpillSequence node)
12109public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
12115public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node)
12123public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
12130public override BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node)
12139public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node)
12144public override BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node)
12151public override BoundNode? VisitMethodGroup(BoundMethodGroup node)
12160public override BoundNode? VisitPropertyGroup(BoundPropertyGroup node)
12167public override BoundNode? VisitCall(BoundCall node)
12176public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
12184public override BoundNode? VisitAttribute(BoundAttribute node)
12192public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
12198public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node)
12207public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
12210ImmutableArray<BoundNode> elements = this.VisitList(node.Elements);
12214public override BoundNode? VisitUnconvertedWithElement(BoundUnconvertedWithElement node)
12219public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node)
12226ImmutableArray<BoundNode> elements = this.VisitList(node.Elements);
12230public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node)
12235public override BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node)
12245public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node)
12251public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
12258public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
12266public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
12272public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
12279public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node)
12287public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
12293public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
12300public override BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node)
12308public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
12316public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node)
12321public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
12329public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node)
12335public override BoundNode? VisitNewT(BoundNewT node)
12341public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
12348public override BoundNode? VisitArrayCreation(BoundArrayCreation node)
12355public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node)
12361public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
12369public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
12377public override BoundNode? VisitFieldAccess(BoundFieldAccess node)
12384public override BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node)
12390public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
12397public override BoundNode? VisitEventAccess(BoundEventAccess node)
12404public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
12413public override BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node)
12424public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node)
12431public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
12439public override BoundNode? VisitLambda(BoundLambda node)
12447public override BoundNode? VisitUnboundLambda(UnboundLambda node)
12453public override BoundNode? VisitQueryClause(BoundQueryClause node)
12463public override BoundNode? VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node)
12468public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node)
12474public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
12480public override BoundNode? VisitInterpolatedString(BoundInterpolatedString node)
12486public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node)
12491public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node)
12496public override BoundNode? VisitStringInsert(BoundStringInsert node)
12504public override BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node)
12514public override BoundNode? VisitConstantPattern(BoundConstantPattern node)
12521public override BoundNode? VisitPatternWithUnionMatching(BoundPatternWithUnionMatching node)
12531public override BoundNode? VisitDiscardPattern(BoundDiscardPattern node)
12537public override BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node)
12546public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node)
12558public override BoundNode? VisitListPattern(BoundListPattern node)
12571public override BoundNode? VisitSlicePattern(BoundSlicePattern node)
12581public override BoundNode? VisitITuplePattern(BoundITuplePattern node)
12590public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node)
12596public override BoundNode? VisitPropertySubpattern(BoundPropertySubpattern node)
12602public override BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node)
12609public override BoundNode? VisitTypePattern(BoundTypePattern node)
12616public override BoundNode? VisitBinaryPattern(BoundBinaryPattern node)
12624public override BoundNode? VisitNegatedPattern(BoundNegatedPattern node)
12631public override BoundNode? VisitRelationalPattern(BoundRelationalPattern node)
12638public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node)
12643public override BoundNode? VisitThrowExpression(BoundThrowExpression node)
12649public override BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node)
12656public override BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node)
12663public override BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node)
12669public override BoundNode? VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node)
12675public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node)
12683public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node)
12689public override BoundNode? VisitValueForNullableAnalysis(BoundValueForNullableAnalysis node)
12695public override BoundNode? VisitWithExpression(BoundWithExpression node)
12718public override BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node)
12726public override BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node)
12734public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node)
12742public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node)
12754public override BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node)
12771public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node)
12788public override BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node)
12800public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
12812public override BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node)
12824public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node)
12836public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node)
12848public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node)
12865public override BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node)
12877public override BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node)
12889public override BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node)
12901public override BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node)
12913public override BoundNode? VisitCollectionBuilderElementsPlaceholder(BoundCollectionBuilderElementsPlaceholder node)
12925public override BoundNode? VisitDup(BoundDup node)
12937public override BoundNode? VisitPassByCopy(BoundPassByCopy node)
12954public override BoundNode? VisitBadExpression(BoundBadExpression node)
12972public override BoundNode? VisitTypeExpression(BoundTypeExpression node)
12990public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node)
13007public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node)
13019public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node)
13039public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node)
13063public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node)
13080public override BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node)
13097public override BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node)
13115public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node)
13132public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node)
13150public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
13168public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node)
13186public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node)
13203public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node)
13220public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
13238public override BoundNode? VisitRangeExpression(BoundRangeExpression node)
13257public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
13275public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
13293public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node)
13311public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node)
13331public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
13349public override BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node)
13368public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node)
13388public override BoundNode? VisitArrayAccess(BoundArrayAccess node)
13406public override BoundNode? VisitRefAccess(BoundRefAccess node)
13423public override BoundNode? VisitArrayLength(BoundArrayLength node)
13440public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node)
13451public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
13469public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node)
13487public override BoundNode? VisitBlockInstrumentation(BoundBlockInstrumentation node)
13495public override BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node)
13512public override BoundNode? VisitLocalId(BoundLocalId node)
13530public override BoundNode? VisitParameterId(BoundParameterId node)
13548public override BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node)
13560public override BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node)
13572public override BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node)
13584public override BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node)
13596public override BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node)
13608public override BoundNode? VisitModuleVersionId(BoundModuleVersionId node)
13620public override BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node)
13632public override BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node)
13644public override BoundNode? VisitMethodInfo(BoundMethodInfo node)
13662public override BoundNode? VisitFieldInfo(BoundFieldInfo node)
13680public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node)
13692public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node)
13709public override BoundNode? VisitIsOperator(BoundIsOperator node)
13727public override BoundNode? VisitAsOperator(BoundAsOperator node)
13747public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node)
13764public override BoundNode? VisitConversion(BoundConversion node)
13781public override BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node)
13799public override BoundNode? VisitArgList(BoundArgList node)
13811public override BoundNode? VisitArgListOperator(BoundArgListOperator node)
13828public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
13849public override BoundNode? VisitBlock(BoundBlock node)
13858public override BoundNode? VisitScope(BoundScope node)
13865public override BoundNode? VisitStateMachineScope(BoundStateMachineScope node)
13872public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node)
13881public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
13889public override BoundNode? VisitSwitchStatement(BoundSwitchStatement node)
13900public override BoundNode? VisitDoStatement(BoundDoStatement node)
13908public override BoundNode? VisitWhileStatement(BoundWhileStatement node)
13916public override BoundNode? VisitForStatement(BoundForStatement node)
13927public override BoundNode? VisitForEachStatement(BoundForEachStatement node)
13940public override BoundNode? VisitUsingStatement(BoundUsingStatement node)
13950public override BoundNode? VisitFixedStatement(BoundFixedStatement node)
13958public override BoundNode? VisitCatchBlock(BoundCatchBlock node)
13969public override BoundNode? VisitLiteral(BoundLiteral node)
13981public override BoundNode? VisitUtf8String(BoundUtf8String node)
13993public override BoundNode? VisitThisReference(BoundThisReference node)
14005public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node)
14017public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node)
14029public override BoundNode? VisitBaseReference(BoundBaseReference node)
14041public override BoundNode? VisitLocal(BoundLocal node)
14058public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node)
14075public override BoundNode? VisitRangeVariable(BoundRangeVariable node)
14093public override BoundNode? VisitParameter(BoundParameter node)
14110public override BoundNode? VisitLabel(BoundLabel node)
14122public override BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node)
14131public override BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node)
14150public override BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node)
14170public override BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node)
14177public override BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node)
14184public override BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node)
14191public override BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node)
14198public override BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node)
14209public override BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node)
14220public override BoundNode? VisitSwitchSection(BoundSwitchSection node)
14228public override BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node)
14245public override BoundNode? VisitSequence(BoundSequence node)
14264public override BoundNode? VisitSpillSequence(BoundSpillSequence node)
14283public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
14300public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node)
14319public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node)
14337public override BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node)
14357public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node)
14369public override BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node)
14387public override BoundNode? VisitMethodGroup(BoundMethodGroup node)
14407public override BoundNode? VisitPropertyGroup(BoundPropertyGroup node)
14425public override BoundNode? VisitCall(BoundCall node)
14445public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node)
14464public override BoundNode? VisitAttribute(BoundAttribute node)
14483public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node)
14500public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node)
14520public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node)
14523ImmutableArray<BoundNode> elements = this.VisitList(node.Elements);
14538public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node)
14545ImmutableArray<BoundNode> elements = this.VisitList(node.Elements);
14560public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node)
14572public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node)
14589public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node)
14607public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node)
14626public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
14643public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node)
14661public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node)
14680public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
14697public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node)
14715public override BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node)
14734public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node)
14753public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node)
14765public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
14784public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node)
14801public override BoundNode? VisitNewT(BoundNewT node)
14818public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
14836public override BoundNode? VisitArrayCreation(BoundArrayCreation node)
14854public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node)
14871public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node)
14890public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node)
14909public override BoundNode? VisitFieldAccess(BoundFieldAccess node)
14927public override BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node)
14944public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node)
14962public override BoundNode? VisitEventAccess(BoundEventAccess node)
14980public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node)
15000public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node)
15018public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
15037public override BoundNode? VisitLambda(BoundLambda node)
15056public override BoundNode? VisitUnboundLambda(UnboundLambda node)
15073public override BoundNode? VisitQueryClause(BoundQueryClause node)
15094public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node)
15111public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node)
15128public override BoundNode? VisitInterpolatedString(BoundInterpolatedString node)
15145public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node)
15157public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node)
15169public override BoundNode? VisitStringInsert(BoundStringInsert node)
15188public override BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node)
15207public override BoundNode? VisitConstantPattern(BoundConstantPattern node)
15215public override BoundNode? VisitPatternWithUnionMatching(BoundPatternWithUnionMatching node)
15226public override BoundNode? VisitDiscardPattern(BoundDiscardPattern node)
15233public override BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node)
15243public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node)
15256public override BoundNode? VisitListPattern(BoundListPattern node)
15270public override BoundNode? VisitSlicePattern(BoundSlicePattern node)
15281public override BoundNode? VisitITuplePattern(BoundITuplePattern node)
15291public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node)
15298public override BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node)
15305public override BoundNode? VisitTypePattern(BoundTypePattern node)
15313public override BoundNode? VisitNegatedPattern(BoundNegatedPattern node)
15321public override BoundNode? VisitRelationalPattern(BoundRelationalPattern node)
15329public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node)
15341public override BoundNode? VisitThrowExpression(BoundThrowExpression node)
15358public override BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node)
15376public override BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node)
15394public override BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node)
15411public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node)
15420public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node)
15437public override BoundNode? VisitValueForNullableAnalysis(BoundValueForNullableAnalysis node)
15454public override BoundNode? VisitWithExpression(BoundWithExpression node)
15479public 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);
115public override BoundNode? Visit(BoundNode? node)
120var result = base.Visit(node);
128var result = Visit(node);
132public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
160var call = Visit(awaitableInfo.RuntimeAsyncAwaitCall);
314public override BoundNode VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node)
319public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node)
369private bool TryReplaceWithProxy(Symbol localOrParameter, SyntaxNode syntax, [NotNullWhen(true)] out BoundNode? replacement)
381public override BoundNode VisitLocal(BoundLocal node)
383if (TryReplaceWithProxy(node.LocalSymbol, node.Syntax, out BoundNode? replacement))
392public override BoundNode? VisitParameter(BoundParameter node)
394if (TryReplaceWithProxy(node.ParameterSymbol, node.Syntax, out BoundNode? replacement))
406public override BoundNode? VisitThisReference(BoundThisReference node)
411if (TryReplaceWithProxy(thisParameter, node.Syntax, out BoundNode? replacement))
420public 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);