1527 instantiations of TreeDumperNode
Microsoft.CodeAnalysis.CSharp (1527)
Binder\Binder.cs (4)
930sub.Add(new TreeDumperNode("locals", locals, null)); 935sub.Add(new TreeDumperNode("containing symbol", currentContainer.ToDisplayString(), null)); 939sub.Add(new TreeDumperNode($"scope", $"{snippet} ({scope.ScopeDesignator?.Kind()})", null)); 945current = new TreeDumperNode(description, null, sub);
Binder\Semantics\Conversions\Conversion.cs (4)
1283sub.Add(new TreeDumperNode("method", self.Method.ToDisplayString(), null)); 1288sub.Add(new TreeDumperNode("deconstructionInfo", null, 1295sub.Add(new TreeDumperNode($"underlyingConversions[{underlyingConversions.Length}]", null, 1299return new TreeDumperNode("conversion", self.Kind, sub);
BoundTree\TupleBinaryOperatorInfo.cs (7)
88sub.Add(new TreeDumperNode("methodSymbolOpt", MethodSymbolOpt.ToDisplayString(), null)); 90sub.Add(new TreeDumperNode("leftConversion", LeftConvertedTypeOpt?.ToDisplayString(), null)); 91sub.Add(new TreeDumperNode("rightConversion", RightConvertedTypeOpt?.ToDisplayString(), null)); 93return new TreeDumperNode("nested", Kind, sub); 126sub.Add(new TreeDumperNode($"nestedOperators[{Operators.Length}]", null, 129return new TreeDumperNode("nested", null, sub); 154return new TreeDumperNode("nullnull", value: Kind, children: null);
Generated\BoundNodes.xml.Generated.cs (1505)
15478public override TreeDumperNode VisitFieldEqualsValue(BoundFieldEqualsValue node, object? arg) => new TreeDumperNode("fieldEqualsValue", null, new TreeDumperNode[] 15480new TreeDumperNode("field", node.Field, null), 15481new TreeDumperNode("locals", node.Locals, null), 15482new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 15483new TreeDumperNode("hasErrors", node.HasErrors, null) 15486public override TreeDumperNode VisitPropertyEqualsValue(BoundPropertyEqualsValue node, object? arg) => new TreeDumperNode("propertyEqualsValue", null, new TreeDumperNode[] 15488new TreeDumperNode("property", node.Property, null), 15489new TreeDumperNode("locals", node.Locals, null), 15490new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 15491new TreeDumperNode("hasErrors", node.HasErrors, null) 15494public override TreeDumperNode VisitParameterEqualsValue(BoundParameterEqualsValue node, object? arg) => new TreeDumperNode("parameterEqualsValue", null, new TreeDumperNode[] 15496new TreeDumperNode("parameter", node.Parameter, null), 15497new TreeDumperNode("locals", node.Locals, null), 15498new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 15499new TreeDumperNode("hasErrors", node.HasErrors, null) 15502public override TreeDumperNode VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node, object? arg) => new TreeDumperNode("globalStatementInitializer", null, new TreeDumperNode[] 15504new TreeDumperNode("statement", null, new TreeDumperNode[] { Visit(node.Statement, null) }), 15505new TreeDumperNode("hasErrors", node.HasErrors, null) 15508public override TreeDumperNode VisitValuePlaceholder(BoundValuePlaceholder node, object? arg) => new TreeDumperNode("valuePlaceholder", null, new TreeDumperNode[] 15510new TreeDumperNode("type", node.Type, null), 15511new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15512new TreeDumperNode("hasErrors", node.HasErrors, null) 15515public override TreeDumperNode VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node, object? arg) => new TreeDumperNode("capturedReceiverPlaceholder", null, new TreeDumperNode[] 15517new TreeDumperNode("receiver", null, new TreeDumperNode[] { Visit(node.Receiver, null) }), 15518new TreeDumperNode("type", node.Type, null), 15519new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15520new TreeDumperNode("hasErrors", node.HasErrors, null) 15523public override TreeDumperNode VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node, object? arg) => new TreeDumperNode("deconstructValuePlaceholder", null, new TreeDumperNode[] 15525new TreeDumperNode("variableSymbol", node.VariableSymbol, null), 15526new TreeDumperNode("isDiscardExpression", node.IsDiscardExpression, null), 15527new TreeDumperNode("type", node.Type, null), 15528new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15529new TreeDumperNode("hasErrors", node.HasErrors, null) 15532public override TreeDumperNode VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node, object? arg) => new TreeDumperNode("tupleOperandPlaceholder", null, new TreeDumperNode[] 15534new TreeDumperNode("type", node.Type, null), 15535new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15536new TreeDumperNode("hasErrors", node.HasErrors, null) 15539public override TreeDumperNode VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node, object? arg) => new TreeDumperNode("awaitableValuePlaceholder", null, new TreeDumperNode[] 15541new TreeDumperNode("type", node.Type, null), 15542new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15543new TreeDumperNode("hasErrors", node.HasErrors, null) 15546public override TreeDumperNode VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node, object? arg) => new TreeDumperNode("disposableValuePlaceholder", null, new TreeDumperNode[] 15548new TreeDumperNode("type", node.Type, null), 15549new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15550new TreeDumperNode("hasErrors", node.HasErrors, null) 15553public override TreeDumperNode VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node, object? arg) => new TreeDumperNode("objectOrCollectionValuePlaceholder", null, new TreeDumperNode[] 15555new TreeDumperNode("isNewInstance", node.IsNewInstance, null), 15556new TreeDumperNode("type", node.Type, null), 15557new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15558new TreeDumperNode("hasErrors", node.HasErrors, null) 15561public override TreeDumperNode VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node, object? arg) => new TreeDumperNode("implicitIndexerValuePlaceholder", null, new TreeDumperNode[] 15563new TreeDumperNode("type", node.Type, null), 15564new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15565new TreeDumperNode("hasErrors", node.HasErrors, null) 15568public override TreeDumperNode VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node, object? arg) => new TreeDumperNode("implicitIndexerReceiverPlaceholder", null, new TreeDumperNode[] 15570new TreeDumperNode("isEquivalentToThisReference", node.IsEquivalentToThisReference, null), 15571new TreeDumperNode("type", node.Type, null), 15572new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15573new TreeDumperNode("hasErrors", node.HasErrors, null) 15576public override TreeDumperNode VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node, object? arg) => new TreeDumperNode("listPatternReceiverPlaceholder", null, new TreeDumperNode[] 15578new TreeDumperNode("type", node.Type, null), 15579new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15580new TreeDumperNode("hasErrors", node.HasErrors, null) 15583public override TreeDumperNode VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node, object? arg) => new TreeDumperNode("listPatternIndexPlaceholder", null, new TreeDumperNode[] 15585new TreeDumperNode("type", node.Type, null), 15586new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15587new TreeDumperNode("hasErrors", node.HasErrors, null) 15590public override TreeDumperNode VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node, object? arg) => new TreeDumperNode("slicePatternReceiverPlaceholder", null, new TreeDumperNode[] 15592new TreeDumperNode("type", node.Type, null), 15593new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15594new TreeDumperNode("hasErrors", node.HasErrors, null) 15597public override TreeDumperNode VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node, object? arg) => new TreeDumperNode("slicePatternRangePlaceholder", null, new TreeDumperNode[] 15599new TreeDumperNode("type", node.Type, null), 15600new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15601new TreeDumperNode("hasErrors", node.HasErrors, null) 15604public override TreeDumperNode VisitCollectionBuilderElementsPlaceholder(BoundCollectionBuilderElementsPlaceholder node, object? arg) => new TreeDumperNode("collectionBuilderElementsPlaceholder", null, new TreeDumperNode[] 15606new TreeDumperNode("type", node.Type, null), 15607new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15608new TreeDumperNode("hasErrors", node.HasErrors, null) 15611public override TreeDumperNode VisitDup(BoundDup node, object? arg) => new TreeDumperNode("dup", null, new TreeDumperNode[] 15613new TreeDumperNode("refKind", node.RefKind, null), 15614new TreeDumperNode("type", node.Type, null), 15615new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15616new TreeDumperNode("hasErrors", node.HasErrors, null) 15619public override TreeDumperNode VisitPassByCopy(BoundPassByCopy node, object? arg) => new TreeDumperNode("passByCopy", null, new TreeDumperNode[] 15621new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 15622new TreeDumperNode("type", node.Type, null), 15623new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15624new TreeDumperNode("hasErrors", node.HasErrors, null) 15627public override TreeDumperNode VisitBadExpression(BoundBadExpression node, object? arg) => new TreeDumperNode("badExpression", null, new TreeDumperNode[] 15629new TreeDumperNode("resultKind", node.ResultKind, null), 15630new TreeDumperNode("symbols", node.Symbols, null), 15631new TreeDumperNode("childBoundNodes", null, from x in node.ChildBoundNodes select Visit(x, null)), 15632new TreeDumperNode("type", node.Type, null), 15633new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15634new TreeDumperNode("hasErrors", node.HasErrors, null) 15637public override TreeDumperNode VisitBadStatement(BoundBadStatement node, object? arg) => new TreeDumperNode("badStatement", null, new TreeDumperNode[] 15639new TreeDumperNode("childBoundNodes", null, from x in node.ChildBoundNodes select Visit(x, null)), 15640new TreeDumperNode("hasErrors", node.HasErrors, null) 15643public override TreeDumperNode VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node, object? arg) => new TreeDumperNode("extractedFinallyBlock", null, new TreeDumperNode[] 15645new TreeDumperNode("finallyBlock", null, new TreeDumperNode[] { Visit(node.FinallyBlock, null) }), 15646new TreeDumperNode("hasErrors", node.HasErrors, null) 15649public override TreeDumperNode VisitTypeExpression(BoundTypeExpression node, object? arg) => new TreeDumperNode("typeExpression", null, new TreeDumperNode[] 15651new TreeDumperNode("aliasOpt", node.AliasOpt, null), 15652new TreeDumperNode("boundContainingTypeOpt", null, new TreeDumperNode[] { Visit(node.BoundContainingTypeOpt, null) }), 15653new TreeDumperNode("boundDimensionsOpt", null, node.BoundDimensionsOpt.IsDefault ? Array.Empty<TreeDumperNode>() : from x in node.BoundDimensionsOpt select Visit(x, null)), 15654new TreeDumperNode("typeWithAnnotations", node.TypeWithAnnotations, null), 15655new TreeDumperNode("type", node.Type, null), 15656new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15657new TreeDumperNode("hasErrors", node.HasErrors, null) 15660public override TreeDumperNode VisitTypeOrValueExpression(BoundTypeOrValueExpression node, object? arg) => new TreeDumperNode("typeOrValueExpression", null, new TreeDumperNode[] 15662new TreeDumperNode("binder", node.Binder, null), 15663new TreeDumperNode("valueSymbol", node.ValueSymbol, null), 15664new TreeDumperNode("type", node.Type, null), 15665new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15666new TreeDumperNode("hasErrors", node.HasErrors, null) 15669public override TreeDumperNode VisitNamespaceExpression(BoundNamespaceExpression node, object? arg) => new TreeDumperNode("namespaceExpression", null, new TreeDumperNode[] 15671new TreeDumperNode("namespaceSymbol", node.NamespaceSymbol, null), 15672new TreeDumperNode("aliasOpt", node.AliasOpt, null), 15673new TreeDumperNode("type", node.Type, null), 15674new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15675new TreeDumperNode("hasErrors", node.HasErrors, null) 15678public override TreeDumperNode VisitUnaryOperator(BoundUnaryOperator node, object? arg) => new TreeDumperNode("unaryOperator", null, new TreeDumperNode[] 15680new TreeDumperNode("operatorKind", node.OperatorKind, null), 15681new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15682new TreeDumperNode("constantValueOpt", node.ConstantValueOpt, null), 15683new TreeDumperNode("methodOpt", node.MethodOpt, null), 15684new TreeDumperNode("constrainedToTypeOpt", node.ConstrainedToTypeOpt, null), 15685new TreeDumperNode("resultKind", node.ResultKind, null), 15686new TreeDumperNode("originalUserDefinedOperatorsOpt", node.OriginalUserDefinedOperatorsOpt, null), 15687new TreeDumperNode("type", node.Type, null), 15688new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15689new TreeDumperNode("hasErrors", node.HasErrors, null) 15692public override TreeDumperNode VisitIncrementOperator(BoundIncrementOperator node, object? arg) => new TreeDumperNode("incrementOperator", null, new TreeDumperNode[] 15694new TreeDumperNode("operatorKind", node.OperatorKind, null), 15695new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15696new TreeDumperNode("methodOpt", node.MethodOpt, null), 15697new TreeDumperNode("constrainedToTypeOpt", node.ConstrainedToTypeOpt, null), 15698new TreeDumperNode("operandPlaceholder", null, new TreeDumperNode[] { Visit(node.OperandPlaceholder, null) }), 15699new TreeDumperNode("operandConversion", null, new TreeDumperNode[] { Visit(node.OperandConversion, null) }), 15700new TreeDumperNode("resultPlaceholder", null, new TreeDumperNode[] { Visit(node.ResultPlaceholder, null) }), 15701new TreeDumperNode("resultConversion", null, new TreeDumperNode[] { Visit(node.ResultConversion, null) }), 15702new TreeDumperNode("resultKind", node.ResultKind, null), 15703new TreeDumperNode("originalUserDefinedOperatorsOpt", node.OriginalUserDefinedOperatorsOpt, null), 15704new TreeDumperNode("type", node.Type, null), 15705new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15706new TreeDumperNode("hasErrors", node.HasErrors, null) 15709public override TreeDumperNode VisitAddressOfOperator(BoundAddressOfOperator node, object? arg) => new TreeDumperNode("addressOfOperator", null, new TreeDumperNode[] 15711new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15712new TreeDumperNode("isManaged", node.IsManaged, null), 15713new TreeDumperNode("type", node.Type, null), 15714new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15715new TreeDumperNode("hasErrors", node.HasErrors, null) 15718public override TreeDumperNode VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node, object? arg) => new TreeDumperNode("unconvertedAddressOfOperator", null, new TreeDumperNode[] 15720new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15721new TreeDumperNode("type", node.Type, null), 15722new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15723new TreeDumperNode("hasErrors", node.HasErrors, null) 15726public override TreeDumperNode VisitFunctionPointerLoad(BoundFunctionPointerLoad node, object? arg) => new TreeDumperNode("functionPointerLoad", null, new TreeDumperNode[] 15728new TreeDumperNode("targetMethod", node.TargetMethod, null), 15729new TreeDumperNode("constrainedToTypeOpt", node.ConstrainedToTypeOpt, null), 15730new TreeDumperNode("type", node.Type, null), 15731new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15732new TreeDumperNode("hasErrors", node.HasErrors, null) 15735public override TreeDumperNode VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node, object? arg) => new TreeDumperNode("pointerIndirectionOperator", null, new TreeDumperNode[] 15737new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15738new TreeDumperNode("refersToLocation", node.RefersToLocation, null), 15739new TreeDumperNode("type", node.Type, null), 15740new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15741new TreeDumperNode("hasErrors", node.HasErrors, null) 15744public override TreeDumperNode VisitPointerElementAccess(BoundPointerElementAccess node, object? arg) => new TreeDumperNode("pointerElementAccess", null, new TreeDumperNode[] 15746new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 15747new TreeDumperNode("index", null, new TreeDumperNode[] { Visit(node.Index, null) }), 15748new TreeDumperNode("@checked", node.Checked, null), 15749new TreeDumperNode("refersToLocation", node.RefersToLocation, null), 15750new TreeDumperNode("type", node.Type, null), 15751new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15752new TreeDumperNode("hasErrors", node.HasErrors, null) 15755public override TreeDumperNode VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node, object? arg) => new TreeDumperNode("functionPointerInvocation", null, new TreeDumperNode[] 15757new TreeDumperNode("invokedExpression", null, new TreeDumperNode[] { Visit(node.InvokedExpression, null) }), 15758new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 15759new TreeDumperNode("argumentRefKindsOpt", node.ArgumentRefKindsOpt, null), 15760new TreeDumperNode("resultKind", node.ResultKind, null), 15761new TreeDumperNode("type", node.Type, null), 15762new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15763new TreeDumperNode("hasErrors", node.HasErrors, null) 15766public override TreeDumperNode VisitRefTypeOperator(BoundRefTypeOperator node, object? arg) => new TreeDumperNode("refTypeOperator", null, new TreeDumperNode[] 15768new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15769new TreeDumperNode("getTypeFromHandle", node.GetTypeFromHandle, null), 15770new TreeDumperNode("type", node.Type, null), 15771new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15772new TreeDumperNode("hasErrors", node.HasErrors, null) 15775public override TreeDumperNode VisitMakeRefOperator(BoundMakeRefOperator node, object? arg) => new TreeDumperNode("makeRefOperator", null, new TreeDumperNode[] 15777new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15778new TreeDumperNode("type", node.Type, null), 15779new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15780new TreeDumperNode("hasErrors", node.HasErrors, null) 15783public override TreeDumperNode VisitRefValueOperator(BoundRefValueOperator node, object? arg) => new TreeDumperNode("refValueOperator", null, new TreeDumperNode[] 15785new TreeDumperNode("nullableAnnotation", node.NullableAnnotation, null), 15786new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15787new TreeDumperNode("type", node.Type, null), 15788new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15789new TreeDumperNode("hasErrors", node.HasErrors, null) 15792public override TreeDumperNode VisitFromEndIndexExpression(BoundFromEndIndexExpression node, object? arg) => new TreeDumperNode("fromEndIndexExpression", null, new TreeDumperNode[] 15794new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15795new TreeDumperNode("methodOpt", node.MethodOpt, null), 15796new TreeDumperNode("type", node.Type, null), 15797new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15798new TreeDumperNode("hasErrors", node.HasErrors, null) 15801public override TreeDumperNode VisitRangeExpression(BoundRangeExpression node, object? arg) => new TreeDumperNode("rangeExpression", null, new TreeDumperNode[] 15803new TreeDumperNode("leftOperandOpt", null, new TreeDumperNode[] { Visit(node.LeftOperandOpt, null) }), 15804new TreeDumperNode("rightOperandOpt", null, new TreeDumperNode[] { Visit(node.RightOperandOpt, null) }), 15805new TreeDumperNode("methodOpt", node.MethodOpt, null), 15806new TreeDumperNode("type", node.Type, null), 15807new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15808new TreeDumperNode("hasErrors", node.HasErrors, null) 15811public override TreeDumperNode VisitBinaryOperator(BoundBinaryOperator node, object? arg) => new TreeDumperNode("binaryOperator", null, new TreeDumperNode[] 15813new TreeDumperNode("operatorKind", node.OperatorKind, null), 15814new TreeDumperNode("data", node.Data, null), 15815new TreeDumperNode("resultKind", node.ResultKind, null), 15816new TreeDumperNode("left", null, new TreeDumperNode[] { Visit(node.Left, null) }), 15817new TreeDumperNode("right", null, new TreeDumperNode[] { Visit(node.Right, null) }), 15818new TreeDumperNode("type", node.Type, null), 15819new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15820new TreeDumperNode("hasErrors", node.HasErrors, null) 15823public override TreeDumperNode VisitTupleBinaryOperator(BoundTupleBinaryOperator node, object? arg) => new TreeDumperNode("tupleBinaryOperator", null, new TreeDumperNode[] 15825new TreeDumperNode("left", null, new TreeDumperNode[] { Visit(node.Left, null) }), 15826new TreeDumperNode("right", null, new TreeDumperNode[] { Visit(node.Right, null) }), 15827new TreeDumperNode("operatorKind", node.OperatorKind, null), 15828new TreeDumperNode("operators", node.Operators, null), 15829new TreeDumperNode("type", node.Type, null), 15830new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15831new TreeDumperNode("hasErrors", node.HasErrors, null) 15834public override TreeDumperNode VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node, object? arg) => new TreeDumperNode("userDefinedConditionalLogicalOperator", null, new TreeDumperNode[] 15836new TreeDumperNode("operatorKind", node.OperatorKind, null), 15837new TreeDumperNode("logicalOperator", node.LogicalOperator, null), 15838new TreeDumperNode("trueOperator", node.TrueOperator, null), 15839new TreeDumperNode("falseOperator", node.FalseOperator, null), 15840new TreeDumperNode("trueFalseOperandPlaceholder", null, new TreeDumperNode[] { Visit(node.TrueFalseOperandPlaceholder, null) }), 15841new TreeDumperNode("trueFalseOperandConversion", null, new TreeDumperNode[] { Visit(node.TrueFalseOperandConversion, null) }), 15842new TreeDumperNode("constrainedToTypeOpt", node.ConstrainedToTypeOpt, null), 15843new TreeDumperNode("resultKind", node.ResultKind, null), 15844new TreeDumperNode("originalUserDefinedOperatorsOpt", node.OriginalUserDefinedOperatorsOpt, null), 15845new TreeDumperNode("left", null, new TreeDumperNode[] { Visit(node.Left, null) }), 15846new TreeDumperNode("right", null, new TreeDumperNode[] { Visit(node.Right, null) }), 15847new TreeDumperNode("type", node.Type, null), 15848new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15849new TreeDumperNode("hasErrors", node.HasErrors, null) 15852public override TreeDumperNode VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node, object? arg) => new TreeDumperNode("compoundAssignmentOperator", null, new TreeDumperNode[] 15854new TreeDumperNode("@operator", node.Operator, null), 15855new TreeDumperNode("left", null, new TreeDumperNode[] { Visit(node.Left, null) }), 15856new TreeDumperNode("right", null, new TreeDumperNode[] { Visit(node.Right, null) }), 15857new TreeDumperNode("leftPlaceholder", null, new TreeDumperNode[] { Visit(node.LeftPlaceholder, null) }), 15858new TreeDumperNode("leftConversion", null, new TreeDumperNode[] { Visit(node.LeftConversion, null) }), 15859new TreeDumperNode("finalPlaceholder", null, new TreeDumperNode[] { Visit(node.FinalPlaceholder, null) }), 15860new TreeDumperNode("finalConversion", null, new TreeDumperNode[] { Visit(node.FinalConversion, null) }), 15861new TreeDumperNode("resultKind", node.ResultKind, null), 15862new TreeDumperNode("originalUserDefinedOperatorsOpt", node.OriginalUserDefinedOperatorsOpt, null), 15863new TreeDumperNode("type", node.Type, null), 15864new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15865new TreeDumperNode("hasErrors", node.HasErrors, null) 15868public override TreeDumperNode VisitAssignmentOperator(BoundAssignmentOperator node, object? arg) => new TreeDumperNode("assignmentOperator", null, new TreeDumperNode[] 15870new TreeDumperNode("left", null, new TreeDumperNode[] { Visit(node.Left, null) }), 15871new TreeDumperNode("right", null, new TreeDumperNode[] { Visit(node.Right, null) }), 15872new TreeDumperNode("isRef", node.IsRef, null), 15873new TreeDumperNode("type", node.Type, null), 15874new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15875new TreeDumperNode("hasErrors", node.HasErrors, null) 15878public override TreeDumperNode VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node, object? arg) => new TreeDumperNode("deconstructionAssignmentOperator", null, new TreeDumperNode[] 15880new TreeDumperNode("left", null, new TreeDumperNode[] { Visit(node.Left, null) }), 15881new TreeDumperNode("right", null, new TreeDumperNode[] { Visit(node.Right, null) }), 15882new TreeDumperNode("isUsed", node.IsUsed, null), 15883new TreeDumperNode("type", node.Type, null), 15884new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15885new TreeDumperNode("hasErrors", node.HasErrors, null) 15888public override TreeDumperNode VisitNullCoalescingOperator(BoundNullCoalescingOperator node, object? arg) => new TreeDumperNode("nullCoalescingOperator", null, new TreeDumperNode[] 15890new TreeDumperNode("leftOperand", null, new TreeDumperNode[] { Visit(node.LeftOperand, null) }), 15891new TreeDumperNode("rightOperand", null, new TreeDumperNode[] { Visit(node.RightOperand, null) }), 15892new TreeDumperNode("leftPlaceholder", null, new TreeDumperNode[] { Visit(node.LeftPlaceholder, null) }), 15893new TreeDumperNode("leftConversion", null, new TreeDumperNode[] { Visit(node.LeftConversion, null) }), 15894new TreeDumperNode("operatorResultKind", node.OperatorResultKind, null), 15895new TreeDumperNode("@checked", node.Checked, null), 15896new TreeDumperNode("type", node.Type, null), 15897new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15898new TreeDumperNode("hasErrors", node.HasErrors, null) 15901public override TreeDumperNode VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node, object? arg) => new TreeDumperNode("nullCoalescingAssignmentOperator", null, new TreeDumperNode[] 15903new TreeDumperNode("leftOperand", null, new TreeDumperNode[] { Visit(node.LeftOperand, null) }), 15904new TreeDumperNode("rightOperand", null, new TreeDumperNode[] { Visit(node.RightOperand, null) }), 15905new TreeDumperNode("type", node.Type, null), 15906new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15907new TreeDumperNode("hasErrors", node.HasErrors, null) 15910public override TreeDumperNode VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node, object? arg) => new TreeDumperNode("unconvertedConditionalOperator", null, new TreeDumperNode[] 15912new TreeDumperNode("condition", null, new TreeDumperNode[] { Visit(node.Condition, null) }), 15913new TreeDumperNode("consequence", null, new TreeDumperNode[] { Visit(node.Consequence, null) }), 15914new TreeDumperNode("alternative", null, new TreeDumperNode[] { Visit(node.Alternative, null) }), 15915new TreeDumperNode("constantValueOpt", node.ConstantValueOpt, null), 15916new TreeDumperNode("noCommonTypeError", node.NoCommonTypeError, null), 15917new TreeDumperNode("type", node.Type, null), 15918new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15919new TreeDumperNode("hasErrors", node.HasErrors, null) 15922public override TreeDumperNode VisitConditionalOperator(BoundConditionalOperator node, object? arg) => new TreeDumperNode("conditionalOperator", null, new TreeDumperNode[] 15924new TreeDumperNode("isRef", node.IsRef, null), 15925new TreeDumperNode("condition", null, new TreeDumperNode[] { Visit(node.Condition, null) }), 15926new TreeDumperNode("consequence", null, new TreeDumperNode[] { Visit(node.Consequence, null) }), 15927new TreeDumperNode("alternative", null, new TreeDumperNode[] { Visit(node.Alternative, null) }), 15928new TreeDumperNode("constantValueOpt", node.ConstantValueOpt, null), 15929new TreeDumperNode("naturalTypeOpt", node.NaturalTypeOpt, null), 15930new TreeDumperNode("wasTargetTyped", node.WasTargetTyped, null), 15931new TreeDumperNode("type", node.Type, null), 15932new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15933new TreeDumperNode("hasErrors", node.HasErrors, null) 15936public override TreeDumperNode VisitArrayAccess(BoundArrayAccess node, object? arg) => new TreeDumperNode("arrayAccess", null, new TreeDumperNode[] 15938new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 15939new TreeDumperNode("indices", null, from x in node.Indices select Visit(x, null)), 15940new TreeDumperNode("type", node.Type, null), 15941new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15942new TreeDumperNode("hasErrors", node.HasErrors, null) 15945public override TreeDumperNode VisitRefArrayAccess(BoundRefArrayAccess node, object? arg) => new TreeDumperNode("refArrayAccess", null, new TreeDumperNode[] 15947new TreeDumperNode("arrayAccess", null, new TreeDumperNode[] { Visit(node.ArrayAccess, null) }), 15948new TreeDumperNode("type", node.Type, null), 15949new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15950new TreeDumperNode("hasErrors", node.HasErrors, null) 15953public override TreeDumperNode VisitArrayLength(BoundArrayLength node, object? arg) => new TreeDumperNode("arrayLength", null, new TreeDumperNode[] 15955new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 15956new TreeDumperNode("type", node.Type, null), 15957new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15958new TreeDumperNode("hasErrors", node.HasErrors, null) 15961public override TreeDumperNode VisitAwaitableInfo(BoundAwaitableInfo node, object? arg) => new TreeDumperNode("awaitableInfo", null, new TreeDumperNode[] 15963new TreeDumperNode("awaitableInstancePlaceholder", null, new TreeDumperNode[] { Visit(node.AwaitableInstancePlaceholder, null) }), 15964new TreeDumperNode("isDynamic", node.IsDynamic, null), 15965new TreeDumperNode("getAwaiter", null, new TreeDumperNode[] { Visit(node.GetAwaiter, null) }), 15966new TreeDumperNode("isCompleted", node.IsCompleted, null), 15967new TreeDumperNode("getResult", node.GetResult, null), 15968new TreeDumperNode("runtimeAsyncAwaitCall", null, new TreeDumperNode[] { Visit(node.RuntimeAsyncAwaitCall, null) }), 15969new TreeDumperNode("runtimeAsyncAwaitCallPlaceholder", null, new TreeDumperNode[] { Visit(node.RuntimeAsyncAwaitCallPlaceholder, null) }), 15970new TreeDumperNode("hasErrors", node.HasErrors, null) 15973public override TreeDumperNode VisitAwaitExpression(BoundAwaitExpression node, object? arg) => new TreeDumperNode("awaitExpression", null, new TreeDumperNode[] 15975new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 15976new TreeDumperNode("awaitableInfo", null, new TreeDumperNode[] { Visit(node.AwaitableInfo, null) }), 15977new TreeDumperNode("debugInfo", node.DebugInfo, null), 15978new TreeDumperNode("type", node.Type, null), 15979new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15980new TreeDumperNode("hasErrors", node.HasErrors, null) 15983public override TreeDumperNode VisitTypeOfOperator(BoundTypeOfOperator node, object? arg) => new TreeDumperNode("typeOfOperator", null, new TreeDumperNode[] 15985new TreeDumperNode("sourceType", null, new TreeDumperNode[] { Visit(node.SourceType, null) }), 15986new TreeDumperNode("getTypeFromHandle", node.GetTypeFromHandle, null), 15987new TreeDumperNode("type", node.Type, null), 15988new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15989new TreeDumperNode("hasErrors", node.HasErrors, null) 15992public override TreeDumperNode VisitBlockInstrumentation(BoundBlockInstrumentation node, object? arg) => new TreeDumperNode("blockInstrumentation", null, new TreeDumperNode[] 15994new TreeDumperNode("locals", node.Locals, null), 15995new TreeDumperNode("prologue", null, new TreeDumperNode[] { Visit(node.Prologue, null) }), 15996new TreeDumperNode("epilogue", null, new TreeDumperNode[] { Visit(node.Epilogue, null) }), 15997new TreeDumperNode("hasErrors", node.HasErrors, null) 16000public override TreeDumperNode VisitMethodDefIndex(BoundMethodDefIndex node, object? arg) => new TreeDumperNode("methodDefIndex", null, new TreeDumperNode[] 16002new TreeDumperNode("method", node.Method, null), 16003new TreeDumperNode("type", node.Type, null), 16004new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16005new TreeDumperNode("hasErrors", node.HasErrors, null) 16008public override TreeDumperNode VisitLocalId(BoundLocalId node, object? arg) => new TreeDumperNode("localId", null, new TreeDumperNode[] 16010new TreeDumperNode("local", node.Local, null), 16011new TreeDumperNode("hoistedField", node.HoistedField, null), 16012new TreeDumperNode("type", node.Type, null), 16013new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16014new TreeDumperNode("hasErrors", node.HasErrors, null) 16017public override TreeDumperNode VisitParameterId(BoundParameterId node, object? arg) => new TreeDumperNode("parameterId", null, new TreeDumperNode[] 16019new TreeDumperNode("parameter", node.Parameter, null), 16020new TreeDumperNode("hoistedField", node.HoistedField, null), 16021new TreeDumperNode("type", node.Type, null), 16022new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16023new TreeDumperNode("hasErrors", node.HasErrors, null) 16026public override TreeDumperNode VisitStateMachineInstanceId(BoundStateMachineInstanceId node, object? arg) => new TreeDumperNode("stateMachineInstanceId", null, new TreeDumperNode[] 16028new TreeDumperNode("type", node.Type, null), 16029new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16030new TreeDumperNode("hasErrors", node.HasErrors, null) 16033public override TreeDumperNode VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node, object? arg) => new TreeDumperNode("maximumMethodDefIndex", null, new TreeDumperNode[] 16035new TreeDumperNode("type", node.Type, null), 16036new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16037new TreeDumperNode("hasErrors", node.HasErrors, null) 16040public override TreeDumperNode VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node, object? arg) => new TreeDumperNode("instrumentationPayloadRoot", null, new TreeDumperNode[] 16042new TreeDumperNode("analysisKind", node.AnalysisKind, null), 16043new TreeDumperNode("type", node.Type, null), 16044new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16045new TreeDumperNode("hasErrors", node.HasErrors, null) 16048public override TreeDumperNode VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node, object? arg) => new TreeDumperNode("throwIfModuleCancellationRequested", null, new TreeDumperNode[] 16050new TreeDumperNode("type", node.Type, null), 16051new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16052new TreeDumperNode("hasErrors", node.HasErrors, null) 16055public override TreeDumperNode VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node, object? arg) => new TreeDumperNode("moduleCancellationTokenExpression", null, new TreeDumperNode[] 16057new TreeDumperNode("type", node.Type, null), 16058new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16059new TreeDumperNode("hasErrors", node.HasErrors, null) 16062public override TreeDumperNode VisitModuleVersionId(BoundModuleVersionId node, object? arg) => new TreeDumperNode("moduleVersionId", null, new TreeDumperNode[] 16064new TreeDumperNode("type", node.Type, null), 16065new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16066new TreeDumperNode("hasErrors", node.HasErrors, null) 16069public override TreeDumperNode VisitModuleVersionIdString(BoundModuleVersionIdString node, object? arg) => new TreeDumperNode("moduleVersionIdString", null, new TreeDumperNode[] 16071new TreeDumperNode("type", node.Type, null), 16072new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16073new TreeDumperNode("hasErrors", node.HasErrors, null) 16076public override TreeDumperNode VisitSourceDocumentIndex(BoundSourceDocumentIndex node, object? arg) => new TreeDumperNode("sourceDocumentIndex", null, new TreeDumperNode[] 16078new TreeDumperNode("document", node.Document, null), 16079new TreeDumperNode("type", node.Type, null), 16080new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16081new TreeDumperNode("hasErrors", node.HasErrors, null) 16084public override TreeDumperNode VisitMethodInfo(BoundMethodInfo node, object? arg) => new TreeDumperNode("methodInfo", null, new TreeDumperNode[] 16086new TreeDumperNode("method", node.Method, null), 16087new TreeDumperNode("getMethodFromHandle", node.GetMethodFromHandle, null), 16088new TreeDumperNode("type", node.Type, null), 16089new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16090new TreeDumperNode("hasErrors", node.HasErrors, null) 16093public override TreeDumperNode VisitFieldInfo(BoundFieldInfo node, object? arg) => new TreeDumperNode("fieldInfo", null, new TreeDumperNode[] 16095new TreeDumperNode("field", node.Field, null), 16096new TreeDumperNode("getFieldFromHandle", node.GetFieldFromHandle, null), 16097new TreeDumperNode("type", node.Type, null), 16098new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16099new TreeDumperNode("hasErrors", node.HasErrors, null) 16102public override TreeDumperNode VisitDefaultLiteral(BoundDefaultLiteral node, object? arg) => new TreeDumperNode("defaultLiteral", null, new TreeDumperNode[] 16104new TreeDumperNode("type", node.Type, null), 16105new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16106new TreeDumperNode("hasErrors", node.HasErrors, null) 16109public override TreeDumperNode VisitDefaultExpression(BoundDefaultExpression node, object? arg) => new TreeDumperNode("defaultExpression", null, new TreeDumperNode[] 16111new TreeDumperNode("targetType", null, new TreeDumperNode[] { Visit(node.TargetType, null) }), 16112new TreeDumperNode("constantValueOpt", node.ConstantValueOpt, null), 16113new TreeDumperNode("type", node.Type, null), 16114new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16115new TreeDumperNode("hasErrors", node.HasErrors, null) 16118public override TreeDumperNode VisitIsOperator(BoundIsOperator node, object? arg) => new TreeDumperNode("isOperator", null, new TreeDumperNode[] 16120new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 16121new TreeDumperNode("targetType", null, new TreeDumperNode[] { Visit(node.TargetType, null) }), 16122new TreeDumperNode("conversionKind", node.ConversionKind, null), 16123new TreeDumperNode("type", node.Type, null), 16124new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16125new TreeDumperNode("hasErrors", node.HasErrors, null) 16128public override TreeDumperNode VisitAsOperator(BoundAsOperator node, object? arg) => new TreeDumperNode("asOperator", null, new TreeDumperNode[] 16130new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 16131new TreeDumperNode("targetType", null, new TreeDumperNode[] { Visit(node.TargetType, null) }), 16132new TreeDumperNode("operandPlaceholder", null, new TreeDumperNode[] { Visit(node.OperandPlaceholder, null) }), 16133new TreeDumperNode("operandConversion", null, new TreeDumperNode[] { Visit(node.OperandConversion, null) }), 16134new TreeDumperNode("type", node.Type, null), 16135new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16136new TreeDumperNode("hasErrors", node.HasErrors, null) 16139public override TreeDumperNode VisitSizeOfOperator(BoundSizeOfOperator node, object? arg) => new TreeDumperNode("sizeOfOperator", null, new TreeDumperNode[] 16141new TreeDumperNode("sourceType", null, new TreeDumperNode[] { Visit(node.SourceType, null) }), 16142new TreeDumperNode("constantValueOpt", node.ConstantValueOpt, null), 16143new TreeDumperNode("type", node.Type, null), 16144new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16145new TreeDumperNode("hasErrors", node.HasErrors, null) 16148public override TreeDumperNode VisitConversion(BoundConversion node, object? arg) => new TreeDumperNode("conversion", null, new TreeDumperNode[] 16150new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 16151new TreeDumperNode("conversion", node.Conversion, null), 16152new TreeDumperNode("isBaseConversion", node.IsBaseConversion, null), 16153new TreeDumperNode("@checked", node.Checked, null), 16154new TreeDumperNode("explicitCastInCode", node.ExplicitCastInCode, null), 16155new TreeDumperNode("constantValueOpt", node.ConstantValueOpt, null), 16156new TreeDumperNode("conversionGroupOpt", node.ConversionGroupOpt, null), 16157new TreeDumperNode("inConversionGroupFlags", node.InConversionGroupFlags, null), 16158new TreeDumperNode("type", node.Type, null), 16159new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16160new TreeDumperNode("hasErrors", node.HasErrors, null) 16163public override TreeDumperNode VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node, object? arg) => new TreeDumperNode("readOnlySpanFromArray", null, new TreeDumperNode[] 16165new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 16166new TreeDumperNode("conversionMethod", node.ConversionMethod, null), 16167new TreeDumperNode("type", node.Type, null), 16168new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16169new TreeDumperNode("hasErrors", node.HasErrors, null) 16172public override TreeDumperNode VisitArgList(BoundArgList node, object? arg) => new TreeDumperNode("argList", null, new TreeDumperNode[] 16174new TreeDumperNode("type", node.Type, null), 16175new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16176new TreeDumperNode("hasErrors", node.HasErrors, null) 16179public override TreeDumperNode VisitArgListOperator(BoundArgListOperator node, object? arg) => new TreeDumperNode("argListOperator", null, new TreeDumperNode[] 16181new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 16182new TreeDumperNode("argumentRefKindsOpt", node.ArgumentRefKindsOpt, null), 16183new TreeDumperNode("type", node.Type, null), 16184new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16185new TreeDumperNode("hasErrors", node.HasErrors, null) 16188public override TreeDumperNode VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node, object? arg) => new TreeDumperNode("fixedLocalCollectionInitializer", null, new TreeDumperNode[] 16190new TreeDumperNode("elementPointerType", node.ElementPointerType, null), 16191new TreeDumperNode("elementPointerPlaceholder", null, new TreeDumperNode[] { Visit(node.ElementPointerPlaceholder, null) }), 16192new TreeDumperNode("elementPointerConversion", null, new TreeDumperNode[] { Visit(node.ElementPointerConversion, null) }), 16193new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16194new TreeDumperNode("getPinnableOpt", node.GetPinnableOpt, null), 16195new TreeDumperNode("type", node.Type, null), 16196new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16197new TreeDumperNode("hasErrors", node.HasErrors, null) 16200public override TreeDumperNode VisitSequencePoint(BoundSequencePoint node, object? arg) => new TreeDumperNode("sequencePoint", null, new TreeDumperNode[] 16202new TreeDumperNode("statementOpt", null, new TreeDumperNode[] { Visit(node.StatementOpt, null) }), 16203new TreeDumperNode("hasErrors", node.HasErrors, null) 16206public override TreeDumperNode VisitSequencePointWithSpan(BoundSequencePointWithSpan node, object? arg) => new TreeDumperNode("sequencePointWithSpan", null, new TreeDumperNode[] 16208new TreeDumperNode("statementOpt", null, new TreeDumperNode[] { Visit(node.StatementOpt, null) }), 16209new TreeDumperNode("span", node.Span, null), 16210new TreeDumperNode("hasErrors", node.HasErrors, null) 16213public override TreeDumperNode VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node, object? arg) => new TreeDumperNode("savePreviousSequencePoint", null, new TreeDumperNode[] 16215new TreeDumperNode("identifier", node.Identifier, null), 16216new TreeDumperNode("hasErrors", node.HasErrors, null) 16219public override TreeDumperNode VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node, object? arg) => new TreeDumperNode("restorePreviousSequencePoint", null, new TreeDumperNode[] 16221new TreeDumperNode("identifier", node.Identifier, null), 16222new TreeDumperNode("hasErrors", node.HasErrors, null) 16225public override TreeDumperNode VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node, object? arg) => new TreeDumperNode("stepThroughSequencePoint", null, new TreeDumperNode[] 16227new TreeDumperNode("span", node.Span, null), 16228new TreeDumperNode("hasErrors", node.HasErrors, null) 16231public override TreeDumperNode VisitBlock(BoundBlock node, object? arg) => new TreeDumperNode("block", null, new TreeDumperNode[] 16233new TreeDumperNode("locals", node.Locals, null), 16234new TreeDumperNode("localFunctions", node.LocalFunctions, null), 16235new TreeDumperNode("hasUnsafeModifier", node.HasUnsafeModifier, null), 16236new TreeDumperNode("instrumentation", null, new TreeDumperNode[] { Visit(node.Instrumentation, null) }), 16237new TreeDumperNode("statements", null, from x in node.Statements select Visit(x, null)), 16238new TreeDumperNode("hasErrors", node.HasErrors, null) 16241public override TreeDumperNode VisitScope(BoundScope node, object? arg) => new TreeDumperNode("scope", null, new TreeDumperNode[] 16243new TreeDumperNode("locals", node.Locals, null), 16244new TreeDumperNode("statements", null, from x in node.Statements select Visit(x, null)), 16245new TreeDumperNode("hasErrors", node.HasErrors, null) 16248public override TreeDumperNode VisitStateMachineScope(BoundStateMachineScope node, object? arg) => new TreeDumperNode("stateMachineScope", null, new TreeDumperNode[] 16250new TreeDumperNode("fields", node.Fields, null), 16251new TreeDumperNode("statement", null, new TreeDumperNode[] { Visit(node.Statement, null) }), 16252new TreeDumperNode("hasErrors", node.HasErrors, null) 16255public override TreeDumperNode VisitLocalDeclaration(BoundLocalDeclaration node, object? arg) => new TreeDumperNode("localDeclaration", null, new TreeDumperNode[] 16257new TreeDumperNode("localSymbol", node.LocalSymbol, null), 16258new TreeDumperNode("declaredTypeOpt", null, new TreeDumperNode[] { Visit(node.DeclaredTypeOpt, null) }), 16259new TreeDumperNode("initializerOpt", null, new TreeDumperNode[] { Visit(node.InitializerOpt, null) }), 16260new TreeDumperNode("argumentsOpt", null, node.ArgumentsOpt.IsDefault ? Array.Empty<TreeDumperNode>() : from x in node.ArgumentsOpt select Visit(x, null)), 16261new TreeDumperNode("inferredType", node.InferredType, null), 16262new TreeDumperNode("hasErrors", node.HasErrors, null) 16265public override TreeDumperNode VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node, object? arg) => new TreeDumperNode("multipleLocalDeclarations", null, new TreeDumperNode[] 16267new TreeDumperNode("localDeclarations", null, from x in node.LocalDeclarations select Visit(x, null)), 16268new TreeDumperNode("hasErrors", node.HasErrors, null) 16271public override TreeDumperNode VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node, object? arg) => new TreeDumperNode("usingLocalDeclarations", null, new TreeDumperNode[] 16273new TreeDumperNode("patternDisposeInfoOpt", node.PatternDisposeInfoOpt, null), 16274new TreeDumperNode("awaitOpt", null, new TreeDumperNode[] { Visit(node.AwaitOpt, null) }), 16275new TreeDumperNode("localDeclarations", null, from x in node.LocalDeclarations select Visit(x, null)), 16276new TreeDumperNode("hasErrors", node.HasErrors, null) 16279public override TreeDumperNode VisitLocalFunctionStatement(BoundLocalFunctionStatement node, object? arg) => new TreeDumperNode("localFunctionStatement", null, new TreeDumperNode[] 16281new TreeDumperNode("symbol", node.Symbol, null), 16282new TreeDumperNode("blockBody", null, new TreeDumperNode[] { Visit(node.BlockBody, null) }), 16283new TreeDumperNode("expressionBody", null, new TreeDumperNode[] { Visit(node.ExpressionBody, null) }), 16284new TreeDumperNode("hasErrors", node.HasErrors, null) 16287public override TreeDumperNode VisitNoOpStatement(BoundNoOpStatement node, object? arg) => new TreeDumperNode("noOpStatement", null, new TreeDumperNode[] 16289new TreeDumperNode("flavor", node.Flavor, null), 16290new TreeDumperNode("hasErrors", node.HasErrors, null) 16293public override TreeDumperNode VisitReturnStatement(BoundReturnStatement node, object? arg) => new TreeDumperNode("returnStatement", null, new TreeDumperNode[] 16295new TreeDumperNode("refKind", node.RefKind, null), 16296new TreeDumperNode("expressionOpt", null, new TreeDumperNode[] { Visit(node.ExpressionOpt, null) }), 16297new TreeDumperNode("@checked", node.Checked, null), 16298new TreeDumperNode("hasErrors", node.HasErrors, null) 16301public override TreeDumperNode VisitYieldReturnStatement(BoundYieldReturnStatement node, object? arg) => new TreeDumperNode("yieldReturnStatement", null, new TreeDumperNode[] 16303new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16304new TreeDumperNode("hasErrors", node.HasErrors, null) 16307public override TreeDumperNode VisitYieldBreakStatement(BoundYieldBreakStatement node, object? arg) => new TreeDumperNode("yieldBreakStatement", null, Array.Empty<TreeDumperNode>() 16309public override TreeDumperNode VisitThrowStatement(BoundThrowStatement node, object? arg) => new TreeDumperNode("throwStatement", null, new TreeDumperNode[] 16311new TreeDumperNode("expressionOpt", null, new TreeDumperNode[] { Visit(node.ExpressionOpt, null) }), 16312new TreeDumperNode("hasErrors", node.HasErrors, null) 16315public override TreeDumperNode VisitExpressionStatement(BoundExpressionStatement node, object? arg) => new TreeDumperNode("expressionStatement", null, new TreeDumperNode[] 16317new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16318new TreeDumperNode("hasErrors", node.HasErrors, null) 16321public override TreeDumperNode VisitBreakStatement(BoundBreakStatement node, object? arg) => new TreeDumperNode("breakStatement", null, new TreeDumperNode[] 16323new TreeDumperNode("label", node.Label, null), 16324new TreeDumperNode("hasErrors", node.HasErrors, null) 16327public override TreeDumperNode VisitContinueStatement(BoundContinueStatement node, object? arg) => new TreeDumperNode("continueStatement", null, new TreeDumperNode[] 16329new TreeDumperNode("label", node.Label, null), 16330new TreeDumperNode("hasErrors", node.HasErrors, null) 16333public override TreeDumperNode VisitSwitchStatement(BoundSwitchStatement node, object? arg) => new TreeDumperNode("switchStatement", null, new TreeDumperNode[] 16335new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16336new TreeDumperNode("innerLocals", node.InnerLocals, null), 16337new TreeDumperNode("innerLocalFunctions", node.InnerLocalFunctions, null), 16338new TreeDumperNode("switchSections", null, from x in node.SwitchSections select Visit(x, null)), 16339new TreeDumperNode("reachabilityDecisionDag", null, new TreeDumperNode[] { Visit(node.ReachabilityDecisionDag, null) }), 16340new TreeDumperNode("defaultLabel", null, new TreeDumperNode[] { Visit(node.DefaultLabel, null) }), 16341new TreeDumperNode("breakLabel", node.BreakLabel, null), 16342new TreeDumperNode("hasErrors", node.HasErrors, null) 16345public override TreeDumperNode VisitSwitchDispatch(BoundSwitchDispatch node, object? arg) => new TreeDumperNode("switchDispatch", null, new TreeDumperNode[] 16347new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16348new TreeDumperNode("cases", node.Cases, null), 16349new TreeDumperNode("defaultLabel", node.DefaultLabel, null), 16350new TreeDumperNode("lengthBasedStringSwitchDataOpt", node.LengthBasedStringSwitchDataOpt, null), 16351new TreeDumperNode("hasErrors", node.HasErrors, null) 16354public override TreeDumperNode VisitIfStatement(BoundIfStatement node, object? arg) => new TreeDumperNode("ifStatement", null, new TreeDumperNode[] 16356new TreeDumperNode("condition", null, new TreeDumperNode[] { Visit(node.Condition, null) }), 16357new TreeDumperNode("consequence", null, new TreeDumperNode[] { Visit(node.Consequence, null) }), 16358new TreeDumperNode("alternativeOpt", null, new TreeDumperNode[] { Visit(node.AlternativeOpt, null) }), 16359new TreeDumperNode("hasErrors", node.HasErrors, null) 16362public override TreeDumperNode VisitDoStatement(BoundDoStatement node, object? arg) => new TreeDumperNode("doStatement", null, new TreeDumperNode[] 16364new TreeDumperNode("locals", node.Locals, null), 16365new TreeDumperNode("condition", null, new TreeDumperNode[] { Visit(node.Condition, null) }), 16366new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 16367new TreeDumperNode("breakLabel", node.BreakLabel, null), 16368new TreeDumperNode("continueLabel", node.ContinueLabel, null), 16369new TreeDumperNode("hasErrors", node.HasErrors, null) 16372public override TreeDumperNode VisitWhileStatement(BoundWhileStatement node, object? arg) => new TreeDumperNode("whileStatement", null, new TreeDumperNode[] 16374new TreeDumperNode("locals", node.Locals, null), 16375new TreeDumperNode("condition", null, new TreeDumperNode[] { Visit(node.Condition, null) }), 16376new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 16377new TreeDumperNode("breakLabel", node.BreakLabel, null), 16378new TreeDumperNode("continueLabel", node.ContinueLabel, null), 16379new TreeDumperNode("hasErrors", node.HasErrors, null) 16382public override TreeDumperNode VisitForStatement(BoundForStatement node, object? arg) => new TreeDumperNode("forStatement", null, new TreeDumperNode[] 16384new TreeDumperNode("outerLocals", node.OuterLocals, null), 16385new TreeDumperNode("initializer", null, new TreeDumperNode[] { Visit(node.Initializer, null) }), 16386new TreeDumperNode("innerLocals", node.InnerLocals, null), 16387new TreeDumperNode("condition", null, new TreeDumperNode[] { Visit(node.Condition, null) }), 16388new TreeDumperNode("increment", null, new TreeDumperNode[] { Visit(node.Increment, null) }), 16389new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 16390new TreeDumperNode("breakLabel", node.BreakLabel, null), 16391new TreeDumperNode("continueLabel", node.ContinueLabel, null), 16392new TreeDumperNode("hasErrors", node.HasErrors, null) 16395public override TreeDumperNode VisitForEachStatement(BoundForEachStatement node, object? arg) => new TreeDumperNode("forEachStatement", null, new TreeDumperNode[] 16397new TreeDumperNode("enumeratorInfoOpt", node.EnumeratorInfoOpt, null), 16398new TreeDumperNode("elementPlaceholder", null, new TreeDumperNode[] { Visit(node.ElementPlaceholder, null) }), 16399new TreeDumperNode("elementConversion", null, new TreeDumperNode[] { Visit(node.ElementConversion, null) }), 16400new TreeDumperNode("iterationVariableType", null, new TreeDumperNode[] { Visit(node.IterationVariableType, null) }), 16401new TreeDumperNode("iterationVariables", node.IterationVariables, null), 16402new TreeDumperNode("iterationErrorExpressionOpt", null, new TreeDumperNode[] { Visit(node.IterationErrorExpressionOpt, null) }), 16403new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16404new TreeDumperNode("deconstructionOpt", null, new TreeDumperNode[] { Visit(node.DeconstructionOpt, null) }), 16405new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 16406new TreeDumperNode("breakLabel", node.BreakLabel, null), 16407new TreeDumperNode("continueLabel", node.ContinueLabel, null), 16408new TreeDumperNode("hasErrors", node.HasErrors, null) 16411public override TreeDumperNode VisitForEachDeconstructStep(BoundForEachDeconstructStep node, object? arg) => new TreeDumperNode("forEachDeconstructStep", null, new TreeDumperNode[] 16413new TreeDumperNode("deconstructionAssignment", null, new TreeDumperNode[] { Visit(node.DeconstructionAssignment, null) }), 16414new TreeDumperNode("targetPlaceholder", null, new TreeDumperNode[] { Visit(node.TargetPlaceholder, null) }), 16415new TreeDumperNode("hasErrors", node.HasErrors, null) 16418public override TreeDumperNode VisitUsingStatement(BoundUsingStatement node, object? arg) => new TreeDumperNode("usingStatement", null, new TreeDumperNode[] 16420new TreeDumperNode("locals", node.Locals, null), 16421new TreeDumperNode("declarationsOpt", null, new TreeDumperNode[] { Visit(node.DeclarationsOpt, null) }), 16422new TreeDumperNode("expressionOpt", null, new TreeDumperNode[] { Visit(node.ExpressionOpt, null) }), 16423new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 16424new TreeDumperNode("awaitOpt", null, new TreeDumperNode[] { Visit(node.AwaitOpt, null) }), 16425new TreeDumperNode("patternDisposeInfoOpt", node.PatternDisposeInfoOpt, null), 16426new TreeDumperNode("hasErrors", node.HasErrors, null) 16429public override TreeDumperNode VisitFixedStatement(BoundFixedStatement node, object? arg) => new TreeDumperNode("fixedStatement", null, new TreeDumperNode[] 16431new TreeDumperNode("locals", node.Locals, null), 16432new TreeDumperNode("declarations", null, new TreeDumperNode[] { Visit(node.Declarations, null) }), 16433new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 16434new TreeDumperNode("hasErrors", node.HasErrors, null) 16437public override TreeDumperNode VisitLockStatement(BoundLockStatement node, object? arg) => new TreeDumperNode("lockStatement", null, new TreeDumperNode[] 16439new TreeDumperNode("argument", null, new TreeDumperNode[] { Visit(node.Argument, null) }), 16440new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 16441new TreeDumperNode("hasErrors", node.HasErrors, null) 16444public override TreeDumperNode VisitTryStatement(BoundTryStatement node, object? arg) => new TreeDumperNode("tryStatement", null, new TreeDumperNode[] 16446new TreeDumperNode("tryBlock", null, new TreeDumperNode[] { Visit(node.TryBlock, null) }), 16447new TreeDumperNode("catchBlocks", null, from x in node.CatchBlocks select Visit(x, null)), 16448new TreeDumperNode("finallyBlockOpt", null, new TreeDumperNode[] { Visit(node.FinallyBlockOpt, null) }), 16449new TreeDumperNode("finallyLabelOpt", node.FinallyLabelOpt, null), 16450new TreeDumperNode("preferFaultHandler", node.PreferFaultHandler, null), 16451new TreeDumperNode("hasErrors", node.HasErrors, null) 16454public override TreeDumperNode VisitCatchBlock(BoundCatchBlock node, object? arg) => new TreeDumperNode("catchBlock", null, new TreeDumperNode[] 16456new TreeDumperNode("locals", node.Locals, null), 16457new TreeDumperNode("exceptionSourceOpt", null, new TreeDumperNode[] { Visit(node.ExceptionSourceOpt, null) }), 16458new TreeDumperNode("exceptionTypeOpt", node.ExceptionTypeOpt, null), 16459new TreeDumperNode("exceptionFilterPrologueOpt", null, new TreeDumperNode[] { Visit(node.ExceptionFilterPrologueOpt, null) }), 16460new TreeDumperNode("exceptionFilterOpt", null, new TreeDumperNode[] { Visit(node.ExceptionFilterOpt, null) }), 16461new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 16462new TreeDumperNode("isSynthesizedAsyncCatchAll", node.IsSynthesizedAsyncCatchAll, null), 16463new TreeDumperNode("hasErrors", node.HasErrors, null) 16466public override TreeDumperNode VisitLiteral(BoundLiteral node, object? arg) => new TreeDumperNode("literal", null, new TreeDumperNode[] 16468new TreeDumperNode("constantValueOpt", node.ConstantValueOpt, null), 16469new TreeDumperNode("type", node.Type, null), 16470new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16471new TreeDumperNode("hasErrors", node.HasErrors, null) 16474public override TreeDumperNode VisitUtf8String(BoundUtf8String node, object? arg) => new TreeDumperNode("utf8String", null, new TreeDumperNode[] 16476new TreeDumperNode("value", node.Value, null), 16477new TreeDumperNode("type", node.Type, null), 16478new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16479new TreeDumperNode("hasErrors", node.HasErrors, null) 16482public override TreeDumperNode VisitThisReference(BoundThisReference node, object? arg) => new TreeDumperNode("thisReference", null, new TreeDumperNode[] 16484new TreeDumperNode("type", node.Type, null), 16485new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16486new TreeDumperNode("hasErrors", node.HasErrors, null) 16489public override TreeDumperNode VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node, object? arg) => new TreeDumperNode("previousSubmissionReference", null, new TreeDumperNode[] 16491new TreeDumperNode("type", node.Type, null), 16492new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16493new TreeDumperNode("hasErrors", node.HasErrors, null) 16496public override TreeDumperNode VisitHostObjectMemberReference(BoundHostObjectMemberReference node, object? arg) => new TreeDumperNode("hostObjectMemberReference", null, new TreeDumperNode[] 16498new TreeDumperNode("type", node.Type, null), 16499new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16500new TreeDumperNode("hasErrors", node.HasErrors, null) 16503public override TreeDumperNode VisitBaseReference(BoundBaseReference node, object? arg) => new TreeDumperNode("baseReference", null, new TreeDumperNode[] 16505new TreeDumperNode("type", node.Type, null), 16506new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16507new TreeDumperNode("hasErrors", node.HasErrors, null) 16510public override TreeDumperNode VisitLocal(BoundLocal node, object? arg) => new TreeDumperNode("local", null, new TreeDumperNode[] 16512new TreeDumperNode("localSymbol", node.LocalSymbol, null), 16513new TreeDumperNode("declarationKind", node.DeclarationKind, null), 16514new TreeDumperNode("constantValueOpt", node.ConstantValueOpt, null), 16515new TreeDumperNode("isNullableUnknown", node.IsNullableUnknown, null), 16516new TreeDumperNode("type", node.Type, null), 16517new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16518new TreeDumperNode("hasErrors", node.HasErrors, null) 16521public override TreeDumperNode VisitPseudoVariable(BoundPseudoVariable node, object? arg) => new TreeDumperNode("pseudoVariable", null, new TreeDumperNode[] 16523new TreeDumperNode("localSymbol", node.LocalSymbol, null), 16524new TreeDumperNode("emitExpressions", node.EmitExpressions, null), 16525new TreeDumperNode("type", node.Type, null), 16526new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16527new TreeDumperNode("hasErrors", node.HasErrors, null) 16530public override TreeDumperNode VisitRangeVariable(BoundRangeVariable node, object? arg) => new TreeDumperNode("rangeVariable", null, new TreeDumperNode[] 16532new TreeDumperNode("rangeVariableSymbol", node.RangeVariableSymbol, null), 16533new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 16534new TreeDumperNode("type", node.Type, null), 16535new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16536new TreeDumperNode("hasErrors", node.HasErrors, null) 16539public override TreeDumperNode VisitParameter(BoundParameter node, object? arg) => new TreeDumperNode("parameter", null, new TreeDumperNode[] 16541new TreeDumperNode("parameterSymbol", node.ParameterSymbol, null), 16542new TreeDumperNode("type", node.Type, null), 16543new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16544new TreeDumperNode("hasErrors", node.HasErrors, null) 16547public override TreeDumperNode VisitLabelStatement(BoundLabelStatement node, object? arg) => new TreeDumperNode("labelStatement", null, new TreeDumperNode[] 16549new TreeDumperNode("label", node.Label, null), 16550new TreeDumperNode("hasErrors", node.HasErrors, null) 16553public override TreeDumperNode VisitGotoStatement(BoundGotoStatement node, object? arg) => new TreeDumperNode("gotoStatement", null, new TreeDumperNode[] 16555new TreeDumperNode("label", node.Label, null), 16556new TreeDumperNode("caseExpressionOpt", null, new TreeDumperNode[] { Visit(node.CaseExpressionOpt, null) }), 16557new TreeDumperNode("labelExpressionOpt", null, new TreeDumperNode[] { Visit(node.LabelExpressionOpt, null) }), 16558new TreeDumperNode("hasErrors", node.HasErrors, null) 16561public override TreeDumperNode VisitLabeledStatement(BoundLabeledStatement node, object? arg) => new TreeDumperNode("labeledStatement", null, new TreeDumperNode[] 16563new TreeDumperNode("label", node.Label, null), 16564new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 16565new TreeDumperNode("hasErrors", node.HasErrors, null) 16568public override TreeDumperNode VisitLabel(BoundLabel node, object? arg) => new TreeDumperNode("label", null, new TreeDumperNode[] 16570new TreeDumperNode("label", node.Label, null), 16571new TreeDumperNode("type", node.Type, null), 16572new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16573new TreeDumperNode("hasErrors", node.HasErrors, null) 16576public override TreeDumperNode VisitStatementList(BoundStatementList node, object? arg) => new TreeDumperNode("statementList", null, new TreeDumperNode[] 16578new TreeDumperNode("statements", null, from x in node.Statements select Visit(x, null)), 16579new TreeDumperNode("hasErrors", node.HasErrors, null) 16582public override TreeDumperNode VisitConditionalGoto(BoundConditionalGoto node, object? arg) => new TreeDumperNode("conditionalGoto", null, new TreeDumperNode[] 16584new TreeDumperNode("condition", null, new TreeDumperNode[] { Visit(node.Condition, null) }), 16585new TreeDumperNode("jumpIfTrue", node.JumpIfTrue, null), 16586new TreeDumperNode("label", node.Label, null), 16587new TreeDumperNode("hasErrors", node.HasErrors, null) 16590public override TreeDumperNode VisitSwitchExpressionArm(BoundSwitchExpressionArm node, object? arg) => new TreeDumperNode("switchExpressionArm", null, new TreeDumperNode[] 16592new TreeDumperNode("locals", node.Locals, null), 16593new TreeDumperNode("pattern", null, new TreeDumperNode[] { Visit(node.Pattern, null) }), 16594new TreeDumperNode("hasUnionMatching", node.HasUnionMatching, null), 16595new TreeDumperNode("whenClause", null, new TreeDumperNode[] { Visit(node.WhenClause, null) }), 16596new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 16597new TreeDumperNode("label", node.Label, null), 16598new TreeDumperNode("hasErrors", node.HasErrors, null) 16601public override TreeDumperNode VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node, object? arg) => new TreeDumperNode("unconvertedSwitchExpression", null, new TreeDumperNode[] 16603new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16604new TreeDumperNode("switchArms", null, from x in node.SwitchArms select Visit(x, null)), 16605new TreeDumperNode("reachabilityDecisionDag", null, new TreeDumperNode[] { Visit(node.ReachabilityDecisionDag, null) }), 16606new TreeDumperNode("defaultLabel", node.DefaultLabel, null), 16607new TreeDumperNode("reportedNotExhaustive", node.ReportedNotExhaustive, null), 16608new TreeDumperNode("type", node.Type, null), 16609new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16610new TreeDumperNode("hasErrors", node.HasErrors, null) 16613public override TreeDumperNode VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node, object? arg) => new TreeDumperNode("convertedSwitchExpression", null, new TreeDumperNode[] 16615new TreeDumperNode("naturalTypeOpt", node.NaturalTypeOpt, null), 16616new TreeDumperNode("wasTargetTyped", node.WasTargetTyped, null), 16617new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16618new TreeDumperNode("switchArms", null, from x in node.SwitchArms select Visit(x, null)), 16619new TreeDumperNode("reachabilityDecisionDag", null, new TreeDumperNode[] { Visit(node.ReachabilityDecisionDag, null) }), 16620new TreeDumperNode("defaultLabel", node.DefaultLabel, null), 16621new TreeDumperNode("reportedNotExhaustive", node.ReportedNotExhaustive, null), 16622new TreeDumperNode("type", node.Type, null), 16623new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16624new TreeDumperNode("hasErrors", node.HasErrors, null) 16627public override TreeDumperNode VisitDecisionDag(BoundDecisionDag node, object? arg) => new TreeDumperNode("decisionDag", null, new TreeDumperNode[] 16629new TreeDumperNode("rootNode", null, new TreeDumperNode[] { Visit(node.RootNode, null) }), 16630new TreeDumperNode("suitableForLowering", node.SuitableForLowering, null), 16631new TreeDumperNode("hasErrors", node.HasErrors, null) 16634public override TreeDumperNode VisitEvaluationDecisionDagNode(BoundEvaluationDecisionDagNode node, object? arg) => new TreeDumperNode("evaluationDecisionDagNode", null, new TreeDumperNode[] 16636new TreeDumperNode("evaluation", null, new TreeDumperNode[] { Visit(node.Evaluation, null) }), 16637new TreeDumperNode("next", null, new TreeDumperNode[] { Visit(node.Next, null) }), 16638new TreeDumperNode("hasErrors", node.HasErrors, null) 16641public override TreeDumperNode VisitTestDecisionDagNode(BoundTestDecisionDagNode node, object? arg) => new TreeDumperNode("testDecisionDagNode", null, new TreeDumperNode[] 16643new TreeDumperNode("test", null, new TreeDumperNode[] { Visit(node.Test, null) }), 16644new TreeDumperNode("whenTrue", null, new TreeDumperNode[] { Visit(node.WhenTrue, null) }), 16645new TreeDumperNode("whenFalse", null, new TreeDumperNode[] { Visit(node.WhenFalse, null) }), 16646new TreeDumperNode("hasErrors", node.HasErrors, null) 16649public override TreeDumperNode VisitWhenDecisionDagNode(BoundWhenDecisionDagNode node, object? arg) => new TreeDumperNode("whenDecisionDagNode", null, new TreeDumperNode[] 16651new TreeDumperNode("bindings", node.Bindings, null), 16652new TreeDumperNode("whenExpression", null, new TreeDumperNode[] { Visit(node.WhenExpression, null) }), 16653new TreeDumperNode("whenTrue", null, new TreeDumperNode[] { Visit(node.WhenTrue, null) }), 16654new TreeDumperNode("whenFalse", null, new TreeDumperNode[] { Visit(node.WhenFalse, null) }), 16655new TreeDumperNode("hasErrors", node.HasErrors, null) 16658public override TreeDumperNode VisitLeafDecisionDagNode(BoundLeafDecisionDagNode node, object? arg) => new TreeDumperNode("leafDecisionDagNode", null, new TreeDumperNode[] 16660new TreeDumperNode("label", node.Label, null), 16661new TreeDumperNode("hasErrors", node.HasErrors, null) 16664public override TreeDumperNode VisitDagTemp(BoundDagTemp node, object? arg) => new TreeDumperNode("dagTemp", null, new TreeDumperNode[] 16666new TreeDumperNode("type", node.Type, null), 16667new TreeDumperNode("source", null, new TreeDumperNode[] { Visit(node.Source, null) }), 16668new TreeDumperNode("index", node.Index, null), 16669new TreeDumperNode("hasErrors", node.HasErrors, null) 16672public override TreeDumperNode VisitDagTypeTest(BoundDagTypeTest node, object? arg) => new TreeDumperNode("dagTypeTest", null, new TreeDumperNode[] 16674new TreeDumperNode("type", node.Type, null), 16675new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16676new TreeDumperNode("hasErrors", node.HasErrors, null) 16679public override TreeDumperNode VisitDagNonNullTest(BoundDagNonNullTest node, object? arg) => new TreeDumperNode("dagNonNullTest", null, new TreeDumperNode[] 16681new TreeDumperNode("isExplicitTest", node.IsExplicitTest, null), 16682new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16683new TreeDumperNode("hasErrors", node.HasErrors, null) 16686public override TreeDumperNode VisitDagExplicitNullTest(BoundDagExplicitNullTest node, object? arg) => new TreeDumperNode("dagExplicitNullTest", null, new TreeDumperNode[] 16688new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16689new TreeDumperNode("hasErrors", node.HasErrors, null) 16692public override TreeDumperNode VisitDagValueTest(BoundDagValueTest node, object? arg) => new TreeDumperNode("dagValueTest", null, new TreeDumperNode[] 16694new TreeDumperNode("value", node.Value, null), 16695new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16696new TreeDumperNode("hasErrors", node.HasErrors, null) 16699public override TreeDumperNode VisitDagRelationalTest(BoundDagRelationalTest node, object? arg) => new TreeDumperNode("dagRelationalTest", null, new TreeDumperNode[] 16701new TreeDumperNode("operatorKind", node.OperatorKind, null), 16702new TreeDumperNode("value", node.Value, null), 16703new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16704new TreeDumperNode("hasErrors", node.HasErrors, null) 16707public override TreeDumperNode VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node, object? arg) => new TreeDumperNode("dagDeconstructEvaluation", null, new TreeDumperNode[] 16709new TreeDumperNode("deconstructMethod", node.DeconstructMethod, null), 16710new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16711new TreeDumperNode("hasErrors", node.HasErrors, null) 16714public override TreeDumperNode VisitDagTypeEvaluation(BoundDagTypeEvaluation node, object? arg) => new TreeDumperNode("dagTypeEvaluation", null, new TreeDumperNode[] 16716new TreeDumperNode("type", node.Type, null), 16717new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16718new TreeDumperNode("hasErrors", node.HasErrors, null) 16721public override TreeDumperNode VisitDagFieldEvaluation(BoundDagFieldEvaluation node, object? arg) => new TreeDumperNode("dagFieldEvaluation", null, new TreeDumperNode[] 16723new TreeDumperNode("field", node.Field, null), 16724new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16725new TreeDumperNode("hasErrors", node.HasErrors, null) 16728public override TreeDumperNode VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node, object? arg) => new TreeDumperNode("dagPropertyEvaluation", null, new TreeDumperNode[] 16730new TreeDumperNode("property", node.Property, null), 16731new TreeDumperNode("isLengthOrCount", node.IsLengthOrCount, null), 16732new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16733new TreeDumperNode("hasErrors", node.HasErrors, null) 16736public override TreeDumperNode VisitDagIndexEvaluation(BoundDagIndexEvaluation node, object? arg) => new TreeDumperNode("dagIndexEvaluation", null, new TreeDumperNode[] 16738new TreeDumperNode("property", node.Property, null), 16739new TreeDumperNode("index", node.Index, null), 16740new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16741new TreeDumperNode("hasErrors", node.HasErrors, null) 16744public override TreeDumperNode VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node, object? arg) => new TreeDumperNode("dagIndexerEvaluation", null, new TreeDumperNode[] 16746new TreeDumperNode("indexerType", node.IndexerType, null), 16747new TreeDumperNode("lengthTemp", null, new TreeDumperNode[] { Visit(node.LengthTemp, null) }), 16748new TreeDumperNode("index", node.Index, null), 16749new TreeDumperNode("indexerAccess", null, new TreeDumperNode[] { Visit(node.IndexerAccess, null) }), 16750new TreeDumperNode("receiverPlaceholder", null, new TreeDumperNode[] { Visit(node.ReceiverPlaceholder, null) }), 16751new TreeDumperNode("argumentPlaceholder", null, new TreeDumperNode[] { Visit(node.ArgumentPlaceholder, null) }), 16752new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16753new TreeDumperNode("hasErrors", node.HasErrors, null) 16756public override TreeDumperNode VisitDagSliceEvaluation(BoundDagSliceEvaluation node, object? arg) => new TreeDumperNode("dagSliceEvaluation", null, new TreeDumperNode[] 16758new TreeDumperNode("sliceType", node.SliceType, null), 16759new TreeDumperNode("lengthTemp", null, new TreeDumperNode[] { Visit(node.LengthTemp, null) }), 16760new TreeDumperNode("startIndex", node.StartIndex, null), 16761new TreeDumperNode("endIndex", node.EndIndex, null), 16762new TreeDumperNode("indexerAccess", null, new TreeDumperNode[] { Visit(node.IndexerAccess, null) }), 16763new TreeDumperNode("receiverPlaceholder", null, new TreeDumperNode[] { Visit(node.ReceiverPlaceholder, null) }), 16764new TreeDumperNode("argumentPlaceholder", null, new TreeDumperNode[] { Visit(node.ArgumentPlaceholder, null) }), 16765new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16766new TreeDumperNode("hasErrors", node.HasErrors, null) 16769public override TreeDumperNode VisitDagAssignmentEvaluation(BoundDagAssignmentEvaluation node, object? arg) => new TreeDumperNode("dagAssignmentEvaluation", null, new TreeDumperNode[] 16771new TreeDumperNode("target", null, new TreeDumperNode[] { Visit(node.Target, null) }), 16772new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16773new TreeDumperNode("hasErrors", node.HasErrors, null) 16776public override TreeDumperNode VisitDagPassThroughEvaluation(BoundDagPassThroughEvaluation node, object? arg) => new TreeDumperNode("dagPassThroughEvaluation", null, new TreeDumperNode[] 16778new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16779new TreeDumperNode("hasErrors", node.HasErrors, null) 16782public override TreeDumperNode VisitSwitchSection(BoundSwitchSection node, object? arg) => new TreeDumperNode("switchSection", null, new TreeDumperNode[] 16784new TreeDumperNode("locals", node.Locals, null), 16785new TreeDumperNode("switchLabels", null, from x in node.SwitchLabels select Visit(x, null)), 16786new TreeDumperNode("statements", null, from x in node.Statements select Visit(x, null)), 16787new TreeDumperNode("hasErrors", node.HasErrors, null) 16790public override TreeDumperNode VisitSwitchLabel(BoundSwitchLabel node, object? arg) => new TreeDumperNode("switchLabel", null, new TreeDumperNode[] 16792new TreeDumperNode("label", node.Label, null), 16793new TreeDumperNode("pattern", null, new TreeDumperNode[] { Visit(node.Pattern, null) }), 16794new TreeDumperNode("hasUnionMatching", node.HasUnionMatching, null), 16795new TreeDumperNode("whenClause", null, new TreeDumperNode[] { Visit(node.WhenClause, null) }), 16796new TreeDumperNode("hasErrors", node.HasErrors, null) 16799public override TreeDumperNode VisitSequencePointExpression(BoundSequencePointExpression node, object? arg) => new TreeDumperNode("sequencePointExpression", null, new TreeDumperNode[] 16801new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16802new TreeDumperNode("type", node.Type, null), 16803new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16804new TreeDumperNode("hasErrors", node.HasErrors, null) 16807public override TreeDumperNode VisitSequence(BoundSequence node, object? arg) => new TreeDumperNode("sequence", null, new TreeDumperNode[] 16809new TreeDumperNode("locals", node.Locals, null), 16810new TreeDumperNode("sideEffects", null, from x in node.SideEffects select Visit(x, null)), 16811new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 16812new TreeDumperNode("type", node.Type, null), 16813new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16814new TreeDumperNode("hasErrors", node.HasErrors, null) 16817public override TreeDumperNode VisitSpillSequence(BoundSpillSequence node, object? arg) => new TreeDumperNode("spillSequence", null, new TreeDumperNode[] 16819new TreeDumperNode("locals", node.Locals, null), 16820new TreeDumperNode("sideEffects", null, from x in node.SideEffects select Visit(x, null)), 16821new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 16822new TreeDumperNode("type", node.Type, null), 16823new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16824new TreeDumperNode("hasErrors", node.HasErrors, null) 16827public override TreeDumperNode VisitDynamicMemberAccess(BoundDynamicMemberAccess node, object? arg) => new TreeDumperNode("dynamicMemberAccess", null, new TreeDumperNode[] 16829new TreeDumperNode("receiver", null, new TreeDumperNode[] { Visit(node.Receiver, null) }), 16830new TreeDumperNode("typeArgumentsOpt", node.TypeArgumentsOpt, null), 16831new TreeDumperNode("name", node.Name, null), 16832new TreeDumperNode("invoked", node.Invoked, null), 16833new TreeDumperNode("indexed", node.Indexed, null), 16834new TreeDumperNode("type", node.Type, null), 16835new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16836new TreeDumperNode("hasErrors", node.HasErrors, null) 16839public override TreeDumperNode VisitDynamicInvocation(BoundDynamicInvocation node, object? arg) => new TreeDumperNode("dynamicInvocation", null, new TreeDumperNode[] 16841new TreeDumperNode("argumentNamesOpt", node.ArgumentNamesOpt, null), 16842new TreeDumperNode("argumentRefKindsOpt", node.ArgumentRefKindsOpt, null), 16843new TreeDumperNode("applicableMethods", node.ApplicableMethods, null), 16844new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16845new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 16846new TreeDumperNode("type", node.Type, null), 16847new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16848new TreeDumperNode("hasErrors", node.HasErrors, null) 16851public override TreeDumperNode VisitConditionalAccess(BoundConditionalAccess node, object? arg) => new TreeDumperNode("conditionalAccess", null, new TreeDumperNode[] 16853new TreeDumperNode("receiver", null, new TreeDumperNode[] { Visit(node.Receiver, null) }), 16854new TreeDumperNode("accessExpression", null, new TreeDumperNode[] { Visit(node.AccessExpression, null) }), 16855new TreeDumperNode("type", node.Type, null), 16856new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16857new TreeDumperNode("hasErrors", node.HasErrors, null) 16860public override TreeDumperNode VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node, object? arg) => new TreeDumperNode("loweredConditionalAccess", null, new TreeDumperNode[] 16862new TreeDumperNode("receiver", null, new TreeDumperNode[] { Visit(node.Receiver, null) }), 16863new TreeDumperNode("hasValueMethodOpt", node.HasValueMethodOpt, null), 16864new TreeDumperNode("whenNotNull", null, new TreeDumperNode[] { Visit(node.WhenNotNull, null) }), 16865new TreeDumperNode("whenNullOpt", null, new TreeDumperNode[] { Visit(node.WhenNullOpt, null) }), 16866new TreeDumperNode("id", node.Id, null), 16867new TreeDumperNode("forceCopyOfNullableValueType", node.ForceCopyOfNullableValueType, null), 16868new TreeDumperNode("type", node.Type, null), 16869new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16870new TreeDumperNode("hasErrors", node.HasErrors, null) 16873public override TreeDumperNode VisitConditionalReceiver(BoundConditionalReceiver node, object? arg) => new TreeDumperNode("conditionalReceiver", null, new TreeDumperNode[] 16875new TreeDumperNode("id", node.Id, null), 16876new TreeDumperNode("type", node.Type, null), 16877new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16878new TreeDumperNode("hasErrors", node.HasErrors, null) 16881public override TreeDumperNode VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node, object? arg) => new TreeDumperNode("complexConditionalReceiver", null, new TreeDumperNode[] 16883new TreeDumperNode("valueTypeReceiver", null, new TreeDumperNode[] { Visit(node.ValueTypeReceiver, null) }), 16884new TreeDumperNode("referenceTypeReceiver", null, new TreeDumperNode[] { Visit(node.ReferenceTypeReceiver, null) }), 16885new TreeDumperNode("type", node.Type, null), 16886new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16887new TreeDumperNode("hasErrors", node.HasErrors, null) 16890public override TreeDumperNode VisitMethodGroup(BoundMethodGroup node, object? arg) => new TreeDumperNode("methodGroup", null, new TreeDumperNode[] 16892new TreeDumperNode("typeArgumentsOpt", node.TypeArgumentsOpt, null), 16893new TreeDumperNode("name", node.Name, null), 16894new TreeDumperNode("methods", node.Methods, null), 16895new TreeDumperNode("lookupSymbolOpt", node.LookupSymbolOpt, null), 16896new TreeDumperNode("lookupError", node.LookupError, null), 16897new TreeDumperNode("flags", node.Flags, null), 16898new TreeDumperNode("functionType", node.FunctionType, null), 16899new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 16900new TreeDumperNode("resultKind", node.ResultKind, null), 16901new TreeDumperNode("type", node.Type, null), 16902new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16903new TreeDumperNode("hasErrors", node.HasErrors, null) 16906public override TreeDumperNode VisitPropertyGroup(BoundPropertyGroup node, object? arg) => new TreeDumperNode("propertyGroup", null, new TreeDumperNode[] 16908new TreeDumperNode("properties", node.Properties, null), 16909new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 16910new TreeDumperNode("resultKind", node.ResultKind, null), 16911new TreeDumperNode("type", node.Type, null), 16912new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16913new TreeDumperNode("hasErrors", node.HasErrors, null) 16916public override TreeDumperNode VisitCall(BoundCall node, object? arg) => new TreeDumperNode("call", null, new TreeDumperNode[] 16918new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 16919new TreeDumperNode("initialBindingReceiverIsSubjectToCloning", node.InitialBindingReceiverIsSubjectToCloning, null), 16920new TreeDumperNode("method", node.Method, null), 16921new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 16922new TreeDumperNode("argumentNamesOpt", node.ArgumentNamesOpt, null), 16923new TreeDumperNode("argumentRefKindsOpt", node.ArgumentRefKindsOpt, null), 16924new TreeDumperNode("isDelegateCall", node.IsDelegateCall, null), 16925new TreeDumperNode("expanded", node.Expanded, null), 16926new TreeDumperNode("invokedAsExtensionMethod", node.InvokedAsExtensionMethod, null), 16927new TreeDumperNode("argsToParamsOpt", node.ArgsToParamsOpt, null), 16928new TreeDumperNode("defaultArguments", node.DefaultArguments, null), 16929new TreeDumperNode("resultKind", node.ResultKind, null), 16930new TreeDumperNode("originalMethodsOpt", node.OriginalMethodsOpt, null), 16931new TreeDumperNode("type", node.Type, null), 16932new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16933new TreeDumperNode("hasErrors", node.HasErrors, null) 16936public override TreeDumperNode VisitEventAssignmentOperator(BoundEventAssignmentOperator node, object? arg) => new TreeDumperNode("eventAssignmentOperator", null, new TreeDumperNode[] 16938new TreeDumperNode("@event", node.Event, null), 16939new TreeDumperNode("isAddition", node.IsAddition, null), 16940new TreeDumperNode("isDynamic", node.IsDynamic, null), 16941new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 16942new TreeDumperNode("argument", null, new TreeDumperNode[] { Visit(node.Argument, null) }), 16943new TreeDumperNode("type", node.Type, null), 16944new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16945new TreeDumperNode("hasErrors", node.HasErrors, null) 16948public override TreeDumperNode VisitAttribute(BoundAttribute node, object? arg) => new TreeDumperNode("attribute", null, new TreeDumperNode[] 16950new TreeDumperNode("constructor", node.Constructor, null), 16951new TreeDumperNode("constructorArguments", null, from x in node.ConstructorArguments select Visit(x, null)), 16952new TreeDumperNode("constructorArgumentNamesOpt", node.ConstructorArgumentNamesOpt, null), 16953new TreeDumperNode("constructorArgumentsToParamsOpt", node.ConstructorArgumentsToParamsOpt, null), 16954new TreeDumperNode("constructorExpanded", node.ConstructorExpanded, null), 16955new TreeDumperNode("constructorDefaultArguments", node.ConstructorDefaultArguments, null), 16956new TreeDumperNode("namedArguments", null, from x in node.NamedArguments select Visit(x, null)), 16957new TreeDumperNode("resultKind", node.ResultKind, null), 16958new TreeDumperNode("type", node.Type, null), 16959new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16960new TreeDumperNode("hasErrors", node.HasErrors, null) 16963public override TreeDumperNode VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node, object? arg) => new TreeDumperNode("unconvertedObjectCreationExpression", null, new TreeDumperNode[] 16965new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 16966new TreeDumperNode("argumentNamesOpt", node.ArgumentNamesOpt, null), 16967new TreeDumperNode("argumentRefKindsOpt", node.ArgumentRefKindsOpt, null), 16969new TreeDumperNode("binder", node.Binder, null), 16970new TreeDumperNode("type", node.Type, null), 16971new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16972new TreeDumperNode("hasErrors", node.HasErrors, null) 16975public override TreeDumperNode VisitObjectCreationExpression(BoundObjectCreationExpression node, object? arg) => new TreeDumperNode("objectCreationExpression", null, new TreeDumperNode[] 16977new TreeDumperNode("constructor", node.Constructor, null), 16978new TreeDumperNode("constructorsGroup", node.ConstructorsGroup, null), 16979new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 16980new TreeDumperNode("argumentNamesOpt", node.ArgumentNamesOpt, null), 16981new TreeDumperNode("argumentRefKindsOpt", node.ArgumentRefKindsOpt, null), 16982new TreeDumperNode("expanded", node.Expanded, null), 16983new TreeDumperNode("argsToParamsOpt", node.ArgsToParamsOpt, null), 16984new TreeDumperNode("defaultArguments", node.DefaultArguments, null), 16985new TreeDumperNode("constantValueOpt", node.ConstantValueOpt, null), 16986new TreeDumperNode("initializerExpressionOpt", null, new TreeDumperNode[] { Visit(node.InitializerExpressionOpt, null) }), 16987new TreeDumperNode("wasTargetTyped", node.WasTargetTyped, null), 16988new TreeDumperNode("type", node.Type, null), 16989new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16990new TreeDumperNode("hasErrors", node.HasErrors, null) 16993public override TreeDumperNode VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node, object? arg) => new TreeDumperNode("unconvertedCollectionExpression", null, new TreeDumperNode[] 16995new TreeDumperNode("withElement", null, new TreeDumperNode[] { Visit(node.WithElement, null) }), 16996new TreeDumperNode("elements", null, from x in node.Elements select Visit(x, null)), 16997new TreeDumperNode("type", node.Type, null), 16998new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16999new TreeDumperNode("hasErrors", node.HasErrors, null) 17002public override TreeDumperNode VisitUnconvertedWithElement(BoundUnconvertedWithElement node, object? arg) => new TreeDumperNode("unconvertedWithElement", null, new TreeDumperNode[] 17004new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 17005new TreeDumperNode("argumentNamesOpt", node.ArgumentNamesOpt, null), 17006new TreeDumperNode("argumentRefKindsOpt", node.ArgumentRefKindsOpt, null), 17007new TreeDumperNode("hasErrors", node.HasErrors, null) 17010public override TreeDumperNode VisitCollectionExpression(BoundCollectionExpression node, object? arg) => new TreeDumperNode("collectionExpression", null, new TreeDumperNode[] 17012new TreeDumperNode("collectionTypeKind", node.CollectionTypeKind, null), 17013new TreeDumperNode("placeholder", null, new TreeDumperNode[] { Visit(node.Placeholder, null) }), 17014new TreeDumperNode("collectionCreation", null, new TreeDumperNode[] { Visit(node.CollectionCreation, null) }), 17015new TreeDumperNode("collectionBuilderMethod", node.CollectionBuilderMethod, null), 17016new TreeDumperNode("collectionBuilderElementsPlaceholder", null, new TreeDumperNode[] { Visit(node.CollectionBuilderElementsPlaceholder, null) }), 17017new TreeDumperNode("wasTargetTyped", node.WasTargetTyped, null), 17018new TreeDumperNode("hasWithElement", node.HasWithElement, null), 17019new TreeDumperNode("unconvertedCollectionExpression", null, new TreeDumperNode[] { Visit(node.UnconvertedCollectionExpression, null) }), 17020new TreeDumperNode("elements", null, from x in node.Elements select Visit(x, null)), 17021new TreeDumperNode("type", node.Type, null), 17022new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17023new TreeDumperNode("hasErrors", node.HasErrors, null) 17026public override TreeDumperNode VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node, object? arg) => new TreeDumperNode("collectionExpressionSpreadExpressionPlaceholder", null, new TreeDumperNode[] 17028new TreeDumperNode("type", node.Type, null), 17029new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17030new TreeDumperNode("hasErrors", node.HasErrors, null) 17033public override TreeDumperNode VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node, object? arg) => new TreeDumperNode("collectionExpressionSpreadElement", null, new TreeDumperNode[] 17035new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 17036new TreeDumperNode("expressionPlaceholder", null, new TreeDumperNode[] { Visit(node.ExpressionPlaceholder, null) }), 17037new TreeDumperNode("conversion", null, new TreeDumperNode[] { Visit(node.Conversion, null) }), 17038new TreeDumperNode("enumeratorInfoOpt", node.EnumeratorInfoOpt, null), 17039new TreeDumperNode("lengthOrCount", null, new TreeDumperNode[] { Visit(node.LengthOrCount, null) }), 17040new TreeDumperNode("elementPlaceholder", null, new TreeDumperNode[] { Visit(node.ElementPlaceholder, null) }), 17041new TreeDumperNode("iteratorBody", null, new TreeDumperNode[] { Visit(node.IteratorBody, null) }), 17042new TreeDumperNode("hasErrors", node.HasErrors, null) 17045public override TreeDumperNode VisitTupleLiteral(BoundTupleLiteral node, object? arg) => new TreeDumperNode("tupleLiteral", null, new TreeDumperNode[] 17047new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 17048new TreeDumperNode("argumentNamesOpt", node.ArgumentNamesOpt, null), 17049new TreeDumperNode("inferredNamesOpt", node.InferredNamesOpt, null), 17050new TreeDumperNode("type", node.Type, null), 17051new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17052new TreeDumperNode("hasErrors", node.HasErrors, null) 17055public override TreeDumperNode VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node, object? arg) => new TreeDumperNode("convertedTupleLiteral", null, new TreeDumperNode[] 17057new TreeDumperNode("sourceTuple", null, new TreeDumperNode[] { Visit(node.SourceTuple, null) }), 17058new TreeDumperNode("wasTargetTyped", node.WasTargetTyped, null), 17059new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 17060new TreeDumperNode("argumentNamesOpt", node.ArgumentNamesOpt, null), 17061new TreeDumperNode("inferredNamesOpt", node.InferredNamesOpt, null), 17062new TreeDumperNode("type", node.Type, null), 17063new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17064new TreeDumperNode("hasErrors", node.HasErrors, null) 17067public override TreeDumperNode VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node, object? arg) => new TreeDumperNode("dynamicObjectCreationExpression", null, new TreeDumperNode[] 17069new TreeDumperNode("name", node.Name, null), 17070new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 17071new TreeDumperNode("argumentNamesOpt", node.ArgumentNamesOpt, null), 17072new TreeDumperNode("argumentRefKindsOpt", node.ArgumentRefKindsOpt, null), 17073new TreeDumperNode("initializerExpressionOpt", null, new TreeDumperNode[] { Visit(node.InitializerExpressionOpt, null) }), 17074new TreeDumperNode("applicableMethods", node.ApplicableMethods, null), 17075new TreeDumperNode("wasTargetTyped", node.WasTargetTyped, null), 17076new TreeDumperNode("type", node.Type, null), 17077new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17078new TreeDumperNode("hasErrors", node.HasErrors, null) 17081public override TreeDumperNode VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node, object? arg) => new TreeDumperNode("noPiaObjectCreationExpression", null, new TreeDumperNode[] 17083new TreeDumperNode("guidString", node.GuidString, null), 17084new TreeDumperNode("initializerExpressionOpt", null, new TreeDumperNode[] { Visit(node.InitializerExpressionOpt, null) }), 17085new TreeDumperNode("wasTargetTyped", node.WasTargetTyped, null), 17086new TreeDumperNode("type", node.Type, null), 17087new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17088new TreeDumperNode("hasErrors", node.HasErrors, null) 17091public override TreeDumperNode VisitObjectInitializerExpression(BoundObjectInitializerExpression node, object? arg) => new TreeDumperNode("objectInitializerExpression", null, new TreeDumperNode[] 17093new TreeDumperNode("placeholder", null, new TreeDumperNode[] { Visit(node.Placeholder, null) }), 17094new TreeDumperNode("initializers", null, from x in node.Initializers select Visit(x, null)), 17095new TreeDumperNode("type", node.Type, null), 17096new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17097new TreeDumperNode("hasErrors", node.HasErrors, null) 17100public override TreeDumperNode VisitObjectInitializerMember(BoundObjectInitializerMember node, object? arg) => new TreeDumperNode("objectInitializerMember", null, new TreeDumperNode[] 17102new TreeDumperNode("memberSymbol", node.MemberSymbol, null), 17103new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 17104new TreeDumperNode("argumentNamesOpt", node.ArgumentNamesOpt, null), 17105new TreeDumperNode("argumentRefKindsOpt", node.ArgumentRefKindsOpt, null), 17106new TreeDumperNode("expanded", node.Expanded, null), 17107new TreeDumperNode("argsToParamsOpt", node.ArgsToParamsOpt, null), 17108new TreeDumperNode("defaultArguments", node.DefaultArguments, null), 17109new TreeDumperNode("resultKind", node.ResultKind, null), 17110new TreeDumperNode("accessorKind", node.AccessorKind, null), 17111new TreeDumperNode("receiverType", node.ReceiverType, null), 17112new TreeDumperNode("type", node.Type, null), 17113new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17114new TreeDumperNode("hasErrors", node.HasErrors, null) 17117public override TreeDumperNode VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node, object? arg) => new TreeDumperNode("dynamicObjectInitializerMember", null, new TreeDumperNode[] 17119new TreeDumperNode("memberName", node.MemberName, null), 17120new TreeDumperNode("receiverType", node.ReceiverType, null), 17121new TreeDumperNode("type", node.Type, null), 17122new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17123new TreeDumperNode("hasErrors", node.HasErrors, null) 17126public override TreeDumperNode VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node, object? arg) => new TreeDumperNode("collectionInitializerExpression", null, new TreeDumperNode[] 17128new TreeDumperNode("placeholder", null, new TreeDumperNode[] { Visit(node.Placeholder, null) }), 17129new TreeDumperNode("initializers", null, from x in node.Initializers select Visit(x, null)), 17130new TreeDumperNode("type", node.Type, null), 17131new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17132new TreeDumperNode("hasErrors", node.HasErrors, null) 17135public override TreeDumperNode VisitCollectionElementInitializer(BoundCollectionElementInitializer node, object? arg) => new TreeDumperNode("collectionElementInitializer", null, new TreeDumperNode[] 17137new TreeDumperNode("addMethod", node.AddMethod, null), 17138new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 17139new TreeDumperNode("implicitReceiverOpt", null, new TreeDumperNode[] { Visit(node.ImplicitReceiverOpt, null) }), 17140new TreeDumperNode("expanded", node.Expanded, null), 17141new TreeDumperNode("argsToParamsOpt", node.ArgsToParamsOpt, null), 17142new TreeDumperNode("defaultArguments", node.DefaultArguments, null), 17143new TreeDumperNode("invokedAsExtensionMethod", node.InvokedAsExtensionMethod, null), 17144new TreeDumperNode("resultKind", node.ResultKind, null), 17145new TreeDumperNode("type", node.Type, null), 17146new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17147new TreeDumperNode("hasErrors", node.HasErrors, null) 17150public override TreeDumperNode VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node, object? arg) => new TreeDumperNode("dynamicCollectionElementInitializer", null, new TreeDumperNode[] 17152new TreeDumperNode("applicableMethods", node.ApplicableMethods, null), 17153new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 17154new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 17155new TreeDumperNode("type", node.Type, null), 17156new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17157new TreeDumperNode("hasErrors", node.HasErrors, null) 17160public override TreeDumperNode VisitImplicitReceiver(BoundImplicitReceiver node, object? arg) => new TreeDumperNode("implicitReceiver", null, new TreeDumperNode[] 17162new TreeDumperNode("type", node.Type, null), 17163new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17164new TreeDumperNode("hasErrors", node.HasErrors, null) 17167public override TreeDumperNode VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node, object? arg) => new TreeDumperNode("anonymousObjectCreationExpression", null, new TreeDumperNode[] 17169new TreeDumperNode("constructor", node.Constructor, null), 17170new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 17171new TreeDumperNode("declarations", null, from x in node.Declarations select Visit(x, null)), 17172new TreeDumperNode("type", node.Type, null), 17173new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17174new TreeDumperNode("hasErrors", node.HasErrors, null) 17177public override TreeDumperNode VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node, object? arg) => new TreeDumperNode("anonymousPropertyDeclaration", null, new TreeDumperNode[] 17179new TreeDumperNode("property", node.Property, null), 17180new TreeDumperNode("type", node.Type, null), 17181new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17182new TreeDumperNode("hasErrors", node.HasErrors, null) 17185public override TreeDumperNode VisitNewT(BoundNewT node, object? arg) => new TreeDumperNode("newT", null, new TreeDumperNode[] 17187new TreeDumperNode("initializerExpressionOpt", null, new TreeDumperNode[] { Visit(node.InitializerExpressionOpt, null) }), 17188new TreeDumperNode("wasTargetTyped", node.WasTargetTyped, null), 17189new TreeDumperNode("type", node.Type, null), 17190new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17191new TreeDumperNode("hasErrors", node.HasErrors, null) 17194public override TreeDumperNode VisitDelegateCreationExpression(BoundDelegateCreationExpression node, object? arg) => new TreeDumperNode("delegateCreationExpression", null, new TreeDumperNode[] 17196new TreeDumperNode("argument", null, new TreeDumperNode[] { Visit(node.Argument, null) }), 17197new TreeDumperNode("methodOpt", node.MethodOpt, null), 17198new TreeDumperNode("isExtensionMethod", node.IsExtensionMethod, null), 17199new TreeDumperNode("wasTargetTyped", node.WasTargetTyped, null), 17200new TreeDumperNode("type", node.Type, null), 17201new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17202new TreeDumperNode("hasErrors", node.HasErrors, null) 17205public override TreeDumperNode VisitArrayCreation(BoundArrayCreation node, object? arg) => new TreeDumperNode("arrayCreation", null, new TreeDumperNode[] 17207new TreeDumperNode("bounds", null, from x in node.Bounds select Visit(x, null)), 17208new TreeDumperNode("initializerOpt", null, new TreeDumperNode[] { Visit(node.InitializerOpt, null) }), 17209new TreeDumperNode("type", node.Type, null), 17210new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17211new TreeDumperNode("hasErrors", node.HasErrors, null) 17214public override TreeDumperNode VisitArrayInitialization(BoundArrayInitialization node, object? arg) => new TreeDumperNode("arrayInitialization", null, new TreeDumperNode[] 17216new TreeDumperNode("isInferred", node.IsInferred, null), 17217new TreeDumperNode("initializers", null, from x in node.Initializers select Visit(x, null)), 17218new TreeDumperNode("type", node.Type, null), 17219new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17220new TreeDumperNode("hasErrors", node.HasErrors, null) 17223public override TreeDumperNode VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node, object? arg) => new TreeDumperNode("stackAllocArrayCreation", null, new TreeDumperNode[] 17225new TreeDumperNode("elementType", node.ElementType, null), 17226new TreeDumperNode("count", null, new TreeDumperNode[] { Visit(node.Count, null) }), 17227new TreeDumperNode("initializerOpt", null, new TreeDumperNode[] { Visit(node.InitializerOpt, null) }), 17228new TreeDumperNode("type", node.Type, null), 17229new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17230new TreeDumperNode("hasErrors", node.HasErrors, null) 17233public override TreeDumperNode VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node, object? arg) => new TreeDumperNode("convertedStackAllocExpression", null, new TreeDumperNode[] 17235new TreeDumperNode("elementType", node.ElementType, null), 17236new TreeDumperNode("count", null, new TreeDumperNode[] { Visit(node.Count, null) }), 17237new TreeDumperNode("initializerOpt", null, new TreeDumperNode[] { Visit(node.InitializerOpt, null) }), 17238new TreeDumperNode("type", node.Type, null), 17239new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17240new TreeDumperNode("hasErrors", node.HasErrors, null) 17243public override TreeDumperNode VisitFieldAccess(BoundFieldAccess node, object? arg) => new TreeDumperNode("fieldAccess", null, new TreeDumperNode[] 17245new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 17246new TreeDumperNode("fieldSymbol", node.FieldSymbol, null), 17247new TreeDumperNode("constantValueOpt", node.ConstantValueOpt, null), 17248new TreeDumperNode("resultKind", node.ResultKind, null), 17249new TreeDumperNode("isByValue", node.IsByValue, null), 17250new TreeDumperNode("isDeclaration", node.IsDeclaration, null), 17251new TreeDumperNode("type", node.Type, null), 17252new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17253new TreeDumperNode("hasErrors", node.HasErrors, null) 17256public override TreeDumperNode VisitHoistedFieldAccess(BoundHoistedFieldAccess node, object? arg) => new TreeDumperNode("hoistedFieldAccess", null, new TreeDumperNode[] 17258new TreeDumperNode("fieldSymbol", node.FieldSymbol, null), 17259new TreeDumperNode("type", node.Type, null), 17260new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17261new TreeDumperNode("hasErrors", node.HasErrors, null) 17264public override TreeDumperNode VisitPropertyAccess(BoundPropertyAccess node, object? arg) => new TreeDumperNode("propertyAccess", null, new TreeDumperNode[] 17266new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 17267new TreeDumperNode("initialBindingReceiverIsSubjectToCloning", node.InitialBindingReceiverIsSubjectToCloning, null), 17268new TreeDumperNode("propertySymbol", node.PropertySymbol, null), 17269new TreeDumperNode("autoPropertyAccessorKind", node.AutoPropertyAccessorKind, null), 17270new TreeDumperNode("resultKind", node.ResultKind, null), 17271new TreeDumperNode("type", node.Type, null), 17272new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17273new TreeDumperNode("hasErrors", node.HasErrors, null) 17276public override TreeDumperNode VisitEventAccess(BoundEventAccess node, object? arg) => new TreeDumperNode("eventAccess", null, new TreeDumperNode[] 17278new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 17279new TreeDumperNode("eventSymbol", node.EventSymbol, null), 17280new TreeDumperNode("isUsableAsField", node.IsUsableAsField, null), 17281new TreeDumperNode("resultKind", node.ResultKind, null), 17282new TreeDumperNode("type", node.Type, null), 17283new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17284new TreeDumperNode("hasErrors", node.HasErrors, null) 17287public override TreeDumperNode VisitIndexerAccess(BoundIndexerAccess node, object? arg) => new TreeDumperNode("indexerAccess", null, new TreeDumperNode[] 17289new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 17290new TreeDumperNode("initialBindingReceiverIsSubjectToCloning", node.InitialBindingReceiverIsSubjectToCloning, null), 17291new TreeDumperNode("indexer", node.Indexer, null), 17292new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 17293new TreeDumperNode("argumentNamesOpt", node.ArgumentNamesOpt, null), 17294new TreeDumperNode("argumentRefKindsOpt", node.ArgumentRefKindsOpt, null), 17295new TreeDumperNode("expanded", node.Expanded, null), 17296new TreeDumperNode("accessorKind", node.AccessorKind, null), 17297new TreeDumperNode("argsToParamsOpt", node.ArgsToParamsOpt, null), 17298new TreeDumperNode("defaultArguments", node.DefaultArguments, null), 17299new TreeDumperNode("originalIndexersOpt", node.OriginalIndexersOpt, null), 17300new TreeDumperNode("type", node.Type, null), 17301new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17302new TreeDumperNode("hasErrors", node.HasErrors, null) 17305public override TreeDumperNode VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node, object? arg) => new TreeDumperNode("implicitIndexerAccess", null, new TreeDumperNode[] 17307new TreeDumperNode("receiver", null, new TreeDumperNode[] { Visit(node.Receiver, null) }), 17308new TreeDumperNode("argument", null, new TreeDumperNode[] { Visit(node.Argument, null) }), 17309new TreeDumperNode("lengthOrCountAccess", null, new TreeDumperNode[] { Visit(node.LengthOrCountAccess, null) }), 17310new TreeDumperNode("receiverPlaceholder", null, new TreeDumperNode[] { Visit(node.ReceiverPlaceholder, null) }), 17311new TreeDumperNode("indexerOrSliceAccess", null, new TreeDumperNode[] { Visit(node.IndexerOrSliceAccess, null) }), 17312new TreeDumperNode("argumentPlaceholders", null, from x in node.ArgumentPlaceholders select Visit(x, null)), 17313new TreeDumperNode("type", node.Type, null), 17314new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17315new TreeDumperNode("hasErrors", node.HasErrors, null) 17318public override TreeDumperNode VisitInlineArrayAccess(BoundInlineArrayAccess node, object? arg) => new TreeDumperNode("inlineArrayAccess", null, new TreeDumperNode[] 17320new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 17321new TreeDumperNode("argument", null, new TreeDumperNode[] { Visit(node.Argument, null) }), 17322new TreeDumperNode("isValue", node.IsValue, null), 17323new TreeDumperNode("getItemOrSliceHelper", node.GetItemOrSliceHelper, null), 17324new TreeDumperNode("type", node.Type, null), 17325new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17326new TreeDumperNode("hasErrors", node.HasErrors, null) 17329public override TreeDumperNode VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node, object? arg) => new TreeDumperNode("dynamicIndexerAccess", null, new TreeDumperNode[] 17331new TreeDumperNode("receiver", null, new TreeDumperNode[] { Visit(node.Receiver, null) }), 17332new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 17333new TreeDumperNode("argumentNamesOpt", node.ArgumentNamesOpt, null), 17334new TreeDumperNode("argumentRefKindsOpt", node.ArgumentRefKindsOpt, null), 17335new TreeDumperNode("applicableIndexers", node.ApplicableIndexers, null), 17336new TreeDumperNode("type", node.Type, null), 17337new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17338new TreeDumperNode("hasErrors", node.HasErrors, null) 17341public override TreeDumperNode VisitLambda(BoundLambda node, object? arg) => new TreeDumperNode("lambda", null, new TreeDumperNode[] 17343new TreeDumperNode("unboundLambda", null, new TreeDumperNode[] { Visit(node.UnboundLambda, null) }), 17344new TreeDumperNode("symbol", node.Symbol, null), 17345new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 17346new TreeDumperNode("diagnostics", node.Diagnostics, null), 17347new TreeDumperNode("binder", node.Binder, null), 17348new TreeDumperNode("type", node.Type, null), 17349new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17350new TreeDumperNode("hasErrors", node.HasErrors, null) 17353public override TreeDumperNode VisitUnboundLambda(UnboundLambda node, object? arg) => new TreeDumperNode("unboundLambda", null, new TreeDumperNode[] 17355new TreeDumperNode("data", node.Data, null), 17356new TreeDumperNode("functionType", node.FunctionType, null), 17357new TreeDumperNode("withDependencies", node.WithDependencies, null), 17358new TreeDumperNode("type", node.Type, null), 17359new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17360new TreeDumperNode("hasErrors", node.HasErrors, null) 17363public override TreeDumperNode VisitQueryClause(BoundQueryClause node, object? arg) => new TreeDumperNode("queryClause", null, new TreeDumperNode[] 17365new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 17366new TreeDumperNode("definedSymbol", node.DefinedSymbol, null), 17367new TreeDumperNode("operation", null, new TreeDumperNode[] { Visit(node.Operation, null) }), 17368new TreeDumperNode("cast", null, new TreeDumperNode[] { Visit(node.Cast, null) }), 17369new TreeDumperNode("binder", node.Binder, null), 17370new TreeDumperNode("unoptimizedForm", null, new TreeDumperNode[] { Visit(node.UnoptimizedForm, null) }), 17371new TreeDumperNode("type", node.Type, null), 17372new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17373new TreeDumperNode("hasErrors", node.HasErrors, null) 17376public override TreeDumperNode VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node, object? arg) => new TreeDumperNode("typeOrInstanceInitializers", null, new TreeDumperNode[] 17378new TreeDumperNode("statements", null, from x in node.Statements select Visit(x, null)), 17379new TreeDumperNode("hasErrors", node.HasErrors, null) 17382public override TreeDumperNode VisitNameOfOperator(BoundNameOfOperator node, object? arg) => new TreeDumperNode("nameOfOperator", null, new TreeDumperNode[] 17384new TreeDumperNode("argument", null, new TreeDumperNode[] { Visit(node.Argument, null) }), 17385new TreeDumperNode("constantValueOpt", node.ConstantValueOpt, null), 17386new TreeDumperNode("type", node.Type, null), 17387new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17388new TreeDumperNode("hasErrors", node.HasErrors, null) 17391public override TreeDumperNode VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node, object? arg) => new TreeDumperNode("unconvertedInterpolatedString", null, new TreeDumperNode[] 17393new TreeDumperNode("parts", null, from x in node.Parts select Visit(x, null)), 17394new TreeDumperNode("constantValueOpt", node.ConstantValueOpt, null), 17395new TreeDumperNode("type", node.Type, null), 17396new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17397new TreeDumperNode("hasErrors", node.HasErrors, null) 17400public override TreeDumperNode VisitInterpolatedString(BoundInterpolatedString node, object? arg) => new TreeDumperNode("interpolatedString", null, new TreeDumperNode[] 17402new TreeDumperNode("interpolationData", node.InterpolationData, null), 17403new TreeDumperNode("parts", null, from x in node.Parts select Visit(x, null)), 17404new TreeDumperNode("constantValueOpt", node.ConstantValueOpt, null), 17405new TreeDumperNode("type", node.Type, null), 17406new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17407new TreeDumperNode("hasErrors", node.HasErrors, null) 17410public override TreeDumperNode VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node, object? arg) => new TreeDumperNode("interpolatedStringHandlerPlaceholder", null, new TreeDumperNode[] 17412new TreeDumperNode("type", node.Type, null), 17413new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17414new TreeDumperNode("hasErrors", node.HasErrors, null) 17417public override TreeDumperNode VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node, object? arg) => new TreeDumperNode("interpolatedStringArgumentPlaceholder", null, new TreeDumperNode[] 17419new TreeDumperNode("argumentIndex", node.ArgumentIndex, null), 17420new TreeDumperNode("type", node.Type, null), 17421new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17422new TreeDumperNode("hasErrors", node.HasErrors, null) 17425public override TreeDumperNode VisitStringInsert(BoundStringInsert node, object? arg) => new TreeDumperNode("stringInsert", null, new TreeDumperNode[] 17427new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 17428new TreeDumperNode("alignment", null, new TreeDumperNode[] { Visit(node.Alignment, null) }), 17429new TreeDumperNode("format", null, new TreeDumperNode[] { Visit(node.Format, null) }), 17430new TreeDumperNode("isInterpolatedStringHandlerAppendCall", node.IsInterpolatedStringHandlerAppendCall, null), 17431new TreeDumperNode("type", node.Type, null), 17432new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17433new TreeDumperNode("hasErrors", node.HasErrors, null) 17436public override TreeDumperNode VisitIsPatternExpression(BoundIsPatternExpression node, object? arg) => new TreeDumperNode("isPatternExpression", null, new TreeDumperNode[] 17438new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 17439new TreeDumperNode("pattern", null, new TreeDumperNode[] { Visit(node.Pattern, null) }), 17440new TreeDumperNode("hasUnionMatching", node.HasUnionMatching, null), 17441new TreeDumperNode("isNegated", node.IsNegated, null), 17442new TreeDumperNode("reachabilityDecisionDag", null, new TreeDumperNode[] { Visit(node.ReachabilityDecisionDag, null) }), 17443new TreeDumperNode("whenTrueLabel", node.WhenTrueLabel, null), 17444new TreeDumperNode("whenFalseLabel", node.WhenFalseLabel, null), 17445new TreeDumperNode("type", node.Type, null), 17446new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17447new TreeDumperNode("hasErrors", node.HasErrors, null) 17450public override TreeDumperNode VisitConstantPattern(BoundConstantPattern node, object? arg) => new TreeDumperNode("constantPattern", null, new TreeDumperNode[] 17452new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 17453new TreeDumperNode("constantValue", node.ConstantValue, null), 17454new TreeDumperNode("isUnionMatching", node.IsUnionMatching, null), 17455new TreeDumperNode("inputType", node.InputType, null), 17456new TreeDumperNode("narrowedType", node.NarrowedType, null), 17457new TreeDumperNode("hasErrors", node.HasErrors, null) 17460public override TreeDumperNode VisitPatternWithUnionMatching(BoundPatternWithUnionMatching node, object? arg) => new TreeDumperNode("patternWithUnionMatching", null, new TreeDumperNode[] 17462new TreeDumperNode("unionMatchingInputType", node.UnionMatchingInputType, null), 17463new TreeDumperNode("leftOfPendingConjunction", null, new TreeDumperNode[] { Visit(node.LeftOfPendingConjunction, null) }), 17464new TreeDumperNode("valueProperty", null, new TreeDumperNode[] { Visit(node.ValueProperty, null) }), 17465new TreeDumperNode("valuePattern", null, new TreeDumperNode[] { Visit(node.ValuePattern, null) }), 17466new TreeDumperNode("inputType", node.InputType, null), 17467new TreeDumperNode("narrowedType", node.NarrowedType, null), 17468new TreeDumperNode("hasErrors", node.HasErrors, null) 17471public override TreeDumperNode VisitDiscardPattern(BoundDiscardPattern node, object? arg) => new TreeDumperNode("discardPattern", null, new TreeDumperNode[] 17473new TreeDumperNode("inputType", node.InputType, null), 17474new TreeDumperNode("narrowedType", node.NarrowedType, null), 17475new TreeDumperNode("hasErrors", node.HasErrors, null) 17478public override TreeDumperNode VisitDeclarationPattern(BoundDeclarationPattern node, object? arg) => new TreeDumperNode("declarationPattern", null, new TreeDumperNode[] 17480new TreeDumperNode("declaredType", null, new TreeDumperNode[] { Visit(node.DeclaredType, null) }), 17481new TreeDumperNode("isVar", node.IsVar, null), 17482new TreeDumperNode("variable", node.Variable, null), 17483new TreeDumperNode("variableAccess", null, new TreeDumperNode[] { Visit(node.VariableAccess, null) }), 17484new TreeDumperNode("isUnionMatching", node.IsUnionMatching, null), 17485new TreeDumperNode("inputType", node.InputType, null), 17486new TreeDumperNode("narrowedType", node.NarrowedType, null), 17487new TreeDumperNode("hasErrors", node.HasErrors, null) 17490public override TreeDumperNode VisitRecursivePattern(BoundRecursivePattern node, object? arg) => new TreeDumperNode("recursivePattern", null, new TreeDumperNode[] 17492new TreeDumperNode("declaredType", null, new TreeDumperNode[] { Visit(node.DeclaredType, null) }), 17493new TreeDumperNode("deconstructMethod", node.DeconstructMethod, null), 17494new TreeDumperNode("deconstruction", null, node.Deconstruction.IsDefault ? Array.Empty<TreeDumperNode>() : from x in node.Deconstruction select Visit(x, null)), 17495new TreeDumperNode("properties", null, node.Properties.IsDefault ? Array.Empty<TreeDumperNode>() : from x in node.Properties select Visit(x, null)), 17496new TreeDumperNode("isExplicitNotNullTest", node.IsExplicitNotNullTest, null), 17497new TreeDumperNode("variable", node.Variable, null), 17498new TreeDumperNode("variableAccess", null, new TreeDumperNode[] { Visit(node.VariableAccess, null) }), 17499new TreeDumperNode("isUnionMatching", node.IsUnionMatching, null), 17500new TreeDumperNode("inputType", node.InputType, null), 17501new TreeDumperNode("narrowedType", node.NarrowedType, null), 17502new TreeDumperNode("hasErrors", node.HasErrors, null) 17505public override TreeDumperNode VisitListPattern(BoundListPattern node, object? arg) => new TreeDumperNode("listPattern", null, new TreeDumperNode[] 17507new TreeDumperNode("subpatterns", null, from x in node.Subpatterns select Visit(x, null)), 17508new TreeDumperNode("hasSlice", node.HasSlice, null), 17509new TreeDumperNode("lengthAccess", null, new TreeDumperNode[] { Visit(node.LengthAccess, null) }), 17510new TreeDumperNode("indexerAccess", null, new TreeDumperNode[] { Visit(node.IndexerAccess, null) }), 17511new TreeDumperNode("receiverPlaceholder", null, new TreeDumperNode[] { Visit(node.ReceiverPlaceholder, null) }), 17512new TreeDumperNode("argumentPlaceholder", null, new TreeDumperNode[] { Visit(node.ArgumentPlaceholder, null) }), 17513new TreeDumperNode("variable", node.Variable, null), 17514new TreeDumperNode("variableAccess", null, new TreeDumperNode[] { Visit(node.VariableAccess, null) }), 17515new TreeDumperNode("isUnionMatching", node.IsUnionMatching, null), 17516new TreeDumperNode("inputType", node.InputType, null), 17517new TreeDumperNode("narrowedType", node.NarrowedType, null), 17518new TreeDumperNode("hasErrors", node.HasErrors, null) 17521public override TreeDumperNode VisitSlicePattern(BoundSlicePattern node, object? arg) => new TreeDumperNode("slicePattern", null, new TreeDumperNode[] 17523new TreeDumperNode("pattern", null, new TreeDumperNode[] { Visit(node.Pattern, null) }), 17524new TreeDumperNode("indexerAccess", null, new TreeDumperNode[] { Visit(node.IndexerAccess, null) }), 17525new TreeDumperNode("receiverPlaceholder", null, new TreeDumperNode[] { Visit(node.ReceiverPlaceholder, null) }), 17526new TreeDumperNode("argumentPlaceholder", null, new TreeDumperNode[] { Visit(node.ArgumentPlaceholder, null) }), 17527new TreeDumperNode("inputType", node.InputType, null), 17528new TreeDumperNode("narrowedType", node.NarrowedType, null), 17529new TreeDumperNode("hasErrors", node.HasErrors, null) 17532public override TreeDumperNode VisitITuplePattern(BoundITuplePattern node, object? arg) => new TreeDumperNode("iTuplePattern", null, new TreeDumperNode[] 17534new TreeDumperNode("getLengthMethod", node.GetLengthMethod, null), 17535new TreeDumperNode("getItemMethod", node.GetItemMethod, null), 17536new TreeDumperNode("subpatterns", null, from x in node.Subpatterns select Visit(x, null)), 17537new TreeDumperNode("isUnionMatching", node.IsUnionMatching, null), 17538new TreeDumperNode("inputType", node.InputType, null), 17539new TreeDumperNode("narrowedType", node.NarrowedType, null), 17540new TreeDumperNode("hasErrors", node.HasErrors, null) 17543public override TreeDumperNode VisitPositionalSubpattern(BoundPositionalSubpattern node, object? arg) => new TreeDumperNode("positionalSubpattern", null, new TreeDumperNode[] 17545new TreeDumperNode("symbol", node.Symbol, null), 17546new TreeDumperNode("pattern", null, new TreeDumperNode[] { Visit(node.Pattern, null) }), 17547new TreeDumperNode("hasErrors", node.HasErrors, null) 17550public override TreeDumperNode VisitPropertySubpattern(BoundPropertySubpattern node, object? arg) => new TreeDumperNode("propertySubpattern", null, new TreeDumperNode[] 17552new TreeDumperNode("member", null, new TreeDumperNode[] { Visit(node.Member, null) }), 17553new TreeDumperNode("isLengthOrCount", node.IsLengthOrCount, null), 17554new TreeDumperNode("pattern", null, new TreeDumperNode[] { Visit(node.Pattern, null) }), 17555new TreeDumperNode("hasErrors", node.HasErrors, null) 17558public override TreeDumperNode VisitPropertySubpatternMember(BoundPropertySubpatternMember node, object? arg) => new TreeDumperNode("propertySubpatternMember", null, new TreeDumperNode[] 17560new TreeDumperNode("receiver", null, new TreeDumperNode[] { Visit(node.Receiver, null) }), 17561new TreeDumperNode("symbol", node.Symbol, null), 17562new TreeDumperNode("type", node.Type, null), 17563new TreeDumperNode("hasErrors", node.HasErrors, null) 17566public override TreeDumperNode VisitTypePattern(BoundTypePattern node, object? arg) => new TreeDumperNode("typePattern", null, new TreeDumperNode[] 17568new TreeDumperNode("declaredType", null, new TreeDumperNode[] { Visit(node.DeclaredType, null) }), 17569new TreeDumperNode("isExplicitNotNullTest", node.IsExplicitNotNullTest, null), 17570new TreeDumperNode("isUnionMatching", node.IsUnionMatching, null), 17571new TreeDumperNode("inputType", node.InputType, null), 17572new TreeDumperNode("narrowedType", node.NarrowedType, null), 17573new TreeDumperNode("hasErrors", node.HasErrors, null) 17576public override TreeDumperNode VisitBinaryPattern(BoundBinaryPattern node, object? arg) => new TreeDumperNode("binaryPattern", null, new TreeDumperNode[] 17578new TreeDumperNode("disjunction", node.Disjunction, null), 17579new TreeDumperNode("left", null, new TreeDumperNode[] { Visit(node.Left, null) }), 17580new TreeDumperNode("right", null, new TreeDumperNode[] { Visit(node.Right, null) }), 17581new TreeDumperNode("inputType", node.InputType, null), 17582new TreeDumperNode("narrowedType", node.NarrowedType, null), 17583new TreeDumperNode("hasErrors", node.HasErrors, null) 17586public override TreeDumperNode VisitNegatedPattern(BoundNegatedPattern node, object? arg) => new TreeDumperNode("negatedPattern", null, new TreeDumperNode[] 17588new TreeDumperNode("negated", null, new TreeDumperNode[] { Visit(node.Negated, null) }), 17589new TreeDumperNode("isUnionMatching", node.IsUnionMatching, null), 17590new TreeDumperNode("inputType", node.InputType, null), 17591new TreeDumperNode("narrowedType", node.NarrowedType, null), 17592new TreeDumperNode("hasErrors", node.HasErrors, null) 17595public override TreeDumperNode VisitRelationalPattern(BoundRelationalPattern node, object? arg) => new TreeDumperNode("relationalPattern", null, new TreeDumperNode[] 17597new TreeDumperNode("relation", node.Relation, null), 17598new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 17599new TreeDumperNode("constantValue", node.ConstantValue, null), 17600new TreeDumperNode("isUnionMatching", node.IsUnionMatching, null), 17601new TreeDumperNode("inputType", node.InputType, null), 17602new TreeDumperNode("narrowedType", node.NarrowedType, null), 17603new TreeDumperNode("hasErrors", node.HasErrors, null) 17606public override TreeDumperNode VisitDiscardExpression(BoundDiscardExpression node, object? arg) => new TreeDumperNode("discardExpression", null, new TreeDumperNode[] 17608new TreeDumperNode("nullableAnnotation", node.NullableAnnotation, null), 17609new TreeDumperNode("isInferred", node.IsInferred, null), 17610new TreeDumperNode("type", node.Type, null), 17611new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17612new TreeDumperNode("hasErrors", node.HasErrors, null) 17615public override TreeDumperNode VisitThrowExpression(BoundThrowExpression node, object? arg) => new TreeDumperNode("throwExpression", null, new TreeDumperNode[] 17617new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 17618new TreeDumperNode("type", node.Type, null), 17619new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17620new TreeDumperNode("hasErrors", node.HasErrors, null) 17623public override TreeDumperNode VisitOutVariablePendingInference(OutVariablePendingInference node, object? arg) => new TreeDumperNode("outVariablePendingInference", null, new TreeDumperNode[] 17625new TreeDumperNode("variableSymbol", node.VariableSymbol, null), 17626new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 17627new TreeDumperNode("type", node.Type, null), 17628new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17629new TreeDumperNode("hasErrors", node.HasErrors, null) 17632public override TreeDumperNode VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node, object? arg) => new TreeDumperNode("deconstructionVariablePendingInference", null, new TreeDumperNode[] 17634new TreeDumperNode("variableSymbol", node.VariableSymbol, null), 17635new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 17636new TreeDumperNode("type", node.Type, null), 17637new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17638new TreeDumperNode("hasErrors", node.HasErrors, null) 17641public override TreeDumperNode VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node, object? arg) => new TreeDumperNode("outDeconstructVarPendingInference", null, new TreeDumperNode[] 17643new TreeDumperNode("variableSymbol", node.VariableSymbol, null), 17644new TreeDumperNode("isDiscardExpression", node.IsDiscardExpression, null), 17645new TreeDumperNode("type", node.Type, null), 17646new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17647new TreeDumperNode("hasErrors", node.HasErrors, null) 17650public override TreeDumperNode VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node, object? arg) => new TreeDumperNode("nonConstructorMethodBody", null, new TreeDumperNode[] 17652new TreeDumperNode("blockBody", null, new TreeDumperNode[] { Visit(node.BlockBody, null) }), 17653new TreeDumperNode("expressionBody", null, new TreeDumperNode[] { Visit(node.ExpressionBody, null) }), 17654new TreeDumperNode("hasErrors", node.HasErrors, null) 17657public override TreeDumperNode VisitConstructorMethodBody(BoundConstructorMethodBody node, object? arg) => new TreeDumperNode("constructorMethodBody", null, new TreeDumperNode[] 17659new TreeDumperNode("locals", node.Locals, null), 17660new TreeDumperNode("initializer", null, new TreeDumperNode[] { Visit(node.Initializer, null) }), 17661new TreeDumperNode("blockBody", null, new TreeDumperNode[] { Visit(node.BlockBody, null) }), 17662new TreeDumperNode("expressionBody", null, new TreeDumperNode[] { Visit(node.ExpressionBody, null) }), 17663new TreeDumperNode("hasErrors", node.HasErrors, null) 17666public override TreeDumperNode VisitExpressionWithNullability(BoundExpressionWithNullability node, object? arg) => new TreeDumperNode("expressionWithNullability", null, new TreeDumperNode[] 17668new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 17669new TreeDumperNode("nullableAnnotation", node.NullableAnnotation, null), 17670new TreeDumperNode("type", node.Type, null), 17671new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17672new TreeDumperNode("hasErrors", node.HasErrors, null) 17675public override TreeDumperNode VisitValueForNullableAnalysis(BoundValueForNullableAnalysis node, object? arg) => new TreeDumperNode("valueForNullableAnalysis", null, new TreeDumperNode[] 17677new TreeDumperNode("originalExpression", null, new TreeDumperNode[] { Visit(node.OriginalExpression, null) }), 17678new TreeDumperNode("type", node.Type, null), 17679new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17680new TreeDumperNode("hasErrors", node.HasErrors, null) 17683public override TreeDumperNode VisitWithExpression(BoundWithExpression node, object? arg) => new TreeDumperNode("withExpression", null, new TreeDumperNode[] 17685new TreeDumperNode("receiver", null, new TreeDumperNode[] { Visit(node.Receiver, null) }), 17686new TreeDumperNode("cloneMethod", node.CloneMethod, null), 17687new TreeDumperNode("initializerExpression", null, new TreeDumperNode[] { Visit(node.InitializerExpression, null) }), 17688new TreeDumperNode("type", node.Type, null), 17689new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17690new TreeDumperNode("hasErrors", node.HasErrors, null)
Lowering\SpillSequenceSpiller.cs (5)
169var node = new TreeDumperNode("boundSpillSequenceBuilder", null, new TreeDumperNode[] 171new TreeDumperNode("locals", this.GetLocals(), null), 172new TreeDumperNode("statements", null, from x in this.GetStatements() select BoundTreeDumperNodeProducer.MakeTree(x)), 173new TreeDumperNode("value", null, new TreeDumperNode[] { BoundTreeDumperNodeProducer.MakeTree(this.Value) }), 174new TreeDumperNode("type", this.Type, null)
Syntax\CSharpSyntaxNode.cs (2)
553return new TreeDumperNode(kind, null, node.ChildNodesAndTokens().Select(makeTree)); 556return new TreeDumperNode($"""{kind} {stringOrMissing(nodeOrToken)}""");
808 references to TreeDumperNode
Microsoft.CodeAnalysis (22)
TreeDumper.cs (22)
68public static string DumpCompact(TreeDumperNode root) 73protected string DoDumpCompact(TreeDumperNode root) 79private void DoDumpCompact(TreeDumperNode node, string indent) 96var child = children[i]; 107static bool skip(TreeDumperNode node) 141public static string DumpXML(TreeDumperNode root, string? indent = null) 148private void DoDumpXML(TreeDumperNode node, string indent, string relativeIndent) 177foreach (var child in node.Children) 245public TreeDumperNode(string text, object? value, IEnumerable<TreeDumperNode>? children) 249this.Children = children ?? SpecializedCollections.EmptyEnumerable<TreeDumperNode>(); 255public IEnumerable<TreeDumperNode> Children { get; } 256public TreeDumperNode? this[string child] 265public IEnumerable<KeyValuePair<TreeDumperNode?, TreeDumperNode>> PreorderTraversal() 267var stack = new Stack<KeyValuePair<TreeDumperNode?, TreeDumperNode>>(); 268stack.Push(new KeyValuePair<TreeDumperNode?, TreeDumperNode>(null, this)); 273var currentNode = currentEdge.Value; 274foreach (var child in currentNode.Children.Where(x => x != null).Reverse()) 276stack.Push(new KeyValuePair<TreeDumperNode?, TreeDumperNode>(currentNode, child));
Microsoft.CodeAnalysis.CSharp (781)
Binder\Binder.cs (3)
920TreeDumperNode dumpAncestors() 922TreeDumperNode? current = null; 927var sub = new List<TreeDumperNode>();
Binder\Semantics\Conversions\Conversion.cs (2)
1277TreeDumperNode Dump(Conversion self) 1279var sub = new System.Collections.Generic.List<TreeDumperNode>();
BoundTree\BoundNode.cs (1)
408public static new string DumpCompact(TreeDumperNode root)
BoundTree\TupleBinaryOperatorInfo.cs (6)
32internal abstract TreeDumperNode DumpCore(); 83internal override TreeDumperNode DumpCore() 85var sub = new List<TreeDumperNode>(); 123internal override TreeDumperNode DumpCore() 125var sub = new List<TreeDumperNode>(); 152internal override TreeDumperNode DumpCore()
Generated\BoundNodes.xml.Generated.cs (765)
15472internal sealed class BoundTreeDumperNodeProducer : BoundTreeVisitor<object?, TreeDumperNode> 15477public static TreeDumperNode MakeTree(BoundNode node) => (new BoundTreeDumperNodeProducer()).Visit(node, null); 15478public override TreeDumperNode VisitFieldEqualsValue(BoundFieldEqualsValue node, object? arg) => new TreeDumperNode("fieldEqualsValue", null, new TreeDumperNode[] 15482new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 15486public override TreeDumperNode VisitPropertyEqualsValue(BoundPropertyEqualsValue node, object? arg) => new TreeDumperNode("propertyEqualsValue", null, new TreeDumperNode[] 15490new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 15494public override TreeDumperNode VisitParameterEqualsValue(BoundParameterEqualsValue node, object? arg) => new TreeDumperNode("parameterEqualsValue", null, new TreeDumperNode[] 15498new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 15502public override TreeDumperNode VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node, object? arg) => new TreeDumperNode("globalStatementInitializer", null, new TreeDumperNode[] 15504new TreeDumperNode("statement", null, new TreeDumperNode[] { Visit(node.Statement, null) }), 15508public override TreeDumperNode VisitValuePlaceholder(BoundValuePlaceholder node, object? arg) => new TreeDumperNode("valuePlaceholder", null, new TreeDumperNode[] 15515public override TreeDumperNode VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node, object? arg) => new TreeDumperNode("capturedReceiverPlaceholder", null, new TreeDumperNode[] 15517new TreeDumperNode("receiver", null, new TreeDumperNode[] { Visit(node.Receiver, null) }), 15523public override TreeDumperNode VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node, object? arg) => new TreeDumperNode("deconstructValuePlaceholder", null, new TreeDumperNode[] 15532public override TreeDumperNode VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node, object? arg) => new TreeDumperNode("tupleOperandPlaceholder", null, new TreeDumperNode[] 15539public override TreeDumperNode VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node, object? arg) => new TreeDumperNode("awaitableValuePlaceholder", null, new TreeDumperNode[] 15546public override TreeDumperNode VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node, object? arg) => new TreeDumperNode("disposableValuePlaceholder", null, new TreeDumperNode[] 15553public override TreeDumperNode VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node, object? arg) => new TreeDumperNode("objectOrCollectionValuePlaceholder", null, new TreeDumperNode[] 15561public override TreeDumperNode VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node, object? arg) => new TreeDumperNode("implicitIndexerValuePlaceholder", null, new TreeDumperNode[] 15568public override TreeDumperNode VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node, object? arg) => new TreeDumperNode("implicitIndexerReceiverPlaceholder", null, new TreeDumperNode[] 15576public override TreeDumperNode VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node, object? arg) => new TreeDumperNode("listPatternReceiverPlaceholder", null, new TreeDumperNode[] 15583public override TreeDumperNode VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node, object? arg) => new TreeDumperNode("listPatternIndexPlaceholder", null, new TreeDumperNode[] 15590public override TreeDumperNode VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node, object? arg) => new TreeDumperNode("slicePatternReceiverPlaceholder", null, new TreeDumperNode[] 15597public override TreeDumperNode VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node, object? arg) => new TreeDumperNode("slicePatternRangePlaceholder", null, new TreeDumperNode[] 15604public override TreeDumperNode VisitCollectionBuilderElementsPlaceholder(BoundCollectionBuilderElementsPlaceholder node, object? arg) => new TreeDumperNode("collectionBuilderElementsPlaceholder", null, new TreeDumperNode[] 15611public override TreeDumperNode VisitDup(BoundDup node, object? arg) => new TreeDumperNode("dup", null, new TreeDumperNode[] 15619public override TreeDumperNode VisitPassByCopy(BoundPassByCopy node, object? arg) => new TreeDumperNode("passByCopy", null, new TreeDumperNode[] 15621new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 15627public override TreeDumperNode VisitBadExpression(BoundBadExpression node, object? arg) => new TreeDumperNode("badExpression", null, new TreeDumperNode[] 15637public override TreeDumperNode VisitBadStatement(BoundBadStatement node, object? arg) => new TreeDumperNode("badStatement", null, new TreeDumperNode[] 15643public override TreeDumperNode VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node, object? arg) => new TreeDumperNode("extractedFinallyBlock", null, new TreeDumperNode[] 15645new TreeDumperNode("finallyBlock", null, new TreeDumperNode[] { Visit(node.FinallyBlock, null) }), 15649public override TreeDumperNode VisitTypeExpression(BoundTypeExpression node, object? arg) => new TreeDumperNode("typeExpression", null, new TreeDumperNode[] 15652new TreeDumperNode("boundContainingTypeOpt", null, new TreeDumperNode[] { Visit(node.BoundContainingTypeOpt, null) }), 15653new TreeDumperNode("boundDimensionsOpt", null, node.BoundDimensionsOpt.IsDefault ? Array.Empty<TreeDumperNode>() : from x in node.BoundDimensionsOpt select Visit(x, null)), 15660public override TreeDumperNode VisitTypeOrValueExpression(BoundTypeOrValueExpression node, object? arg) => new TreeDumperNode("typeOrValueExpression", null, new TreeDumperNode[] 15669public override TreeDumperNode VisitNamespaceExpression(BoundNamespaceExpression node, object? arg) => new TreeDumperNode("namespaceExpression", null, new TreeDumperNode[] 15678public override TreeDumperNode VisitUnaryOperator(BoundUnaryOperator node, object? arg) => new TreeDumperNode("unaryOperator", null, new TreeDumperNode[] 15681new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15692public override TreeDumperNode VisitIncrementOperator(BoundIncrementOperator node, object? arg) => new TreeDumperNode("incrementOperator", null, new TreeDumperNode[] 15695new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15698new TreeDumperNode("operandPlaceholder", null, new TreeDumperNode[] { Visit(node.OperandPlaceholder, null) }), 15699new TreeDumperNode("operandConversion", null, new TreeDumperNode[] { Visit(node.OperandConversion, null) }), 15700new TreeDumperNode("resultPlaceholder", null, new TreeDumperNode[] { Visit(node.ResultPlaceholder, null) }), 15701new TreeDumperNode("resultConversion", null, new TreeDumperNode[] { Visit(node.ResultConversion, null) }), 15709public override TreeDumperNode VisitAddressOfOperator(BoundAddressOfOperator node, object? arg) => new TreeDumperNode("addressOfOperator", null, new TreeDumperNode[] 15711new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15718public override TreeDumperNode VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node, object? arg) => new TreeDumperNode("unconvertedAddressOfOperator", null, new TreeDumperNode[] 15720new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15726public override TreeDumperNode VisitFunctionPointerLoad(BoundFunctionPointerLoad node, object? arg) => new TreeDumperNode("functionPointerLoad", null, new TreeDumperNode[] 15735public override TreeDumperNode VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node, object? arg) => new TreeDumperNode("pointerIndirectionOperator", null, new TreeDumperNode[] 15737new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15744public override TreeDumperNode VisitPointerElementAccess(BoundPointerElementAccess node, object? arg) => new TreeDumperNode("pointerElementAccess", null, new TreeDumperNode[] 15746new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 15747new TreeDumperNode("index", null, new TreeDumperNode[] { Visit(node.Index, null) }), 15755public override TreeDumperNode VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node, object? arg) => new TreeDumperNode("functionPointerInvocation", null, new TreeDumperNode[] 15757new TreeDumperNode("invokedExpression", null, new TreeDumperNode[] { Visit(node.InvokedExpression, null) }), 15766public override TreeDumperNode VisitRefTypeOperator(BoundRefTypeOperator node, object? arg) => new TreeDumperNode("refTypeOperator", null, new TreeDumperNode[] 15768new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15775public override TreeDumperNode VisitMakeRefOperator(BoundMakeRefOperator node, object? arg) => new TreeDumperNode("makeRefOperator", null, new TreeDumperNode[] 15777new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15783public override TreeDumperNode VisitRefValueOperator(BoundRefValueOperator node, object? arg) => new TreeDumperNode("refValueOperator", null, new TreeDumperNode[] 15786new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15792public override TreeDumperNode VisitFromEndIndexExpression(BoundFromEndIndexExpression node, object? arg) => new TreeDumperNode("fromEndIndexExpression", null, new TreeDumperNode[] 15794new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15801public override TreeDumperNode VisitRangeExpression(BoundRangeExpression node, object? arg) => new TreeDumperNode("rangeExpression", null, new TreeDumperNode[] 15803new TreeDumperNode("leftOperandOpt", null, new TreeDumperNode[] { Visit(node.LeftOperandOpt, null) }), 15804new TreeDumperNode("rightOperandOpt", null, new TreeDumperNode[] { Visit(node.RightOperandOpt, null) }), 15811public override TreeDumperNode VisitBinaryOperator(BoundBinaryOperator node, object? arg) => new TreeDumperNode("binaryOperator", null, new TreeDumperNode[] 15816new TreeDumperNode("left", null, new TreeDumperNode[] { Visit(node.Left, null) }), 15817new TreeDumperNode("right", null, new TreeDumperNode[] { Visit(node.Right, null) }), 15823public override TreeDumperNode VisitTupleBinaryOperator(BoundTupleBinaryOperator node, object? arg) => new TreeDumperNode("tupleBinaryOperator", null, new TreeDumperNode[] 15825new TreeDumperNode("left", null, new TreeDumperNode[] { Visit(node.Left, null) }), 15826new TreeDumperNode("right", null, new TreeDumperNode[] { Visit(node.Right, null) }), 15834public override TreeDumperNode VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node, object? arg) => new TreeDumperNode("userDefinedConditionalLogicalOperator", null, new TreeDumperNode[] 15840new TreeDumperNode("trueFalseOperandPlaceholder", null, new TreeDumperNode[] { Visit(node.TrueFalseOperandPlaceholder, null) }), 15841new TreeDumperNode("trueFalseOperandConversion", null, new TreeDumperNode[] { Visit(node.TrueFalseOperandConversion, null) }), 15845new TreeDumperNode("left", null, new TreeDumperNode[] { Visit(node.Left, null) }), 15846new TreeDumperNode("right", null, new TreeDumperNode[] { Visit(node.Right, null) }), 15852public override TreeDumperNode VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node, object? arg) => new TreeDumperNode("compoundAssignmentOperator", null, new TreeDumperNode[] 15855new TreeDumperNode("left", null, new TreeDumperNode[] { Visit(node.Left, null) }), 15856new TreeDumperNode("right", null, new TreeDumperNode[] { Visit(node.Right, null) }), 15857new TreeDumperNode("leftPlaceholder", null, new TreeDumperNode[] { Visit(node.LeftPlaceholder, null) }), 15858new TreeDumperNode("leftConversion", null, new TreeDumperNode[] { Visit(node.LeftConversion, null) }), 15859new TreeDumperNode("finalPlaceholder", null, new TreeDumperNode[] { Visit(node.FinalPlaceholder, null) }), 15860new TreeDumperNode("finalConversion", null, new TreeDumperNode[] { Visit(node.FinalConversion, null) }), 15868public override TreeDumperNode VisitAssignmentOperator(BoundAssignmentOperator node, object? arg) => new TreeDumperNode("assignmentOperator", null, new TreeDumperNode[] 15870new TreeDumperNode("left", null, new TreeDumperNode[] { Visit(node.Left, null) }), 15871new TreeDumperNode("right", null, new TreeDumperNode[] { Visit(node.Right, null) }), 15878public override TreeDumperNode VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node, object? arg) => new TreeDumperNode("deconstructionAssignmentOperator", null, new TreeDumperNode[] 15880new TreeDumperNode("left", null, new TreeDumperNode[] { Visit(node.Left, null) }), 15881new TreeDumperNode("right", null, new TreeDumperNode[] { Visit(node.Right, null) }), 15888public override TreeDumperNode VisitNullCoalescingOperator(BoundNullCoalescingOperator node, object? arg) => new TreeDumperNode("nullCoalescingOperator", null, new TreeDumperNode[] 15890new TreeDumperNode("leftOperand", null, new TreeDumperNode[] { Visit(node.LeftOperand, null) }), 15891new TreeDumperNode("rightOperand", null, new TreeDumperNode[] { Visit(node.RightOperand, null) }), 15892new TreeDumperNode("leftPlaceholder", null, new TreeDumperNode[] { Visit(node.LeftPlaceholder, null) }), 15893new TreeDumperNode("leftConversion", null, new TreeDumperNode[] { Visit(node.LeftConversion, null) }), 15901public override TreeDumperNode VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node, object? arg) => new TreeDumperNode("nullCoalescingAssignmentOperator", null, new TreeDumperNode[] 15903new TreeDumperNode("leftOperand", null, new TreeDumperNode[] { Visit(node.LeftOperand, null) }), 15904new TreeDumperNode("rightOperand", null, new TreeDumperNode[] { Visit(node.RightOperand, null) }), 15910public override TreeDumperNode VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node, object? arg) => new TreeDumperNode("unconvertedConditionalOperator", null, new TreeDumperNode[] 15912new TreeDumperNode("condition", null, new TreeDumperNode[] { Visit(node.Condition, null) }), 15913new TreeDumperNode("consequence", null, new TreeDumperNode[] { Visit(node.Consequence, null) }), 15914new TreeDumperNode("alternative", null, new TreeDumperNode[] { Visit(node.Alternative, null) }), 15922public override TreeDumperNode VisitConditionalOperator(BoundConditionalOperator node, object? arg) => new TreeDumperNode("conditionalOperator", null, new TreeDumperNode[] 15925new TreeDumperNode("condition", null, new TreeDumperNode[] { Visit(node.Condition, null) }), 15926new TreeDumperNode("consequence", null, new TreeDumperNode[] { Visit(node.Consequence, null) }), 15927new TreeDumperNode("alternative", null, new TreeDumperNode[] { Visit(node.Alternative, null) }), 15936public override TreeDumperNode VisitArrayAccess(BoundArrayAccess node, object? arg) => new TreeDumperNode("arrayAccess", null, new TreeDumperNode[] 15938new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 15945public override TreeDumperNode VisitRefArrayAccess(BoundRefArrayAccess node, object? arg) => new TreeDumperNode("refArrayAccess", null, new TreeDumperNode[] 15947new TreeDumperNode("arrayAccess", null, new TreeDumperNode[] { Visit(node.ArrayAccess, null) }), 15953public override TreeDumperNode VisitArrayLength(BoundArrayLength node, object? arg) => new TreeDumperNode("arrayLength", null, new TreeDumperNode[] 15955new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 15961public override TreeDumperNode VisitAwaitableInfo(BoundAwaitableInfo node, object? arg) => new TreeDumperNode("awaitableInfo", null, new TreeDumperNode[] 15963new TreeDumperNode("awaitableInstancePlaceholder", null, new TreeDumperNode[] { Visit(node.AwaitableInstancePlaceholder, null) }), 15965new TreeDumperNode("getAwaiter", null, new TreeDumperNode[] { Visit(node.GetAwaiter, null) }), 15968new TreeDumperNode("runtimeAsyncAwaitCall", null, new TreeDumperNode[] { Visit(node.RuntimeAsyncAwaitCall, null) }), 15969new TreeDumperNode("runtimeAsyncAwaitCallPlaceholder", null, new TreeDumperNode[] { Visit(node.RuntimeAsyncAwaitCallPlaceholder, null) }), 15973public override TreeDumperNode VisitAwaitExpression(BoundAwaitExpression node, object? arg) => new TreeDumperNode("awaitExpression", null, new TreeDumperNode[] 15975new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 15976new TreeDumperNode("awaitableInfo", null, new TreeDumperNode[] { Visit(node.AwaitableInfo, null) }), 15983public override TreeDumperNode VisitTypeOfOperator(BoundTypeOfOperator node, object? arg) => new TreeDumperNode("typeOfOperator", null, new TreeDumperNode[] 15985new TreeDumperNode("sourceType", null, new TreeDumperNode[] { Visit(node.SourceType, null) }), 15992public override TreeDumperNode VisitBlockInstrumentation(BoundBlockInstrumentation node, object? arg) => new TreeDumperNode("blockInstrumentation", null, new TreeDumperNode[] 15995new TreeDumperNode("prologue", null, new TreeDumperNode[] { Visit(node.Prologue, null) }), 15996new TreeDumperNode("epilogue", null, new TreeDumperNode[] { Visit(node.Epilogue, null) }), 16000public override TreeDumperNode VisitMethodDefIndex(BoundMethodDefIndex node, object? arg) => new TreeDumperNode("methodDefIndex", null, new TreeDumperNode[] 16008public override TreeDumperNode VisitLocalId(BoundLocalId node, object? arg) => new TreeDumperNode("localId", null, new TreeDumperNode[] 16017public override TreeDumperNode VisitParameterId(BoundParameterId node, object? arg) => new TreeDumperNode("parameterId", null, new TreeDumperNode[] 16026public override TreeDumperNode VisitStateMachineInstanceId(BoundStateMachineInstanceId node, object? arg) => new TreeDumperNode("stateMachineInstanceId", null, new TreeDumperNode[] 16033public override TreeDumperNode VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node, object? arg) => new TreeDumperNode("maximumMethodDefIndex", null, new TreeDumperNode[] 16040public override TreeDumperNode VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node, object? arg) => new TreeDumperNode("instrumentationPayloadRoot", null, new TreeDumperNode[] 16048public override TreeDumperNode VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node, object? arg) => new TreeDumperNode("throwIfModuleCancellationRequested", null, new TreeDumperNode[] 16055public override TreeDumperNode VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node, object? arg) => new TreeDumperNode("moduleCancellationTokenExpression", null, new TreeDumperNode[] 16062public override TreeDumperNode VisitModuleVersionId(BoundModuleVersionId node, object? arg) => new TreeDumperNode("moduleVersionId", null, new TreeDumperNode[] 16069public override TreeDumperNode VisitModuleVersionIdString(BoundModuleVersionIdString node, object? arg) => new TreeDumperNode("moduleVersionIdString", null, new TreeDumperNode[] 16076public override TreeDumperNode VisitSourceDocumentIndex(BoundSourceDocumentIndex node, object? arg) => new TreeDumperNode("sourceDocumentIndex", null, new TreeDumperNode[] 16084public override TreeDumperNode VisitMethodInfo(BoundMethodInfo node, object? arg) => new TreeDumperNode("methodInfo", null, new TreeDumperNode[] 16093public override TreeDumperNode VisitFieldInfo(BoundFieldInfo node, object? arg) => new TreeDumperNode("fieldInfo", null, new TreeDumperNode[] 16102public override TreeDumperNode VisitDefaultLiteral(BoundDefaultLiteral node, object? arg) => new TreeDumperNode("defaultLiteral", null, new TreeDumperNode[] 16109public override TreeDumperNode VisitDefaultExpression(BoundDefaultExpression node, object? arg) => new TreeDumperNode("defaultExpression", null, new TreeDumperNode[] 16111new TreeDumperNode("targetType", null, new TreeDumperNode[] { Visit(node.TargetType, null) }), 16118public override TreeDumperNode VisitIsOperator(BoundIsOperator node, object? arg) => new TreeDumperNode("isOperator", null, new TreeDumperNode[] 16120new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 16121new TreeDumperNode("targetType", null, new TreeDumperNode[] { Visit(node.TargetType, null) }), 16128public override TreeDumperNode VisitAsOperator(BoundAsOperator node, object? arg) => new TreeDumperNode("asOperator", null, new TreeDumperNode[] 16130new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 16131new TreeDumperNode("targetType", null, new TreeDumperNode[] { Visit(node.TargetType, null) }), 16132new TreeDumperNode("operandPlaceholder", null, new TreeDumperNode[] { Visit(node.OperandPlaceholder, null) }), 16133new TreeDumperNode("operandConversion", null, new TreeDumperNode[] { Visit(node.OperandConversion, null) }), 16139public override TreeDumperNode VisitSizeOfOperator(BoundSizeOfOperator node, object? arg) => new TreeDumperNode("sizeOfOperator", null, new TreeDumperNode[] 16141new TreeDumperNode("sourceType", null, new TreeDumperNode[] { Visit(node.SourceType, null) }), 16148public override TreeDumperNode VisitConversion(BoundConversion node, object? arg) => new TreeDumperNode("conversion", null, new TreeDumperNode[] 16150new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 16163public override TreeDumperNode VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node, object? arg) => new TreeDumperNode("readOnlySpanFromArray", null, new TreeDumperNode[] 16165new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 16172public override TreeDumperNode VisitArgList(BoundArgList node, object? arg) => new TreeDumperNode("argList", null, new TreeDumperNode[] 16179public override TreeDumperNode VisitArgListOperator(BoundArgListOperator node, object? arg) => new TreeDumperNode("argListOperator", null, new TreeDumperNode[] 16188public override TreeDumperNode VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node, object? arg) => new TreeDumperNode("fixedLocalCollectionInitializer", null, new TreeDumperNode[] 16191new TreeDumperNode("elementPointerPlaceholder", null, new TreeDumperNode[] { Visit(node.ElementPointerPlaceholder, null) }), 16192new TreeDumperNode("elementPointerConversion", null, new TreeDumperNode[] { Visit(node.ElementPointerConversion, null) }), 16193new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16200public override TreeDumperNode VisitSequencePoint(BoundSequencePoint node, object? arg) => new TreeDumperNode("sequencePoint", null, new TreeDumperNode[] 16202new TreeDumperNode("statementOpt", null, new TreeDumperNode[] { Visit(node.StatementOpt, null) }), 16206public override TreeDumperNode VisitSequencePointWithSpan(BoundSequencePointWithSpan node, object? arg) => new TreeDumperNode("sequencePointWithSpan", null, new TreeDumperNode[] 16208new TreeDumperNode("statementOpt", null, new TreeDumperNode[] { Visit(node.StatementOpt, null) }), 16213public override TreeDumperNode VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node, object? arg) => new TreeDumperNode("savePreviousSequencePoint", null, new TreeDumperNode[] 16219public override TreeDumperNode VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node, object? arg) => new TreeDumperNode("restorePreviousSequencePoint", null, new TreeDumperNode[] 16225public override TreeDumperNode VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node, object? arg) => new TreeDumperNode("stepThroughSequencePoint", null, new TreeDumperNode[] 16231public override TreeDumperNode VisitBlock(BoundBlock node, object? arg) => new TreeDumperNode("block", null, new TreeDumperNode[] 16236new TreeDumperNode("instrumentation", null, new TreeDumperNode[] { Visit(node.Instrumentation, null) }), 16241public override TreeDumperNode VisitScope(BoundScope node, object? arg) => new TreeDumperNode("scope", null, new TreeDumperNode[] 16248public override TreeDumperNode VisitStateMachineScope(BoundStateMachineScope node, object? arg) => new TreeDumperNode("stateMachineScope", null, new TreeDumperNode[] 16251new TreeDumperNode("statement", null, new TreeDumperNode[] { Visit(node.Statement, null) }), 16255public override TreeDumperNode VisitLocalDeclaration(BoundLocalDeclaration node, object? arg) => new TreeDumperNode("localDeclaration", null, new TreeDumperNode[] 16258new TreeDumperNode("declaredTypeOpt", null, new TreeDumperNode[] { Visit(node.DeclaredTypeOpt, null) }), 16259new TreeDumperNode("initializerOpt", null, new TreeDumperNode[] { Visit(node.InitializerOpt, null) }), 16260new TreeDumperNode("argumentsOpt", null, node.ArgumentsOpt.IsDefault ? Array.Empty<TreeDumperNode>() : from x in node.ArgumentsOpt select Visit(x, null)), 16265public override TreeDumperNode VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node, object? arg) => new TreeDumperNode("multipleLocalDeclarations", null, new TreeDumperNode[] 16271public override TreeDumperNode VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node, object? arg) => new TreeDumperNode("usingLocalDeclarations", null, new TreeDumperNode[] 16274new TreeDumperNode("awaitOpt", null, new TreeDumperNode[] { Visit(node.AwaitOpt, null) }), 16279public override TreeDumperNode VisitLocalFunctionStatement(BoundLocalFunctionStatement node, object? arg) => new TreeDumperNode("localFunctionStatement", null, new TreeDumperNode[] 16282new TreeDumperNode("blockBody", null, new TreeDumperNode[] { Visit(node.BlockBody, null) }), 16283new TreeDumperNode("expressionBody", null, new TreeDumperNode[] { Visit(node.ExpressionBody, null) }), 16287public override TreeDumperNode VisitNoOpStatement(BoundNoOpStatement node, object? arg) => new TreeDumperNode("noOpStatement", null, new TreeDumperNode[] 16293public override TreeDumperNode VisitReturnStatement(BoundReturnStatement node, object? arg) => new TreeDumperNode("returnStatement", null, new TreeDumperNode[] 16296new TreeDumperNode("expressionOpt", null, new TreeDumperNode[] { Visit(node.ExpressionOpt, null) }), 16301public override TreeDumperNode VisitYieldReturnStatement(BoundYieldReturnStatement node, object? arg) => new TreeDumperNode("yieldReturnStatement", null, new TreeDumperNode[] 16303new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16307public override TreeDumperNode VisitYieldBreakStatement(BoundYieldBreakStatement node, object? arg) => new TreeDumperNode("yieldBreakStatement", null, Array.Empty<TreeDumperNode>() 16309public override TreeDumperNode VisitThrowStatement(BoundThrowStatement node, object? arg) => new TreeDumperNode("throwStatement", null, new TreeDumperNode[] 16311new TreeDumperNode("expressionOpt", null, new TreeDumperNode[] { Visit(node.ExpressionOpt, null) }), 16315public override TreeDumperNode VisitExpressionStatement(BoundExpressionStatement node, object? arg) => new TreeDumperNode("expressionStatement", null, new TreeDumperNode[] 16317new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16321public override TreeDumperNode VisitBreakStatement(BoundBreakStatement node, object? arg) => new TreeDumperNode("breakStatement", null, new TreeDumperNode[] 16327public override TreeDumperNode VisitContinueStatement(BoundContinueStatement node, object? arg) => new TreeDumperNode("continueStatement", null, new TreeDumperNode[] 16333public override TreeDumperNode VisitSwitchStatement(BoundSwitchStatement node, object? arg) => new TreeDumperNode("switchStatement", null, new TreeDumperNode[] 16335new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16339new TreeDumperNode("reachabilityDecisionDag", null, new TreeDumperNode[] { Visit(node.ReachabilityDecisionDag, null) }), 16340new TreeDumperNode("defaultLabel", null, new TreeDumperNode[] { Visit(node.DefaultLabel, null) }), 16345public override TreeDumperNode VisitSwitchDispatch(BoundSwitchDispatch node, object? arg) => new TreeDumperNode("switchDispatch", null, new TreeDumperNode[] 16347new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16354public override TreeDumperNode VisitIfStatement(BoundIfStatement node, object? arg) => new TreeDumperNode("ifStatement", null, new TreeDumperNode[] 16356new TreeDumperNode("condition", null, new TreeDumperNode[] { Visit(node.Condition, null) }), 16357new TreeDumperNode("consequence", null, new TreeDumperNode[] { Visit(node.Consequence, null) }), 16358new TreeDumperNode("alternativeOpt", null, new TreeDumperNode[] { Visit(node.AlternativeOpt, null) }), 16362public override TreeDumperNode VisitDoStatement(BoundDoStatement node, object? arg) => new TreeDumperNode("doStatement", null, new TreeDumperNode[] 16365new TreeDumperNode("condition", null, new TreeDumperNode[] { Visit(node.Condition, null) }), 16366new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 16372public override TreeDumperNode VisitWhileStatement(BoundWhileStatement node, object? arg) => new TreeDumperNode("whileStatement", null, new TreeDumperNode[] 16375new TreeDumperNode("condition", null, new TreeDumperNode[] { Visit(node.Condition, null) }), 16376new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 16382public override TreeDumperNode VisitForStatement(BoundForStatement node, object? arg) => new TreeDumperNode("forStatement", null, new TreeDumperNode[] 16385new TreeDumperNode("initializer", null, new TreeDumperNode[] { Visit(node.Initializer, null) }), 16387new TreeDumperNode("condition", null, new TreeDumperNode[] { Visit(node.Condition, null) }), 16388new TreeDumperNode("increment", null, new TreeDumperNode[] { Visit(node.Increment, null) }), 16389new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 16395public override TreeDumperNode VisitForEachStatement(BoundForEachStatement node, object? arg) => new TreeDumperNode("forEachStatement", null, new TreeDumperNode[] 16398new TreeDumperNode("elementPlaceholder", null, new TreeDumperNode[] { Visit(node.ElementPlaceholder, null) }), 16399new TreeDumperNode("elementConversion", null, new TreeDumperNode[] { Visit(node.ElementConversion, null) }), 16400new TreeDumperNode("iterationVariableType", null, new TreeDumperNode[] { Visit(node.IterationVariableType, null) }), 16402new TreeDumperNode("iterationErrorExpressionOpt", null, new TreeDumperNode[] { Visit(node.IterationErrorExpressionOpt, null) }), 16403new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16404new TreeDumperNode("deconstructionOpt", null, new TreeDumperNode[] { Visit(node.DeconstructionOpt, null) }), 16405new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 16411public override TreeDumperNode VisitForEachDeconstructStep(BoundForEachDeconstructStep node, object? arg) => new TreeDumperNode("forEachDeconstructStep", null, new TreeDumperNode[] 16413new TreeDumperNode("deconstructionAssignment", null, new TreeDumperNode[] { Visit(node.DeconstructionAssignment, null) }), 16414new TreeDumperNode("targetPlaceholder", null, new TreeDumperNode[] { Visit(node.TargetPlaceholder, null) }), 16418public override TreeDumperNode VisitUsingStatement(BoundUsingStatement node, object? arg) => new TreeDumperNode("usingStatement", null, new TreeDumperNode[] 16421new TreeDumperNode("declarationsOpt", null, new TreeDumperNode[] { Visit(node.DeclarationsOpt, null) }), 16422new TreeDumperNode("expressionOpt", null, new TreeDumperNode[] { Visit(node.ExpressionOpt, null) }), 16423new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 16424new TreeDumperNode("awaitOpt", null, new TreeDumperNode[] { Visit(node.AwaitOpt, null) }), 16429public override TreeDumperNode VisitFixedStatement(BoundFixedStatement node, object? arg) => new TreeDumperNode("fixedStatement", null, new TreeDumperNode[] 16432new TreeDumperNode("declarations", null, new TreeDumperNode[] { Visit(node.Declarations, null) }), 16433new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 16437public override TreeDumperNode VisitLockStatement(BoundLockStatement node, object? arg) => new TreeDumperNode("lockStatement", null, new TreeDumperNode[] 16439new TreeDumperNode("argument", null, new TreeDumperNode[] { Visit(node.Argument, null) }), 16440new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 16444public override TreeDumperNode VisitTryStatement(BoundTryStatement node, object? arg) => new TreeDumperNode("tryStatement", null, new TreeDumperNode[] 16446new TreeDumperNode("tryBlock", null, new TreeDumperNode[] { Visit(node.TryBlock, null) }), 16448new TreeDumperNode("finallyBlockOpt", null, new TreeDumperNode[] { Visit(node.FinallyBlockOpt, null) }), 16454public override TreeDumperNode VisitCatchBlock(BoundCatchBlock node, object? arg) => new TreeDumperNode("catchBlock", null, new TreeDumperNode[] 16457new TreeDumperNode("exceptionSourceOpt", null, new TreeDumperNode[] { Visit(node.ExceptionSourceOpt, null) }), 16459new TreeDumperNode("exceptionFilterPrologueOpt", null, new TreeDumperNode[] { Visit(node.ExceptionFilterPrologueOpt, null) }), 16460new TreeDumperNode("exceptionFilterOpt", null, new TreeDumperNode[] { Visit(node.ExceptionFilterOpt, null) }), 16461new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 16466public override TreeDumperNode VisitLiteral(BoundLiteral node, object? arg) => new TreeDumperNode("literal", null, new TreeDumperNode[] 16474public override TreeDumperNode VisitUtf8String(BoundUtf8String node, object? arg) => new TreeDumperNode("utf8String", null, new TreeDumperNode[] 16482public override TreeDumperNode VisitThisReference(BoundThisReference node, object? arg) => new TreeDumperNode("thisReference", null, new TreeDumperNode[] 16489public override TreeDumperNode VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node, object? arg) => new TreeDumperNode("previousSubmissionReference", null, new TreeDumperNode[] 16496public override TreeDumperNode VisitHostObjectMemberReference(BoundHostObjectMemberReference node, object? arg) => new TreeDumperNode("hostObjectMemberReference", null, new TreeDumperNode[] 16503public override TreeDumperNode VisitBaseReference(BoundBaseReference node, object? arg) => new TreeDumperNode("baseReference", null, new TreeDumperNode[] 16510public override TreeDumperNode VisitLocal(BoundLocal node, object? arg) => new TreeDumperNode("local", null, new TreeDumperNode[] 16521public override TreeDumperNode VisitPseudoVariable(BoundPseudoVariable node, object? arg) => new TreeDumperNode("pseudoVariable", null, new TreeDumperNode[] 16530public override TreeDumperNode VisitRangeVariable(BoundRangeVariable node, object? arg) => new TreeDumperNode("rangeVariable", null, new TreeDumperNode[] 16533new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 16539public override TreeDumperNode VisitParameter(BoundParameter node, object? arg) => new TreeDumperNode("parameter", null, new TreeDumperNode[] 16547public override TreeDumperNode VisitLabelStatement(BoundLabelStatement node, object? arg) => new TreeDumperNode("labelStatement", null, new TreeDumperNode[] 16553public override TreeDumperNode VisitGotoStatement(BoundGotoStatement node, object? arg) => new TreeDumperNode("gotoStatement", null, new TreeDumperNode[] 16556new TreeDumperNode("caseExpressionOpt", null, new TreeDumperNode[] { Visit(node.CaseExpressionOpt, null) }), 16557new TreeDumperNode("labelExpressionOpt", null, new TreeDumperNode[] { Visit(node.LabelExpressionOpt, null) }), 16561public override TreeDumperNode VisitLabeledStatement(BoundLabeledStatement node, object? arg) => new TreeDumperNode("labeledStatement", null, new TreeDumperNode[] 16564new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 16568public override TreeDumperNode VisitLabel(BoundLabel node, object? arg) => new TreeDumperNode("label", null, new TreeDumperNode[] 16576public override TreeDumperNode VisitStatementList(BoundStatementList node, object? arg) => new TreeDumperNode("statementList", null, new TreeDumperNode[] 16582public override TreeDumperNode VisitConditionalGoto(BoundConditionalGoto node, object? arg) => new TreeDumperNode("conditionalGoto", null, new TreeDumperNode[] 16584new TreeDumperNode("condition", null, new TreeDumperNode[] { Visit(node.Condition, null) }), 16590public override TreeDumperNode VisitSwitchExpressionArm(BoundSwitchExpressionArm node, object? arg) => new TreeDumperNode("switchExpressionArm", null, new TreeDumperNode[] 16593new TreeDumperNode("pattern", null, new TreeDumperNode[] { Visit(node.Pattern, null) }), 16595new TreeDumperNode("whenClause", null, new TreeDumperNode[] { Visit(node.WhenClause, null) }), 16596new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 16601public override TreeDumperNode VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node, object? arg) => new TreeDumperNode("unconvertedSwitchExpression", null, new TreeDumperNode[] 16603new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16605new TreeDumperNode("reachabilityDecisionDag", null, new TreeDumperNode[] { Visit(node.ReachabilityDecisionDag, null) }), 16613public override TreeDumperNode VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node, object? arg) => new TreeDumperNode("convertedSwitchExpression", null, new TreeDumperNode[] 16617new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16619new TreeDumperNode("reachabilityDecisionDag", null, new TreeDumperNode[] { Visit(node.ReachabilityDecisionDag, null) }), 16627public override TreeDumperNode VisitDecisionDag(BoundDecisionDag node, object? arg) => new TreeDumperNode("decisionDag", null, new TreeDumperNode[] 16629new TreeDumperNode("rootNode", null, new TreeDumperNode[] { Visit(node.RootNode, null) }), 16634public override TreeDumperNode VisitEvaluationDecisionDagNode(BoundEvaluationDecisionDagNode node, object? arg) => new TreeDumperNode("evaluationDecisionDagNode", null, new TreeDumperNode[] 16636new TreeDumperNode("evaluation", null, new TreeDumperNode[] { Visit(node.Evaluation, null) }), 16637new TreeDumperNode("next", null, new TreeDumperNode[] { Visit(node.Next, null) }), 16641public override TreeDumperNode VisitTestDecisionDagNode(BoundTestDecisionDagNode node, object? arg) => new TreeDumperNode("testDecisionDagNode", null, new TreeDumperNode[] 16643new TreeDumperNode("test", null, new TreeDumperNode[] { Visit(node.Test, null) }), 16644new TreeDumperNode("whenTrue", null, new TreeDumperNode[] { Visit(node.WhenTrue, null) }), 16645new TreeDumperNode("whenFalse", null, new TreeDumperNode[] { Visit(node.WhenFalse, null) }), 16649public override TreeDumperNode VisitWhenDecisionDagNode(BoundWhenDecisionDagNode node, object? arg) => new TreeDumperNode("whenDecisionDagNode", null, new TreeDumperNode[] 16652new TreeDumperNode("whenExpression", null, new TreeDumperNode[] { Visit(node.WhenExpression, null) }), 16653new TreeDumperNode("whenTrue", null, new TreeDumperNode[] { Visit(node.WhenTrue, null) }), 16654new TreeDumperNode("whenFalse", null, new TreeDumperNode[] { Visit(node.WhenFalse, null) }), 16658public override TreeDumperNode VisitLeafDecisionDagNode(BoundLeafDecisionDagNode node, object? arg) => new TreeDumperNode("leafDecisionDagNode", null, new TreeDumperNode[] 16664public override TreeDumperNode VisitDagTemp(BoundDagTemp node, object? arg) => new TreeDumperNode("dagTemp", null, new TreeDumperNode[] 16667new TreeDumperNode("source", null, new TreeDumperNode[] { Visit(node.Source, null) }), 16672public override TreeDumperNode VisitDagTypeTest(BoundDagTypeTest node, object? arg) => new TreeDumperNode("dagTypeTest", null, new TreeDumperNode[] 16675new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16679public override TreeDumperNode VisitDagNonNullTest(BoundDagNonNullTest node, object? arg) => new TreeDumperNode("dagNonNullTest", null, new TreeDumperNode[] 16682new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16686public override TreeDumperNode VisitDagExplicitNullTest(BoundDagExplicitNullTest node, object? arg) => new TreeDumperNode("dagExplicitNullTest", null, new TreeDumperNode[] 16688new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16692public override TreeDumperNode VisitDagValueTest(BoundDagValueTest node, object? arg) => new TreeDumperNode("dagValueTest", null, new TreeDumperNode[] 16695new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16699public override TreeDumperNode VisitDagRelationalTest(BoundDagRelationalTest node, object? arg) => new TreeDumperNode("dagRelationalTest", null, new TreeDumperNode[] 16703new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16707public override TreeDumperNode VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node, object? arg) => new TreeDumperNode("dagDeconstructEvaluation", null, new TreeDumperNode[] 16710new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16714public override TreeDumperNode VisitDagTypeEvaluation(BoundDagTypeEvaluation node, object? arg) => new TreeDumperNode("dagTypeEvaluation", null, new TreeDumperNode[] 16717new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16721public override TreeDumperNode VisitDagFieldEvaluation(BoundDagFieldEvaluation node, object? arg) => new TreeDumperNode("dagFieldEvaluation", null, new TreeDumperNode[] 16724new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16728public override TreeDumperNode VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node, object? arg) => new TreeDumperNode("dagPropertyEvaluation", null, new TreeDumperNode[] 16732new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16736public override TreeDumperNode VisitDagIndexEvaluation(BoundDagIndexEvaluation node, object? arg) => new TreeDumperNode("dagIndexEvaluation", null, new TreeDumperNode[] 16740new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16744public override TreeDumperNode VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node, object? arg) => new TreeDumperNode("dagIndexerEvaluation", null, new TreeDumperNode[] 16747new TreeDumperNode("lengthTemp", null, new TreeDumperNode[] { Visit(node.LengthTemp, null) }), 16749new TreeDumperNode("indexerAccess", null, new TreeDumperNode[] { Visit(node.IndexerAccess, null) }), 16750new TreeDumperNode("receiverPlaceholder", null, new TreeDumperNode[] { Visit(node.ReceiverPlaceholder, null) }), 16751new TreeDumperNode("argumentPlaceholder", null, new TreeDumperNode[] { Visit(node.ArgumentPlaceholder, null) }), 16752new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16756public override TreeDumperNode VisitDagSliceEvaluation(BoundDagSliceEvaluation node, object? arg) => new TreeDumperNode("dagSliceEvaluation", null, new TreeDumperNode[] 16759new TreeDumperNode("lengthTemp", null, new TreeDumperNode[] { Visit(node.LengthTemp, null) }), 16762new TreeDumperNode("indexerAccess", null, new TreeDumperNode[] { Visit(node.IndexerAccess, null) }), 16763new TreeDumperNode("receiverPlaceholder", null, new TreeDumperNode[] { Visit(node.ReceiverPlaceholder, null) }), 16764new TreeDumperNode("argumentPlaceholder", null, new TreeDumperNode[] { Visit(node.ArgumentPlaceholder, null) }), 16765new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16769public override TreeDumperNode VisitDagAssignmentEvaluation(BoundDagAssignmentEvaluation node, object? arg) => new TreeDumperNode("dagAssignmentEvaluation", null, new TreeDumperNode[] 16771new TreeDumperNode("target", null, new TreeDumperNode[] { Visit(node.Target, null) }), 16772new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16776public override TreeDumperNode VisitDagPassThroughEvaluation(BoundDagPassThroughEvaluation node, object? arg) => new TreeDumperNode("dagPassThroughEvaluation", null, new TreeDumperNode[] 16778new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16782public override TreeDumperNode VisitSwitchSection(BoundSwitchSection node, object? arg) => new TreeDumperNode("switchSection", null, new TreeDumperNode[] 16790public override TreeDumperNode VisitSwitchLabel(BoundSwitchLabel node, object? arg) => new TreeDumperNode("switchLabel", null, new TreeDumperNode[] 16793new TreeDumperNode("pattern", null, new TreeDumperNode[] { Visit(node.Pattern, null) }), 16795new TreeDumperNode("whenClause", null, new TreeDumperNode[] { Visit(node.WhenClause, null) }), 16799public override TreeDumperNode VisitSequencePointExpression(BoundSequencePointExpression node, object? arg) => new TreeDumperNode("sequencePointExpression", null, new TreeDumperNode[] 16801new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16807public override TreeDumperNode VisitSequence(BoundSequence node, object? arg) => new TreeDumperNode("sequence", null, new TreeDumperNode[] 16811new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 16817public override TreeDumperNode VisitSpillSequence(BoundSpillSequence node, object? arg) => new TreeDumperNode("spillSequence", null, new TreeDumperNode[] 16821new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 16827public override TreeDumperNode VisitDynamicMemberAccess(BoundDynamicMemberAccess node, object? arg) => new TreeDumperNode("dynamicMemberAccess", null, new TreeDumperNode[] 16829new TreeDumperNode("receiver", null, new TreeDumperNode[] { Visit(node.Receiver, null) }), 16839public override TreeDumperNode VisitDynamicInvocation(BoundDynamicInvocation node, object? arg) => new TreeDumperNode("dynamicInvocation", null, new TreeDumperNode[] 16844new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16851public override TreeDumperNode VisitConditionalAccess(BoundConditionalAccess node, object? arg) => new TreeDumperNode("conditionalAccess", null, new TreeDumperNode[] 16853new TreeDumperNode("receiver", null, new TreeDumperNode[] { Visit(node.Receiver, null) }), 16854new TreeDumperNode("accessExpression", null, new TreeDumperNode[] { Visit(node.AccessExpression, null) }), 16860public override TreeDumperNode VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node, object? arg) => new TreeDumperNode("loweredConditionalAccess", null, new TreeDumperNode[] 16862new TreeDumperNode("receiver", null, new TreeDumperNode[] { Visit(node.Receiver, null) }), 16864new TreeDumperNode("whenNotNull", null, new TreeDumperNode[] { Visit(node.WhenNotNull, null) }), 16865new TreeDumperNode("whenNullOpt", null, new TreeDumperNode[] { Visit(node.WhenNullOpt, null) }), 16873public override TreeDumperNode VisitConditionalReceiver(BoundConditionalReceiver node, object? arg) => new TreeDumperNode("conditionalReceiver", null, new TreeDumperNode[] 16881public override TreeDumperNode VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node, object? arg) => new TreeDumperNode("complexConditionalReceiver", null, new TreeDumperNode[] 16883new TreeDumperNode("valueTypeReceiver", null, new TreeDumperNode[] { Visit(node.ValueTypeReceiver, null) }), 16884new TreeDumperNode("referenceTypeReceiver", null, new TreeDumperNode[] { Visit(node.ReferenceTypeReceiver, null) }), 16890public override TreeDumperNode VisitMethodGroup(BoundMethodGroup node, object? arg) => new TreeDumperNode("methodGroup", null, new TreeDumperNode[] 16899new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 16906public override TreeDumperNode VisitPropertyGroup(BoundPropertyGroup node, object? arg) => new TreeDumperNode("propertyGroup", null, new TreeDumperNode[] 16909new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 16916public override TreeDumperNode VisitCall(BoundCall node, object? arg) => new TreeDumperNode("call", null, new TreeDumperNode[] 16918new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 16936public override TreeDumperNode VisitEventAssignmentOperator(BoundEventAssignmentOperator node, object? arg) => new TreeDumperNode("eventAssignmentOperator", null, new TreeDumperNode[] 16941new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 16942new TreeDumperNode("argument", null, new TreeDumperNode[] { Visit(node.Argument, null) }), 16948public override TreeDumperNode VisitAttribute(BoundAttribute node, object? arg) => new TreeDumperNode("attribute", null, new TreeDumperNode[] 16963public override TreeDumperNode VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node, object? arg) => new TreeDumperNode("unconvertedObjectCreationExpression", null, new TreeDumperNode[] 16975public override TreeDumperNode VisitObjectCreationExpression(BoundObjectCreationExpression node, object? arg) => new TreeDumperNode("objectCreationExpression", null, new TreeDumperNode[] 16986new TreeDumperNode("initializerExpressionOpt", null, new TreeDumperNode[] { Visit(node.InitializerExpressionOpt, null) }), 16993public override TreeDumperNode VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node, object? arg) => new TreeDumperNode("unconvertedCollectionExpression", null, new TreeDumperNode[] 16995new TreeDumperNode("withElement", null, new TreeDumperNode[] { Visit(node.WithElement, null) }), 17002public override TreeDumperNode VisitUnconvertedWithElement(BoundUnconvertedWithElement node, object? arg) => new TreeDumperNode("unconvertedWithElement", null, new TreeDumperNode[] 17010public override TreeDumperNode VisitCollectionExpression(BoundCollectionExpression node, object? arg) => new TreeDumperNode("collectionExpression", null, new TreeDumperNode[] 17013new TreeDumperNode("placeholder", null, new TreeDumperNode[] { Visit(node.Placeholder, null) }), 17014new TreeDumperNode("collectionCreation", null, new TreeDumperNode[] { Visit(node.CollectionCreation, null) }), 17016new TreeDumperNode("collectionBuilderElementsPlaceholder", null, new TreeDumperNode[] { Visit(node.CollectionBuilderElementsPlaceholder, null) }), 17019new TreeDumperNode("unconvertedCollectionExpression", null, new TreeDumperNode[] { Visit(node.UnconvertedCollectionExpression, null) }), 17026public override TreeDumperNode VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node, object? arg) => new TreeDumperNode("collectionExpressionSpreadExpressionPlaceholder", null, new TreeDumperNode[] 17033public override TreeDumperNode VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node, object? arg) => new TreeDumperNode("collectionExpressionSpreadElement", null, new TreeDumperNode[] 17035new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 17036new TreeDumperNode("expressionPlaceholder", null, new TreeDumperNode[] { Visit(node.ExpressionPlaceholder, null) }), 17037new TreeDumperNode("conversion", null, new TreeDumperNode[] { Visit(node.Conversion, null) }), 17039new TreeDumperNode("lengthOrCount", null, new TreeDumperNode[] { Visit(node.LengthOrCount, null) }), 17040new TreeDumperNode("elementPlaceholder", null, new TreeDumperNode[] { Visit(node.ElementPlaceholder, null) }), 17041new TreeDumperNode("iteratorBody", null, new TreeDumperNode[] { Visit(node.IteratorBody, null) }), 17045public override TreeDumperNode VisitTupleLiteral(BoundTupleLiteral node, object? arg) => new TreeDumperNode("tupleLiteral", null, new TreeDumperNode[] 17055public override TreeDumperNode VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node, object? arg) => new TreeDumperNode("convertedTupleLiteral", null, new TreeDumperNode[] 17057new TreeDumperNode("sourceTuple", null, new TreeDumperNode[] { Visit(node.SourceTuple, null) }), 17067public override TreeDumperNode VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node, object? arg) => new TreeDumperNode("dynamicObjectCreationExpression", null, new TreeDumperNode[] 17073new TreeDumperNode("initializerExpressionOpt", null, new TreeDumperNode[] { Visit(node.InitializerExpressionOpt, null) }), 17081public override TreeDumperNode VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node, object? arg) => new TreeDumperNode("noPiaObjectCreationExpression", null, new TreeDumperNode[] 17084new TreeDumperNode("initializerExpressionOpt", null, new TreeDumperNode[] { Visit(node.InitializerExpressionOpt, null) }), 17091public override TreeDumperNode VisitObjectInitializerExpression(BoundObjectInitializerExpression node, object? arg) => new TreeDumperNode("objectInitializerExpression", null, new TreeDumperNode[] 17093new TreeDumperNode("placeholder", null, new TreeDumperNode[] { Visit(node.Placeholder, null) }), 17100public override TreeDumperNode VisitObjectInitializerMember(BoundObjectInitializerMember node, object? arg) => new TreeDumperNode("objectInitializerMember", null, new TreeDumperNode[] 17117public override TreeDumperNode VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node, object? arg) => new TreeDumperNode("dynamicObjectInitializerMember", null, new TreeDumperNode[] 17126public override TreeDumperNode VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node, object? arg) => new TreeDumperNode("collectionInitializerExpression", null, new TreeDumperNode[] 17128new TreeDumperNode("placeholder", null, new TreeDumperNode[] { Visit(node.Placeholder, null) }), 17135public override TreeDumperNode VisitCollectionElementInitializer(BoundCollectionElementInitializer node, object? arg) => new TreeDumperNode("collectionElementInitializer", null, new TreeDumperNode[] 17139new TreeDumperNode("implicitReceiverOpt", null, new TreeDumperNode[] { Visit(node.ImplicitReceiverOpt, null) }), 17150public override TreeDumperNode VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node, object? arg) => new TreeDumperNode("dynamicCollectionElementInitializer", null, new TreeDumperNode[] 17153new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 17160public override TreeDumperNode VisitImplicitReceiver(BoundImplicitReceiver node, object? arg) => new TreeDumperNode("implicitReceiver", null, new TreeDumperNode[] 17167public override TreeDumperNode VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node, object? arg) => new TreeDumperNode("anonymousObjectCreationExpression", null, new TreeDumperNode[] 17177public override TreeDumperNode VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node, object? arg) => new TreeDumperNode("anonymousPropertyDeclaration", null, new TreeDumperNode[] 17185public override TreeDumperNode VisitNewT(BoundNewT node, object? arg) => new TreeDumperNode("newT", null, new TreeDumperNode[] 17187new TreeDumperNode("initializerExpressionOpt", null, new TreeDumperNode[] { Visit(node.InitializerExpressionOpt, null) }), 17194public override TreeDumperNode VisitDelegateCreationExpression(BoundDelegateCreationExpression node, object? arg) => new TreeDumperNode("delegateCreationExpression", null, new TreeDumperNode[] 17196new TreeDumperNode("argument", null, new TreeDumperNode[] { Visit(node.Argument, null) }), 17205public override TreeDumperNode VisitArrayCreation(BoundArrayCreation node, object? arg) => new TreeDumperNode("arrayCreation", null, new TreeDumperNode[] 17208new TreeDumperNode("initializerOpt", null, new TreeDumperNode[] { Visit(node.InitializerOpt, null) }), 17214public override TreeDumperNode VisitArrayInitialization(BoundArrayInitialization node, object? arg) => new TreeDumperNode("arrayInitialization", null, new TreeDumperNode[] 17223public override TreeDumperNode VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node, object? arg) => new TreeDumperNode("stackAllocArrayCreation", null, new TreeDumperNode[] 17226new TreeDumperNode("count", null, new TreeDumperNode[] { Visit(node.Count, null) }), 17227new TreeDumperNode("initializerOpt", null, new TreeDumperNode[] { Visit(node.InitializerOpt, null) }), 17233public override TreeDumperNode VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node, object? arg) => new TreeDumperNode("convertedStackAllocExpression", null, new TreeDumperNode[] 17236new TreeDumperNode("count", null, new TreeDumperNode[] { Visit(node.Count, null) }), 17237new TreeDumperNode("initializerOpt", null, new TreeDumperNode[] { Visit(node.InitializerOpt, null) }), 17243public override TreeDumperNode VisitFieldAccess(BoundFieldAccess node, object? arg) => new TreeDumperNode("fieldAccess", null, new TreeDumperNode[] 17245new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 17256public override TreeDumperNode VisitHoistedFieldAccess(BoundHoistedFieldAccess node, object? arg) => new TreeDumperNode("hoistedFieldAccess", null, new TreeDumperNode[] 17264public override TreeDumperNode VisitPropertyAccess(BoundPropertyAccess node, object? arg) => new TreeDumperNode("propertyAccess", null, new TreeDumperNode[] 17266new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 17276public override TreeDumperNode VisitEventAccess(BoundEventAccess node, object? arg) => new TreeDumperNode("eventAccess", null, new TreeDumperNode[] 17278new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 17287public override TreeDumperNode VisitIndexerAccess(BoundIndexerAccess node, object? arg) => new TreeDumperNode("indexerAccess", null, new TreeDumperNode[] 17289new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 17305public override TreeDumperNode VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node, object? arg) => new TreeDumperNode("implicitIndexerAccess", null, new TreeDumperNode[] 17307new TreeDumperNode("receiver", null, new TreeDumperNode[] { Visit(node.Receiver, null) }), 17308new TreeDumperNode("argument", null, new TreeDumperNode[] { Visit(node.Argument, null) }), 17309new TreeDumperNode("lengthOrCountAccess", null, new TreeDumperNode[] { Visit(node.LengthOrCountAccess, null) }), 17310new TreeDumperNode("receiverPlaceholder", null, new TreeDumperNode[] { Visit(node.ReceiverPlaceholder, null) }), 17311new TreeDumperNode("indexerOrSliceAccess", null, new TreeDumperNode[] { Visit(node.IndexerOrSliceAccess, null) }), 17318public override TreeDumperNode VisitInlineArrayAccess(BoundInlineArrayAccess node, object? arg) => new TreeDumperNode("inlineArrayAccess", null, new TreeDumperNode[] 17320new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 17321new TreeDumperNode("argument", null, new TreeDumperNode[] { Visit(node.Argument, null) }), 17329public override TreeDumperNode VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node, object? arg) => new TreeDumperNode("dynamicIndexerAccess", null, new TreeDumperNode[] 17331new TreeDumperNode("receiver", null, new TreeDumperNode[] { Visit(node.Receiver, null) }), 17341public override TreeDumperNode VisitLambda(BoundLambda node, object? arg) => new TreeDumperNode("lambda", null, new TreeDumperNode[] 17343new TreeDumperNode("unboundLambda", null, new TreeDumperNode[] { Visit(node.UnboundLambda, null) }), 17345new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 17353public override TreeDumperNode VisitUnboundLambda(UnboundLambda node, object? arg) => new TreeDumperNode("unboundLambda", null, new TreeDumperNode[] 17363public override TreeDumperNode VisitQueryClause(BoundQueryClause node, object? arg) => new TreeDumperNode("queryClause", null, new TreeDumperNode[] 17365new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 17367new TreeDumperNode("operation", null, new TreeDumperNode[] { Visit(node.Operation, null) }), 17368new TreeDumperNode("cast", null, new TreeDumperNode[] { Visit(node.Cast, null) }), 17370new TreeDumperNode("unoptimizedForm", null, new TreeDumperNode[] { Visit(node.UnoptimizedForm, null) }), 17376public override TreeDumperNode VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node, object? arg) => new TreeDumperNode("typeOrInstanceInitializers", null, new TreeDumperNode[] 17382public override TreeDumperNode VisitNameOfOperator(BoundNameOfOperator node, object? arg) => new TreeDumperNode("nameOfOperator", null, new TreeDumperNode[] 17384new TreeDumperNode("argument", null, new TreeDumperNode[] { Visit(node.Argument, null) }), 17391public override TreeDumperNode VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node, object? arg) => new TreeDumperNode("unconvertedInterpolatedString", null, new TreeDumperNode[] 17400public override TreeDumperNode VisitInterpolatedString(BoundInterpolatedString node, object? arg) => new TreeDumperNode("interpolatedString", null, new TreeDumperNode[] 17410public override TreeDumperNode VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node, object? arg) => new TreeDumperNode("interpolatedStringHandlerPlaceholder", null, new TreeDumperNode[] 17417public override TreeDumperNode VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node, object? arg) => new TreeDumperNode("interpolatedStringArgumentPlaceholder", null, new TreeDumperNode[] 17425public override TreeDumperNode VisitStringInsert(BoundStringInsert node, object? arg) => new TreeDumperNode("stringInsert", null, new TreeDumperNode[] 17427new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 17428new TreeDumperNode("alignment", null, new TreeDumperNode[] { Visit(node.Alignment, null) }), 17429new TreeDumperNode("format", null, new TreeDumperNode[] { Visit(node.Format, null) }), 17436public override TreeDumperNode VisitIsPatternExpression(BoundIsPatternExpression node, object? arg) => new TreeDumperNode("isPatternExpression", null, new TreeDumperNode[] 17438new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 17439new TreeDumperNode("pattern", null, new TreeDumperNode[] { Visit(node.Pattern, null) }), 17442new TreeDumperNode("reachabilityDecisionDag", null, new TreeDumperNode[] { Visit(node.ReachabilityDecisionDag, null) }), 17450public override TreeDumperNode VisitConstantPattern(BoundConstantPattern node, object? arg) => new TreeDumperNode("constantPattern", null, new TreeDumperNode[] 17452new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 17460public override TreeDumperNode VisitPatternWithUnionMatching(BoundPatternWithUnionMatching node, object? arg) => new TreeDumperNode("patternWithUnionMatching", null, new TreeDumperNode[] 17463new TreeDumperNode("leftOfPendingConjunction", null, new TreeDumperNode[] { Visit(node.LeftOfPendingConjunction, null) }), 17464new TreeDumperNode("valueProperty", null, new TreeDumperNode[] { Visit(node.ValueProperty, null) }), 17465new TreeDumperNode("valuePattern", null, new TreeDumperNode[] { Visit(node.ValuePattern, null) }), 17471public override TreeDumperNode VisitDiscardPattern(BoundDiscardPattern node, object? arg) => new TreeDumperNode("discardPattern", null, new TreeDumperNode[] 17478public override TreeDumperNode VisitDeclarationPattern(BoundDeclarationPattern node, object? arg) => new TreeDumperNode("declarationPattern", null, new TreeDumperNode[] 17480new TreeDumperNode("declaredType", null, new TreeDumperNode[] { Visit(node.DeclaredType, null) }), 17483new TreeDumperNode("variableAccess", null, new TreeDumperNode[] { Visit(node.VariableAccess, null) }), 17490public override TreeDumperNode VisitRecursivePattern(BoundRecursivePattern node, object? arg) => new TreeDumperNode("recursivePattern", null, new TreeDumperNode[] 17492new TreeDumperNode("declaredType", null, new TreeDumperNode[] { Visit(node.DeclaredType, null) }), 17494new TreeDumperNode("deconstruction", null, node.Deconstruction.IsDefault ? Array.Empty<TreeDumperNode>() : from x in node.Deconstruction select Visit(x, null)), 17495new TreeDumperNode("properties", null, node.Properties.IsDefault ? Array.Empty<TreeDumperNode>() : from x in node.Properties select Visit(x, null)), 17498new TreeDumperNode("variableAccess", null, new TreeDumperNode[] { Visit(node.VariableAccess, null) }), 17505public override TreeDumperNode VisitListPattern(BoundListPattern node, object? arg) => new TreeDumperNode("listPattern", null, new TreeDumperNode[] 17509new TreeDumperNode("lengthAccess", null, new TreeDumperNode[] { Visit(node.LengthAccess, null) }), 17510new TreeDumperNode("indexerAccess", null, new TreeDumperNode[] { Visit(node.IndexerAccess, null) }), 17511new TreeDumperNode("receiverPlaceholder", null, new TreeDumperNode[] { Visit(node.ReceiverPlaceholder, null) }), 17512new TreeDumperNode("argumentPlaceholder", null, new TreeDumperNode[] { Visit(node.ArgumentPlaceholder, null) }), 17514new TreeDumperNode("variableAccess", null, new TreeDumperNode[] { Visit(node.VariableAccess, null) }), 17521public override TreeDumperNode VisitSlicePattern(BoundSlicePattern node, object? arg) => new TreeDumperNode("slicePattern", null, new TreeDumperNode[] 17523new TreeDumperNode("pattern", null, new TreeDumperNode[] { Visit(node.Pattern, null) }), 17524new TreeDumperNode("indexerAccess", null, new TreeDumperNode[] { Visit(node.IndexerAccess, null) }), 17525new TreeDumperNode("receiverPlaceholder", null, new TreeDumperNode[] { Visit(node.ReceiverPlaceholder, null) }), 17526new TreeDumperNode("argumentPlaceholder", null, new TreeDumperNode[] { Visit(node.ArgumentPlaceholder, null) }), 17532public override TreeDumperNode VisitITuplePattern(BoundITuplePattern node, object? arg) => new TreeDumperNode("iTuplePattern", null, new TreeDumperNode[] 17543public override TreeDumperNode VisitPositionalSubpattern(BoundPositionalSubpattern node, object? arg) => new TreeDumperNode("positionalSubpattern", null, new TreeDumperNode[] 17546new TreeDumperNode("pattern", null, new TreeDumperNode[] { Visit(node.Pattern, null) }), 17550public override TreeDumperNode VisitPropertySubpattern(BoundPropertySubpattern node, object? arg) => new TreeDumperNode("propertySubpattern", null, new TreeDumperNode[] 17552new TreeDumperNode("member", null, new TreeDumperNode[] { Visit(node.Member, null) }), 17554new TreeDumperNode("pattern", null, new TreeDumperNode[] { Visit(node.Pattern, null) }), 17558public override TreeDumperNode VisitPropertySubpatternMember(BoundPropertySubpatternMember node, object? arg) => new TreeDumperNode("propertySubpatternMember", null, new TreeDumperNode[] 17560new TreeDumperNode("receiver", null, new TreeDumperNode[] { Visit(node.Receiver, null) }), 17566public override TreeDumperNode VisitTypePattern(BoundTypePattern node, object? arg) => new TreeDumperNode("typePattern", null, new TreeDumperNode[] 17568new TreeDumperNode("declaredType", null, new TreeDumperNode[] { Visit(node.DeclaredType, null) }), 17576public override TreeDumperNode VisitBinaryPattern(BoundBinaryPattern node, object? arg) => new TreeDumperNode("binaryPattern", null, new TreeDumperNode[] 17579new TreeDumperNode("left", null, new TreeDumperNode[] { Visit(node.Left, null) }), 17580new TreeDumperNode("right", null, new TreeDumperNode[] { Visit(node.Right, null) }), 17586public override TreeDumperNode VisitNegatedPattern(BoundNegatedPattern node, object? arg) => new TreeDumperNode("negatedPattern", null, new TreeDumperNode[] 17588new TreeDumperNode("negated", null, new TreeDumperNode[] { Visit(node.Negated, null) }), 17595public override TreeDumperNode VisitRelationalPattern(BoundRelationalPattern node, object? arg) => new TreeDumperNode("relationalPattern", null, new TreeDumperNode[] 17598new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 17606public override TreeDumperNode VisitDiscardExpression(BoundDiscardExpression node, object? arg) => new TreeDumperNode("discardExpression", null, new TreeDumperNode[] 17615public override TreeDumperNode VisitThrowExpression(BoundThrowExpression node, object? arg) => new TreeDumperNode("throwExpression", null, new TreeDumperNode[] 17617new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 17623public override TreeDumperNode VisitOutVariablePendingInference(OutVariablePendingInference node, object? arg) => new TreeDumperNode("outVariablePendingInference", null, new TreeDumperNode[] 17626new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 17632public override TreeDumperNode VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node, object? arg) => new TreeDumperNode("deconstructionVariablePendingInference", null, new TreeDumperNode[] 17635new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 17641public override TreeDumperNode VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node, object? arg) => new TreeDumperNode("outDeconstructVarPendingInference", null, new TreeDumperNode[] 17650public override TreeDumperNode VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node, object? arg) => new TreeDumperNode("nonConstructorMethodBody", null, new TreeDumperNode[] 17652new TreeDumperNode("blockBody", null, new TreeDumperNode[] { Visit(node.BlockBody, null) }), 17653new TreeDumperNode("expressionBody", null, new TreeDumperNode[] { Visit(node.ExpressionBody, null) }), 17657public override TreeDumperNode VisitConstructorMethodBody(BoundConstructorMethodBody node, object? arg) => new TreeDumperNode("constructorMethodBody", null, new TreeDumperNode[] 17660new TreeDumperNode("initializer", null, new TreeDumperNode[] { Visit(node.Initializer, null) }), 17661new TreeDumperNode("blockBody", null, new TreeDumperNode[] { Visit(node.BlockBody, null) }), 17662new TreeDumperNode("expressionBody", null, new TreeDumperNode[] { Visit(node.ExpressionBody, null) }), 17666public override TreeDumperNode VisitExpressionWithNullability(BoundExpressionWithNullability node, object? arg) => new TreeDumperNode("expressionWithNullability", null, new TreeDumperNode[] 17668new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 17675public override TreeDumperNode VisitValueForNullableAnalysis(BoundValueForNullableAnalysis node, object? arg) => new TreeDumperNode("valueForNullableAnalysis", null, new TreeDumperNode[] 17677new TreeDumperNode("originalExpression", null, new TreeDumperNode[] { Visit(node.OriginalExpression, null) }), 17683public override TreeDumperNode VisitWithExpression(BoundWithExpression node, object? arg) => new TreeDumperNode("withExpression", null, new TreeDumperNode[] 17685new TreeDumperNode("receiver", null, new TreeDumperNode[] { Visit(node.Receiver, null) }), 17687new TreeDumperNode("initializerExpression", null, new TreeDumperNode[] { Visit(node.InitializerExpression, null) }),
Lowering\SpillSequenceSpiller.cs (3)
169var node = new TreeDumperNode("boundSpillSequenceBuilder", null, new TreeDumperNode[] 173new TreeDumperNode("value", null, new TreeDumperNode[] { BoundTreeDumperNodeProducer.MakeTree(this.Value) }),
Syntax\CSharpSyntaxNode.cs (1)
546static TreeDumperNode makeTree(SyntaxNodeOrToken nodeOrToken)
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (5)
Semantics\OperatorTests.cs (4)
3195private static void TestBoundTree(string source, System.Func<IEnumerable<KeyValuePair<TreeDumperNode, TreeDumperNode>>, IEnumerable<string>> query) 3206var tree = BoundTreeDumperNodeProducer.MakeTree(block); 3250"leftConversion" or "finalConversion" => (child.Children.SingleOrDefault() is TreeDumperNode node ?
Semantics\OverloadResolutionTestBase.cs (1)
39var tree = BoundTreeDumperNodeProducer.MakeTree(block);