18 types derived from BoundNode
Microsoft.CodeAnalysis.CSharp (18)
Generated\BoundNodes.xml.Generated.cs (18)
275internal abstract partial class BoundInitializer : BoundNode 424internal abstract partial class BoundExpression : BoundNode 2138internal sealed partial class BoundAwaitableInfo : BoundNode 2259internal sealed partial class BoundBlockInstrumentation : BoundNode 3131internal abstract partial class BoundStatement : BoundNode 4085internal sealed partial class BoundForEachDeconstructStep : BoundNode 4257internal sealed partial class BoundCatchBlock : BoundNode 4901internal sealed partial class BoundSwitchExpressionArm : BoundNode 5002internal sealed partial class BoundDecisionDag : BoundNode 5030internal abstract partial class BoundDecisionDagNode : BoundNode 5181internal abstract partial class BoundDagTest : BoundNode 5195internal sealed partial class BoundDagTemp : BoundNode 5688internal sealed partial class BoundSwitchLabel : BoundNode 6504internal sealed partial class BoundCollectionExpressionSpreadElement : BoundNode 7987internal abstract partial class BoundPattern : BoundNode 8289internal abstract partial class BoundSubpattern : BoundNode 8361internal sealed partial class BoundPropertySubpatternMember : BoundNode 8692internal abstract partial class BoundMethodBodyBase : BoundNode
2772 references to BoundNode
Microsoft.CodeAnalysis.CSharp (2772)
Binder\Binder_Attributes.cs (2)
880foreach (var element in elements) 887private TypedConstant VisitCollectionExpressionElement(BoundNode node, BindingDiagnosticBag diagnostics, ref bool attrHasErrors, bool curArgumentHasErrors)
Binder\Binder_Conversions.cs (2)
73Debug.Assert(BoundNode.GetConversion(result, placeholder1) == conversion); 79Debug.Assert(BoundNode.GetConversion(result2, placeholder2) == conversion);
Binder\Binder_Expressions.cs (3)
5202var builder = ArrayBuilder<BoundNode>.GetInstance(syntax.Elements.Count); 5209static BoundNode bindElement(CollectionElementSyntax syntax, BindingDiagnosticBag diagnostics, Binder @this, int nestingLevel) 5220static BoundNode bindSpreadElement(SpreadElementSyntax syntax, BindingDiagnosticBag diagnostics, Binder @this)
Binder\Binder_Invocation.cs (1)
1741var unconvertedCollection = new BoundUnconvertedCollectionExpression(node, ImmutableArray<BoundNode>.CastUp(collectionArgs)) { WasCompilerGenerated = true, IsParamsArrayOrCollection = true };
Binder\Binder_Lambda.cs (1)
436where TResult : BoundNode
Binder\Binder_Statements.cs (13)
146result = new BoundBadStatement(node, ImmutableArray<BoundNode>.Empty, hasErrors: true); 520return new BoundBadStatement(node, ImmutableArray.Create<BoundNode>(expression), true); 535ImmutableArray<BoundNode> childNodes; 539childNodes = ImmutableArray.Create<BoundNode>(value); 543childNodes = ImmutableArray<BoundNode>.Empty; 2902return new BoundBadStatement(node, ImmutableArray<BoundNode>.Empty, hasErrors: true); 2913return new BoundBadStatement(node, ImmutableArray<BoundNode>.Empty, hasErrors: true); 3616public virtual BoundNode BindMethodBody(CSharpSyntaxNode syntax, BindingDiagnosticBag diagnostics) 3645private BoundNode BindSimpleProgram(CompilationUnitSyntax compilationUnit, BindingDiagnosticBag diagnostics) 3650private BoundNode BindSimpleProgramCompilationUnit(CompilationUnitSyntax compilationUnit, BindingDiagnosticBag diagnostics) 3674private BoundNode BindPrimaryConstructorBody(TypeDeclarationSyntax typeDecl, BindingDiagnosticBag diagnostics) 3709private BoundNode BindConstructorBody(ConstructorDeclarationSyntax constructor, BindingDiagnosticBag diagnostics) 4019private BoundNode BindMethodBody(CSharpSyntaxNode declaration, BlockSyntax blockBody, ArrowExpressionClauseSyntax expressionBody, BindingDiagnosticBag diagnostics)
Binder\InMethodBinder.cs (1)
30/// This map is used by <see cref="MethodCompiler.BindMethodBody(MethodSymbol, TypeCompilationState, BindingDiagnosticBag, bool, BoundNode?, bool, out ImportChain?, out bool, out bool, out MethodBodySemanticModel.InitialState)"/>
Binder\RefSafetyAnalysis.cs (45)
18internal static void Analyze(CSharpCompilation compilation, MethodSymbol symbol, BoundNode node, BindingDiagnosticBag diagnostics) 249public override BoundNode? VisitBlock(BoundBlock node) 256public override BoundNode? Visit(BoundNode? node) 275private void TrackVisit(BoundNode? node) 304public override BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node) 309public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node) 318public override BoundNode? VisitLambda(BoundLambda node) 326public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node) 332public override BoundNode? VisitForStatement(BoundForStatement node) 339public override BoundNode? VisitUsingStatement(BoundUsingStatement node) 361public override BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node) 373public override BoundNode? VisitFixedStatement(BoundFixedStatement node) 379public override BoundNode? VisitDoStatement(BoundDoStatement node) 385public override BoundNode? VisitWhileStatement(BoundWhileStatement node) 391public override BoundNode? VisitSwitchStatement(BoundSwitchStatement node) 401public override BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node) 409public override BoundNode? VisitSwitchSection(BoundSwitchSection node) 415public override BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node) 421public override BoundNode? VisitCatchBlock(BoundCatchBlock node) 427public override BoundNode? VisitLocal(BoundLocal node) 478public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node) 518public override BoundNode? VisitReturnStatement(BoundReturnStatement node) 528public override BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node) 538public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node) 548public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node) 555public override BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node) 563public override BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node) 579public override BoundNode? VisitListPattern(BoundListPattern node) 585public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node) 591public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node) 604public override BoundNode? VisitPropertySubpattern(BoundPropertySubpattern node) 625public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node) 725public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node) 731public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node) 737public override BoundNode? VisitNewT(BoundNewT node) 743public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node) 827public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node) 833public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node) 858public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node) 881public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node) 899public override BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node) 909public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node) 985var underlyingConversion = BoundNode.GetConversion(placeholderConversion, placeholder); 1042public override BoundNode? VisitForEachStatement(BoundForEachStatement node)
Binder\Semantics\Conversions\Conversions.cs (2)
204foreach (var element in elements) 218Conversion convertElement(BoundNode element, TypeSymbol elementType, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Binder\Semantics\OverloadResolution\MethodTypeInference.cs (2)
659foreach (var element in argument.Elements) 884foreach (var element in argument.Elements)
Binder\Semantics\OverloadResolution\OverloadResolution.cs (10)
3022ImmutableArray<BoundNode> collectionExpressionElements, 3074var element = collectionExpressionElements[i]; 3361public override BoundNode Visit(BoundNode node) 3371protected override BoundNode VisitExpressionOrPatternWithoutStackGuard(BoundNode node) 3376public override BoundNode VisitLocalFunctionStatement(BoundLocalFunctionStatement node) 3382public override BoundNode VisitReturnStatement(BoundReturnStatement node) 3407BoundNode node, 3419BoundNode node,
Binder\SwitchBinder.cs (2)
547childBoundNodes: gotoCaseExpressionOpt != null ? ImmutableArray.Create<BoundNode>(gotoCaseExpressionOpt) : ImmutableArray<BoundNode>.Empty,
BoundTree\BoundExpressionExtensions.cs (1)
168public static void GetExpressionSymbols(this BoundExpression node, ArrayBuilder<Symbol> symbols, BoundNode parent, Binder binder)
BoundTree\BoundNode.cs (29)
66protected new BoundNode MemberwiseClone() 68var result = (BoundNode)base.MemberwiseClone(); 153protected void CopyAttributes(BoundNode original) 368ImmutableArray<BoundNode>.CastUp(collection.Elements.CastArray<BoundExpression>()) == collection.Elements); 385public virtual BoundNode? Accept(BoundTreeVisitor visitor) 393internal BoundNode WithHasErrors() 398BoundNode clone = MemberwiseClone(); 493public static void CheckLocalsDefined(BoundNode root) 530public override BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node) 538public override BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node) 546public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node) 554public override BoundNode? VisitBlock(BoundBlock node) 586public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node) 593public override BoundNode? VisitSequence(BoundSequence node) 601public override BoundNode? VisitSpillSequence(BoundSpillSequence node) 609public override BoundNode? VisitSwitchStatement(BoundSwitchStatement node) 617public override BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node) 625public override BoundNode? VisitSwitchSection(BoundSwitchSection node) 633public override BoundNode? VisitDoStatement(BoundDoStatement node) 641public override BoundNode? VisitWhileStatement(BoundWhileStatement node) 649public override BoundNode? VisitForStatement(BoundForStatement node) 662public override BoundNode? VisitForEachStatement(BoundForEachStatement node) 670public override BoundNode? VisitUsingStatement(BoundUsingStatement node) 678public override BoundNode? VisitFixedStatement(BoundFixedStatement node) 686public override BoundNode? VisitCatchBlock(BoundCatchBlock node) 694public override BoundNode? VisitLocal(BoundLocal node) 701public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node) 708public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node)
BoundTree\BoundNode_Source.cs (2)
24void appendSourceCore(BoundNode node, int indent, Dictionary<SynthesizedLocal, int> tempIdentifiers) 366void appendSource(BoundNode? n)
BoundTree\BoundNodeExtensions.cs (6)
19where T : BoundNode 34public static bool HasErrors([NotNullWhen(true)] this BoundNode? node) 67public static T MakeCompilerGenerated<T>(this T node) where T : BoundNode 92public override BoundNode? Visit(BoundNode? node) => ContainsAwait ? null : base.Visit(node); 94public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node)
BoundTree\BoundTreeRewriter.cs (12)
21public ImmutableArray<T> VisitList<T>(ImmutableArray<T> list) where T : BoundNode 31private ImmutableArray<T> DoVisitList<T>(ImmutableArray<T> list) where T : BoundNode 39var visited = this.Visit(item); 79public override BoundNode? Visit(BoundNode? node) 89protected BoundNode VisitExpressionOrPatternWithStackGuard(BoundNode node) 94protected sealed override BoundNode VisitExpressionOrPatternWithoutStackGuard(BoundNode node) 109public sealed override BoundNode? VisitBinaryOperator(BoundBinaryOperator node) 155public sealed override BoundNode? VisitIfStatement(BoundIfStatement node) 198public sealed override BoundNode? VisitBinaryPattern(BoundBinaryPattern node)
BoundTree\BoundTreeVisitors.cs (16)
23public virtual R Visit(BoundNode node, A arg) 134public virtual R DefaultVisit(BoundNode node, A arg) 147public virtual BoundNode Visit(BoundNode node) 158public virtual BoundNode DefaultVisit(BoundNode node) 165public readonly BoundNode Node; 167public CancelledByStackGuardException(Exception inner, BoundNode node) 183public static Location GetTooLongOrComplexExpressionErrorLocation(BoundNode node) 200protected BoundNode VisitExpressionOrPatternWithStackGuard(ref int recursionDepth, BoundNode node) 203BoundNode result; 239private BoundNode? VisitExpressionOrPatternWithStackGuard(BoundNode node) 254protected abstract BoundNode? VisitExpressionOrPatternWithoutStackGuard(BoundNode node);
BoundTree\BoundTreeWalker.cs (11)
17public void VisitList<T>(ImmutableArray<T> list) where T : BoundNode 71public override BoundNode? Visit(BoundNode? node) 81protected BoundNode VisitExpressionOrPatternWithStackGuard(BoundNode node) 86protected sealed override BoundNode VisitExpressionOrPatternWithoutStackGuard(BoundNode node) 105public sealed override BoundNode? VisitBinaryOperator(BoundBinaryOperator node) 145public sealed override BoundNode? VisitBinaryPattern(BoundBinaryPattern node) 179public sealed override BoundNode? VisitCall(BoundCall node) 233public sealed override BoundNode? VisitIfStatement(BoundIfStatement node)
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);
BoundTree\IBoundInvalidNode.cs (1)
16ImmutableArray<BoundNode> InvalidNodeChildren { get; }
BoundTree\NullabilityRewriter.cs (9)
15protected override BoundNode? VisitExpressionOrPatternWithoutStackGuard(BoundNode node) 20public override BoundNode? VisitBinaryOperator(BoundBinaryOperator node) 25public override BoundNode? VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node) 30public override BoundNode? VisitIfStatement(BoundIfStatement node) 73private BoundNode VisitBinaryOperatorBase(BoundBinaryOperatorBase binaryOperator) 125private T GetUpdatedSymbol<T>(BoundNode expr, T sym) where T : Symbol? 208public override BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node) 228private ImmutableArray<T> GetUpdatedArray<T>(BoundNode expr, ImmutableArray<T> symbols) where T : Symbol?
BoundTree\Statement.cs (9)
12ImmutableArray<BoundNode?> IBoundNodeWithIOperationChildren.Children => this.Children; 18protected virtual ImmutableArray<BoundNode?> Children => ImmutableArray<BoundNode?>.Empty; 23protected override ImmutableArray<BoundNode?> Children => this.ChildBoundNodes!; 25ImmutableArray<BoundNode> IBoundInvalidNode.InvalidNodeChildren => this.ChildBoundNodes; 30protected override ImmutableArray<BoundNode?> Children => ImmutableArray.Create<BoundNode?>(this.Declarations, this.Body); 35protected override ImmutableArray<BoundNode?> Children => ImmutableArray.Create<BoundNode?>(this.Operand);
BoundTree\UnboundLambda.cs (8)
203BoundNode node, Binder binder, TypeSymbol? delegateType, bool isAsync, ConversionsBase conversions, bool withDependencies) 248BoundNode node, 353public override BoundNode? Visit(BoundNode node) 363protected override BoundNode VisitExpressionOrPatternWithoutStackGuard(BoundNode node) 368public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node) 374public override BoundNode? VisitReturnStatement(BoundReturnStatement node)
CodeGen\EmitExpression.cs (3)
620public override BoundNode Visit(BoundNode node) 639public override BoundNode VisitConditionalReceiver(BoundConditionalReceiver node)
CodeGen\EmitStatement.cs (5)
1947public override BoundNode VisitLabelStatement(BoundLabelStatement node) 1952public override BoundNode VisitGotoStatement(BoundGotoStatement node) 1964public override BoundNode VisitConditionalGoto(BoundConditionalGoto node) 1974public override BoundNode VisitSwitchDispatch(BoundSwitchDispatch node) 1996public override BoundNode VisitExpressionStatement(BoundExpressionStatement node)
CodeGen\Optimizer.cs (61)
431public static BoundNode Analyze( 432BoundNode node, 438var rewritten = analyzer.Visit(node); 444public override BoundNode Visit(BoundNode node) 446BoundNode result; 535protected override BoundNode VisitExpressionOrPatternWithoutStackGuard(BoundNode node) 566public BoundNode VisitStatement(BoundNode node) 572public BoundNode VisitSideEffect(BoundNode node) 577var result = base.Visit(node); 593public override BoundNode VisitConversion(BoundConversion node) 602public override BoundNode VisitPassByCopy(BoundPassByCopy node) 613public override BoundNode VisitBlock(BoundBlock node) 650public override BoundNode VisitSequence(BoundSequence node) 816public bool IsLocalUsedIn(BoundNode node) 824public override BoundNode Visit(BoundNode node) 834public override BoundNode VisitLocal(BoundLocal node) 845public override BoundNode VisitExpressionStatement(BoundExpressionStatement node) 851public override BoundNode VisitLocal(BoundLocal node) 896public override BoundNode VisitAssignmentOperator(BoundAssignmentOperator node) 1108public override BoundNode VisitCall(BoundCall node) 1291public override BoundNode VisitArgListOperator(BoundArgListOperator node) 1307public override BoundNode VisitMakeRefOperator(BoundMakeRefOperator node) 1316public override BoundNode VisitObjectCreationExpression(BoundObjectCreationExpression node) 1326public override BoundNode VisitArrayAccess(BoundArrayAccess node) 1333var result = base.VisitArrayAccess(node); 1339public override BoundNode VisitFieldAccess(BoundFieldAccess node) 1381public override BoundNode VisitLabelStatement(BoundLabelStatement node) 1387public override BoundNode VisitLabel(BoundLabel node) 1393public override BoundNode VisitIsPatternExpression(BoundIsPatternExpression node) 1399public override BoundNode VisitGotoStatement(BoundGotoStatement node) 1403var result = base.VisitGotoStatement(node); 1409public override BoundNode VisitConditionalGoto(BoundConditionalGoto node) 1411var result = base.VisitConditionalGoto(node); 1418public override BoundNode VisitSwitchDispatch(BoundSwitchDispatch node) 1451public override BoundNode VisitConditionalOperator(BoundConditionalOperator node) 1473public override BoundNode VisitBinaryOperator(BoundBinaryOperator node) 1546private BoundNode VisitBinaryOperatorSimple(BoundBinaryOperator node) 1567public override BoundNode VisitNullCoalescingOperator(BoundNullCoalescingOperator node) 1586public override BoundNode VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node) 1616public override BoundNode VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node) 1652public override BoundNode VisitUnaryOperator(BoundUnaryOperator node) 1668public override BoundNode VisitTryStatement(BoundTryStatement node) 1683public override BoundNode VisitCatchBlock(BoundCatchBlock node) 1747public override BoundNode VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node) 1754public override BoundNode VisitArrayInitialization(BoundArrayInitialization node) 1789public override BoundNode VisitAddressOfOperator(BoundAddressOfOperator node) 1795public override BoundNode VisitReturnStatement(BoundReturnStatement node) 2045public override BoundNode Visit(BoundNode node) 2047BoundNode result; 2067public override BoundNode VisitBinaryOperator(BoundBinaryOperator node) 2123public override BoundNode VisitLocal(BoundLocal node) 2141public override BoundNode VisitObjectCreationExpression(BoundObjectCreationExpression node) 2149public override BoundNode VisitAssignmentOperator(BoundAssignmentOperator node) 2211public override BoundNode VisitCall(BoundCall node) 2286public override BoundNode VisitCatchBlock(BoundCatchBlock node)
Compilation\AttributeSemanticModel.cs (4)
85internal override BoundNode Bind(Binder binder, CSharpSyntaxNode node, BindingDiagnosticBag diagnostics) 102protected override BoundNode RewriteNullableBoundNodesWithSnapshots( 103BoundNode boundRoot, 113protected override void AnalyzeBoundNodeNullability(BoundNode boundRoot, Binder binder, DiagnosticBag diagnostics, bool createSnapshots)
Compilation\CSharpSemanticModel.cs (20)
722BoundNode boundNode = GetSpeculativelyBoundExpression(position, expression, bindingOption, out binder, out crefSymbols); //calls CheckAndAdjustPosition 752BoundNode boundNode = GetSpeculativelyBoundAttribute(position, attribute, out binder); //calls CheckAndAdjustPosition 1052BoundNode boundNode = GetSpeculativelyBoundExpression(position, expression, bindingOption, out _, out crefSymbols); //calls CheckAndAdjustPosition 1199BoundNode boundNode = GetSpeculativelyBoundExpression(position, nameSyntax, bindingOption, out binder, out crefSymbols); //calls CheckAndAdjustPosition 1868BoundNode lowestBoundNode, 1869BoundNode highestBoundNode, 1870BoundNode boundNodeForSyntacticParent, 2016BoundNode lowestBoundNode, 2017BoundNode highestBoundNode, 2018BoundNode boundNodeForSyntacticParent) 2127conversion = BoundNode.GetConversion(initializer.ElementPointerConversion, initializer.ElementPointerPlaceholder); 2274BoundNode lowestBoundNode, 2275BoundNode boundNodeForSyntacticParent, 2296BoundNode lowestBoundNode, 2388internal virtual BoundNode Bind(Binder binder, CSharpSyntaxNode node, BindingDiagnosticBag diagnostics) 3343BoundNode boundNodeForSyntacticParent, 3963BoundNode boundNodeForSyntacticParent, 4014BoundNode lowestBoundNode, 4234BoundNode boundNodeForSyntacticParent, 4380BoundNode boundNodeForSyntacticParent,
Compilation\DeconstructionInfo.cs (1)
73: deconstructConversionInfo.SelectAsArray(c => new DeconstructionInfo(BoundNode.GetConversion(c.conversion, c.placeholder)));
Compilation\InitializerSemanticModel.cs (5)
79internal override BoundNode GetBoundRoot() 111internal override BoundNode Bind(Binder binder, CSharpSyntaxNode node, BindingDiagnosticBag diagnostics) 253protected override BoundNode RewriteNullableBoundNodesWithSnapshots( 254BoundNode boundRoot, 266protected override void AnalyzeBoundNodeNullability(BoundNode boundRoot, Binder binder, DiagnosticBag diagnostics, bool createSnapshots)
Compilation\MemberSemanticModel.cs (60)
32private readonly Dictionary<SyntaxNode, OneOrMany<BoundNode>> _guardedBoundNodeMap = new Dictionary<SyntaxNode, OneOrMany<BoundNode>>(); 513internal virtual BoundNode GetBoundRoot() 521internal BoundNode GetUpperBoundNode(CSharpSyntaxNode node, bool promoteToBindable = false) 549internal BoundNode GetLowerBoundNode(CSharpSyntaxNode node) 566private static BoundNode GetLowerBoundNode(OneOrMany<BoundNode> boundNodes) 922var bound = GetLowerBoundNode(node); 993BoundNode.GetConversion(boundForEach.ElementConversion, boundForEach.ElementPlaceholder), 994BoundNode.GetConversion(enumeratorInfoOpt.CurrentConversion, enumeratorInfoOpt.CurrentPlaceholder)); 1142var bound = this.GetLowerBoundNode(declaratorSyntax); 1187BoundNode highestBoundNode = GetBoundRoot(); 1212BoundNode lowestBoundNode; 1213BoundNode highestBoundNode; 1214BoundNode boundParent; 1224BoundNode lowestBoundNode; 1225BoundNode highestBoundNode; 1226BoundNode boundParent; 1235BoundNode lowestBoundNode; 1236BoundNode highestBoundNode; 1237BoundNode boundParent; 1247BoundNode lowestBoundNode; 1248BoundNode highestBoundNode; 1249BoundNode boundParent; 1301private void GetBoundNodes(CSharpSyntaxNode node, out CSharpSyntaxNode bindableNode, out BoundNode lowestBoundNode, out BoundNode highestBoundNode, out BoundNode boundParent) 1432private OneOrMany<BoundNode> GuardedGetBoundNodesFromMap(CSharpSyntaxNode node) 1435OneOrMany<BoundNode> result; 1436return _guardedBoundNodeMap.TryGetValue(node, out result) ? result : OneOrMany<BoundNode>.Empty; 1442internal OneOrMany<BoundNode> TestOnlyTryGetBoundNodesFromMap(CSharpSyntaxNode node) 1444OneOrMany<BoundNode> result; 1445return _guardedBoundNodeMap.TryGetValue(node, out result) ? result : OneOrMany<BoundNode>.Empty; 1450private OneOrMany<BoundNode> GuardedAddBoundTreeAndGetBoundNodeFromMap(CSharpSyntaxNode syntax, BoundNode bound) 1469OneOrMany<BoundNode> result; 1470return _guardedBoundNodeMap.TryGetValue(syntax, out result) ? result : OneOrMany<BoundNode>.Empty; 1473protected void UnguardedAddBoundTreeForStandaloneSyntax(SyntaxNode syntax, BoundNode bound, NullableWalker.SnapshotManager manager = null, ImmutableDictionary<Symbol, Symbol> remappedSymbols = null) 1481protected void GuardedAddBoundTreeForStandaloneSyntax(SyntaxNode syntax, BoundNode bound, NullableWalker.SnapshotManager manager = null, ImmutableDictionary<Symbol, Symbol> remappedSymbols = null) 1624BoundNode boundInnerLambdaOrQuery = GetBoundLambdaOrQuery(innerLambdaOrQuery); 1628private BoundNode GetBoundLambdaOrQuery(CSharpSyntaxNode lambdaOrQuery) 1632OneOrMany<BoundNode> nodes; 1651BoundNode boundEnclosingLambdaOrQuery = null; 1692BoundNode boundOuterExpression = this.Bind(incrementalBinder, nodeToBind, BindingDiagnosticBag.Discarded); 1724BoundNode boundOuterExpression = this.Bind(incrementalBinder, lambdaOrQuery, BindingDiagnosticBag.Discarded); 1738private Binder GetEnclosingBinderInLambdaOrQuery(int position, CSharpSyntaxNode node, CSharpSyntaxNode innerLambdaOrQuery, ref BoundNode boundInnerLambdaOrQuery) 1963BoundNode boundRoot = bind(bindableRoot, out binder); 1985BoundNode bind(CSharpSyntaxNode root, out Binder binder) 2039protected abstract BoundNode RewriteNullableBoundNodesWithSnapshots( 2040BoundNode boundRoot, 2053protected abstract void AnalyzeBoundNodeNullability(BoundNode boundRoot, Binder binder, DiagnosticBag diagnostics, bool createSnapshots); 2067internal OneOrMany<BoundNode> GetBoundNodes(CSharpSyntaxNode node) 2091OneOrMany<BoundNode> results; 2114BoundNode boundStatement = this.Bind(incrementalBinder, nodeToBind, BindingDiagnosticBag.Discarded); 2143var boundNode = this.Bind(incrementalBinder, node, BindingDiagnosticBag.Discarded); 2158return OneOrMany<BoundNode>.Empty; 2472private BoundNode TryGetBoundNodeFromMap(CSharpSyntaxNode node) 2476OneOrMany<BoundNode> boundNodes = _semanticModel.GuardedGetBoundNodesFromMap(node); 2488public override BoundNode BindMethodBody(CSharpSyntaxNode node, BindingDiagnosticBag diagnostics) 2490BoundNode boundNode = TryGetBoundNodeFromMap(node);
Compilation\MemberSemanticModel.NodeMapBuilder.cs (15)
21private NodeMapBuilder(OrderPreservingMultiDictionary<SyntaxNode, BoundNode> map, SyntaxTree tree, SyntaxNode thisSyntaxNodeOnly) 28private readonly OrderPreservingMultiDictionary<SyntaxNode, BoundNode> _map; 39public static void AddToMap(BoundNode root, Dictionary<SyntaxNode, OneOrMany<BoundNode>> map, SyntaxTree tree, SyntaxNode node = null) 49var additionMap = OrderPreservingMultiDictionary<SyntaxNode, BoundNode>.GetInstance(); 130public override BoundNode Visit(BoundNode node) 142BoundNode current = node; 262private bool ShouldAddNode(BoundNode currentBoundNode) 279public override BoundNode VisitQueryClause(BoundQueryClause node) 286public override BoundNode VisitRangeVariable(BoundRangeVariable node) 291public override BoundNode VisitAwaitableInfo(BoundAwaitableInfo node) 296public override BoundNode VisitConstructorMethodBody(BoundConstructorMethodBody node) 309public override BoundNode VisitBinaryOperator(BoundBinaryOperator node) 314public override BoundNode VisitIfStatement(BoundIfStatement node)
Compilation\MemberSemanticModel.SpeculativeMemberSemanticModel.cs (3)
43protected override BoundNode RewriteNullableBoundNodesWithSnapshots( 44BoundNode boundRoot, 55protected override void AnalyzeBoundNodeNullability(BoundNode boundRoot, Binder binder, DiagnosticBag diagnostics, bool createSnapshots)
Compilation\MethodBodySemanticModel.cs (6)
22internal readonly BoundNode? Body; 29BoundNode? bodyOpt = null, 74internal override BoundNode Bind(Binder binder, CSharpSyntaxNode node, BindingDiagnosticBag diagnostics) 286protected override BoundNode RewriteNullableBoundNodesWithSnapshots( 287BoundNode boundRoot, 298protected override void AnalyzeBoundNodeNullability(BoundNode boundRoot, Binder binder, DiagnosticBag diagnostics, bool createSnapshots)
Compilation\SpeculativeSemanticModelWithMemberModel.cs (1)
515internal override BoundNode Bind(Binder binder, CSharpSyntaxNode node, BindingDiagnosticBag diagnostics)
Compilation\SpeculativeSyntaxTreeSemanticModel.cs (1)
91internal override BoundNode Bind(Binder binder, CSharpSyntaxNode node, BindingDiagnosticBag diagnostics)
Compilation\SyntaxTreeSemanticModel.cs (1)
2293private static BoundNode GetBoundRoot(MemberSemanticModel memberModel, out Symbol member)
Compilation\SyntaxTreeSemanticModel_RegionAnalysisContext.cs (8)
34var node = new BoundBadStatement(expression, ImmutableArray<BoundNode>.Empty, hasErrors: true); 39BoundNode boundNode = GetBoundRoot(memberModel, out member); 40var first = memberModel.GetUpperBoundNode(expression, promoteToBindable: true); 41var last = first; 51var node = new BoundBadStatement(firstStatement, ImmutableArray<BoundNode>.Empty, hasErrors: true); 56BoundNode boundNode = GetBoundRoot(memberModel, out member); 57var first = memberModel.GetUpperBoundNode(firstStatement, promoteToBindable: true); 58var last = memberModel.GetUpperBoundNode(lastStatement, promoteToBindable: true);
Compiler\MethodCompiler.cs (20)
1478return new BoundBadStatement(body.Syntax, ImmutableArray.Create<BoundNode>(body), hasErrors: true); 1738BoundNode? initializersBody, 1787BoundNode methodBody = bodyBinder.BindWithLambdaBindingCountDiagnostics( 1797BoundNode methodBodyForSemanticModel = methodBody; 1965NullableWalker.VariableState? getInitializerState(BoundNode? body) 2113static void assertBindIdentifierTargets(InMethodBinder? inMethodBinder, ConcurrentDictionary<IdentifierNameSyntax, int>? identifierMap, BoundNode methodBody, BindingDiagnosticBag diagnostics) 2176private static bool IsEmptyRewritePossible(BoundNode node) 2181var rewritten = rewriter.Visit(node); 2204public static bool FoundInUnboundLambda(BoundNode methodBody, IdentifierNameSyntax id) 2211public override BoundNode? VisitUnboundLambda(UnboundLambda node) 2227public override BoundNode? Visit(BoundNode? node) 2240public static BoundPropertyAccess? FindUncheckedAccess(BoundNode node) 2254public override BoundNode? Visit(BoundNode? node) 2264public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node) 2275public override BoundNode? VisitRangeVariable(BoundRangeVariable node) 2283public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node) 2291public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node) 2299public override BoundNode? VisitBadExpression(BoundBadExpression node)
FlowAnalysis\AbstractFlowPass.cs (199)
66protected readonly BoundNode methodMainNode; 172protected readonly BoundNode firstInRegion, lastInRegion; 185BoundNode node, 186BoundNode firstInRegion = null, 187BoundNode lastInRegion = null, 260private void EnterRegionIfNeeded(BoundNode node) 277private void LeaveRegionIfNeeded(BoundNode node) 341public override BoundNode Visit(BoundNode node) 346protected BoundNode VisitAlways(BoundNode node) 348BoundNode result = null; 362private BoundNode VisitWithStackGuard(BoundNode node) 373protected 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) 1480public override BoundNode VisitIndexerAccess(BoundIndexerAccess node) 1493public override BoundNode VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node) 1506public override BoundNode VisitEventAssignmentOperator(BoundEventAssignmentOperator node) 1575public override BoundNode VisitBadExpression(BoundBadExpression node) 1585public override BoundNode VisitBadStatement(BoundBadStatement node) 1587foreach (var child in node.ChildBoundNodes) 1602public override BoundNode VisitArrayInitialization(BoundArrayInitialization node) 1612public override BoundNode VisitDelegateCreationExpression(BoundDelegateCreationExpression node) 1642public override BoundNode VisitTypeExpression(BoundTypeExpression node) 1647public override BoundNode VisitTypeOrValueExpression(BoundTypeOrValueExpression node) 1655public override BoundNode VisitLiteral(BoundLiteral node) 1661public override BoundNode VisitUtf8String(BoundUtf8String node) 1684public override BoundNode VisitLocalId(BoundLocalId node) 1689public override BoundNode VisitParameterId(BoundParameterId node) 1694public override BoundNode VisitMethodDefIndex(BoundMethodDefIndex node) 1699public override BoundNode VisitStateMachineInstanceId(BoundStateMachineInstanceId node) 1704public override BoundNode VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node) 1709public override BoundNode VisitModuleVersionId(BoundModuleVersionId node) 1714public override BoundNode VisitModuleVersionIdString(BoundModuleVersionIdString node) 1719public override BoundNode VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node) 1724public override BoundNode VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node) 1729public override BoundNode VisitSourceDocumentIndex(BoundSourceDocumentIndex node) 1734public override BoundNode VisitConversion(BoundConversion node) 1765public sealed override BoundNode VisitIfStatement(BoundIfStatement node) 1816public override BoundNode VisitTryStatement(BoundTryStatement node) 2011public override BoundNode VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node) 2016public override BoundNode VisitReturnStatement(BoundReturnStatement node) 2018var result = VisitReturnStatementNoAdjust(node); 2024protected virtual BoundNode VisitReturnStatementNoAdjust(BoundReturnStatement node) 2037public override BoundNode VisitThisReference(BoundThisReference node) 2042public override BoundNode VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node) 2047public override BoundNode VisitHostObjectMemberReference(BoundHostObjectMemberReference node) 2052public override BoundNode VisitParameter(BoundParameter node) 2061public override BoundNode VisitObjectCreationExpression(BoundObjectCreationExpression node) 2068public override BoundNode VisitCollectionExpression(BoundCollectionExpression node) 2074public override BoundNode VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node) 2080private void VisitCollectionExpression(ImmutableArray<BoundNode> elements) 2082foreach (var element in elements) 2095public override BoundNode VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node) 2101public override BoundNode VisitNewT(BoundNewT node) 2107public override BoundNode VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node) 2132public override BoundNode VisitAssignmentOperator(BoundAssignmentOperator node) 2166public override BoundNode VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node) 2173public sealed override BoundNode VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node) 2179public override BoundNode VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node) 2224public override BoundNode VisitFieldAccess(BoundFieldAccess node) 2251public override BoundNode VisitFieldInfo(BoundFieldInfo node) 2256public override BoundNode VisitMethodInfo(BoundMethodInfo node) 2261public override BoundNode VisitPropertyAccess(BoundPropertyAccess node) 2291public override BoundNode VisitEventAccess(BoundEventAccess node) 2297public override BoundNode VisitRangeVariable(BoundRangeVariable node) 2302public override BoundNode VisitQueryClause(BoundQueryClause node) 2308private BoundNode VisitMultipleLocalDeclarationsBase(BoundMultipleLocalDeclarationsBase node) 2318public override BoundNode VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node) 2323public override BoundNode VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node) 2332public override BoundNode VisitWhileStatement(BoundWhileStatement node) 2347public override BoundNode VisitWithExpression(BoundWithExpression node) 2354public override BoundNode VisitArrayAccess(BoundArrayAccess node) 2365public override BoundNode VisitInlineArrayAccess(BoundInlineArrayAccess node) 2384public override BoundNode VisitBinaryOperator(BoundBinaryOperator node) 2403public override BoundNode VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node) 2754public override BoundNode VisitUnaryOperator(BoundUnaryOperator node) 2770public override BoundNode VisitRangeExpression(BoundRangeExpression node) 2785public override BoundNode VisitFromEndIndexExpression(BoundFromEndIndexExpression node) 2791public override BoundNode VisitAwaitExpression(BoundAwaitExpression node) 2798public override BoundNode VisitIncrementOperator(BoundIncrementOperator node) 2822public override BoundNode VisitArrayCreation(BoundArrayCreation node) 2833public override BoundNode VisitForStatement(BoundForStatement node) 2866public override BoundNode VisitForEachStatement(BoundForEachStatement node) 2895public override BoundNode VisitAsOperator(BoundAsOperator node) 2901public override BoundNode VisitIsOperator(BoundIsOperator node) 2916public override BoundNode VisitMethodGroup(BoundMethodGroup node) 2929public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node) 3105public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node) 3113public override BoundNode VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node) 3132public override BoundNode VisitConditionalReceiver(BoundConditionalReceiver node) 3137public override BoundNode VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node) 3151public override BoundNode VisitSequence(BoundSequence node) 3166public override BoundNode VisitSequencePoint(BoundSequencePoint node) 3176public override BoundNode VisitSequencePointExpression(BoundSequencePointExpression node) 3182public override BoundNode VisitSequencePointWithSpan(BoundSequencePointWithSpan node) 3192public override BoundNode VisitStatementList(BoundStatementList node) 3197private BoundNode VisitStatementListWorker(BoundStatementList node) 3207public override BoundNode VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node) 3212public override BoundNode VisitUnboundLambda(UnboundLambda node) 3218public override BoundNode VisitBreakStatement(BoundBreakStatement node) 3226public override BoundNode VisitContinueStatement(BoundContinueStatement node) 3234public override BoundNode VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node) 3239public override BoundNode VisitConditionalOperator(BoundConditionalOperator node) 3246protected virtual BoundNode? VisitConditionalOperatorCore( 3310public override BoundNode VisitBaseReference(BoundBaseReference node) 3315public override BoundNode VisitDoStatement(BoundDoStatement node) 3329public override BoundNode VisitGotoStatement(BoundGotoStatement node) 3352public override BoundNode VisitLabelStatement(BoundLabelStatement node) 3358public override BoundNode VisitLabeledStatement(BoundLabeledStatement node) 3365public override BoundNode VisitLockStatement(BoundLockStatement node) 3372public override BoundNode VisitNoOpStatement(BoundNoOpStatement node) 3377public override BoundNode VisitNamespaceExpression(BoundNamespaceExpression node) 3382public override BoundNode VisitUsingStatement(BoundUsingStatement node) 3405public override BoundNode VisitFixedStatement(BoundFixedStatement node) 3412public override BoundNode VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node) 3418public override BoundNode VisitThrowStatement(BoundThrowStatement node) 3426public override BoundNode VisitYieldBreakStatement(BoundYieldBreakStatement node) 3434public override BoundNode VisitYieldReturnStatement(BoundYieldReturnStatement node) 3441public override BoundNode VisitDefaultLiteral(BoundDefaultLiteral node) 3446public override BoundNode VisitDefaultExpression(BoundDefaultExpression node) 3451public override BoundNode VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node) 3456public override BoundNode VisitTypeOfOperator(BoundTypeOfOperator node) 3462public override BoundNode VisitNameOfOperator(BoundNameOfOperator node) 3471public override BoundNode VisitAddressOfOperator(BoundAddressOfOperator node) 3491public override BoundNode VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node) 3497public override BoundNode VisitPointerElementAccess(BoundPointerElementAccess node) 3504public override BoundNode VisitSizeOfOperator(BoundSizeOfOperator node) 3509private BoundNode VisitStackAllocArrayCreationBase(BoundStackAllocArrayCreationBase node) 3516public override BoundNode VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node) 3521public override BoundNode VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node) 3526public override BoundNode VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node) 3534public override BoundNode VisitArrayLength(BoundArrayLength node) 3540public override BoundNode VisitConditionalGoto(BoundConditionalGoto node) 3558public override BoundNode VisitObjectInitializerExpression(BoundObjectInitializerExpression node) 3563public override BoundNode VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node) 3568private BoundNode VisitObjectOrCollectionInitializerExpression(ImmutableArray<BoundExpression> initializers) 3578public override BoundNode VisitObjectInitializerMember(BoundObjectInitializerMember node) 3597public override BoundNode VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node) 3602public override BoundNode VisitCollectionElementInitializer(BoundCollectionElementInitializer node) 3625public override BoundNode VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node) 3631public override BoundNode VisitImplicitReceiver(BoundImplicitReceiver node) 3636public override BoundNode VisitFieldEqualsValue(BoundFieldEqualsValue node) 3642public override BoundNode VisitPropertyEqualsValue(BoundPropertyEqualsValue node) 3648public override BoundNode VisitParameterEqualsValue(BoundParameterEqualsValue node) 3654public override BoundNode VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node) 3659public override BoundNode VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node) 3664public override BoundNode VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node) 3669public sealed override BoundNode VisitOutVariablePendingInference(OutVariablePendingInference node) 3674public sealed override BoundNode VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node) 3679public override BoundNode VisitDiscardExpression(BoundDiscardExpression node) 3690public override BoundNode VisitConstructorMethodBody(BoundConstructorMethodBody node) 3697public override BoundNode VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node) 3703public override BoundNode VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node) 3736public override BoundNode VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node) 3742public override BoundNode VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node) 3749public override BoundNode VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node) 3774public override BoundNode VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node) 3779public override BoundNode VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node) 3784public override BoundNode VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node)
FlowAnalysis\AbstractFlowPass_LocalFunctions.cs (2)
64public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement localFunc) 123BoundNode branch = pending.Branch;
FlowAnalysis\AbstractFlowPass_Switch.cs (5)
18public override BoundNode VisitSwitchStatement(BoundSwitchStatement node) 131public override BoundNode VisitSwitchDispatch(BoundSwitchDispatch node) 145public override BoundNode VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node) 150public override BoundNode VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node) 155private BoundNode VisitSwitchExpression(BoundSwitchExpression node)
FlowAnalysis\AbstractRegionControlFlowPass.cs (6)
17BoundNode node, 18BoundNode firstInRegion, 19BoundNode lastInRegion) 24public override BoundNode Visit(BoundNode node) 31public override BoundNode VisitLambda(BoundLambda node)
FlowAnalysis\AbstractRegionDataFlowPass.cs (6)
19BoundNode node, 20BoundNode firstInRegion, 21BoundNode lastInRegion, 40public override BoundNode VisitLambda(BoundLambda node) 46public override BoundNode VisitLocalFunctionStatement(BoundLocalFunctionStatement node) 52public override BoundNode VisitNameOfOperator(BoundNameOfOperator node)
FlowAnalysis\AlwaysAssignedWalker.cs (9)
27private AlwaysAssignedWalker(CSharpCompilation compilation, Symbol member, BoundNode node, BoundNode firstInRegion, BoundNode lastInRegion) 32internal static IEnumerable<Symbol> Analyze(CSharpCompilation compilation, Symbol member, BoundNode node, BoundNode firstInRegion, BoundNode lastInRegion) 92public override BoundNode VisitLabel(BoundLabel node) 98public override BoundNode VisitLabeledStatement(BoundLabeledStatement node) 104private void ResolveLabel(BoundNode node, LabelSymbol label)
FlowAnalysis\ControlFlowPass.cs (16)
19private readonly PooledDictionary<LabelSymbol, BoundNode> _labelsDefined = PooledDictionary<LabelSymbol, BoundNode>.GetInstance(); 34internal ControlFlowPass(CSharpCompilation compilation, Symbol member, BoundNode node) 39internal ControlFlowPass(CSharpCompilation compilation, Symbol member, BoundNode node, BoundNode firstInRegion, BoundNode lastInRegion) 120public override BoundNode Visit(BoundNode node) 218var leave = pending.Branch; 226var leave = pending.Branch; 328public override BoundNode VisitLabeledStatement(BoundLabeledStatement node) 336public override BoundNode VisitGotoStatement(BoundGotoStatement node) 361if (_labelsDefined.TryGetValue(node.Label, out BoundNode target) && target == usingDecl.block) 385public override BoundNode VisitSwitchStatement(BoundSwitchStatement node) 398public override BoundNode VisitBlock(BoundBlock node) 411var result = base.VisitBlock(node);
FlowAnalysis\DataFlowsInWalker.cs (8)
27private DataFlowsInWalker(CSharpCompilation compilation, Symbol member, BoundNode node, BoundNode firstInRegion, BoundNode lastInRegion, 33internal static HashSet<Symbol> Analyze(CSharpCompilation compilation, Symbol member, BoundNode node, BoundNode firstInRegion, BoundNode lastInRegion, 81BoundNode gotoStmt, 93public override BoundNode VisitRangeVariable(BoundRangeVariable node)
FlowAnalysis\DataFlowsOutWalker.cs (10)
27private DataFlowsOutWalker(CSharpCompilation compilation, Symbol member, BoundNode node, BoundNode firstInRegion, BoundNode lastInRegion, HashSet<Symbol> unassignedVariables, ImmutableArray<ISymbol> dataFlowsIn) 33internal static HashSet<Symbol> Analyze(CSharpCompilation compilation, Symbol member, BoundNode node, BoundNode firstInRegion, BoundNode lastInRegion, HashSet<Symbol> unassignedVariables, ImmutableArray<ISymbol> dataFlowsIn) 114private Symbol GetNodeSymbol(BoundNode node) 201protected override void AssignImpl(BoundNode node, BoundExpression value, bool isRef, bool written, bool read) 237private ParameterSymbol Param(BoundNode node) 247public override BoundNode VisitQueryClause(BoundQueryClause node)
FlowAnalysis\DefiniteAssignment.cs (50)
169BoundNode node, 194BoundNode node, 216BoundNode node, 217BoundNode firstInRegion, 218BoundNode lastInRegion, 235BoundNode node) 421var pendingBranch = pending.Branch; 544BoundNode node, 783private void NoteRead(BoundNode fieldOrEventAccess) 786BoundNode n = fieldOrEventAccess; 1516protected void Assign(BoundNode node, BoundExpression value, bool isRef = false, bool read = true) 1533protected virtual void AssignImpl(BoundNode node, BoundExpression value, bool isRef, bool written, bool read) 2123public override BoundNode? VisitBlock(BoundBlock node) 2208public override BoundNode VisitSwitchStatement(BoundSwitchStatement node) 2211var result = base.VisitSwitchStatement(node); 2223public override BoundNode VisitForStatement(BoundForStatement node) 2227var result = base.VisitForStatement(node); 2233public override BoundNode VisitDoStatement(BoundDoStatement node) 2236var result = base.VisitDoStatement(node); 2241public override BoundNode VisitWhileStatement(BoundWhileStatement node) 2244var result = base.VisitWhileStatement(node); 2252public override BoundNode VisitUsingStatement(BoundUsingStatement node) 2256var result = base.VisitUsingStatement(node); 2273public override BoundNode VisitFixedStatement(BoundFixedStatement node) 2279public override BoundNode VisitSequence(BoundSequence node) 2282var result = base.VisitSequence(node); 2351public override BoundNode VisitLocal(BoundLocal node) 2382public override BoundNode VisitLocalDeclaration(BoundLocalDeclaration node) 2393var result = base.VisitLocalDeclaration(node); 2401public override BoundNode VisitLocalId(BoundLocalId node) 2404public override BoundNode VisitParameterId(BoundParameterId node) 2407public override BoundNode VisitStateMachineInstanceId(BoundStateMachineInstanceId node) 2410public override BoundNode VisitMethodGroup(BoundMethodGroup node) 2422public override BoundNode VisitLambda(BoundLambda node) 2468public override BoundNode VisitThisReference(BoundThisReference node) 2475public override BoundNode VisitParameter(BoundParameter node) 2489public override BoundNode VisitAssignmentOperator(BoundAssignmentOperator node) 2496public override BoundNode VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node) 2503public override BoundNode VisitIncrementOperator(BoundIncrementOperator node) 2510public override BoundNode VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node) 2519public override BoundNode VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node) 2537public override BoundNode VisitAddressOfOperator(BoundAddressOfOperator node) 2671public override BoundNode VisitBaseReference(BoundBaseReference node) 2695public override BoundNode VisitFieldAccess(BoundFieldAccess node) 2697var result = base.VisitFieldAccess(node); 2721public override BoundNode VisitPropertyAccess(BoundPropertyAccess node) 2723var result = base.VisitPropertyAccess(node); 2744public override BoundNode VisitEventAccess(BoundEventAccess node) 2746var result = base.VisitEventAccess(node); 2775public override BoundNode VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node)
FlowAnalysis\DefinitelyAssignedWalker.cs (6)
29BoundNode node, 30BoundNode firstInRegion, 31BoundNode lastInRegion) 37CSharpCompilation compilation, Symbol member, BoundNode node, BoundNode firstInRegion, BoundNode lastInRegion)
FlowAnalysis\EntryPointsWalker.cs (7)
23internal static IEnumerable<LabeledStatementSyntax> Analyze(CSharpCompilation compilation, Symbol member, BoundNode node, BoundNode firstInRegion, BoundNode lastInRegion, out bool? succeeded) 48private EntryPointsWalker(CSharpCompilation compilation, Symbol member, BoundNode node, BoundNode firstInRegion, BoundNode lastInRegion) 58protected override void NoteBranch(PendingBranch pending, BoundNode gotoStmt, BoundStatement targetStmt)
FlowAnalysis\ExitPointsWalker.cs (11)
23private ExitPointsWalker(CSharpCompilation compilation, Symbol member, BoundNode node, BoundNode firstInRegion, BoundNode lastInRegion) 41internal static ImmutableArray<StatementSyntax> Analyze(CSharpCompilation compilation, Symbol member, BoundNode node, BoundNode firstInRegion, BoundNode lastInRegion) 70public override BoundNode VisitLabelStatement(BoundLabelStatement node) 76public override BoundNode VisitDoStatement(BoundDoStatement node) 86public override BoundNode VisitForEachStatement(BoundForEachStatement node) 96public override BoundNode VisitForStatement(BoundForStatement node) 106public override BoundNode VisitWhileStatement(BoundWhileStatement node)
FlowAnalysis\LocalDataFlowPass.cs (4)
37BoundNode node, 49BoundNode node, 51BoundNode firstInRegion, 52BoundNode lastInRegion,
FlowAnalysis\NullableWalker.cs (205)
454BoundNode node, 1337BoundNode node, 1364BoundNode node, 1403internal static VariableState? GetAfterInitializersState(CSharpCompilation compilation, Symbol? symbol, BoundNode constructorBody) 1421internal static VariableState? GetAfterInitializersState(CSharpCompilation compilation, MethodSymbol method, BoundNode nodeToAnalyze, BoundNode? constructorBody, BindingDiagnosticBag diagnostics) 1459private static MethodSymbol? GetConstructorThisOrBaseSymbol(BoundNode? constructorBody) 1474BoundNode node, 1486internal static BoundNode AnalyzeAndRewrite( 1489BoundNode node, 1505BoundNode node, 1561internal static BoundNode AnalyzeAndRewriteSpeculation( 1563BoundNode node, 1608private static BoundNode Rewrite(ImmutableDictionary<BoundExpression, (NullabilityInfo, TypeSymbol?)> updatedNullabilities, SnapshotManager? snapshotManager, BoundNode node, ref ImmutableDictionary<Symbol, Symbol>? remappedSymbols) 1618var rewrittenNode = rewriter.Visit(node); 1642BoundNode node, 1720BoundNode node, 1825private void TakeIncrementalSnapshot(BoundNode? node) 1831private void SetUpdatedSymbol(BoundNode node, Symbol originalSymbol, Symbol updatedSymbol) 2173private void VisitAndUnsplitAll<T>(ImmutableArray<T> nodes) where T : BoundNode 2187private void VisitWithoutDiagnostics(BoundNode? node) 2843public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue equalsValue) 2878public sealed override BoundNode? VisitReturnStatement(BoundReturnStatement node) 3013public override BoundNode? VisitLocal(BoundLocal node) 3044public override BoundNode? VisitBlock(BoundBlock node) 3149public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node) 3371public override BoundNode? VisitDoStatement(BoundDoStatement node) 3377public override BoundNode? VisitWhileStatement(BoundWhileStatement node) 3383public override BoundNode? VisitWithExpression(BoundWithExpression withExpr) 3405public override BoundNode? VisitForStatement(BoundForStatement node) 3412public override BoundNode? VisitForEachStatement(BoundForEachStatement node) 3418public override BoundNode? VisitUsingStatement(BoundUsingStatement node) 3425public override BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node) 3431public override BoundNode? VisitFixedStatement(BoundFixedStatement node) 3437public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node) 3464public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node) 3526protected override BoundNode? VisitExpressionOrPatternWithoutStackGuard(BoundNode node) 3618public override BoundNode? Visit(BoundNode? node) 3623private BoundNode VisitLValue(BoundNode node) 3642private BoundNode Visit(BoundNode? node, bool expressionIsRead) 3651var result = base.Visit(node); 3664public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node) 3670public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node) 3678public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node) 3681var result = base.VisitUnconvertedCollectionExpression(node); 3686public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node) 3696foreach (var element in node.Elements) 3825public override BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node) 4484public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node) 4545public override BoundNode? VisitArrayCreation(BoundArrayCreation node) 4701BoundNode node, 4778public override BoundNode? VisitArrayAccess(BoundArrayAccess node) 4812public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node) 5544public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node) 5581public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node) 5864public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node) 5870protected override BoundNode? VisitConditionalOperatorCore( 6161public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node) 6172public override BoundNode? VisitCall(BoundCall node) 6675private static bool HasImplicitTypeArguments(BoundNode node) 6743BoundNode node, 6764BoundNode node, 6802BoundNode node, 6973BoundNode node, 7966var elementsBuilder = ArrayBuilder<BoundNode>.GetInstance(collectionExpressionVisitResults.Length); 8263public override BoundNode? VisitConversion(BoundConversion node) 8400public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node) 8406public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node) 8629public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node) 9593public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node) 9769public override BoundNode? VisitMethodGroup(BoundMethodGroup node) 9852public override BoundNode? VisitLambda(BoundLambda node) 9901public override BoundNode? VisitUnboundLambda(UnboundLambda node) 9911public override BoundNode? VisitThisReference(BoundThisReference node) 9924public override BoundNode? VisitParameter(BoundParameter node) 9934public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node) 10099public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node) 10104private BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node, TypeWithState? rightResultOpt) 10215var underlyingConversion = BoundNode.GetConversion(placeholderConversion, placeholder); 10256var underlyingConversion = BoundNode.GetConversion(placeholderConversion, placeholder); 10415public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node) 10457BoundNode.GetConversion(node.OperandConversion, node.OperandPlaceholder), 10487BoundNode.GetConversion(node.ResultConversion, node.ResultPlaceholder), 10515public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node) 10542BoundNode.GetConversion(node.LeftConversion, node.LeftPlaceholder), 10556BoundNode.GetConversion(node.FinalConversion, node.FinalPlaceholder), 10577public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node) 10594public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node) 10652public override BoundNode? VisitBaseReference(BoundBaseReference node) 10658public override BoundNode? VisitFieldAccess(BoundFieldAccess node) 10667public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node) 10688public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node) 10711public override BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node) 10725public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node) 10733public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node) 10739public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node) 10745public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node) 10751public override BoundNode? VisitEventAccess(BoundEventAccess node) 10860BoundNode node, 11125Conversion conversion = BoundNode.GetConversion(node.ElementConversion, node.ElementPlaceholder); 11162public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node) 11164var result = base.VisitFromEndIndexExpression(node); 11169public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node) 11175public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node) 11181public override BoundNode? VisitBadExpression(BoundBadExpression node) 11203public override BoundNode? VisitTypeExpression(BoundTypeExpression node) 11205var result = base.VisitTypeExpression(node); 11216public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node) 11219var result = base.VisitTypeOrValueExpression(node); 11224public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node) 11296public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node) 11298var result = base.VisitPointerIndirectionOperator(node); 11304public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node) 11306var result = base.VisitPointerElementAccess(node); 11312public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node) 11319public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node) 11321var result = base.VisitMakeRefOperator(node); 11326public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node) 11328var result = base.VisitRefValueOperator(node); 11424public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node) 11426var result = base.VisitAwaitExpression(node); 11455public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node) 11457var result = base.VisitTypeOfOperator(node); 11462public override BoundNode? VisitMethodInfo(BoundMethodInfo node) 11464var result = base.VisitMethodInfo(node); 11469public override BoundNode? VisitFieldInfo(BoundFieldInfo node) 11471var result = base.VisitFieldInfo(node); 11476public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node) 11479var result = base.VisitDefaultLiteral(node); 11484public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node) 11488var result = base.VisitDefaultExpression(node); 11504public override BoundNode? VisitIsOperator(BoundIsOperator node) 11538public override BoundNode? VisitAsOperator(BoundAsOperator node) 11546switch (BoundNode.GetConversion(node.OperandConversion, node.OperandPlaceholder).Kind) 11566public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node) 11568var result = base.VisitSizeOfOperator(node); 11574public override BoundNode? VisitArgList(BoundArgList node) 11576var result = base.VisitArgList(node); 11582public override BoundNode? VisitArgListOperator(BoundArgListOperator node) 11590public override BoundNode? VisitLiteral(BoundLiteral node) 11593var result = base.VisitLiteral(node); 11598public override BoundNode? VisitUtf8String(BoundUtf8String node) 11601var result = base.VisitUtf8String(node); 11606public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node) 11608var result = base.VisitPreviousSubmissionReference(node); 11614public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node) 11616var result = base.VisitHostObjectMemberReference(node); 11622public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node) 11624var result = base.VisitPseudoVariable(node); 11629public override BoundNode? VisitRangeExpression(BoundRangeExpression node) 11631var result = base.VisitRangeExpression(node); 11636public override BoundNode? VisitRangeVariable(BoundRangeVariable node) 11643public override BoundNode? VisitLabel(BoundLabel node) 11645var result = base.VisitLabel(node); 11650public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node) 11662public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node) 11682public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node) 11708public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node) 11714public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node) 11722public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node) 11730public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node) 11738public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node) 11740var result = base.VisitImplicitReceiver(node); 11745public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node) 11750public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node) 11756public override BoundNode? VisitNewT(BoundNewT node) 11762public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node) 11764var result = base.VisitArrayInitialization(node); 11774public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node) 11868public override BoundNode? VisitQueryClause(BoundQueryClause node) 11870var result = base.VisitQueryClause(node); 11875public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node) 11877var result = base.VisitNameOfOperator(node); 11882public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node) 11884var result = base.VisitNamespaceExpression(node); 11889public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node) 11892var result = base.VisitUnconvertedInterpolatedString(node); 11897public override BoundNode? VisitStringInsert(BoundStringInsert node) 11899var result = base.VisitStringInsert(node); 11910public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node) 11918public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node) 11924public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node) 11930public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node) 11935private BoundNode? VisitStackAllocArrayCreationBase(BoundStackAllocArrayCreationBase node) 11952public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node) 11960public override BoundNode? VisitThrowExpression(BoundThrowExpression node) 11967public override BoundNode? VisitThrowStatement(BoundThrowStatement node) 11990public override BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node) 12028public override BoundNode? VisitLockStatement(BoundLockStatement node) 12036public override BoundNode? VisitAttribute(BoundAttribute node) 12049public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node) 12056public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node) 12064public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node) 12072public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node) 12095public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node) 12102public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node) 12670private sealed class ExpressionAndSymbolEqualityComparer : IEqualityComparer<(BoundNode? expr, Symbol symbol)> 12676public bool Equals((BoundNode? expr, Symbol symbol) x, (BoundNode? expr, Symbol symbol) y) 12687public int GetHashCode((BoundNode? expr, Symbol symbol) obj)
FlowAnalysis\NullableWalker.DebugVerifier.cs (30)
37public static void Verify(ImmutableDictionary<BoundExpression, (NullabilityInfo Info, TypeSymbol? Type)> analyzedNullabilityMap, SnapshotManager? snapshotManagerOpt, BoundNode node) 80protected override BoundNode? VisitExpressionOrPatternWithoutStackGuard(BoundNode node) 89public override BoundNode? Visit(BoundNode? node) 105public override BoundNode? VisitArrayCreation(BoundArrayCreation node) 117public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node) 129foreach (var element in node.Elements) 152public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node) 158public override BoundNode? VisitBadExpression(BoundBadExpression node) 177public override BoundNode? VisitQueryClause(BoundQueryClause node) 183public override BoundNode? VisitUnboundLambda(UnboundLambda node) 189public override BoundNode? VisitIfStatement(BoundIfStatement node) 216public override BoundNode? VisitForEachStatement(BoundForEachStatement node) 243public override BoundNode? VisitGotoStatement(BoundGotoStatement node) 249public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node) 255public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node) 262public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node) 277public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node) 289public override BoundNode? VisitBinaryOperator(BoundBinaryOperator node) 295public override BoundNode? VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node) 320public override BoundNode? VisitBinaryPattern(BoundBinaryPattern node) 337public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node) 343public override BoundNode? VisitTypeExpression(BoundTypeExpression node) 351public override BoundNode? VisitListPattern(BoundListPattern node) 359public override BoundNode? VisitSlicePattern(BoundSlicePattern node) 366public override BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node) 380public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node) 387public override BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node) 395public override BoundNode? VisitConversion(BoundConversion node)
FlowAnalysis\NullableWalker.SnapshotManager.cs (11)
31private readonly ImmutableDictionary<(BoundNode?, Symbol), Symbol> _updatedSymbolsMap; 35private SnapshotManager(ImmutableArray<SharedWalkerState> walkerSharedStates, ImmutableArray<(int position, Snapshot snapshot)> incrementalSnapshots, ImmutableDictionary<(BoundNode?, Symbol), Symbol> updatedSymbolsMap) 82internal bool TryGetUpdatedSymbol(BoundNode node, Symbol symbol, [NotNullWhen(true)] out Symbol? updatedSymbol) 104internal void VerifyNode(BoundNode node) 148private readonly ImmutableDictionary<(BoundNode?, Symbol), Symbol>.Builder _updatedSymbolMap = ImmutableDictionary.CreateBuilder<(BoundNode?, Symbol), Symbol>(ExpressionAndSymbolEqualityComparer.Instance, Symbols.SymbolEqualityComparer.ConsiderEverything); 208internal void TakeIncrementalSnapshot(BoundNode? node, LocalState currentState) 220internal void SetUpdatedSymbol(BoundNode node, Symbol originalSymbol, Symbol updatedSymbol) 228internal void RemoveSymbolIfPresent(BoundNode node, Symbol symbol) 233private static (BoundNode?, Symbol) GetKey(BoundNode node, Symbol symbol)
FlowAnalysis\NullableWalker_Patterns.cs (17)
32private void VisitForRewriting(BoundNode node) 42public override BoundNode VisitPositionalSubpattern(BoundPositionalSubpattern node) 48public override BoundNode VisitPropertySubpattern(BoundPropertySubpattern node) 54public override BoundNode VisitRecursivePattern(BoundRecursivePattern node) 63public override BoundNode VisitConstantPattern(BoundConstantPattern node) 69public override BoundNode VisitDeclarationPattern(BoundDeclarationPattern node) 76public override BoundNode VisitDiscardPattern(BoundDiscardPattern node) 81public override BoundNode VisitSlicePattern(BoundSlicePattern node) 87public override BoundNode VisitListPattern(BoundListPattern node) 94public override BoundNode VisitTypePattern(BoundTypePattern node) 100public override BoundNode VisitRelationalPattern(BoundRelationalPattern node) 106public override BoundNode VisitNegatedPattern(BoundNegatedPattern node) 112public override BoundNode VisitBinaryPattern(BoundBinaryPattern node) 141public override BoundNode VisitITuplePattern(BoundITuplePattern node) 863public override BoundNode VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node) 870public override BoundNode VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node) 1053public override BoundNode VisitIsPatternExpression(BoundIsPatternExpression node)
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, 231protected override void AssignImpl(BoundNode node, BoundExpression value, bool isRef, bool written, bool read) 278public override BoundNode VisitUnboundLambda(UnboundLambda node) 283public override BoundNode VisitRangeVariable(BoundRangeVariable node) 295private static ParameterSymbol GetRangeVariableUnderlyingParameter(BoundNode underlying) 314public override BoundNode VisitQueryClause(BoundQueryClause node)
FlowAnalysis\RegionAnalysisContext.cs (5)
25public readonly BoundNode BoundNode; 27public readonly BoundNode FirstInRegion, LastInRegion; 34public RegionAnalysisContext(CSharpCompilation compilation, Symbol member, BoundNode boundNode, BoundNode firstInRegion, BoundNode lastInRegion)
FlowAnalysis\RegionReachableWalker.cs (6)
17internal static void Analyze(CSharpCompilation compilation, Symbol member, BoundNode node, BoundNode firstInRegion, BoundNode lastInRegion, 39private RegionReachableWalker(CSharpCompilation compilation, Symbol member, BoundNode node, BoundNode firstInRegion, BoundNode lastInRegion)
FlowAnalysis\UnassignedAddressTakenVariablesWalker.cs (3)
18private UnassignedAddressTakenVariablesWalker(CSharpCompilation compilation, Symbol member, BoundNode node) 23internal static HashSet<PrefixUnaryExpressionSyntax> Analyze(CSharpCompilation compilation, Symbol member, BoundNode node) 60public override BoundNode VisitAddressOfOperator(BoundAddressOfOperator node)
FlowAnalysis\UnassignedVariablesWalker.cs (2)
21private UnassignedVariablesWalker(CSharpCompilation compilation, Symbol member, BoundNode node) 26internal static HashSet<Symbol> Analyze(CSharpCompilation compilation, Symbol member, BoundNode node,
FlowAnalysis\VariablesDeclaredWalker.cs (11)
22internal static IEnumerable<Symbol> Analyze(CSharpCompilation compilation, Symbol member, BoundNode node, BoundNode firstInRegion, BoundNode lastInRegion) 39internal VariablesDeclaredWalker(CSharpCompilation compilation, Symbol member, BoundNode node, BoundNode firstInRegion, BoundNode lastInRegion) 90public override BoundNode VisitLocalDeclaration(BoundLocalDeclaration node) 100public override BoundNode VisitLambda(BoundLambda node) 113public override BoundNode VisitLocalFunctionStatement(BoundLocalFunctionStatement node) 159public override BoundNode VisitQueryClause(BoundQueryClause node) 177public override BoundNode VisitLocal(BoundLocal node)
Generated\BoundNodes.xml.Generated.cs (1126)
322public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFieldEqualsValue(this); 352public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertyEqualsValue(this); 382public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitParameterEqualsValue(this); 410public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitGlobalStatementInitializer(this); 483public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitValuePlaceholder(this); 513public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCapturedReceiverPlaceholder(this); 554public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeconstructValuePlaceholder(this); 589public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTupleOperandPlaceholder(this); 618public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAwaitableValuePlaceholder(this); 653public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDisposableValuePlaceholder(this); 691public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectOrCollectionValuePlaceholder(this); 726public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitIndexerValuePlaceholder(this); 764public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitIndexerReceiverPlaceholder(this); 799public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitListPatternReceiverPlaceholder(this); 834public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitListPatternIndexPlaceholder(this); 869public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSlicePatternReceiverPlaceholder(this); 904public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSlicePatternRangePlaceholder(this); 935public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDup(this); 963public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPassByCopy(this); 996public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBadExpression(this); 1012public BoundBadStatement(SyntaxNode syntax, ImmutableArray<BoundNode> childBoundNodes, bool hasErrors = false) 1021public ImmutableArray<BoundNode> ChildBoundNodes { get; } 1024public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBadStatement(this); 1026public BoundBadStatement Update(ImmutableArray<BoundNode> childBoundNodes) 1052public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitExtractedFinallyBlock(this); 1087public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeExpression(this); 1125public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeOrValueExpression(this); 1166public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNamespaceExpression(this); 1208public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnaryOperator(this); 1256public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIncrementOperator(this); 1288public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAddressOfOperator(this); 1317public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedAddressOfOperator(this); 1360public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFunctionPointerLoad(this); 1392public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPointerIndirectionOperator(this); 1429public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPointerElementAccess(this); 1466public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFunctionPointerInvocation(this); 1498public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRefTypeOperator(this); 1528public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMakeRefOperator(this); 1560public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRefValueOperator(this); 1592public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFromEndIndexExpression(this); 1625public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRangeExpression(this); 1678public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBinaryOperator(this); 1716public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTupleBinaryOperator(this); 1761public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUserDefinedConditionalLogicalOperator(this); 1808public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCompoundAssignmentOperator(this); 1842public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAssignmentOperator(this); 1877public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeconstructionAssignmentOperator(this); 1918public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNullCoalescingOperator(this); 1949public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNullCoalescingAssignmentOperator(this); 1988public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedConditionalOperator(this); 2032public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalOperator(this); 2065public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayAccess(this); 2094public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRefArrayAccess(this); 2124public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayLength(this); 2157public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAwaitableInfo(this); 2192public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAwaitExpression(this); 2245public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeOfOperator(this); 2277public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBlockInstrumentation(this); 2317public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMethodDefIndex(this); 2360public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocalId(this); 2403public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitParameterId(this); 2438public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStateMachineInstanceId(this); 2473public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMaximumMethodDefIndex(this); 2511public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInstrumentationPayloadRoot(this); 2546public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThrowIfModuleCancellationRequested(this); 2581public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitModuleCancellationTokenExpression(this); 2616public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitModuleVersionId(this); 2651public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitModuleVersionIdString(this); 2691public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSourceDocumentIndex(this); 2734public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMethodInfo(this); 2777public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFieldInfo(this); 2806public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDefaultLiteral(this); 2831public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDefaultExpression(this); 2866public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIsOperator(this); 2903public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAsOperator(this); 2935public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSizeOfOperator(this); 2979public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConversion(this); 3012public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitReadOnlySpanFromArray(this); 3047public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArgList(this); 3078public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArgListOperator(this); 3117public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFixedLocalCollectionInitializer(this); 3156public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequencePoint(this); 3183public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequencePointWithSpan(this); 3220public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSavePreviousSequencePoint(this); 3257public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRestorePreviousSequencePoint(this); 3288public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStepThroughSequencePoint(this); 3324public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBlock(this); 3353public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitScope(this); 3384public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStateMachineScope(this); 3420public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocalDeclaration(this); 3460public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMultipleLocalDeclarations(this); 3490public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUsingLocalDeclarations(this); 3522public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocalFunctionStatement(this); 3553public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNoOpStatement(this); 3582public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitReturnStatement(this); 3610public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitYieldReturnStatement(this); 3638public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitYieldBreakStatement(this); 3652public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThrowStatement(this); 3680public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitExpressionStatement(this); 3717public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBreakStatement(this); 3754public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitContinueStatement(this); 3799public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchStatement(this); 3835public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchDispatch(this); 3868public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIfStatement(this); 3948public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDoStatement(this); 3978public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitWhileStatement(this); 4020public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitForStatement(this); 4071public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitForEachStatement(this); 4102public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitForEachDeconstructStep(this); 4141public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUsingStatement(this); 4175public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFixedStatement(this); 4206public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLockStatement(this); 4243public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTryStatement(this); 4284public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCatchBlock(this); 4315public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLiteral(this); 4355public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUtf8String(this); 4390public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThisReference(this); 4425public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPreviousSubmissionReference(this); 4460public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitHostObjectMemberReference(this); 4489public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBaseReference(this); 4538public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocal(this); 4583public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPseudoVariable(this); 4616public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRangeVariable(this); 4656public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitParameter(this); 4693public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLabelStatement(this); 4725public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitGotoStatement(this); 4756public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLabeledStatement(this); 4793public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLabel(this); 4830public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStatementList(this); 4863public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalGoto(this); 4926public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchExpressionArm(this); 4954public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedSwitchExpression(this); 4988public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConvertedSwitchExpression(this); 5016public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDecisionDag(this); 5061public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitEvaluationDecisionDagNode(this); 5095public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTestDecisionDagNode(this); 5130public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitWhenDecisionDagNode(this); 5167public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLeafDecisionDagNode(this); 5213public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagTemp(this); 5242public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagTypeTest(this); 5270public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagNonNullTest(this); 5296public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagExplicitNullTest(this); 5325public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagValueTest(this); 5356public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagRelationalTest(this); 5397public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagDeconstructEvaluation(this); 5426public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagTypeEvaluation(this); 5455public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagFieldEvaluation(this); 5486public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagPropertyEvaluation(this); 5517public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagIndexEvaluation(this); 5564public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagIndexerEvaluation(this); 5613public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagSliceEvaluation(this); 5642public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagAssignmentEvaluation(this); 5674public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchSection(this); 5707public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchLabel(this); 5749public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequencePointExpression(this); 5785public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequence(this); 5821public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSpillSequence(this); 5860public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicMemberAccess(this); 5913public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicInvocation(this); 5946public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalAccess(this); 5987public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLoweredConditionalAccess(this); 6025public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalReceiver(this); 6058public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitComplexConditionalReceiver(this); 6099public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMethodGroup(this); 6127public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertyGroup(this); 6182public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCall(this); 6221public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitEventAssignmentOperator(this); 6266public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAttribute(this); 6304public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedObjectCreationExpression(this); 6376public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectCreationExpression(this); 6392protected BoundCollectionExpressionBase(BoundKind kind, SyntaxNode syntax, ImmutableArray<BoundNode> elements, TypeSymbol? type, bool hasErrors = false) 6401public ImmutableArray<BoundNode> Elements { get; } 6406public BoundUnconvertedCollectionExpression(SyntaxNode syntax, ImmutableArray<BoundNode> elements, bool hasErrors = false) 6417public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedCollectionExpression(this); 6419public BoundUnconvertedCollectionExpression Update(ImmutableArray<BoundNode> elements) 6433public BoundCollectionExpression(SyntaxNode syntax, CollectionExpressionTypeKind collectionTypeKind, BoundObjectOrCollectionValuePlaceholder? placeholder, BoundExpression? collectionCreation, MethodSymbol? collectionBuilderMethod, BoundValuePlaceholder? collectionBuilderInvocationPlaceholder, BoundExpression? collectionBuilderInvocationConversion, bool wasTargetTyped, BoundUnconvertedCollectionExpression unconvertedCollectionExpression, ImmutableArray<BoundNode> elements, TypeSymbol type, bool hasErrors = false) 6462public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionExpression(this); 6464public BoundCollectionExpression Update(CollectionExpressionTypeKind collectionTypeKind, BoundObjectOrCollectionValuePlaceholder? placeholder, BoundExpression? collectionCreation, MethodSymbol? collectionBuilderMethod, BoundValuePlaceholder? collectionBuilderInvocationPlaceholder, BoundExpression? collectionBuilderInvocationConversion, bool wasTargetTyped, BoundUnconvertedCollectionExpression unconvertedCollectionExpression, ImmutableArray<BoundNode> elements, TypeSymbol type) 6490public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionExpressionSpreadExpressionPlaceholder(this); 6530public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionExpressionSpreadElement(this); 6575public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTupleLiteral(this); 6605public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConvertedTupleLiteral(this); 6648public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicObjectCreationExpression(this); 6680public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNoPiaObjectCreationExpression(this); 6727public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectInitializerExpression(this); 6776public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectInitializerMember(this); 6821public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicObjectInitializerMember(this); 6849public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionInitializerExpression(this); 6894public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionElementInitializer(this); 6926public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicCollectionElementInitializer(this); 6961public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitReceiver(this); 6997public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAnonymousObjectCreationExpression(this); 7037public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAnonymousPropertyDeclaration(this); 7067public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNewT(this); 7103public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDelegateCreationExpression(this); 7135public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayCreation(this); 7166public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayInitialization(this); 7212public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStackAllocArrayCreation(this); 7241public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConvertedStackAllocExpression(this); 7281public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFieldAccess(this); 7321public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitHoistedFieldAccess(this); 7359public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertyAccess(this); 7395public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitEventAccess(this); 7446public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIndexerAccess(this); 7495public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitIndexerAccess(this); 7536public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInlineArrayAccess(this); 7576public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicIndexerAccess(this); 7616public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLambda(this); 7660public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnboundLambda(this); 7701public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitQueryClause(this); 7727public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeOrInstanceInitializers(this); 7760public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNameOfOperator(this); 7802public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedInterpolatedString(this); 7830public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedString(this); 7858public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedStringHandlerPlaceholder(this); 7896public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedStringArgumentPlaceholder(this); 7931public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStringInsert(this); 7973public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIsPatternExpression(this); 8034public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConstantPattern(this); 8070public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDiscardPattern(this); 8119public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeclarationPattern(this); 8156public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRecursivePattern(this); 8200public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitListPattern(this); 8239public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSlicePattern(this); 8275public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitITuplePattern(this); 8317public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPositionalSubpattern(this); 8347public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertySubpattern(this); 8379public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertySubpatternMember(this); 8411public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypePattern(this); 8446public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBinaryPattern(this); 8476public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNegatedPattern(this); 8511public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRelationalPattern(this); 8546public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDiscardExpression(this); 8574public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThrowExpression(this); 8617public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitOutVariablePendingInference(this); 8643public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeconstructionVariablePendingInference(this); 8678public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitOutDeconstructVarPendingInference(this); 8714public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNonConstructorMethodBody(this); 8744public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConstructorMethodBody(this); 8775public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitExpressionWithNullability(this); 8810public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitWithExpression(this); 8828internal R VisitInternal(BoundNode node, A arg) 9540public virtual BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node) => this.DefaultVisit(node); 9541public virtual BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node) => this.DefaultVisit(node); 9542public virtual BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node) => this.DefaultVisit(node); 9543public virtual BoundNode? VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node) => this.DefaultVisit(node); 9544public virtual BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node) => this.DefaultVisit(node); 9545public virtual BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node) => this.DefaultVisit(node); 9546public virtual BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node) => this.DefaultVisit(node); 9547public virtual BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node) => this.DefaultVisit(node); 9548public virtual BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node) => this.DefaultVisit(node); 9549public virtual BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node) => this.DefaultVisit(node); 9550public virtual BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node) => this.DefaultVisit(node); 9551public virtual BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node) => this.DefaultVisit(node); 9552public virtual BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node) => this.DefaultVisit(node); 9553public virtual BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node) => this.DefaultVisit(node); 9554public virtual BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node) => this.DefaultVisit(node); 9555public virtual BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node) => this.DefaultVisit(node); 9556public virtual BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node) => this.DefaultVisit(node); 9557public virtual BoundNode? VisitDup(BoundDup node) => this.DefaultVisit(node); 9558public virtual BoundNode? VisitPassByCopy(BoundPassByCopy node) => this.DefaultVisit(node); 9559public virtual BoundNode? VisitBadExpression(BoundBadExpression node) => this.DefaultVisit(node); 9560public virtual BoundNode? VisitBadStatement(BoundBadStatement node) => this.DefaultVisit(node); 9561public virtual BoundNode? VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node) => this.DefaultVisit(node); 9562public virtual BoundNode? VisitTypeExpression(BoundTypeExpression node) => this.DefaultVisit(node); 9563public virtual BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node) => this.DefaultVisit(node); 9564public virtual BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node) => this.DefaultVisit(node); 9565public virtual BoundNode? VisitUnaryOperator(BoundUnaryOperator node) => this.DefaultVisit(node); 9566public virtual BoundNode? VisitIncrementOperator(BoundIncrementOperator node) => this.DefaultVisit(node); 9567public virtual BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node) => this.DefaultVisit(node); 9568public virtual BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node) => this.DefaultVisit(node); 9569public virtual BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node) => this.DefaultVisit(node); 9570public virtual BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node) => this.DefaultVisit(node); 9571public virtual BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node) => this.DefaultVisit(node); 9572public virtual BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node) => this.DefaultVisit(node); 9573public virtual BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node) => this.DefaultVisit(node); 9574public virtual BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node) => this.DefaultVisit(node); 9575public virtual BoundNode? VisitRefValueOperator(BoundRefValueOperator node) => this.DefaultVisit(node); 9576public virtual BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node) => this.DefaultVisit(node); 9577public virtual BoundNode? VisitRangeExpression(BoundRangeExpression node) => this.DefaultVisit(node); 9578public virtual BoundNode? VisitBinaryOperator(BoundBinaryOperator node) => this.DefaultVisit(node); 9579public virtual BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node) => this.DefaultVisit(node); 9580public virtual BoundNode? VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node) => this.DefaultVisit(node); 9581public virtual BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node) => this.DefaultVisit(node); 9582public virtual BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node) => this.DefaultVisit(node); 9583public virtual BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node) => this.DefaultVisit(node); 9584public virtual BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node) => this.DefaultVisit(node); 9585public virtual BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node) => this.DefaultVisit(node); 9586public virtual BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node) => this.DefaultVisit(node); 9587public virtual BoundNode? VisitConditionalOperator(BoundConditionalOperator node) => this.DefaultVisit(node); 9588public virtual BoundNode? VisitArrayAccess(BoundArrayAccess node) => this.DefaultVisit(node); 9589public virtual BoundNode? VisitRefArrayAccess(BoundRefArrayAccess node) => this.DefaultVisit(node); 9590public virtual BoundNode? VisitArrayLength(BoundArrayLength node) => this.DefaultVisit(node); 9591public virtual BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node) => this.DefaultVisit(node); 9592public virtual BoundNode? VisitAwaitExpression(BoundAwaitExpression node) => this.DefaultVisit(node); 9593public virtual BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node) => this.DefaultVisit(node); 9594public virtual BoundNode? VisitBlockInstrumentation(BoundBlockInstrumentation node) => this.DefaultVisit(node); 9595public virtual BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node) => this.DefaultVisit(node); 9596public virtual BoundNode? VisitLocalId(BoundLocalId node) => this.DefaultVisit(node); 9597public virtual BoundNode? VisitParameterId(BoundParameterId node) => this.DefaultVisit(node); 9598public virtual BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node) => this.DefaultVisit(node); 9599public virtual BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node) => this.DefaultVisit(node); 9600public virtual BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node) => this.DefaultVisit(node); 9601public virtual BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node) => this.DefaultVisit(node); 9602public virtual BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node) => this.DefaultVisit(node); 9603public virtual BoundNode? VisitModuleVersionId(BoundModuleVersionId node) => this.DefaultVisit(node); 9604public virtual BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node) => this.DefaultVisit(node); 9605public virtual BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node) => this.DefaultVisit(node); 9606public virtual BoundNode? VisitMethodInfo(BoundMethodInfo node) => this.DefaultVisit(node); 9607public virtual BoundNode? VisitFieldInfo(BoundFieldInfo node) => this.DefaultVisit(node); 9608public virtual BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node) => this.DefaultVisit(node); 9609public virtual BoundNode? VisitDefaultExpression(BoundDefaultExpression node) => this.DefaultVisit(node); 9610public virtual BoundNode? VisitIsOperator(BoundIsOperator node) => this.DefaultVisit(node); 9611public virtual BoundNode? VisitAsOperator(BoundAsOperator node) => this.DefaultVisit(node); 9612public virtual BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node) => this.DefaultVisit(node); 9613public virtual BoundNode? VisitConversion(BoundConversion node) => this.DefaultVisit(node); 9614public virtual BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node) => this.DefaultVisit(node); 9615public virtual BoundNode? VisitArgList(BoundArgList node) => this.DefaultVisit(node); 9616public virtual BoundNode? VisitArgListOperator(BoundArgListOperator node) => this.DefaultVisit(node); 9617public virtual BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node) => this.DefaultVisit(node); 9618public virtual BoundNode? VisitSequencePoint(BoundSequencePoint node) => this.DefaultVisit(node); 9619public virtual BoundNode? VisitSequencePointWithSpan(BoundSequencePointWithSpan node) => this.DefaultVisit(node); 9620public virtual BoundNode? VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node) => this.DefaultVisit(node); 9621public virtual BoundNode? VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node) => this.DefaultVisit(node); 9622public virtual BoundNode? VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node) => this.DefaultVisit(node); 9623public virtual BoundNode? VisitBlock(BoundBlock node) => this.DefaultVisit(node); 9624public virtual BoundNode? VisitScope(BoundScope node) => this.DefaultVisit(node); 9625public virtual BoundNode? VisitStateMachineScope(BoundStateMachineScope node) => this.DefaultVisit(node); 9626public virtual BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node) => this.DefaultVisit(node); 9627public virtual BoundNode? VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node) => this.DefaultVisit(node); 9628public virtual BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node) => this.DefaultVisit(node); 9629public virtual BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node) => this.DefaultVisit(node); 9630public virtual BoundNode? VisitNoOpStatement(BoundNoOpStatement node) => this.DefaultVisit(node); 9631public virtual BoundNode? VisitReturnStatement(BoundReturnStatement node) => this.DefaultVisit(node); 9632public virtual BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node) => this.DefaultVisit(node); 9633public virtual BoundNode? VisitYieldBreakStatement(BoundYieldBreakStatement node) => this.DefaultVisit(node); 9634public virtual BoundNode? VisitThrowStatement(BoundThrowStatement node) => this.DefaultVisit(node); 9635public virtual BoundNode? VisitExpressionStatement(BoundExpressionStatement node) => this.DefaultVisit(node); 9636public virtual BoundNode? VisitBreakStatement(BoundBreakStatement node) => this.DefaultVisit(node); 9637public virtual BoundNode? VisitContinueStatement(BoundContinueStatement node) => this.DefaultVisit(node); 9638public virtual BoundNode? VisitSwitchStatement(BoundSwitchStatement node) => this.DefaultVisit(node); 9639public virtual BoundNode? VisitSwitchDispatch(BoundSwitchDispatch node) => this.DefaultVisit(node); 9640public virtual BoundNode? VisitIfStatement(BoundIfStatement node) => this.DefaultVisit(node); 9641public virtual BoundNode? VisitDoStatement(BoundDoStatement node) => this.DefaultVisit(node); 9642public virtual BoundNode? VisitWhileStatement(BoundWhileStatement node) => this.DefaultVisit(node); 9643public virtual BoundNode? VisitForStatement(BoundForStatement node) => this.DefaultVisit(node); 9644public virtual BoundNode? VisitForEachStatement(BoundForEachStatement node) => this.DefaultVisit(node); 9645public virtual BoundNode? VisitForEachDeconstructStep(BoundForEachDeconstructStep node) => this.DefaultVisit(node); 9646public virtual BoundNode? VisitUsingStatement(BoundUsingStatement node) => this.DefaultVisit(node); 9647public virtual BoundNode? VisitFixedStatement(BoundFixedStatement node) => this.DefaultVisit(node); 9648public virtual BoundNode? VisitLockStatement(BoundLockStatement node) => this.DefaultVisit(node); 9649public virtual BoundNode? VisitTryStatement(BoundTryStatement node) => this.DefaultVisit(node); 9650public virtual BoundNode? VisitCatchBlock(BoundCatchBlock node) => this.DefaultVisit(node); 9651public virtual BoundNode? VisitLiteral(BoundLiteral node) => this.DefaultVisit(node); 9652public virtual BoundNode? VisitUtf8String(BoundUtf8String node) => this.DefaultVisit(node); 9653public virtual BoundNode? VisitThisReference(BoundThisReference node) => this.DefaultVisit(node); 9654public virtual BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node) => this.DefaultVisit(node); 9655public virtual BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node) => this.DefaultVisit(node); 9656public virtual BoundNode? VisitBaseReference(BoundBaseReference node) => this.DefaultVisit(node); 9657public virtual BoundNode? VisitLocal(BoundLocal node) => this.DefaultVisit(node); 9658public virtual BoundNode? VisitPseudoVariable(BoundPseudoVariable node) => this.DefaultVisit(node); 9659public virtual BoundNode? VisitRangeVariable(BoundRangeVariable node) => this.DefaultVisit(node); 9660public virtual BoundNode? VisitParameter(BoundParameter node) => this.DefaultVisit(node); 9661public virtual BoundNode? VisitLabelStatement(BoundLabelStatement node) => this.DefaultVisit(node); 9662public virtual BoundNode? VisitGotoStatement(BoundGotoStatement node) => this.DefaultVisit(node); 9663public virtual BoundNode? VisitLabeledStatement(BoundLabeledStatement node) => this.DefaultVisit(node); 9664public virtual BoundNode? VisitLabel(BoundLabel node) => this.DefaultVisit(node); 9665public virtual BoundNode? VisitStatementList(BoundStatementList node) => this.DefaultVisit(node); 9666public virtual BoundNode? VisitConditionalGoto(BoundConditionalGoto node) => this.DefaultVisit(node); 9667public virtual BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node) => this.DefaultVisit(node); 9668public virtual BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node) => this.DefaultVisit(node); 9669public virtual BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node) => this.DefaultVisit(node); 9670public virtual BoundNode? VisitDecisionDag(BoundDecisionDag node) => this.DefaultVisit(node); 9671public virtual BoundNode? VisitEvaluationDecisionDagNode(BoundEvaluationDecisionDagNode node) => this.DefaultVisit(node); 9672public virtual BoundNode? VisitTestDecisionDagNode(BoundTestDecisionDagNode node) => this.DefaultVisit(node); 9673public virtual BoundNode? VisitWhenDecisionDagNode(BoundWhenDecisionDagNode node) => this.DefaultVisit(node); 9674public virtual BoundNode? VisitLeafDecisionDagNode(BoundLeafDecisionDagNode node) => this.DefaultVisit(node); 9675public virtual BoundNode? VisitDagTemp(BoundDagTemp node) => this.DefaultVisit(node); 9676public virtual BoundNode? VisitDagTypeTest(BoundDagTypeTest node) => this.DefaultVisit(node); 9677public virtual BoundNode? VisitDagNonNullTest(BoundDagNonNullTest node) => this.DefaultVisit(node); 9678public virtual BoundNode? VisitDagExplicitNullTest(BoundDagExplicitNullTest node) => this.DefaultVisit(node); 9679public virtual BoundNode? VisitDagValueTest(BoundDagValueTest node) => this.DefaultVisit(node); 9680public virtual BoundNode? VisitDagRelationalTest(BoundDagRelationalTest node) => this.DefaultVisit(node); 9681public virtual BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node) => this.DefaultVisit(node); 9682public virtual BoundNode? VisitDagTypeEvaluation(BoundDagTypeEvaluation node) => this.DefaultVisit(node); 9683public virtual BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node) => this.DefaultVisit(node); 9684public virtual BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node) => this.DefaultVisit(node); 9685public virtual BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node) => this.DefaultVisit(node); 9686public virtual BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node) => this.DefaultVisit(node); 9687public virtual BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node) => this.DefaultVisit(node); 9688public virtual BoundNode? VisitDagAssignmentEvaluation(BoundDagAssignmentEvaluation node) => this.DefaultVisit(node); 9689public virtual BoundNode? VisitSwitchSection(BoundSwitchSection node) => this.DefaultVisit(node); 9690public virtual BoundNode? VisitSwitchLabel(BoundSwitchLabel node) => this.DefaultVisit(node); 9691public virtual BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node) => this.DefaultVisit(node); 9692public virtual BoundNode? VisitSequence(BoundSequence node) => this.DefaultVisit(node); 9693public virtual BoundNode? VisitSpillSequence(BoundSpillSequence node) => this.DefaultVisit(node); 9694public virtual BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node) => this.DefaultVisit(node); 9695public virtual BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node) => this.DefaultVisit(node); 9696public virtual BoundNode? VisitConditionalAccess(BoundConditionalAccess node) => this.DefaultVisit(node); 9697public virtual BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node) => this.DefaultVisit(node); 9698public virtual BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node) => this.DefaultVisit(node); 9699public virtual BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node) => this.DefaultVisit(node); 9700public virtual BoundNode? VisitMethodGroup(BoundMethodGroup node) => this.DefaultVisit(node); 9701public virtual BoundNode? VisitPropertyGroup(BoundPropertyGroup node) => this.DefaultVisit(node); 9702public virtual BoundNode? VisitCall(BoundCall node) => this.DefaultVisit(node); 9703public virtual BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node) => this.DefaultVisit(node); 9704public virtual BoundNode? VisitAttribute(BoundAttribute node) => this.DefaultVisit(node); 9705public virtual BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node) => this.DefaultVisit(node); 9706public virtual BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node) => this.DefaultVisit(node); 9707public virtual BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node) => this.DefaultVisit(node); 9708public virtual BoundNode? VisitCollectionExpression(BoundCollectionExpression node) => this.DefaultVisit(node); 9709public virtual BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node) => this.DefaultVisit(node); 9710public virtual BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node) => this.DefaultVisit(node); 9711public virtual BoundNode? VisitTupleLiteral(BoundTupleLiteral node) => this.DefaultVisit(node); 9712public virtual BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node) => this.DefaultVisit(node); 9713public virtual BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node) => this.DefaultVisit(node); 9714public virtual BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node) => this.DefaultVisit(node); 9715public virtual BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node) => this.DefaultVisit(node); 9716public virtual BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node) => this.DefaultVisit(node); 9717public virtual BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node) => this.DefaultVisit(node); 9718public virtual BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node) => this.DefaultVisit(node); 9719public virtual BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node) => this.DefaultVisit(node); 9720public virtual BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node) => this.DefaultVisit(node); 9721public virtual BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node) => this.DefaultVisit(node); 9722public virtual BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node) => this.DefaultVisit(node); 9723public virtual BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node) => this.DefaultVisit(node); 9724public virtual BoundNode? VisitNewT(BoundNewT node) => this.DefaultVisit(node); 9725public virtual BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node) => this.DefaultVisit(node); 9726public virtual BoundNode? VisitArrayCreation(BoundArrayCreation node) => this.DefaultVisit(node); 9727public virtual BoundNode? VisitArrayInitialization(BoundArrayInitialization node) => this.DefaultVisit(node); 9728public virtual BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node) => this.DefaultVisit(node); 9729public virtual BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node) => this.DefaultVisit(node); 9730public virtual BoundNode? VisitFieldAccess(BoundFieldAccess node) => this.DefaultVisit(node); 9731public virtual BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node) => this.DefaultVisit(node); 9732public virtual BoundNode? VisitPropertyAccess(BoundPropertyAccess node) => this.DefaultVisit(node); 9733public virtual BoundNode? VisitEventAccess(BoundEventAccess node) => this.DefaultVisit(node); 9734public virtual BoundNode? VisitIndexerAccess(BoundIndexerAccess node) => this.DefaultVisit(node); 9735public virtual BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node) => this.DefaultVisit(node); 9736public virtual BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node) => this.DefaultVisit(node); 9737public virtual BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node) => this.DefaultVisit(node); 9738public virtual BoundNode? VisitLambda(BoundLambda node) => this.DefaultVisit(node); 9739public virtual BoundNode? VisitUnboundLambda(UnboundLambda node) => this.DefaultVisit(node); 9740public virtual BoundNode? VisitQueryClause(BoundQueryClause node) => this.DefaultVisit(node); 9741public virtual BoundNode? VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node) => this.DefaultVisit(node); 9742public virtual BoundNode? VisitNameOfOperator(BoundNameOfOperator node) => this.DefaultVisit(node); 9743public virtual BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node) => this.DefaultVisit(node); 9744public virtual BoundNode? VisitInterpolatedString(BoundInterpolatedString node) => this.DefaultVisit(node); 9745public virtual BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node) => this.DefaultVisit(node); 9746public virtual BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node) => this.DefaultVisit(node); 9747public virtual BoundNode? VisitStringInsert(BoundStringInsert node) => this.DefaultVisit(node); 9748public virtual BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node) => this.DefaultVisit(node); 9749public virtual BoundNode? VisitConstantPattern(BoundConstantPattern node) => this.DefaultVisit(node); 9750public virtual BoundNode? VisitDiscardPattern(BoundDiscardPattern node) => this.DefaultVisit(node); 9751public virtual BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node) => this.DefaultVisit(node); 9752public virtual BoundNode? VisitRecursivePattern(BoundRecursivePattern node) => this.DefaultVisit(node); 9753public virtual BoundNode? VisitListPattern(BoundListPattern node) => this.DefaultVisit(node); 9754public virtual BoundNode? VisitSlicePattern(BoundSlicePattern node) => this.DefaultVisit(node); 9755public virtual BoundNode? VisitITuplePattern(BoundITuplePattern node) => this.DefaultVisit(node); 9756public virtual BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node) => this.DefaultVisit(node); 9757public virtual BoundNode? VisitPropertySubpattern(BoundPropertySubpattern node) => this.DefaultVisit(node); 9758public virtual BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node) => this.DefaultVisit(node); 9759public virtual BoundNode? VisitTypePattern(BoundTypePattern node) => this.DefaultVisit(node); 9760public virtual BoundNode? VisitBinaryPattern(BoundBinaryPattern node) => this.DefaultVisit(node); 9761public virtual BoundNode? VisitNegatedPattern(BoundNegatedPattern node) => this.DefaultVisit(node); 9762public virtual BoundNode? VisitRelationalPattern(BoundRelationalPattern node) => this.DefaultVisit(node); 9763public virtual BoundNode? VisitDiscardExpression(BoundDiscardExpression node) => this.DefaultVisit(node); 9764public virtual BoundNode? VisitThrowExpression(BoundThrowExpression node) => this.DefaultVisit(node); 9765public virtual BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node) => this.DefaultVisit(node); 9766public virtual BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node) => this.DefaultVisit(node); 9767public virtual BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node) => this.DefaultVisit(node); 9768public virtual BoundNode? VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node) => this.DefaultVisit(node); 9769public virtual BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node) => this.DefaultVisit(node); 9770public virtual BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node) => this.DefaultVisit(node); 9771public virtual BoundNode? VisitWithExpression(BoundWithExpression node) => this.DefaultVisit(node); 9776public override BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node) 9781public override BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node) 9786public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node) 9791public override BoundNode? VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node) 9796public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node) => null; 9797public override BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node) 9802public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node) => null; 9803public override BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node) => null; 9804public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node) => null; 9805public override BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node) => null; 9806public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node) => null; 9807public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node) => null; 9808public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node) => null; 9809public override BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node) => null; 9810public override BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node) => null; 9811public override BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node) => null; 9812public override BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node) => null; 9813public override BoundNode? VisitDup(BoundDup node) => null; 9814public override BoundNode? VisitPassByCopy(BoundPassByCopy node) 9819public override BoundNode? VisitBadExpression(BoundBadExpression node) 9824public override BoundNode? VisitBadStatement(BoundBadStatement node) 9829public override BoundNode? VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node) 9834public override BoundNode? VisitTypeExpression(BoundTypeExpression node) 9840public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node) => null; 9841public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node) => null; 9842public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node) 9847public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node) 9852public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node) 9857public override BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node) 9862public override BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node) => null; 9863public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node) 9868public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node) 9874public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node) 9880public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node) 9885public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node) 9890public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node) 9895public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node) 9900public override BoundNode? VisitRangeExpression(BoundRangeExpression node) 9906public override BoundNode? VisitBinaryOperator(BoundBinaryOperator node) 9912public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node) 9918public override BoundNode? VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node) 9924public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node) 9930public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node) 9936public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node) 9942public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node) 9948public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node) 9954public override BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node) 9961public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node) 9968public override BoundNode? VisitArrayAccess(BoundArrayAccess node) 9974public override BoundNode? VisitRefArrayAccess(BoundRefArrayAccess node) 9979public override BoundNode? VisitArrayLength(BoundArrayLength node) 9984public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node) 9990public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node) 9996public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node) 10001public override BoundNode? VisitBlockInstrumentation(BoundBlockInstrumentation node) 10007public override BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node) => null; 10008public override BoundNode? VisitLocalId(BoundLocalId node) => null; 10009public override BoundNode? VisitParameterId(BoundParameterId node) => null; 10010public override BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node) => null; 10011public override BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node) => null; 10012public override BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node) => null; 10013public override BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node) => null; 10014public override BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node) => null; 10015public override BoundNode? VisitModuleVersionId(BoundModuleVersionId node) => null; 10016public override BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node) => null; 10017public override BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node) => null; 10018public override BoundNode? VisitMethodInfo(BoundMethodInfo node) => null; 10019public override BoundNode? VisitFieldInfo(BoundFieldInfo node) => null; 10020public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node) => null; 10021public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node) => null; 10022public override BoundNode? VisitIsOperator(BoundIsOperator node) 10028public override BoundNode? VisitAsOperator(BoundAsOperator node) 10034public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node) 10039public override BoundNode? VisitConversion(BoundConversion node) 10044public override BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node) 10049public override BoundNode? VisitArgList(BoundArgList node) => null; 10050public override BoundNode? VisitArgListOperator(BoundArgListOperator node) 10055public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node) 10060public override BoundNode? VisitSequencePoint(BoundSequencePoint node) 10065public override BoundNode? VisitSequencePointWithSpan(BoundSequencePointWithSpan node) 10070public override BoundNode? VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node) => null; 10071public override BoundNode? VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node) => null; 10072public override BoundNode? VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node) => null; 10073public override BoundNode? VisitBlock(BoundBlock node) 10079public override BoundNode? VisitScope(BoundScope node) 10084public override BoundNode? VisitStateMachineScope(BoundStateMachineScope node) 10089public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node) 10096public override BoundNode? VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node) 10101public override BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node) 10107public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node) 10113public override BoundNode? VisitNoOpStatement(BoundNoOpStatement node) => null; 10114public override BoundNode? VisitReturnStatement(BoundReturnStatement node) 10119public override BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node) 10124public override BoundNode? VisitYieldBreakStatement(BoundYieldBreakStatement node) => null; 10125public override BoundNode? VisitThrowStatement(BoundThrowStatement node) 10130public override BoundNode? VisitExpressionStatement(BoundExpressionStatement node) 10135public override BoundNode? VisitBreakStatement(BoundBreakStatement node) => null; 10136public override BoundNode? VisitContinueStatement(BoundContinueStatement node) => null; 10137public override BoundNode? VisitSwitchStatement(BoundSwitchStatement node) 10144public override BoundNode? VisitSwitchDispatch(BoundSwitchDispatch node) 10149public override BoundNode? VisitIfStatement(BoundIfStatement node) 10156public override BoundNode? VisitDoStatement(BoundDoStatement node) 10162public override BoundNode? VisitWhileStatement(BoundWhileStatement node) 10168public override BoundNode? VisitForStatement(BoundForStatement node) 10176public override BoundNode? VisitForEachStatement(BoundForEachStatement node) 10186public override BoundNode? VisitForEachDeconstructStep(BoundForEachDeconstructStep node) 10192public override BoundNode? VisitUsingStatement(BoundUsingStatement node) 10200public override BoundNode? VisitFixedStatement(BoundFixedStatement node) 10206public override BoundNode? VisitLockStatement(BoundLockStatement node) 10212public override BoundNode? VisitTryStatement(BoundTryStatement node) 10219public override BoundNode? VisitCatchBlock(BoundCatchBlock node) 10227public override BoundNode? VisitLiteral(BoundLiteral node) => null; 10228public override BoundNode? VisitUtf8String(BoundUtf8String node) => null; 10229public override BoundNode? VisitThisReference(BoundThisReference node) => null; 10230public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node) => null; 10231public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node) => null; 10232public override BoundNode? VisitBaseReference(BoundBaseReference node) => null; 10233public override BoundNode? VisitLocal(BoundLocal node) => null; 10234public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node) => null; 10235public override BoundNode? VisitRangeVariable(BoundRangeVariable node) 10240public override BoundNode? VisitParameter(BoundParameter node) => null; 10241public override BoundNode? VisitLabelStatement(BoundLabelStatement node) => null; 10242public override BoundNode? VisitGotoStatement(BoundGotoStatement node) 10248public override BoundNode? VisitLabeledStatement(BoundLabeledStatement node) 10253public override BoundNode? VisitLabel(BoundLabel node) => null; 10254public override BoundNode? VisitStatementList(BoundStatementList node) 10259public override BoundNode? VisitConditionalGoto(BoundConditionalGoto node) 10264public override BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node) 10271public override BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node) 10277public override BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node) 10283public override BoundNode? VisitDecisionDag(BoundDecisionDag node) 10288public override BoundNode? VisitEvaluationDecisionDagNode(BoundEvaluationDecisionDagNode node) 10294public override BoundNode? VisitTestDecisionDagNode(BoundTestDecisionDagNode node) 10301public override BoundNode? VisitWhenDecisionDagNode(BoundWhenDecisionDagNode node) 10308public override BoundNode? VisitLeafDecisionDagNode(BoundLeafDecisionDagNode node) => null; 10309public override BoundNode? VisitDagTemp(BoundDagTemp node) 10314public override BoundNode? VisitDagTypeTest(BoundDagTypeTest node) 10319public override BoundNode? VisitDagNonNullTest(BoundDagNonNullTest node) 10324public override BoundNode? VisitDagExplicitNullTest(BoundDagExplicitNullTest node) 10329public override BoundNode? VisitDagValueTest(BoundDagValueTest node) 10334public override BoundNode? VisitDagRelationalTest(BoundDagRelationalTest node) 10339public override BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node) 10344public override BoundNode? VisitDagTypeEvaluation(BoundDagTypeEvaluation node) 10349public override BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node) 10354public override BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node) 10359public override BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node) 10364public override BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node) 10373public override BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node) 10382public override BoundNode? VisitDagAssignmentEvaluation(BoundDagAssignmentEvaluation node) 10388public override BoundNode? VisitSwitchSection(BoundSwitchSection node) 10394public override BoundNode? VisitSwitchLabel(BoundSwitchLabel node) 10400public override BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node) 10405public override BoundNode? VisitSequence(BoundSequence node) 10411public override BoundNode? VisitSpillSequence(BoundSpillSequence node) 10417public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node) 10422public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node) 10428public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node) 10434public override BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node) 10441public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node) => null; 10442public override BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node) 10448public override BoundNode? VisitMethodGroup(BoundMethodGroup node) 10453public override BoundNode? VisitPropertyGroup(BoundPropertyGroup node) 10458public override BoundNode? VisitCall(BoundCall node) 10464public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node) 10470public override BoundNode? VisitAttribute(BoundAttribute node) 10476public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node) 10481public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node) 10487public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node) 10492public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node) 10497public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node) => null; 10498public override BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node) 10503public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node) 10508public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node) 10513public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node) 10519public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node) 10524public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node) 10530public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node) 10535public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node) => null; 10536public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node) 10542public override BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node) 10548public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node) 10554public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node) => null; 10555public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node) 10561public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node) => null; 10562public override BoundNode? VisitNewT(BoundNewT node) 10567public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node) 10572public override BoundNode? VisitArrayCreation(BoundArrayCreation node) 10578public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node) 10583public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node) 10589public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node) 10595public override BoundNode? VisitFieldAccess(BoundFieldAccess node) 10600public override BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node) => null; 10601public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node) 10606public override BoundNode? VisitEventAccess(BoundEventAccess node) 10611public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node) 10617public override BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node) 10623public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node) 10629public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node) 10635public override BoundNode? VisitLambda(BoundLambda node) 10640public override BoundNode? VisitUnboundLambda(UnboundLambda node) => null; 10641public override BoundNode? VisitQueryClause(BoundQueryClause node) 10646public override BoundNode? VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node) 10651public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node) 10656public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node) 10661public override BoundNode? VisitInterpolatedString(BoundInterpolatedString node) 10666public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node) => null; 10667public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node) => null; 10668public override BoundNode? VisitStringInsert(BoundStringInsert node) 10675public override BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node) 10681public override BoundNode? VisitConstantPattern(BoundConstantPattern node) 10686public override BoundNode? VisitDiscardPattern(BoundDiscardPattern node) => null; 10687public override BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node) 10693public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node) 10701public override BoundNode? VisitListPattern(BoundListPattern node) 10707public override BoundNode? VisitSlicePattern(BoundSlicePattern node) 10712public override BoundNode? VisitITuplePattern(BoundITuplePattern node) 10717public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node) 10722public override BoundNode? VisitPropertySubpattern(BoundPropertySubpattern node) 10728public override BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node) 10733public override BoundNode? VisitTypePattern(BoundTypePattern node) 10738public override BoundNode? VisitBinaryPattern(BoundBinaryPattern node) 10744public override BoundNode? VisitNegatedPattern(BoundNegatedPattern node) 10749public override BoundNode? VisitRelationalPattern(BoundRelationalPattern node) 10754public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node) => null; 10755public override BoundNode? VisitThrowExpression(BoundThrowExpression node) 10760public override BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node) 10765public override BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node) 10770public override BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node) => null; 10771public override BoundNode? VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node) 10777public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node) 10784public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node) 10789public override BoundNode? VisitWithExpression(BoundWithExpression node) 10799public override BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node) 10804public override BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node) 10809public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node) 10814public override BoundNode? VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node) 10819public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node) 10824public override BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node) 10830public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node) 10835public override BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node) 10840public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node) 10845public override BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node) 10850public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node) 10855public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node) 10860public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node) 10865public override BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node) 10870public override BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node) 10875public override BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node) 10880public override BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node) 10885public override BoundNode? VisitDup(BoundDup node) 10890public override BoundNode? VisitPassByCopy(BoundPassByCopy node) 10896public override BoundNode? VisitBadExpression(BoundBadExpression node) 10902public override BoundNode? VisitBadStatement(BoundBadStatement node) 10904ImmutableArray<BoundNode> childBoundNodes = this.VisitList(node.ChildBoundNodes); 10907public override BoundNode? VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node) 10912public override BoundNode? VisitTypeExpression(BoundTypeExpression node) 10919public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node) 10924public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node) 10929public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node) 10936public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node) 10947public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node) 10953public override BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node) 10959public override BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node) 10965public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node) 10971public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node) 10978public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node) 10985public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node) 10991public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node) 10997public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node) 11003public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node) 11009public override BoundNode? VisitRangeExpression(BoundRangeExpression node) 11016public override BoundNode? VisitBinaryOperator(BoundBinaryOperator node) 11023public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node) 11030public override BoundNode? VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node) 11038public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node) 11049public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node) 11056public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node) 11063public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node) 11072public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node) 11079public override BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node) 11087public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node) 11096public override BoundNode? VisitArrayAccess(BoundArrayAccess node) 11103public override BoundNode? VisitRefArrayAccess(BoundRefArrayAccess node) 11109public override BoundNode? VisitArrayLength(BoundArrayLength node) 11115public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node) 11121public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node) 11128public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node) 11134public override BoundNode? VisitBlockInstrumentation(BoundBlockInstrumentation node) 11140public override BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node) 11145public override BoundNode? VisitLocalId(BoundLocalId node) 11150public override BoundNode? VisitParameterId(BoundParameterId node) 11155public override BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node) 11160public override BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node) 11165public override BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node) 11170public override BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node) 11175public override BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node) 11180public override BoundNode? VisitModuleVersionId(BoundModuleVersionId node) 11185public override BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node) 11190public override BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node) 11195public override BoundNode? VisitMethodInfo(BoundMethodInfo node) 11200public override BoundNode? VisitFieldInfo(BoundFieldInfo node) 11205public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node) 11210public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node) 11216public override BoundNode? VisitIsOperator(BoundIsOperator node) 11223public override BoundNode? VisitAsOperator(BoundAsOperator node) 11232public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node) 11238public override BoundNode? VisitConversion(BoundConversion node) 11244public override BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node) 11250public override BoundNode? VisitArgList(BoundArgList node) 11255public override BoundNode? VisitArgListOperator(BoundArgListOperator node) 11261public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node) 11270public override BoundNode? VisitSequencePoint(BoundSequencePoint node) 11275public override BoundNode? VisitSequencePointWithSpan(BoundSequencePointWithSpan node) 11280public override BoundNode? VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node) => node; 11281public override BoundNode? VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node) => node; 11282public override BoundNode? VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node) => node; 11283public override BoundNode? VisitBlock(BoundBlock node) 11289public override BoundNode? VisitScope(BoundScope node) 11294public override BoundNode? VisitStateMachineScope(BoundStateMachineScope node) 11299public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node) 11306public override BoundNode? VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node) 11311public override BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node) 11317public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node) 11323public override BoundNode? VisitNoOpStatement(BoundNoOpStatement node) => node; 11324public override BoundNode? VisitReturnStatement(BoundReturnStatement node) 11329public override BoundNode? VisitYieldReturnStatement(BoundYieldReturnStatement node) 11334public override BoundNode? VisitYieldBreakStatement(BoundYieldBreakStatement node) => node; 11335public override BoundNode? VisitThrowStatement(BoundThrowStatement node) 11340public override BoundNode? VisitExpressionStatement(BoundExpressionStatement node) 11345public override BoundNode? VisitBreakStatement(BoundBreakStatement node) => node; 11346public override BoundNode? VisitContinueStatement(BoundContinueStatement node) => node; 11347public override BoundNode? VisitSwitchStatement(BoundSwitchStatement node) 11355public override BoundNode? VisitSwitchDispatch(BoundSwitchDispatch node) 11360public override BoundNode? VisitIfStatement(BoundIfStatement node) 11367public override BoundNode? VisitDoStatement(BoundDoStatement node) 11373public override BoundNode? VisitWhileStatement(BoundWhileStatement node) 11379public override BoundNode? VisitForStatement(BoundForStatement node) 11387public override BoundNode? VisitForEachStatement(BoundForEachStatement node) 11399public override BoundNode? VisitForEachDeconstructStep(BoundForEachDeconstructStep node) 11405public override BoundNode? VisitUsingStatement(BoundUsingStatement node) 11413public override BoundNode? VisitFixedStatement(BoundFixedStatement node) 11419public override BoundNode? VisitLockStatement(BoundLockStatement node) 11425public override BoundNode? VisitTryStatement(BoundTryStatement node) 11432public override BoundNode? VisitCatchBlock(BoundCatchBlock node) 11441public override BoundNode? VisitLiteral(BoundLiteral node) 11446public override BoundNode? VisitUtf8String(BoundUtf8String node) 11451public override BoundNode? VisitThisReference(BoundThisReference node) 11456public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node) 11461public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node) 11466public override BoundNode? VisitBaseReference(BoundBaseReference node) 11471public override BoundNode? VisitLocal(BoundLocal node) 11476public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node) 11481public override BoundNode? VisitRangeVariable(BoundRangeVariable node) 11487public override BoundNode? VisitParameter(BoundParameter node) 11492public override BoundNode? VisitLabelStatement(BoundLabelStatement node) => node; 11493public override BoundNode? VisitGotoStatement(BoundGotoStatement node) 11499public override BoundNode? VisitLabeledStatement(BoundLabeledStatement node) 11504public override BoundNode? VisitLabel(BoundLabel node) 11509public override BoundNode? VisitStatementList(BoundStatementList node) 11514public override BoundNode? VisitConditionalGoto(BoundConditionalGoto node) 11519public override BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node) 11526public override BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node) 11534public override BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node) 11543public override BoundNode? VisitDecisionDag(BoundDecisionDag node) 11548public override BoundNode? VisitEvaluationDecisionDagNode(BoundEvaluationDecisionDagNode node) 11554public override BoundNode? VisitTestDecisionDagNode(BoundTestDecisionDagNode node) 11561public override BoundNode? VisitWhenDecisionDagNode(BoundWhenDecisionDagNode node) 11568public override BoundNode? VisitLeafDecisionDagNode(BoundLeafDecisionDagNode node) => node; 11569public override BoundNode? VisitDagTemp(BoundDagTemp node) 11575public override BoundNode? VisitDagTypeTest(BoundDagTypeTest node) 11581public override BoundNode? VisitDagNonNullTest(BoundDagNonNullTest node) 11586public override BoundNode? VisitDagExplicitNullTest(BoundDagExplicitNullTest node) 11591public override BoundNode? VisitDagValueTest(BoundDagValueTest node) 11596public override BoundNode? VisitDagRelationalTest(BoundDagRelationalTest node) 11601public override BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node) 11606public override BoundNode? VisitDagTypeEvaluation(BoundDagTypeEvaluation node) 11612public override BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node) 11617public override BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node) 11622public override BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node) 11627public override BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node) 11637public override BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node) 11647public override BoundNode? VisitDagAssignmentEvaluation(BoundDagAssignmentEvaluation node) 11653public override BoundNode? VisitSwitchSection(BoundSwitchSection node) 11659public override BoundNode? VisitSwitchLabel(BoundSwitchLabel node) 11665public override BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node) 11671public override BoundNode? VisitSequence(BoundSequence node) 11678public override BoundNode? VisitSpillSequence(BoundSpillSequence node) 11685public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node) 11691public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node) 11698public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node) 11705public override BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node) 11713public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node) 11718public override BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node) 11725public override BoundNode? VisitMethodGroup(BoundMethodGroup node) 11731public override BoundNode? VisitPropertyGroup(BoundPropertyGroup node) 11737public override BoundNode? VisitCall(BoundCall node) 11744public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node) 11751public override BoundNode? VisitAttribute(BoundAttribute node) 11758public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node) 11764public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node) 11771public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node) 11773ImmutableArray<BoundNode> elements = this.VisitList(node.Elements); 11777public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node) 11784ImmutableArray<BoundNode> elements = this.VisitList(node.Elements); 11788public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node) 11793public override BoundNode? VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node) 11803public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node) 11809public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node) 11816public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node) 11823public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node) 11829public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node) 11836public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node) 11843public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node) 11849public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node) 11856public override BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node) 11863public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node) 11870public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node) 11875public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node) 11882public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node) 11887public override BoundNode? VisitNewT(BoundNewT node) 11893public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node) 11899public override BoundNode? VisitArrayCreation(BoundArrayCreation node) 11906public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node) 11912public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node) 11920public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node) 11928public override BoundNode? VisitFieldAccess(BoundFieldAccess node) 11934public override BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node) 11939public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node) 11945public override BoundNode? VisitEventAccess(BoundEventAccess node) 11951public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node) 11958public override BoundNode? VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node) 11969public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node) 11976public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node) 11983public override BoundNode? VisitLambda(BoundLambda node) 11990public override BoundNode? VisitUnboundLambda(UnboundLambda node) 11995public override BoundNode? VisitQueryClause(BoundQueryClause node) 12004public override BoundNode? VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node) 12009public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node) 12015public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node) 12021public override BoundNode? VisitInterpolatedString(BoundInterpolatedString node) 12027public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node) 12032public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node) 12037public override BoundNode? VisitStringInsert(BoundStringInsert node) 12045public override BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node) 12053public override BoundNode? VisitConstantPattern(BoundConstantPattern node) 12060public override BoundNode? VisitDiscardPattern(BoundDiscardPattern node) 12066public override BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node) 12074public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node) 12084public override BoundNode? VisitListPattern(BoundListPattern node) 12096public override BoundNode? VisitSlicePattern(BoundSlicePattern node) 12106public override BoundNode? VisitITuplePattern(BoundITuplePattern node) 12113public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node) 12118public override BoundNode? VisitPropertySubpattern(BoundPropertySubpattern node) 12124public override BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node) 12130public override BoundNode? VisitTypePattern(BoundTypePattern node) 12137public override BoundNode? VisitBinaryPattern(BoundBinaryPattern node) 12145public override BoundNode? VisitNegatedPattern(BoundNegatedPattern node) 12152public override BoundNode? VisitRelationalPattern(BoundRelationalPattern node) 12159public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node) 12164public override BoundNode? VisitThrowExpression(BoundThrowExpression node) 12170public override BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node) 12176public override BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node) 12182public override BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node) 12187public override BoundNode? VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node) 12193public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node) 12200public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node) 12206public override BoundNode? VisitWithExpression(BoundWithExpression node) 12228public override BoundNode? VisitFieldEqualsValue(BoundFieldEqualsValue node) 12236public override BoundNode? VisitPropertyEqualsValue(BoundPropertyEqualsValue node) 12244public override BoundNode? VisitParameterEqualsValue(BoundParameterEqualsValue node) 12252public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node) 12264public override BoundNode? VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node) 12281public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node) 12298public override BoundNode? VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node) 12310public override BoundNode? VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node) 12322public override BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node) 12334public override BoundNode? VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node) 12346public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node) 12358public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node) 12370public override BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node) 12382public override BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node) 12394public override BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node) 12406public override BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node) 12418public override BoundNode? VisitDup(BoundDup node) 12430public override BoundNode? VisitPassByCopy(BoundPassByCopy node) 12447public override BoundNode? VisitBadExpression(BoundBadExpression node) 12465public override BoundNode? VisitTypeExpression(BoundTypeExpression node) 12483public override BoundNode? VisitTypeOrValueExpression(BoundTypeOrValueExpression node) 12495public override BoundNode? VisitNamespaceExpression(BoundNamespaceExpression node) 12507public override BoundNode? VisitUnaryOperator(BoundUnaryOperator node) 12527public override BoundNode? VisitIncrementOperator(BoundIncrementOperator node) 12551public override BoundNode? VisitAddressOfOperator(BoundAddressOfOperator node) 12568public override BoundNode? VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node) 12585public override BoundNode? VisitFunctionPointerLoad(BoundFunctionPointerLoad node) 12603public override BoundNode? VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node) 12620public override BoundNode? VisitPointerElementAccess(BoundPointerElementAccess node) 12638public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node) 12656public override BoundNode? VisitRefTypeOperator(BoundRefTypeOperator node) 12674public override BoundNode? VisitMakeRefOperator(BoundMakeRefOperator node) 12691public override BoundNode? VisitRefValueOperator(BoundRefValueOperator node) 12708public override BoundNode? VisitFromEndIndexExpression(BoundFromEndIndexExpression node) 12726public override BoundNode? VisitRangeExpression(BoundRangeExpression node) 12745public override BoundNode? VisitTupleBinaryOperator(BoundTupleBinaryOperator node) 12763public override BoundNode? VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node) 12786public override BoundNode? VisitAssignmentOperator(BoundAssignmentOperator node) 12804public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node) 12822public override BoundNode? VisitNullCoalescingOperator(BoundNullCoalescingOperator node) 12842public override BoundNode? VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node) 12860public override BoundNode? VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node) 12879public override BoundNode? VisitConditionalOperator(BoundConditionalOperator node) 12899public override BoundNode? VisitArrayAccess(BoundArrayAccess node) 12917public override BoundNode? VisitRefArrayAccess(BoundRefArrayAccess node) 12934public override BoundNode? VisitArrayLength(BoundArrayLength node) 12951public override BoundNode? VisitAwaitableInfo(BoundAwaitableInfo node) 12960public override BoundNode? VisitAwaitExpression(BoundAwaitExpression node) 12978public override BoundNode? VisitTypeOfOperator(BoundTypeOfOperator node) 12996public override BoundNode? VisitMethodDefIndex(BoundMethodDefIndex node) 13013public override BoundNode? VisitLocalId(BoundLocalId node) 13031public override BoundNode? VisitParameterId(BoundParameterId node) 13049public override BoundNode? VisitStateMachineInstanceId(BoundStateMachineInstanceId node) 13061public override BoundNode? VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node) 13073public override BoundNode? VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node) 13085public override BoundNode? VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node) 13097public override BoundNode? VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node) 13109public override BoundNode? VisitModuleVersionId(BoundModuleVersionId node) 13121public override BoundNode? VisitModuleVersionIdString(BoundModuleVersionIdString node) 13133public override BoundNode? VisitSourceDocumentIndex(BoundSourceDocumentIndex node) 13145public override BoundNode? VisitMethodInfo(BoundMethodInfo node) 13163public override BoundNode? VisitFieldInfo(BoundFieldInfo node) 13181public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node) 13193public override BoundNode? VisitDefaultExpression(BoundDefaultExpression node) 13210public override BoundNode? VisitIsOperator(BoundIsOperator node) 13228public override BoundNode? VisitAsOperator(BoundAsOperator node) 13248public override BoundNode? VisitSizeOfOperator(BoundSizeOfOperator node) 13265public override BoundNode? VisitConversion(BoundConversion node) 13283public override BoundNode? VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node) 13301public override BoundNode? VisitArgList(BoundArgList node) 13313public override BoundNode? VisitArgListOperator(BoundArgListOperator node) 13330public override BoundNode? VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node) 13351public override BoundNode? VisitBlock(BoundBlock node) 13360public override BoundNode? VisitScope(BoundScope node) 13367public override BoundNode? VisitStateMachineScope(BoundStateMachineScope node) 13374public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node) 13383public override BoundNode? VisitLocalFunctionStatement(BoundLocalFunctionStatement node) 13391public override BoundNode? VisitSwitchStatement(BoundSwitchStatement node) 13402public override BoundNode? VisitDoStatement(BoundDoStatement node) 13410public override BoundNode? VisitWhileStatement(BoundWhileStatement node) 13418public override BoundNode? VisitForStatement(BoundForStatement node) 13429public override BoundNode? VisitForEachStatement(BoundForEachStatement node) 13443public override BoundNode? VisitUsingStatement(BoundUsingStatement node) 13453public override BoundNode? VisitFixedStatement(BoundFixedStatement node) 13461public override BoundNode? VisitCatchBlock(BoundCatchBlock node) 13472public override BoundNode? VisitLiteral(BoundLiteral node) 13484public override BoundNode? VisitUtf8String(BoundUtf8String node) 13496public override BoundNode? VisitThisReference(BoundThisReference node) 13508public override BoundNode? VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node) 13520public override BoundNode? VisitHostObjectMemberReference(BoundHostObjectMemberReference node) 13532public override BoundNode? VisitBaseReference(BoundBaseReference node) 13544public override BoundNode? VisitLocal(BoundLocal node) 13561public override BoundNode? VisitPseudoVariable(BoundPseudoVariable node) 13578public override BoundNode? VisitRangeVariable(BoundRangeVariable node) 13596public override BoundNode? VisitParameter(BoundParameter node) 13613public override BoundNode? VisitLabel(BoundLabel node) 13625public override BoundNode? VisitSwitchExpressionArm(BoundSwitchExpressionArm node) 13634public override BoundNode? VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node) 13653public override BoundNode? VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node) 13673public override BoundNode? VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node) 13680public override BoundNode? VisitDagFieldEvaluation(BoundDagFieldEvaluation node) 13687public override BoundNode? VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node) 13694public override BoundNode? VisitDagIndexEvaluation(BoundDagIndexEvaluation node) 13701public override BoundNode? VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node) 13712public override BoundNode? VisitDagSliceEvaluation(BoundDagSliceEvaluation node) 13723public override BoundNode? VisitSwitchSection(BoundSwitchSection node) 13731public override BoundNode? VisitSequencePointExpression(BoundSequencePointExpression node) 13748public override BoundNode? VisitSequence(BoundSequence node) 13767public override BoundNode? VisitSpillSequence(BoundSpillSequence node) 13786public override BoundNode? VisitDynamicMemberAccess(BoundDynamicMemberAccess node) 13803public override BoundNode? VisitDynamicInvocation(BoundDynamicInvocation node) 13822public override BoundNode? VisitConditionalAccess(BoundConditionalAccess node) 13840public override BoundNode? VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node) 13860public override BoundNode? VisitConditionalReceiver(BoundConditionalReceiver node) 13872public override BoundNode? VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node) 13890public override BoundNode? VisitMethodGroup(BoundMethodGroup node) 13910public override BoundNode? VisitPropertyGroup(BoundPropertyGroup node) 13928public override BoundNode? VisitCall(BoundCall node) 13948public override BoundNode? VisitEventAssignmentOperator(BoundEventAssignmentOperator node) 13967public override BoundNode? VisitAttribute(BoundAttribute node) 13986public override BoundNode? VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node) 14003public override BoundNode? VisitObjectCreationExpression(BoundObjectCreationExpression node) 14023public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node) 14025ImmutableArray<BoundNode> elements = this.VisitList(node.Elements); 14040public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node) 14048ImmutableArray<BoundNode> elements = this.VisitList(node.Elements); 14063public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node) 14075public override BoundNode? VisitTupleLiteral(BoundTupleLiteral node) 14092public override BoundNode? VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node) 14110public override BoundNode? VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node) 14129public override BoundNode? VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node) 14146public override BoundNode? VisitObjectInitializerExpression(BoundObjectInitializerExpression node) 14164public override BoundNode? VisitObjectInitializerMember(BoundObjectInitializerMember node) 14183public override BoundNode? VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node) 14200public override BoundNode? VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node) 14218public override BoundNode? VisitCollectionElementInitializer(BoundCollectionElementInitializer node) 14237public override BoundNode? VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node) 14256public override BoundNode? VisitImplicitReceiver(BoundImplicitReceiver node) 14268public override BoundNode? VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node) 14287public override BoundNode? VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node) 14304public override BoundNode? VisitNewT(BoundNewT node) 14321public override BoundNode? VisitDelegateCreationExpression(BoundDelegateCreationExpression node) 14339public override BoundNode? VisitArrayCreation(BoundArrayCreation node) 14357public override BoundNode? VisitArrayInitialization(BoundArrayInitialization node) 14374public override BoundNode? VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node) 14393public override BoundNode? VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node) 14412public override BoundNode? VisitFieldAccess(BoundFieldAccess node) 14430public override BoundNode? VisitHoistedFieldAccess(BoundHoistedFieldAccess node) 14447public override BoundNode? VisitPropertyAccess(BoundPropertyAccess node) 14465public override BoundNode? VisitEventAccess(BoundEventAccess node) 14483public override BoundNode? VisitIndexerAccess(BoundIndexerAccess node) 14503public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node) 14521public override BoundNode? VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node) 14540public override BoundNode? VisitLambda(BoundLambda node) 14559public override BoundNode? VisitUnboundLambda(UnboundLambda node) 14576public override BoundNode? VisitQueryClause(BoundQueryClause node) 14597public override BoundNode? VisitNameOfOperator(BoundNameOfOperator node) 14614public override BoundNode? VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node) 14631public override BoundNode? VisitInterpolatedString(BoundInterpolatedString node) 14648public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node) 14660public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node) 14672public override BoundNode? VisitStringInsert(BoundStringInsert node) 14691public override BoundNode? VisitIsPatternExpression(BoundIsPatternExpression node) 14710public override BoundNode? VisitConstantPattern(BoundConstantPattern node) 14718public override BoundNode? VisitDiscardPattern(BoundDiscardPattern node) 14725public override BoundNode? VisitDeclarationPattern(BoundDeclarationPattern node) 14735public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node) 14748public override BoundNode? VisitListPattern(BoundListPattern node) 14762public override BoundNode? VisitSlicePattern(BoundSlicePattern node) 14773public override BoundNode? VisitITuplePattern(BoundITuplePattern node) 14783public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node) 14790public override BoundNode? VisitPropertySubpatternMember(BoundPropertySubpatternMember node) 14797public override BoundNode? VisitTypePattern(BoundTypePattern node) 14805public override BoundNode? VisitBinaryPattern(BoundBinaryPattern node) 14814public override BoundNode? VisitNegatedPattern(BoundNegatedPattern node) 14822public override BoundNode? VisitRelationalPattern(BoundRelationalPattern node) 14830public override BoundNode? VisitDiscardExpression(BoundDiscardExpression node) 14842public override BoundNode? VisitThrowExpression(BoundThrowExpression node) 14859public override BoundNode? VisitOutVariablePendingInference(OutVariablePendingInference node) 14877public override BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node) 14895public override BoundNode? VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node) 14912public override BoundNode? VisitConstructorMethodBody(BoundConstructorMethodBody node) 14921public override BoundNode? VisitExpressionWithNullability(BoundExpressionWithNullability node) 14938public override BoundNode? VisitWithExpression(BoundWithExpression node) 14963public static TreeDumperNode MakeTree(BoundNode node) => (new BoundTreeDumperNodeProducer()).Visit(node, null);
Lowering\AsyncRewriter\AsyncExceptionHandlerRewriter.cs (21)
135public override BoundNode VisitTryStatement(BoundTryStatement node) 145var result = visitTryStatement(node, tryStatementSyntax); 150BoundNode visitTryStatement(BoundTryStatement node, SyntaxNode tryStatementSyntax) 360public override BoundNode VisitGotoStatement(BoundGotoStatement node) 368public override BoundNode VisitConditionalGoto(BoundConditionalGoto node) 374public override BoundNode VisitReturnStatement(BoundReturnStatement node) 521public override BoundNode VisitCatchBlock(BoundCatchBlock node) 526private BoundNode VisitCatchBlock(BoundCatchBlock node, AwaitCatchFrame parentAwaitCatchFrame) 536var result = base.VisitCatchBlock(node); 681public override BoundNode VisitLocal(BoundLocal node) 693public override BoundNode VisitThrowStatement(BoundThrowStatement node) 705public override BoundNode VisitLambda(BoundLambda node) 713var result = base.VisitLambda(node); 721public override BoundNode VisitLocalFunctionStatement(BoundLocalFunctionStatement node) 729var result = base.VisitLocalFunctionStatement(node); 805public override BoundNode VisitTryStatement(BoundTryStatement node) 847public override BoundNode VisitCatchBlock(BoundCatchBlock node) 852var result = base.VisitCatchBlock(node); 869public override BoundNode VisitAwaitExpression(BoundAwaitExpression node) 875public override BoundNode VisitLambda(BoundLambda node) 891public override BoundNode VisitLocalFunctionStatement(BoundLocalFunctionStatement node)
Lowering\AsyncRewriter\AsyncIteratorMethodToStateMachineRewriter.cs (4)
251public override BoundNode VisitYieldReturnStatement(BoundYieldReturnStatement node) 304public override BoundNode VisitYieldBreakStatement(BoundYieldBreakStatement node) 339public override BoundNode VisitTryStatement(BoundTryStatement node) 393public override BoundNode VisitExtractedFinallyBlock(BoundExtractedFinallyBlock extractedFinally)
Lowering\AsyncRewriter\AsyncMethodToStateMachineRewriter.cs (5)
305public sealed override BoundNode VisitExpressionStatement(BoundExpressionStatement node) 324public sealed override BoundNode VisitAwaitExpression(BoundAwaitExpression node) 330public sealed override BoundNode VisitBadExpression(BoundBadExpression node) 395public override BoundNode VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node) 642public sealed override BoundNode VisitReturnStatement(BoundReturnStatement node)
Lowering\AsyncRewriter\AsyncRewriter.cs (4)
95return new BoundBadStatement(bodyWithAwaitLifted.Syntax, ImmutableArray.Create<BoundNode>(bodyWithAwaitLifted), hasErrors: true); 223return new BoundBadStatement(F.Syntax, ImmutableArray<BoundNode>.Empty, hasErrors: true); 305public static bool ContainsAwait(BoundNode node) 312public override BoundNode VisitAwaitExpression(BoundAwaitExpression node)
Lowering\ClosureConversion\ClosureConversion.Analysis.cs (7)
70BoundNode node, 104private static BoundNode FindNodeToAnalyze(BoundNode node) 606/// the given <see cref="BoundNode"/>. 608public static Scope GetScopeParent(Scope treeRoot, BoundNode scopeNode) 615/// Finds a <see cref="Scope" /> with a matching <see cref="BoundNode"/> 618public static Scope GetScopeWithMatchingBoundNode(Scope treeRoot, BoundNode node)
Lowering\ClosureConversion\ClosureConversion.Analysis.Tree.cs (26)
61public readonly BoundNode BoundNode; 80public Scope(Scope parent, BoundNode boundNode, NestedFunction containingFunction) 272/// <see cref="Build(BoundNode, MethodSymbol, HashSet{MethodSymbol}, DiagnosticBag)"/> 368BoundNode node, 413public override BoundNode VisitMethodGroup(BoundMethodGroup node) 416public override BoundNode VisitBlock(BoundBlock node) 420var result = base.VisitBlock(node); 425public override BoundNode VisitCatchBlock(BoundCatchBlock node) 429var result = base.VisitCatchBlock(node); 434public override BoundNode VisitSequence(BoundSequence node) 438var result = base.VisitSequence(node); 443public override BoundNode VisitLambda(BoundLambda node) 449var result = VisitNestedFunction(node.Symbol, node.Body); 455public override BoundNode VisitLocalFunctionStatement(BoundLocalFunctionStatement node) 469public override BoundNode VisitDelegateCreationExpression(BoundDelegateCreationExpression node) 481public override BoundNode VisitParameter(BoundParameter node) 487public override BoundNode VisitLocal(BoundLocal node) 493public override BoundNode VisitBaseReference(BoundBaseReference node) 499public override BoundNode VisitThisReference(BoundThisReference node) 522public override BoundNode VisitLabelStatement(BoundLabelStatement node) 529public override BoundNode VisitGotoStatement(BoundGotoStatement node) 536public override BoundNode VisitConditionalGoto(BoundConditionalGoto node) 569private BoundNode? VisitNestedFunction(MethodSymbol functionSymbol, BoundBlock? body) 596var result = _inExpressionTree 710private void PushOrReuseScope<TSymbol>(BoundNode node, ImmutableArray<TSymbol> locals) 730private void CreateAndPushScope(BoundNode node)
Lowering\ClosureConversion\ClosureConversion.cs (33)
88private readonly Dictionary<BoundNode, Analysis.ClosureEnvironment> _frames = new Dictionary<BoundNode, Analysis.ClosureEnvironment>(); 332static partial void CheckLocalsDefined(BoundNode node); 365var scopeBoundNode = scope.BoundNode; 635private static void InsertAndFreePrologue<T>(ArrayBuilder<BoundStatement> result, ArrayBuilder<T> prologue) where T : BoundNode 645result.Add(new BoundExpressionStatement(node.Syntax, (BoundExpression)(BoundNode)node)); 659private BoundNode IntroduceFrame(BoundNode node, Analysis.ClosureEnvironment env, Func<ArrayBuilder<BoundExpression>, ArrayBuilder<LocalSymbol>, BoundNode> F) 725var result = F(prologue, addedLocals); 819protected override BoundNode VisitUnhoistedParameter(BoundParameter node) 830public override BoundNode VisitThisReference(BoundThisReference node) 847public override BoundNode VisitBaseReference(BoundBaseReference node) 854public override BoundNode VisitMethodDefIndex(BoundMethodDefIndex node) 1069public override BoundNode VisitCall(BoundCall node) 1103var visited = base.VisitCall(node); 1150public override BoundNode VisitBlock(BoundBlock node) 1198public override BoundNode VisitScope(BoundScope node) 1214public override BoundNode VisitCatchBlock(BoundCatchBlock node) 1230private BoundNode RewriteCatch(BoundCatchBlock node, ArrayBuilder<BoundExpression> prologue, ArrayBuilder<LocalSymbol> newLocals) 1288public override BoundNode VisitSequence(BoundSequence node) 1304public override BoundNode VisitStatementList(BoundStatementList node) 1329public override BoundNode VisitDelegateCreationExpression(BoundDelegateCreationExpression node) 1362public override BoundNode VisitFunctionPointerLoad(BoundFunctionPointerLoad node) 1389public override BoundNode VisitConversion(BoundConversion conversion) 1419public override BoundNode VisitLocalFunctionStatement(BoundLocalFunctionStatement node) 1424BoundNode lambdaScope; 1516out BoundNode lambdaScope, 1533BoundNode tmpScope = null; 1618private BoundNode RewriteLambdaConversion(BoundLambda node) 1628var result0 = wasInExpressionLambda ? node : ExpressionLambdaRewriter.RewriteLambda(node, CompilationState, TypeMap, RecursionDepth, Diagnostics); 1636BoundNode lambdaScope; 1788public override BoundNode VisitLambda(BoundLambda node)
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (2)
112internal static BoundNode RewriteLambda(BoundLambda node, TypeCompilationState compilationState, TypeMap typeMap, int recursionDepth, BindingDiagnosticBag diagnostics) 877if (BoundNode.GetConversion(node.LeftConversion, node.LeftPlaceholder) is { IsUserDefined: true } leftConversion)
Lowering\DiagnosticsPass_ExpressionTrees.cs (70)
31public static void IssueDiagnostics(CSharpCompilation compilation, BoundNode node, BindingDiagnosticBag diagnostics, MethodSymbol containingSymbol) 59private void Error(ErrorCode code, BoundNode node, params object[] args) 69private void NoteUnsafe(BoundNode node) 78public override BoundNode VisitArrayCreation(BoundArrayCreation node) 89public override BoundNode VisitArrayAccess(BoundArrayAccess node) 101public override BoundNode VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node) 111public override BoundNode VisitInlineArrayAccess(BoundInlineArrayAccess node) 121public override BoundNode VisitFromEndIndexExpression(BoundFromEndIndexExpression node) 131public override BoundNode VisitRangeExpression(BoundRangeExpression node) 141public override BoundNode VisitSizeOfOperator(BoundSizeOfOperator node) 151public override BoundNode VisitLocalFunctionStatement(BoundLocalFunctionStatement node) 160var result = base.VisitLocalFunctionStatement(node); 165public override BoundNode VisitThisReference(BoundThisReference node) 171public override BoundNode VisitBaseReference(BoundBaseReference node) 181public override BoundNode VisitLocal(BoundLocal node) 187public override BoundNode VisitParameter(BoundParameter node) 229public override BoundNode VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node) 239public override BoundNode VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node) 249public override BoundNode VisitAssignmentOperator(BoundAssignmentOperator node) 261public override BoundNode VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node) 271public override BoundNode VisitEventAccess(BoundEventAccess node) 284public override BoundNode VisitEventAssignmentOperator(BoundEventAssignmentOperator node) 297public override BoundNode VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node) 311BoundNode node) 371public override BoundNode Visit(BoundNode node) 385public override BoundNode VisitRefTypeOperator(BoundRefTypeOperator node) 395public override BoundNode VisitRefValueOperator(BoundRefValueOperator node) 405public override BoundNode VisitMakeRefOperator(BoundMakeRefOperator node) 415public override BoundNode VisitArgListOperator(BoundArgListOperator node) 425public override BoundNode VisitConditionalAccess(BoundConditionalAccess node) 435public override BoundNode VisitObjectInitializerMember(BoundObjectInitializerMember node) 450public override BoundNode VisitCall(BoundCall node) 509public override BoundNode VisitCollectionElementInitializer(BoundCollectionElementInitializer node) 520public override BoundNode VisitObjectCreationExpression(BoundObjectCreationExpression node) 526public override BoundNode VisitIndexerAccess(BoundIndexerAccess node) 538private void CheckRefReturningPropertyAccess(BoundNode node, PropertySymbol property) 546public override BoundNode VisitPropertyAccess(BoundPropertyAccess node) 560public override BoundNode VisitLambda(BoundLambda node) 644var result = base.VisitLambda(node); 649public override BoundNode VisitBinaryOperator(BoundBinaryOperator node) 679public override BoundNode VisitBinaryPattern(BoundBinaryPattern node) 701public override BoundNode VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node) 735public override BoundNode VisitUnaryOperator(BoundUnaryOperator node) 749public override BoundNode VisitAddressOfOperator(BoundAddressOfOperator node) 760public override BoundNode VisitIncrementOperator(BoundIncrementOperator node) 770public override BoundNode VisitPointerElementAccess(BoundPointerElementAccess node) 776public override BoundNode VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node) 782public override BoundNode VisitConversion(BoundConversion node) 845var result = base.VisitConversion(node); 851public override BoundNode VisitDelegateCreationExpression(BoundDelegateCreationExpression node) 865public override BoundNode VisitMethodGroup(BoundMethodGroup node) 903public override BoundNode VisitNameOfOperator(BoundNameOfOperator node) 910public override BoundNode VisitNullCoalescingOperator(BoundNullCoalescingOperator node) 920public override BoundNode VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node) 930public override BoundNode VisitDynamicInvocation(BoundDynamicInvocation node) 946public override BoundNode VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node) 957public override BoundNode VisitDynamicMemberAccess(BoundDynamicMemberAccess node) 967public override BoundNode VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node) 977public override BoundNode VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node) 987public override BoundNode VisitIsPatternExpression(BoundIsPatternExpression node) 997public override BoundNode VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node) 1007public override BoundNode VisitTupleLiteral(BoundTupleLiteral node) 1017public override BoundNode VisitTupleBinaryOperator(BoundTupleBinaryOperator node) 1027public override BoundNode VisitThrowExpression(BoundThrowExpression node) 1037public override BoundNode VisitWithExpression(BoundWithExpression node) 1047public override BoundNode VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node) 1057public override BoundNode VisitCollectionExpression(BoundCollectionExpression node) 1071public override BoundNode VisitIfStatement(BoundIfStatement node) 1098public override BoundNode VisitInterpolatedString(BoundInterpolatedString node)
Lowering\DiagnosticsPass_Warnings.cs (4)
350private static bool ConvertedHasEqual(BinaryOperatorKind oldOperatorKind, BoundNode node, out TypeSymbol type) 392private void CheckVacuousComparisons(BoundBinaryOperator tree, ConstantValue constantValue, BoundNode operand) 930public override BoundNode VisitFieldAccess(BoundFieldAccess node) 936public override BoundNode VisitPropertyGroup(BoundPropertyGroup node)
Lowering\Instrumentation\CodeCoverageInstrumenter.cs (1)
544syntaxForSpan = ((BoundNode?)usingStatement.ExpressionOpt ?? usingStatement.DeclarationsOpt)!.Syntax;
Lowering\Instrumentation\LocalStateTracingInstrumenter.cs (1)
409private bool TryGetLocalOrParameterInfo(BoundNode node, [NotNullWhen(true)] out Symbol? symbol, [NotNullWhen(true)] out TypeSymbol? type, [NotNullWhen(true)] out BoundExpression? indexExpression)
Lowering\IteratorRewriter\IteratorMethodToStateMachineRewriter.cs (5)
314public override BoundNode VisitYieldBreakStatement(BoundYieldBreakStatement node) 319public override BoundNode VisitYieldReturnStatement(BoundYieldReturnStatement node) 343public override BoundNode VisitGotoStatement(BoundGotoStatement node) 352public override BoundNode VisitConditionalGoto(BoundConditionalGoto node) 358public override BoundNode VisitTryStatement(BoundTryStatement node)
Lowering\IteratorRewriter\IteratorMethodToStateMachineRewriter.YieldsInTryAnalysis.cs (4)
59public override BoundNode VisitTryStatement(BoundTryStatement node) 102public override BoundNode VisitYieldReturnStatement(BoundYieldReturnStatement node) 108public override BoundNode VisitExpressionStatement(BoundExpressionStatement node) 124public override BoundNode VisitLabelStatement(BoundLabelStatement node)
Lowering\LocalRewriter\LocalRewriter.cs (40)
173return new BoundBadStatement(statement.Syntax, ImmutableArray.Create<BoundNode>(statement), hasErrors: true); 203public override BoundNode? Visit(BoundNode? node) 312public override BoundNode? VisitParameter(BoundParameter node) 326public override BoundNode VisitLambda(BoundLambda node) 380public override BoundNode VisitLocalFunctionStatement(BoundLocalFunctionStatement node) 455public override BoundNode VisitDefaultLiteral(BoundDefaultLiteral node) 460public override BoundNode VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node) 465public override BoundNode VisitValuePlaceholder(BoundValuePlaceholder node) 470public override BoundNode VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node) 475public override BoundNode VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node) 485public override BoundNode VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node) 488public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node) 491public override BoundNode? VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node) 556public sealed override BoundNode VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node) 562public override BoundNode VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node) 568public override BoundNode VisitBadExpression(BoundBadExpression node) 646public override BoundNode VisitTypeOfOperator(BoundTypeOfOperator node) 679public override BoundNode VisitRefTypeOperator(BoundRefTypeOperator node) 745public override BoundNode VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node) 817public override BoundNode VisitArrayAccess(BoundArrayAccess node) 834BoundNode resultExpr; 1146public override BoundNode? Visit(BoundNode? node) 1160public static void Validate(BoundNode node) 1172public override BoundNode? VisitDefaultLiteral(BoundDefaultLiteral node) 1178public override BoundNode? VisitUsingStatement(BoundUsingStatement node) 1184public override BoundNode? VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node) 1190public override BoundNode? VisitValuePlaceholder(BoundValuePlaceholder node) 1196public override BoundNode? VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node) 1202public override BoundNode? VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node) 1208public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node) 1214public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node) 1220public override BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node) 1226public override BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node) 1232public override BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node) 1238public override BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node) 1244public override BoundNode? VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node) 1250public override BoundNode? VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node) 1256private void Fail(BoundNode node)
Lowering\LocalRewriter\LocalRewriter.DecisionDagRewriter.cs (16)
141public override BoundNode Visit(BoundNode node) 178public override BoundNode VisitPropertyAccess(BoundPropertyAccess node) 192public override BoundNode VisitAssignmentOperator(BoundAssignmentOperator node) 198public override BoundNode VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node) 204public override BoundNode VisitConversion(BoundConversion node) 237public override BoundNode VisitDelegateCreationExpression(BoundDelegateCreationExpression node) 250public override BoundNode VisitAddressOfOperator(BoundAddressOfOperator node) 256public override BoundNode VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node) 262public override BoundNode VisitIncrementOperator(BoundIncrementOperator node) 268public override BoundNode VisitDynamicInvocation(BoundDynamicInvocation node) 279public override BoundNode VisitObjectCreationExpression(BoundObjectCreationExpression node) 290public override BoundNode VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node) 300public override BoundNode VisitObjectInitializerMember(BoundObjectInitializerMember node) 311public override BoundNode VisitIndexerAccess(BoundIndexerAccess node) 326public override BoundNode VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node)
Lowering\LocalRewriter\LocalRewriter.PlaceholderReplacer.cs (6)
23var result = new PlaceholderReplacer(placeholders).Visit(expr); 28private BoundNode ReplacePlaceholder(BoundEarlyValuePlaceholderBase placeholder) 35public override BoundNode VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node) 40public override BoundNode VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node) 45public override BoundNode VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node) 50public override BoundNode VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node)
Lowering\LocalRewriter\LocalRewriter_AnonymousObjectCreation.cs (1)
15public override BoundNode VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node)
Lowering\LocalRewriter\LocalRewriter_AsOperator.cs (4)
16public override BoundNode VisitAsOperator(BoundAsOperator node) 25public override BoundNode VisitTypeExpression(BoundTypeExpression node) 27var result = base.VisitTypeExpression(node); 49var conversion = BoundNode.GetConversion(operandConversion, operandPlaceholder);
Lowering\LocalRewriter\LocalRewriter_AssignmentOperator.cs (1)
15public override BoundNode VisitAssignmentOperator(BoundAssignmentOperator node)
Lowering\LocalRewriter\LocalRewriter_Await.cs (1)
13public override BoundNode VisitAwaitExpression(BoundAwaitExpression node)
Lowering\LocalRewriter\LocalRewriter_BinaryOperator.cs (2)
16public override BoundNode VisitBinaryOperator(BoundBinaryOperator node) 21public override BoundNode VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node)
Lowering\LocalRewriter\LocalRewriter_Block.cs (2)
14public override BoundNode VisitBlock(BoundBlock node) 127public override BoundNode VisitNoOpStatement(BoundNoOpStatement node)
Lowering\LocalRewriter\LocalRewriter_BreakStatement.cs (1)
13public override BoundNode VisitBreakStatement(BoundBreakStatement node)
Lowering\LocalRewriter\LocalRewriter_Call.cs (3)
19public override BoundNode VisitDynamicInvocation(BoundDynamicInvocation node) 321public override BoundNode VisitCall(BoundCall node) 1654public override BoundNode VisitDynamicMemberAccess(BoundDynamicMemberAccess node)
Lowering\LocalRewriter\LocalRewriter_CollectionExpression.cs (14)
20public override BoundNode? VisitCollectionExpression(BoundCollectionExpression node) 26public override BoundNode? VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node) 114static bool canOptimizeListElement(BoundNode element, MethodSymbol addMethod) 133static BoundNode unwrapListElement(BoundCollectionExpression node, BoundNode element) 345foreach (var element in elements) 528ImmutableArray<BoundNode> elements, 976private BoundExpression CreateAndPopulateList(BoundCollectionExpression node, TypeWithAnnotations elementType, ImmutableArray<BoundNode> elements) 1159private BoundExpression RewriteCollectionExpressionElementExpression(BoundNode element) 1168ImmutableArray<BoundNode> elements, 1184ImmutableArray<BoundNode> elements, 1194var element = elements[i]; 1229private BoundExpression GetKnownLengthExpression(ImmutableArray<BoundNode> elements, int numberIncludingLastSpread, ArrayBuilder<BoundLocal> rewrittenExpressions) 1238var element = elements[i];
Lowering\LocalRewriter\LocalRewriter_CompoundAssignmentOperator.cs (1)
17public override BoundNode VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node)
Lowering\LocalRewriter\LocalRewriter_ConditionalAccess.cs (3)
13public override BoundNode VisitConditionalAccess(BoundConditionalAccess node) 19public override BoundNode VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node) 202public override BoundNode VisitConditionalReceiver(BoundConditionalReceiver node)
Lowering\LocalRewriter\LocalRewriter_ConditionalOperator.cs (1)
18public override BoundNode VisitConditionalOperator(BoundConditionalOperator node)
Lowering\LocalRewriter\LocalRewriter_ContinueStatement.cs (1)
13public override BoundNode VisitContinueStatement(BoundContinueStatement node)
Lowering\LocalRewriter\LocalRewriter_Conversion.cs (2)
18public override BoundNode VisitConversion(BoundConversion node) 87public override BoundNode VisitUtf8String(BoundUtf8String node)
Lowering\LocalRewriter\LocalRewriter_DeconstructionAssignmentOperator.cs (3)
17public override BoundNode? VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node) 237BoundNode.GetConversion(nestedConversion, placeholder), temps, effects, isUsed, inInit); 373if (BoundNode.GetConversion(conversion, placeholder).IsIdentity)
Lowering\LocalRewriter\LocalRewriter_DelegateCreationExpression.cs (1)
14public override BoundNode VisitDelegateCreationExpression(BoundDelegateCreationExpression node)
Lowering\LocalRewriter\LocalRewriter_DoStatement.cs (1)
15public override BoundNode VisitDoStatement(BoundDoStatement node)
Lowering\LocalRewriter\LocalRewriter_Event.cs (2)
19public override BoundNode VisitEventAssignmentOperator(BoundEventAssignmentOperator node) 209public override BoundNode VisitEventAccess(BoundEventAccess node)
Lowering\LocalRewriter\LocalRewriter_ExpressionStatement.cs (1)
14public override BoundNode VisitExpressionStatement(BoundExpressionStatement node)
Lowering\LocalRewriter\LocalRewriter_Field.cs (1)
11public override BoundNode VisitFieldAccess(BoundFieldAccess node)
Lowering\LocalRewriter\LocalRewriter_FixedStatement.cs (5)
17public override BoundNode VisitFixedStatement(BoundFixedStatement node) 167private Dictionary<BoundNode, HashSet<LabelSymbol>>? _lazyUnmatchedLabelCache; 175private bool HasGotoOut(BoundNode node) 179_lazyUnmatchedLabelCache = new Dictionary<BoundNode, HashSet<LabelSymbol>>(); 189public override BoundNode VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node)
Lowering\LocalRewriter\LocalRewriter_ForEachStatement.cs (8)
33public override BoundNode VisitForEachStatement(BoundForEachStatement node) 136BoundNode node, 594BoundNode node, 895BoundNode node, 1044BoundNode node, 1275private void InstrumentForEachStatementCollectionVarDeclaration(BoundNode node, [NotNullIfNotNull(nameof(collectionVarDecl))] ref BoundStatement? collectionVarDecl) 1283private void InstrumentForEachStatementIterationVarDeclaration(BoundNode node, ref BoundStatement iterationVarDecl) 1299private void InstrumentForEachStatement(BoundNode node, ref BoundStatement result)
Lowering\LocalRewriter\LocalRewriter_ForStatement.cs (2)
15public override BoundNode VisitForStatement(BoundForStatement node) 41BoundNode original,
Lowering\LocalRewriter\LocalRewriter_FunctionPointerInvocation.cs (1)
14public override BoundNode? VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node)
Lowering\LocalRewriter\LocalRewriter_GotoStatement.cs (2)
13public override BoundNode VisitGotoStatement(BoundGotoStatement node) 33public override BoundNode? VisitLabel(BoundLabel node)
Lowering\LocalRewriter\LocalRewriter_HostObjectMemberReference.cs (1)
11public override BoundNode VisitHostObjectMemberReference(BoundHostObjectMemberReference node)
Lowering\LocalRewriter\LocalRewriter_IfStatement.cs (1)
14public override BoundNode VisitIfStatement(BoundIfStatement node)
Lowering\LocalRewriter\LocalRewriter_Index.cs (1)
13public override BoundNode VisitFromEndIndexExpression(BoundFromEndIndexExpression node)
Lowering\LocalRewriter\LocalRewriter_IndexerAccess.cs (10)
39public override BoundNode VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node) 67public override BoundNode VisitIndexerAccess(BoundIndexerAccess node) 199public override BoundNode? VisitInlineArrayAccess(BoundInlineArrayAccess node) 398public override BoundNode? VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node) 403public override BoundNode? VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node) 408public override BoundNode? VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node) 413public override BoundNode? VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node) 418public override BoundNode? VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node) 423public override BoundNode? VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node) 428public override BoundNode VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node)
Lowering\LocalRewriter\LocalRewriter_IsOperator.cs (1)
16public override BoundNode VisitIsOperator(BoundIsOperator node)
Lowering\LocalRewriter\LocalRewriter_IsPatternOperator.cs (1)
15public override BoundNode VisitIsPatternExpression(BoundIsPatternExpression node)
Lowering\LocalRewriter\LocalRewriter_LabeledStatement.cs (1)
14public override BoundNode VisitLabeledStatement(BoundLabeledStatement node)
Lowering\LocalRewriter\LocalRewriter_Literal.cs (1)
17public override BoundNode VisitLiteral(BoundLiteral node)
Lowering\LocalRewriter\LocalRewriter_LocalDeclaration.cs (2)
14public override BoundNode? VisitLocalDeclaration(BoundLocalDeclaration node) 86public sealed override BoundNode VisitOutVariablePendingInference(OutVariablePendingInference node)
Lowering\LocalRewriter\LocalRewriter_LockStatement.cs (1)
22public override BoundNode VisitLockStatement(BoundLockStatement node)
Lowering\LocalRewriter\LocalRewriter_MultipleLocalDeclarations.cs (4)
14public override BoundNode? VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node) 19public override BoundNode? VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node) 24private BoundNode? VisitMultipleLocalDeclarationsBase(BoundMultipleLocalDeclarationsBase node) 30var init = VisitLocalDeclaration(decl);
Lowering\LocalRewriter\LocalRewriter_NullCoalescingAssignmentOperator.cs (1)
14public override BoundNode VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node)
Lowering\LocalRewriter\LocalRewriter_NullCoalescingOperator.cs (5)
13public override BoundNode VisitNullCoalescingOperator(BoundNullCoalescingOperator node) 33Debug.Assert(BoundNode.GetConversion(leftConversion, leftPlaceholder).IsValid); 92BoundNode.GetConversion(leftConversion, leftPlaceholder) is { Kind: ConversionKind.Identity or ConversionKind.ImplicitReference }) 99if (BoundNode.GetConversion(leftConversion, leftPlaceholder) is { IsIdentity: true } or { Kind: ConversionKind.ExplicitNullable }) 240Debug.Assert(BoundNode.GetConversion(leftConversion, leftPlaceholder).IsValid);
Lowering\LocalRewriter\LocalRewriter_ObjectCreationExpression.cs (5)
16public override BoundNode VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node) 31public override BoundNode VisitObjectCreationExpression(BoundObjectCreationExpression node) 131public override BoundNode VisitWithExpression(BoundWithExpression withExpr) 307public override BoundNode VisitNewT(BoundNewT node) 364public override BoundNode VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node)
Lowering\LocalRewriter\LocalRewriter_ObjectOrCollectionInitializerExpression.cs (1)
403var rewrittenArrayAccess = VisitArrayAccess((BoundArrayAccess)left);
Lowering\LocalRewriter\LocalRewriter_PatternSwitchStatement.cs (1)
16public override BoundNode VisitSwitchStatement(BoundSwitchStatement node)
Lowering\LocalRewriter\LocalRewriter_PointerElementAccess.cs (1)
12public override BoundNode VisitPointerElementAccess(BoundPointerElementAccess node)
Lowering\LocalRewriter\LocalRewriter_PreviousSubmissionReference.cs (1)
12public override BoundNode VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node)
Lowering\LocalRewriter\LocalRewriter_PropertyAccess.cs (1)
15public override BoundNode VisitPropertyAccess(BoundPropertyAccess node)
Lowering\LocalRewriter\LocalRewriter_Query.cs (2)
13public override BoundNode VisitRangeVariable(BoundRangeVariable node) 18public override BoundNode VisitQueryClause(BoundQueryClause node)
Lowering\LocalRewriter\LocalRewriter_Range.cs (1)
17public override BoundNode VisitRangeExpression(BoundRangeExpression node)
Lowering\LocalRewriter\LocalRewriter_ReturnStatement.cs (1)
13public override BoundNode VisitReturnStatement(BoundReturnStatement node)
Lowering\LocalRewriter\LocalRewriter_StackAlloc.cs (3)
15public override BoundNode VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression stackAllocNode) 20public override BoundNode VisitStackAllocArrayCreation(BoundStackAllocArrayCreation stackAllocNode) 25private BoundNode VisitStackAllocArrayCreationBase(BoundStackAllocArrayCreationBase stackAllocNode)
Lowering\LocalRewriter\LocalRewriter_StringInterpolation.cs (1)
143public override BoundNode VisitInterpolatedString(BoundInterpolatedString node)
Lowering\LocalRewriter\LocalRewriter_SwitchExpression.cs (1)
17public override BoundNode VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node)
Lowering\LocalRewriter\LocalRewriter_ThrowStatement.cs (1)
9public override BoundNode VisitThrowStatement(BoundThrowStatement node)
Lowering\LocalRewriter\LocalRewriter_TryStatement.cs (4)
14public override BoundNode VisitTryStatement(BoundTryStatement node) 38? (BoundNode)tryBlock 39: (BoundNode)node.Update(tryBlock, catchBlocks, finallyBlockOpt, node.FinallyLabelOpt, node.PreferFaultHandler); 78public override BoundNode? VisitCatchBlock(BoundCatchBlock node)
Lowering\LocalRewriter\LocalRewriter_TupleBinaryOperator.cs (1)
28public override BoundNode VisitTupleBinaryOperator(BoundTupleBinaryOperator node)
Lowering\LocalRewriter\LocalRewriter_TupleCreationExpression.cs (3)
15public override BoundNode VisitTupleLiteral(BoundTupleLiteral node) 20public override BoundNode VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node) 25private BoundNode VisitTupleExpression(BoundTupleExpression node)
Lowering\LocalRewriter\LocalRewriter_UnaryOperator.cs (2)
29public override BoundNode VisitUnaryOperator(BoundUnaryOperator node) 425public override BoundNode VisitIncrementOperator(BoundIncrementOperator node)
Lowering\LocalRewriter\LocalRewriter_UsingStatement.cs (1)
35public override BoundNode VisitUsingStatement(BoundUsingStatement node)
Lowering\LocalRewriter\LocalRewriter_WhileStatement.cs (2)
16public override BoundNode VisitWhileStatement(BoundWhileStatement node) 42BoundNode loop,
Lowering\LocalRewriter\LocalRewriter_Yield.cs (2)
13public override BoundNode VisitYieldBreakStatement(BoundYieldBreakStatement node) 29public override BoundNode VisitYieldReturnStatement(BoundYieldReturnStatement node)
Lowering\MethodToClassRewriter.cs (37)
68public override BoundNode DefaultVisit(BoundNode node) 127public override BoundNode VisitCatchBlock(BoundCatchBlock node) 148public override BoundNode VisitBlock(BoundBlock node) 162public abstract override BoundNode VisitScope(BoundScope node); 164public override BoundNode VisitSequence(BoundSequence node) 173public override BoundNode VisitForStatement(BoundForStatement node) 184public override BoundNode VisitDoStatement(BoundDoStatement node) 192public override BoundNode VisitWhileStatement(BoundWhileStatement node) 200public override BoundNode VisitUsingStatement(BoundUsingStatement node) 215public override BoundNode VisitMethodInfo(BoundMethodInfo node) 222public override BoundNode VisitPropertyAccess(BoundPropertyAccess node) 229public override BoundNode VisitCall(BoundCall node) 265public override BoundNode VisitBinaryOperator(BoundBinaryOperator node) 281public override BoundNode VisitUnaryOperator(BoundUnaryOperator node) 291public override BoundNode? VisitConversion(BoundConversion node) 311public override BoundNode? VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node) 372private bool TryReplaceWithProxy(Symbol parameterOrLocal, SyntaxNode syntax, [NotNullWhen(true)] out BoundNode? replacement) 388public sealed override BoundNode VisitParameter(BoundParameter node) 390if (TryReplaceWithProxy(node.ParameterSymbol, node.Syntax, out BoundNode? replacement)) 399protected virtual BoundNode VisitUnhoistedParameter(BoundParameter node) 404public sealed override BoundNode VisitLocal(BoundLocal node) 406if (TryReplaceWithProxy(node.LocalSymbol, node.Syntax, out BoundNode? replacement)) 417public override BoundNode? VisitLocalId(BoundLocalId node) 422public override BoundNode? VisitParameterId(BoundParameterId node) 445private BoundNode VisitUnhoistedLocal(BoundLocal node) 455public override BoundNode VisitAwaitableInfo(BoundAwaitableInfo node) 475public override BoundNode VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node) 480public override BoundNode VisitAssignmentOperator(BoundAssignmentOperator node) 545public override BoundNode VisitFieldInfo(BoundFieldInfo node) 552public override BoundNode VisitFieldAccess(BoundFieldAccess node) 561public override BoundNode VisitObjectCreationExpression(BoundObjectCreationExpression node) 584public override BoundNode VisitDelegateCreationExpression(BoundDelegateCreationExpression node) 601public override BoundNode VisitFunctionPointerLoad(BoundFunctionPointerLoad node) 606public override BoundNode VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node) 695public override BoundNode VisitObjectInitializerMember(BoundObjectInitializerMember node) 717public override BoundNode VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node)
Lowering\SpillSequenceSpiller.cs (53)
196public static BoundNode Rewrite( 199BoundNode node) 210public override BoundNode VisitLocal(BoundLocal node) 237BoundNode result = spiller.Visit(body); 663public override BoundNode VisitSwitchDispatch(BoundSwitchDispatch node) 670public override BoundNode VisitThrowStatement(BoundThrowStatement node) 677public override BoundNode VisitExpressionStatement(BoundExpressionStatement node) 686public override BoundNode VisitConditionalGoto(BoundConditionalGoto node) 693public override BoundNode VisitReturnStatement(BoundReturnStatement node) 700public override BoundNode VisitYieldReturnStatement(BoundYieldReturnStatement node) 707public override BoundNode VisitCatchBlock(BoundCatchBlock node) 729public override BoundNode DefaultVisit(BoundNode node) 740public override BoundNode VisitAwaitExpression(BoundAwaitExpression node) 749public override BoundNode VisitSpillSequence(BoundSpillSequence node) 762public override BoundNode VisitAddressOfOperator(BoundAddressOfOperator node) 769public override BoundNode VisitArgListOperator(BoundArgListOperator node) 776public override BoundNode VisitArrayAccess(BoundArrayAccess node) 805public override BoundNode VisitArrayCreation(BoundArrayCreation node) 826public override BoundNode VisitArrayInitialization(BoundArrayInitialization node) 833public override BoundNode VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node) 841public override BoundNode VisitArrayLength(BoundArrayLength node) 848public override BoundNode VisitAsOperator(BoundAsOperator node) 857public override BoundNode VisitAssignmentOperator(BoundAssignmentOperator node) 969public override BoundNode VisitBadExpression(BoundBadExpression node) 975public override BoundNode VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node) 980public override BoundNode VisitBinaryOperator(BoundBinaryOperator node) 1016public override BoundNode VisitCall(BoundCall node) 1082public override BoundNode VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node) 1104public override BoundNode VisitConditionalOperator(BoundConditionalOperator node) 1174public override BoundNode VisitConversion(BoundConversion node) 1189public override BoundNode VisitPassByCopy(BoundPassByCopy node) 1200public override BoundNode VisitMethodGroup(BoundMethodGroup node) 1205public override BoundNode VisitDelegateCreationExpression(BoundDelegateCreationExpression node) 1212public override BoundNode VisitFieldAccess(BoundFieldAccess node) 1219public override BoundNode VisitIsOperator(BoundIsOperator node) 1226public override BoundNode VisitMakeRefOperator(BoundMakeRefOperator node) 1233public override BoundNode VisitNullCoalescingOperator(BoundNullCoalescingOperator node) 1263public override BoundNode VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node) 1369public static BoundStatement Replace(BoundNode node, BoundExpression receiver, int receiverID, int recursionDepth) 1380public override BoundNode VisitConditionalReceiver(BoundConditionalReceiver node) 1394public override BoundNode VisitLambda(BoundLambda node) 1398var result = base.VisitLambda(node); 1403public override BoundNode VisitLocalFunctionStatement(BoundLocalFunctionStatement node) 1407var result = base.VisitLocalFunctionStatement(node); 1412public override BoundNode VisitObjectCreationExpression(BoundObjectCreationExpression node) 1420public override BoundNode VisitPointerElementAccess(BoundPointerElementAccess node) 1441public override BoundNode VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node) 1448public override BoundNode VisitSequence(BoundSequence node) 1474public override BoundNode VisitThrowExpression(BoundThrowExpression node) 1504public override BoundNode VisitUnaryOperator(BoundUnaryOperator node) 1511public override BoundNode VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node) 1518public override BoundNode VisitSequencePointExpression(BoundSequencePointExpression node)
Lowering\StateMachineRewriter\IteratorAndAsyncCaptureWalker.cs (17)
42private IteratorAndAsyncCaptureWalker(CSharpCompilation compilation, MethodSymbol method, BoundNode node, HashSet<Symbol> initiallyAssignedVariables) 53public static OrderedSet<Symbol> Analyze(CSharpCompilation compilation, MethodSymbol method, BoundNode node, DiagnosticBag diagnostics) 186public override BoundNode VisitAwaitExpression(BoundAwaitExpression node) 193public override BoundNode VisitYieldReturnStatement(BoundYieldReturnStatement node) 279public override BoundNode VisitParameter(BoundParameter node) 293public override BoundNode VisitFieldAccess(BoundFieldAccess node) 304public override BoundNode VisitThisReference(BoundThisReference node) 310public override BoundNode VisitBaseReference(BoundBaseReference node) 316public override BoundNode VisitTryStatement(BoundTryStatement node) 337public override BoundNode VisitAssignmentOperator(BoundAssignmentOperator node) 367public override BoundNode VisitBlock(BoundBlock node) 381public override BoundNode VisitCatchBlock(BoundCatchBlock node) 392public override BoundNode VisitSequence(BoundSequence node) 398public override BoundNode VisitThisReference(BoundThisReference node) 404public override BoundNode VisitBaseReference(BoundBaseReference node) 410public override BoundNode VisitLocal(BoundLocal node) 416public override BoundNode VisitParameter(BoundParameter node)
Lowering\StateMachineRewriter\MethodToStateMachineRewriter.cs (14)
272public override BoundNode VisitSequence(BoundSequence node) 705public override BoundNode Visit(BoundNode node) 710var result = base.Visit(node); 715public override BoundNode VisitBlock(BoundBlock node) 726public override BoundNode VisitStateMachineInstanceId(BoundStateMachineInstanceId node) 729public override BoundNode VisitScope(BoundScope node) 791public override BoundNode VisitForStatement(BoundForStatement node) 796public override BoundNode VisitUsingStatement(BoundUsingStatement node) 801public override BoundNode VisitExpressionStatement(BoundExpressionStatement node) 809public override BoundNode VisitAssignmentOperator(BoundAssignmentOperator node) 858public override BoundNode VisitTryStatement(BoundTryStatement node) 937public sealed override BoundNode VisitThisReference(BoundThisReference node) 969public override BoundNode VisitBaseReference(BoundBaseReference node)
Lowering\StateMachineRewriter\StateMachineRewriter.cs (1)
123return new BoundBadStatement(F.Syntax, ImmutableArray<BoundNode>.Empty, hasErrors: true);
Lowering\UnmatchedGotoFinder.cs (11)
22private readonly Dictionary<BoundNode, HashSet<LabelSymbol>> _unmatchedLabelsCache; // NB: never modified. 27private UnmatchedGotoFinder(Dictionary<BoundNode, HashSet<LabelSymbol>> unmatchedLabelsCache, int recursionDepth) 34public static HashSet<LabelSymbol> Find(BoundNode node, Dictionary<BoundNode, HashSet<LabelSymbol>> unmatchedLabelsCache, int recursionDepth) 47public override BoundNode Visit(BoundNode node) 66public override BoundNode VisitGotoStatement(BoundGotoStatement node) 72public override BoundNode VisitConditionalGoto(BoundConditionalGoto node) 78public override BoundNode VisitSwitchDispatch(BoundSwitchDispatch node) 89public override BoundNode VisitLabelStatement(BoundLabelStatement node) 95public override BoundNode VisitLabeledStatement(BoundLabeledStatement node)
Operations\CSharpOperationFactory.cs (23)
28public IOperation? Create(BoundNode? boundNode) 337public ImmutableArray<TOperation> CreateFromArray<TBoundNode, TOperation>(ImmutableArray<TBoundNode> boundNodes) where TBoundNode : BoundNode where TOperation : class, IOperation 382foreach (BoundNode? childNode in children) 396internal ImmutableArray<IVariableDeclaratorOperation> CreateVariableDeclarator(BoundNode declaration, SyntaxNode declarationSyntax) 450ImmutableArray<IOperation> children = CreateFromArray<BoundNode, IOperation>(((IBoundInvalidNode)boundCall).InvalidNodeChildren); 480ImmutableArray<IOperation> children = CreateFromArray<BoundNode, IOperation>(((IBoundInvalidNode)boundFunctionPointerInvocation).InvalidNodeChildren); 520internal ImmutableArray<IOperation> CreateIgnoredDimensions(BoundNode declaration) 595internal IOperation? CreateBoundPropertyReferenceInstance(BoundNode boundNode) 633var children = CreateFromArray<BoundNode, IOperation>(((IBoundInvalidNode)boundIndexerAccess).InvalidNodeChildren); 713var children = CreateFromArray<BoundNode, IOperation>(((IBoundInvalidNode)boundObjectCreationExpression).InvalidNodeChildren); 759internal IOperation CreateBoundDynamicInvocationExpressionReceiver(BoundNode receiver) 889var children = CreateFromArray<BoundNode, IOperation>(((IBoundInvalidNode)boundObjectInitializerMember).InvalidNodeChildren); 935var children = CreateFromArray<BoundNode, IOperation>(((IBoundInvalidNode)boundCollectionElementInitializer).InvalidNodeChildren); 1143Conversion conversion = BoundNode.GetConversion(boundAsOperator.OperandConversion, boundAsOperator.OperandPlaceholder); 1258private IOperation CreateBoundCollectionExpressionElement(BoundCollectionExpression expr, BoundNode element) 1274var elementConversion = BoundNode.GetConversion(iteratorItem, element.ElementPlaceholder); 1360Conversion inConversion = BoundNode.GetConversion(boundCompoundAssignmentOperator.LeftConversion, boundCompoundAssignmentOperator.LeftPlaceholder); 1361Conversion outConversion = BoundNode.GetConversion(boundCompoundAssignmentOperator.FinalConversion, boundCompoundAssignmentOperator.FinalPlaceholder); 1593Conversion valueConversion = BoundNode.GetConversion(boundNullCoalescingOperator.LeftConversion, boundNullCoalescingOperator.LeftPlaceholder); 1917BoundNode.GetConversion(enumeratorInfoOpt.CurrentConversion, enumeratorInfoOpt.CurrentPlaceholder), 1918BoundNode.GetConversion(boundForEachStatement.ElementConversion, boundForEachStatement.ElementPlaceholder), 2033IOperation resources = Create(boundUsingStatement.DeclarationsOpt ?? (BoundNode)boundUsingStatement.ExpressionOpt!); 2095var children = CreateFromArray<BoundNode, IOperation>(boundBadStatement.ChildBoundNodes);
Operations\CSharpOperationFactory_Methods.cs (8)
98internal IOperation? CreateReceiverOperation(BoundNode? instance, Symbol? symbol) 141internal IOperation CreateDelegateTargetOperation(BoundNode delegateNode) 180internal IOperation CreateMemberInitializerInitializedMember(BoundNode initializedMember) 194internal ImmutableArray<IArgumentOperation> DeriveArguments(BoundNode containingExpression) 387internal static ImmutableArray<BoundNode> CreateInvalidChildrenFromArgumentsExpression(BoundNode? receiverOpt, ImmutableArray<BoundExpression> arguments, BoundExpression? additionalNodeOpt = null) 389var builder = ArrayBuilder<BoundNode>.GetInstance(); 400builder.AddRange(StaticCast<BoundNode>.From(arguments));
Operations\IBoundNodeWithIOperationChildren.cs (1)
16ImmutableArray<BoundNode?> Children { get; }
Symbols\ConstantValueUtils.cs (1)
156public override BoundNode VisitInterpolatedString(BoundInterpolatedString node)