1489 references to TreeDumperNode
Microsoft.CodeAnalysis (1)
TreeDumper.cs (1)
246public TreeDumperNode(string text) : this(text, null, null) { }
Microsoft.CodeAnalysis.CSharp (1488)
Binder\Binder.cs (4)
928sub.Add(new TreeDumperNode("locals", locals, null)); 933sub.Add(new TreeDumperNode("containing symbol", currentContainer.ToDisplayString(), null)); 937sub.Add(new TreeDumperNode($"scope", $"{snippet} ({scope.ScopeDesignator?.Kind()})", null)); 943current = new TreeDumperNode(description, null, sub);
Binder\Semantics\Conversions\Conversion.cs (4)
1228sub.Add(new TreeDumperNode("method", self.Method.ToDisplayString(), null)); 1233sub.Add(new TreeDumperNode("deconstructionInfo", null, 1240sub.Add(new TreeDumperNode($"underlyingConversions[{underlyingConversions.Length}]", null, 1244return 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 (1467)
15138public override TreeDumperNode VisitFieldEqualsValue(BoundFieldEqualsValue node, object? arg) => new TreeDumperNode("fieldEqualsValue", null, new TreeDumperNode[] 15140new TreeDumperNode("field", node.Field, null), 15141new TreeDumperNode("locals", node.Locals, null), 15142new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 15143new TreeDumperNode("hasErrors", node.HasErrors, null) 15146public override TreeDumperNode VisitPropertyEqualsValue(BoundPropertyEqualsValue node, object? arg) => new TreeDumperNode("propertyEqualsValue", null, new TreeDumperNode[] 15148new TreeDumperNode("property", node.Property, null), 15149new TreeDumperNode("locals", node.Locals, null), 15150new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 15151new TreeDumperNode("hasErrors", node.HasErrors, null) 15154public override TreeDumperNode VisitParameterEqualsValue(BoundParameterEqualsValue node, object? arg) => new TreeDumperNode("parameterEqualsValue", null, new TreeDumperNode[] 15156new TreeDumperNode("parameter", node.Parameter, null), 15157new TreeDumperNode("locals", node.Locals, null), 15158new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 15159new TreeDumperNode("hasErrors", node.HasErrors, null) 15162public override TreeDumperNode VisitGlobalStatementInitializer(BoundGlobalStatementInitializer node, object? arg) => new TreeDumperNode("globalStatementInitializer", null, new TreeDumperNode[] 15164new TreeDumperNode("statement", null, new TreeDumperNode[] { Visit(node.Statement, null) }), 15165new TreeDumperNode("hasErrors", node.HasErrors, null) 15168public override TreeDumperNode VisitValuePlaceholder(BoundValuePlaceholder node, object? arg) => new TreeDumperNode("valuePlaceholder", null, new TreeDumperNode[] 15170new TreeDumperNode("type", node.Type, null), 15171new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15172new TreeDumperNode("hasErrors", node.HasErrors, null) 15175public override TreeDumperNode VisitCapturedReceiverPlaceholder(BoundCapturedReceiverPlaceholder node, object? arg) => new TreeDumperNode("capturedReceiverPlaceholder", null, new TreeDumperNode[] 15177new TreeDumperNode("receiver", null, new TreeDumperNode[] { Visit(node.Receiver, null) }), 15178new TreeDumperNode("localScopeDepth", node.LocalScopeDepth, null), 15179new TreeDumperNode("type", node.Type, null), 15180new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15181new TreeDumperNode("hasErrors", node.HasErrors, null) 15184public override TreeDumperNode VisitDeconstructValuePlaceholder(BoundDeconstructValuePlaceholder node, object? arg) => new TreeDumperNode("deconstructValuePlaceholder", null, new TreeDumperNode[] 15186new TreeDumperNode("variableSymbol", node.VariableSymbol, null), 15187new TreeDumperNode("isDiscardExpression", node.IsDiscardExpression, null), 15188new TreeDumperNode("type", node.Type, null), 15189new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15190new TreeDumperNode("hasErrors", node.HasErrors, null) 15193public override TreeDumperNode VisitTupleOperandPlaceholder(BoundTupleOperandPlaceholder node, object? arg) => new TreeDumperNode("tupleOperandPlaceholder", null, new TreeDumperNode[] 15195new TreeDumperNode("type", node.Type, null), 15196new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15197new TreeDumperNode("hasErrors", node.HasErrors, null) 15200public override TreeDumperNode VisitAwaitableValuePlaceholder(BoundAwaitableValuePlaceholder node, object? arg) => new TreeDumperNode("awaitableValuePlaceholder", null, new TreeDumperNode[] 15202new TreeDumperNode("type", node.Type, null), 15203new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15204new TreeDumperNode("hasErrors", node.HasErrors, null) 15207public override TreeDumperNode VisitDisposableValuePlaceholder(BoundDisposableValuePlaceholder node, object? arg) => new TreeDumperNode("disposableValuePlaceholder", null, new TreeDumperNode[] 15209new TreeDumperNode("type", node.Type, null), 15210new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15211new TreeDumperNode("hasErrors", node.HasErrors, null) 15214public override TreeDumperNode VisitObjectOrCollectionValuePlaceholder(BoundObjectOrCollectionValuePlaceholder node, object? arg) => new TreeDumperNode("objectOrCollectionValuePlaceholder", null, new TreeDumperNode[] 15216new TreeDumperNode("isNewInstance", node.IsNewInstance, null), 15217new TreeDumperNode("type", node.Type, null), 15218new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15219new TreeDumperNode("hasErrors", node.HasErrors, null) 15222public override TreeDumperNode VisitImplicitIndexerValuePlaceholder(BoundImplicitIndexerValuePlaceholder node, object? arg) => new TreeDumperNode("implicitIndexerValuePlaceholder", null, new TreeDumperNode[] 15224new TreeDumperNode("type", node.Type, null), 15225new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15226new TreeDumperNode("hasErrors", node.HasErrors, null) 15229public override TreeDumperNode VisitImplicitIndexerReceiverPlaceholder(BoundImplicitIndexerReceiverPlaceholder node, object? arg) => new TreeDumperNode("implicitIndexerReceiverPlaceholder", null, new TreeDumperNode[] 15231new TreeDumperNode("isEquivalentToThisReference", node.IsEquivalentToThisReference, null), 15232new TreeDumperNode("type", node.Type, null), 15233new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15234new TreeDumperNode("hasErrors", node.HasErrors, null) 15237public override TreeDumperNode VisitListPatternReceiverPlaceholder(BoundListPatternReceiverPlaceholder node, object? arg) => new TreeDumperNode("listPatternReceiverPlaceholder", null, new TreeDumperNode[] 15239new TreeDumperNode("type", node.Type, null), 15240new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15241new TreeDumperNode("hasErrors", node.HasErrors, null) 15244public override TreeDumperNode VisitListPatternIndexPlaceholder(BoundListPatternIndexPlaceholder node, object? arg) => new TreeDumperNode("listPatternIndexPlaceholder", null, new TreeDumperNode[] 15246new TreeDumperNode("type", node.Type, null), 15247new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15248new TreeDumperNode("hasErrors", node.HasErrors, null) 15251public override TreeDumperNode VisitSlicePatternReceiverPlaceholder(BoundSlicePatternReceiverPlaceholder node, object? arg) => new TreeDumperNode("slicePatternReceiverPlaceholder", null, new TreeDumperNode[] 15253new TreeDumperNode("type", node.Type, null), 15254new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15255new TreeDumperNode("hasErrors", node.HasErrors, null) 15258public override TreeDumperNode VisitSlicePatternRangePlaceholder(BoundSlicePatternRangePlaceholder node, object? arg) => new TreeDumperNode("slicePatternRangePlaceholder", null, new TreeDumperNode[] 15260new TreeDumperNode("type", node.Type, null), 15261new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15262new TreeDumperNode("hasErrors", node.HasErrors, null) 15265public override TreeDumperNode VisitDup(BoundDup node, object? arg) => new TreeDumperNode("dup", null, new TreeDumperNode[] 15267new TreeDumperNode("refKind", node.RefKind, null), 15268new TreeDumperNode("type", node.Type, null), 15269new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15270new TreeDumperNode("hasErrors", node.HasErrors, null) 15273public override TreeDumperNode VisitPassByCopy(BoundPassByCopy node, object? arg) => new TreeDumperNode("passByCopy", null, new TreeDumperNode[] 15275new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 15276new TreeDumperNode("type", node.Type, null), 15277new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15278new TreeDumperNode("hasErrors", node.HasErrors, null) 15281public override TreeDumperNode VisitBadExpression(BoundBadExpression node, object? arg) => new TreeDumperNode("badExpression", null, new TreeDumperNode[] 15283new TreeDumperNode("resultKind", node.ResultKind, null), 15284new TreeDumperNode("symbols", node.Symbols, null), 15285new TreeDumperNode("childBoundNodes", null, from x in node.ChildBoundNodes select Visit(x, null)), 15286new TreeDumperNode("type", node.Type, null), 15287new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15288new TreeDumperNode("hasErrors", node.HasErrors, null) 15291public override TreeDumperNode VisitBadStatement(BoundBadStatement node, object? arg) => new TreeDumperNode("badStatement", null, new TreeDumperNode[] 15293new TreeDumperNode("childBoundNodes", null, from x in node.ChildBoundNodes select Visit(x, null)), 15294new TreeDumperNode("hasErrors", node.HasErrors, null) 15297public override TreeDumperNode VisitExtractedFinallyBlock(BoundExtractedFinallyBlock node, object? arg) => new TreeDumperNode("extractedFinallyBlock", null, new TreeDumperNode[] 15299new TreeDumperNode("finallyBlock", null, new TreeDumperNode[] { Visit(node.FinallyBlock, null) }), 15300new TreeDumperNode("hasErrors", node.HasErrors, null) 15303public override TreeDumperNode VisitTypeExpression(BoundTypeExpression node, object? arg) => new TreeDumperNode("typeExpression", null, new TreeDumperNode[] 15305new TreeDumperNode("aliasOpt", node.AliasOpt, null), 15306new TreeDumperNode("boundContainingTypeOpt", null, new TreeDumperNode[] { Visit(node.BoundContainingTypeOpt, null) }), 15307new TreeDumperNode("boundDimensionsOpt", null, node.BoundDimensionsOpt.IsDefault ? Array.Empty<TreeDumperNode>() : from x in node.BoundDimensionsOpt select Visit(x, null)), 15308new TreeDumperNode("typeWithAnnotations", node.TypeWithAnnotations, null), 15309new TreeDumperNode("type", node.Type, null), 15310new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15311new TreeDumperNode("hasErrors", node.HasErrors, null) 15314public override TreeDumperNode VisitTypeOrValueExpression(BoundTypeOrValueExpression node, object? arg) => new TreeDumperNode("typeOrValueExpression", null, new TreeDumperNode[] 15316new TreeDumperNode("data", node.Data, null), 15317new TreeDumperNode("type", node.Type, null), 15318new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15319new TreeDumperNode("hasErrors", node.HasErrors, null) 15322public override TreeDumperNode VisitNamespaceExpression(BoundNamespaceExpression node, object? arg) => new TreeDumperNode("namespaceExpression", null, new TreeDumperNode[] 15324new TreeDumperNode("namespaceSymbol", node.NamespaceSymbol, null), 15325new TreeDumperNode("aliasOpt", node.AliasOpt, null), 15326new TreeDumperNode("type", node.Type, null), 15327new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15328new TreeDumperNode("hasErrors", node.HasErrors, null) 15331public override TreeDumperNode VisitUnaryOperator(BoundUnaryOperator node, object? arg) => new TreeDumperNode("unaryOperator", null, new TreeDumperNode[] 15333new TreeDumperNode("operatorKind", node.OperatorKind, null), 15334new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15335new TreeDumperNode("constantValueOpt", node.ConstantValueOpt, null), 15336new TreeDumperNode("methodOpt", node.MethodOpt, null), 15337new TreeDumperNode("constrainedToTypeOpt", node.ConstrainedToTypeOpt, null), 15338new TreeDumperNode("resultKind", node.ResultKind, null), 15339new TreeDumperNode("originalUserDefinedOperatorsOpt", node.OriginalUserDefinedOperatorsOpt, null), 15340new TreeDumperNode("type", node.Type, null), 15341new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15342new TreeDumperNode("hasErrors", node.HasErrors, null) 15345public override TreeDumperNode VisitIncrementOperator(BoundIncrementOperator node, object? arg) => new TreeDumperNode("incrementOperator", null, new TreeDumperNode[] 15347new TreeDumperNode("operatorKind", node.OperatorKind, null), 15348new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15349new TreeDumperNode("methodOpt", node.MethodOpt, null), 15350new TreeDumperNode("constrainedToTypeOpt", node.ConstrainedToTypeOpt, null), 15351new TreeDumperNode("operandPlaceholder", null, new TreeDumperNode[] { Visit(node.OperandPlaceholder, null) }), 15352new TreeDumperNode("operandConversion", null, new TreeDumperNode[] { Visit(node.OperandConversion, null) }), 15353new TreeDumperNode("resultPlaceholder", null, new TreeDumperNode[] { Visit(node.ResultPlaceholder, null) }), 15354new TreeDumperNode("resultConversion", null, new TreeDumperNode[] { Visit(node.ResultConversion, null) }), 15355new TreeDumperNode("resultKind", node.ResultKind, null), 15356new TreeDumperNode("originalUserDefinedOperatorsOpt", node.OriginalUserDefinedOperatorsOpt, null), 15357new TreeDumperNode("type", node.Type, null), 15358new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15359new TreeDumperNode("hasErrors", node.HasErrors, null) 15362public override TreeDumperNode VisitAddressOfOperator(BoundAddressOfOperator node, object? arg) => new TreeDumperNode("addressOfOperator", null, new TreeDumperNode[] 15364new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15365new TreeDumperNode("isManaged", node.IsManaged, null), 15366new TreeDumperNode("type", node.Type, null), 15367new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15368new TreeDumperNode("hasErrors", node.HasErrors, null) 15371public override TreeDumperNode VisitUnconvertedAddressOfOperator(BoundUnconvertedAddressOfOperator node, object? arg) => new TreeDumperNode("unconvertedAddressOfOperator", null, new TreeDumperNode[] 15373new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15374new TreeDumperNode("type", node.Type, null), 15375new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15376new TreeDumperNode("hasErrors", node.HasErrors, null) 15379public override TreeDumperNode VisitFunctionPointerLoad(BoundFunctionPointerLoad node, object? arg) => new TreeDumperNode("functionPointerLoad", null, new TreeDumperNode[] 15381new TreeDumperNode("targetMethod", node.TargetMethod, null), 15382new TreeDumperNode("constrainedToTypeOpt", node.ConstrainedToTypeOpt, null), 15383new TreeDumperNode("type", node.Type, null), 15384new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15385new TreeDumperNode("hasErrors", node.HasErrors, null) 15388public override TreeDumperNode VisitPointerIndirectionOperator(BoundPointerIndirectionOperator node, object? arg) => new TreeDumperNode("pointerIndirectionOperator", null, new TreeDumperNode[] 15390new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15391new TreeDumperNode("refersToLocation", node.RefersToLocation, null), 15392new TreeDumperNode("type", node.Type, null), 15393new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15394new TreeDumperNode("hasErrors", node.HasErrors, null) 15397public override TreeDumperNode VisitPointerElementAccess(BoundPointerElementAccess node, object? arg) => new TreeDumperNode("pointerElementAccess", null, new TreeDumperNode[] 15399new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 15400new TreeDumperNode("index", null, new TreeDumperNode[] { Visit(node.Index, null) }), 15401new TreeDumperNode("@checked", node.Checked, null), 15402new TreeDumperNode("refersToLocation", node.RefersToLocation, null), 15403new TreeDumperNode("type", node.Type, null), 15404new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15405new TreeDumperNode("hasErrors", node.HasErrors, null) 15408public override TreeDumperNode VisitFunctionPointerInvocation(BoundFunctionPointerInvocation node, object? arg) => new TreeDumperNode("functionPointerInvocation", null, new TreeDumperNode[] 15410new TreeDumperNode("invokedExpression", null, new TreeDumperNode[] { Visit(node.InvokedExpression, null) }), 15411new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 15412new TreeDumperNode("argumentRefKindsOpt", node.ArgumentRefKindsOpt, null), 15413new TreeDumperNode("resultKind", node.ResultKind, null), 15414new TreeDumperNode("type", node.Type, null), 15415new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15416new TreeDumperNode("hasErrors", node.HasErrors, null) 15419public override TreeDumperNode VisitRefTypeOperator(BoundRefTypeOperator node, object? arg) => new TreeDumperNode("refTypeOperator", null, new TreeDumperNode[] 15421new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15422new TreeDumperNode("getTypeFromHandle", node.GetTypeFromHandle, null), 15423new TreeDumperNode("type", node.Type, null), 15424new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15425new TreeDumperNode("hasErrors", node.HasErrors, null) 15428public override TreeDumperNode VisitMakeRefOperator(BoundMakeRefOperator node, object? arg) => new TreeDumperNode("makeRefOperator", null, new TreeDumperNode[] 15430new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15431new TreeDumperNode("type", node.Type, null), 15432new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15433new TreeDumperNode("hasErrors", node.HasErrors, null) 15436public override TreeDumperNode VisitRefValueOperator(BoundRefValueOperator node, object? arg) => new TreeDumperNode("refValueOperator", null, new TreeDumperNode[] 15438new TreeDumperNode("nullableAnnotation", node.NullableAnnotation, null), 15439new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15440new TreeDumperNode("type", node.Type, null), 15441new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15442new TreeDumperNode("hasErrors", node.HasErrors, null) 15445public override TreeDumperNode VisitFromEndIndexExpression(BoundFromEndIndexExpression node, object? arg) => new TreeDumperNode("fromEndIndexExpression", null, new TreeDumperNode[] 15447new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15448new TreeDumperNode("methodOpt", node.MethodOpt, null), 15449new TreeDumperNode("type", node.Type, null), 15450new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15451new TreeDumperNode("hasErrors", node.HasErrors, null) 15454public override TreeDumperNode VisitRangeExpression(BoundRangeExpression node, object? arg) => new TreeDumperNode("rangeExpression", null, new TreeDumperNode[] 15456new TreeDumperNode("leftOperandOpt", null, new TreeDumperNode[] { Visit(node.LeftOperandOpt, null) }), 15457new TreeDumperNode("rightOperandOpt", null, new TreeDumperNode[] { Visit(node.RightOperandOpt, null) }), 15458new TreeDumperNode("methodOpt", node.MethodOpt, null), 15459new TreeDumperNode("type", node.Type, null), 15460new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15461new TreeDumperNode("hasErrors", node.HasErrors, null) 15464public override TreeDumperNode VisitBinaryOperator(BoundBinaryOperator node, object? arg) => new TreeDumperNode("binaryOperator", null, new TreeDumperNode[] 15466new TreeDumperNode("operatorKind", node.OperatorKind, null), 15467new TreeDumperNode("data", node.Data, null), 15468new TreeDumperNode("resultKind", node.ResultKind, null), 15469new TreeDumperNode("left", null, new TreeDumperNode[] { Visit(node.Left, null) }), 15470new TreeDumperNode("right", null, new TreeDumperNode[] { Visit(node.Right, null) }), 15471new TreeDumperNode("type", node.Type, null), 15472new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15473new TreeDumperNode("hasErrors", node.HasErrors, null) 15476public override TreeDumperNode VisitTupleBinaryOperator(BoundTupleBinaryOperator node, object? arg) => new TreeDumperNode("tupleBinaryOperator", null, new TreeDumperNode[] 15478new TreeDumperNode("left", null, new TreeDumperNode[] { Visit(node.Left, null) }), 15479new TreeDumperNode("right", null, new TreeDumperNode[] { Visit(node.Right, null) }), 15480new TreeDumperNode("operatorKind", node.OperatorKind, null), 15481new TreeDumperNode("operators", node.Operators, null), 15482new TreeDumperNode("type", node.Type, null), 15483new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15484new TreeDumperNode("hasErrors", node.HasErrors, null) 15487public override TreeDumperNode VisitUserDefinedConditionalLogicalOperator(BoundUserDefinedConditionalLogicalOperator node, object? arg) => new TreeDumperNode("userDefinedConditionalLogicalOperator", null, new TreeDumperNode[] 15489new TreeDumperNode("operatorKind", node.OperatorKind, null), 15490new TreeDumperNode("logicalOperator", node.LogicalOperator, null), 15491new TreeDumperNode("trueOperator", node.TrueOperator, null), 15492new TreeDumperNode("falseOperator", node.FalseOperator, null), 15493new TreeDumperNode("trueFalseOperandPlaceholder", null, new TreeDumperNode[] { Visit(node.TrueFalseOperandPlaceholder, null) }), 15494new TreeDumperNode("trueFalseOperandConversion", null, new TreeDumperNode[] { Visit(node.TrueFalseOperandConversion, null) }), 15495new TreeDumperNode("constrainedToTypeOpt", node.ConstrainedToTypeOpt, null), 15496new TreeDumperNode("resultKind", node.ResultKind, null), 15497new TreeDumperNode("originalUserDefinedOperatorsOpt", node.OriginalUserDefinedOperatorsOpt, null), 15498new TreeDumperNode("left", null, new TreeDumperNode[] { Visit(node.Left, null) }), 15499new TreeDumperNode("right", null, new TreeDumperNode[] { Visit(node.Right, null) }), 15500new TreeDumperNode("type", node.Type, null), 15501new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15502new TreeDumperNode("hasErrors", node.HasErrors, null) 15505public override TreeDumperNode VisitCompoundAssignmentOperator(BoundCompoundAssignmentOperator node, object? arg) => new TreeDumperNode("compoundAssignmentOperator", null, new TreeDumperNode[] 15507new TreeDumperNode("@operator", node.Operator, null), 15508new TreeDumperNode("left", null, new TreeDumperNode[] { Visit(node.Left, null) }), 15509new TreeDumperNode("right", null, new TreeDumperNode[] { Visit(node.Right, null) }), 15510new TreeDumperNode("leftPlaceholder", null, new TreeDumperNode[] { Visit(node.LeftPlaceholder, null) }), 15511new TreeDumperNode("leftConversion", null, new TreeDumperNode[] { Visit(node.LeftConversion, null) }), 15512new TreeDumperNode("finalPlaceholder", null, new TreeDumperNode[] { Visit(node.FinalPlaceholder, null) }), 15513new TreeDumperNode("finalConversion", null, new TreeDumperNode[] { Visit(node.FinalConversion, null) }), 15514new TreeDumperNode("resultKind", node.ResultKind, null), 15515new TreeDumperNode("originalUserDefinedOperatorsOpt", node.OriginalUserDefinedOperatorsOpt, null), 15516new TreeDumperNode("type", node.Type, null), 15517new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15518new TreeDumperNode("hasErrors", node.HasErrors, null) 15521public override TreeDumperNode VisitAssignmentOperator(BoundAssignmentOperator node, object? arg) => new TreeDumperNode("assignmentOperator", null, new TreeDumperNode[] 15523new TreeDumperNode("left", null, new TreeDumperNode[] { Visit(node.Left, null) }), 15524new TreeDumperNode("right", null, new TreeDumperNode[] { Visit(node.Right, null) }), 15525new TreeDumperNode("isRef", node.IsRef, null), 15526new TreeDumperNode("type", node.Type, null), 15527new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15528new TreeDumperNode("hasErrors", node.HasErrors, null) 15531public override TreeDumperNode VisitDeconstructionAssignmentOperator(BoundDeconstructionAssignmentOperator node, object? arg) => new TreeDumperNode("deconstructionAssignmentOperator", null, new TreeDumperNode[] 15533new TreeDumperNode("left", null, new TreeDumperNode[] { Visit(node.Left, null) }), 15534new TreeDumperNode("right", null, new TreeDumperNode[] { Visit(node.Right, null) }), 15535new TreeDumperNode("isUsed", node.IsUsed, null), 15536new TreeDumperNode("type", node.Type, null), 15537new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15538new TreeDumperNode("hasErrors", node.HasErrors, null) 15541public override TreeDumperNode VisitNullCoalescingOperator(BoundNullCoalescingOperator node, object? arg) => new TreeDumperNode("nullCoalescingOperator", null, new TreeDumperNode[] 15543new TreeDumperNode("leftOperand", null, new TreeDumperNode[] { Visit(node.LeftOperand, null) }), 15544new TreeDumperNode("rightOperand", null, new TreeDumperNode[] { Visit(node.RightOperand, null) }), 15545new TreeDumperNode("leftPlaceholder", null, new TreeDumperNode[] { Visit(node.LeftPlaceholder, null) }), 15546new TreeDumperNode("leftConversion", null, new TreeDumperNode[] { Visit(node.LeftConversion, null) }), 15547new TreeDumperNode("operatorResultKind", node.OperatorResultKind, null), 15548new TreeDumperNode("@checked", node.Checked, null), 15549new TreeDumperNode("type", node.Type, null), 15550new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15551new TreeDumperNode("hasErrors", node.HasErrors, null) 15554public override TreeDumperNode VisitNullCoalescingAssignmentOperator(BoundNullCoalescingAssignmentOperator node, object? arg) => new TreeDumperNode("nullCoalescingAssignmentOperator", null, new TreeDumperNode[] 15556new TreeDumperNode("leftOperand", null, new TreeDumperNode[] { Visit(node.LeftOperand, null) }), 15557new TreeDumperNode("rightOperand", null, new TreeDumperNode[] { Visit(node.RightOperand, null) }), 15558new TreeDumperNode("type", node.Type, null), 15559new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15560new TreeDumperNode("hasErrors", node.HasErrors, null) 15563public override TreeDumperNode VisitUnconvertedConditionalOperator(BoundUnconvertedConditionalOperator node, object? arg) => new TreeDumperNode("unconvertedConditionalOperator", null, new TreeDumperNode[] 15565new TreeDumperNode("condition", null, new TreeDumperNode[] { Visit(node.Condition, null) }), 15566new TreeDumperNode("consequence", null, new TreeDumperNode[] { Visit(node.Consequence, null) }), 15567new TreeDumperNode("alternative", null, new TreeDumperNode[] { Visit(node.Alternative, null) }), 15568new TreeDumperNode("constantValueOpt", node.ConstantValueOpt, null), 15569new TreeDumperNode("noCommonTypeError", node.NoCommonTypeError, null), 15570new TreeDumperNode("type", node.Type, null), 15571new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15572new TreeDumperNode("hasErrors", node.HasErrors, null) 15575public override TreeDumperNode VisitConditionalOperator(BoundConditionalOperator node, object? arg) => new TreeDumperNode("conditionalOperator", null, new TreeDumperNode[] 15577new TreeDumperNode("isRef", node.IsRef, null), 15578new TreeDumperNode("condition", null, new TreeDumperNode[] { Visit(node.Condition, null) }), 15579new TreeDumperNode("consequence", null, new TreeDumperNode[] { Visit(node.Consequence, null) }), 15580new TreeDumperNode("alternative", null, new TreeDumperNode[] { Visit(node.Alternative, null) }), 15581new TreeDumperNode("constantValueOpt", node.ConstantValueOpt, null), 15582new TreeDumperNode("naturalTypeOpt", node.NaturalTypeOpt, null), 15583new TreeDumperNode("wasTargetTyped", node.WasTargetTyped, null), 15584new TreeDumperNode("type", node.Type, null), 15585new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15586new TreeDumperNode("hasErrors", node.HasErrors, null) 15589public override TreeDumperNode VisitArrayAccess(BoundArrayAccess node, object? arg) => new TreeDumperNode("arrayAccess", null, new TreeDumperNode[] 15591new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 15592new TreeDumperNode("indices", null, from x in node.Indices select Visit(x, null)), 15593new TreeDumperNode("type", node.Type, null), 15594new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15595new TreeDumperNode("hasErrors", node.HasErrors, null) 15598public override TreeDumperNode VisitRefArrayAccess(BoundRefArrayAccess node, object? arg) => new TreeDumperNode("refArrayAccess", null, new TreeDumperNode[] 15600new TreeDumperNode("arrayAccess", null, new TreeDumperNode[] { Visit(node.ArrayAccess, null) }), 15601new TreeDumperNode("type", node.Type, null), 15602new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15603new TreeDumperNode("hasErrors", node.HasErrors, null) 15606public override TreeDumperNode VisitArrayLength(BoundArrayLength node, object? arg) => new TreeDumperNode("arrayLength", null, new TreeDumperNode[] 15608new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 15609new TreeDumperNode("type", node.Type, null), 15610new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15611new TreeDumperNode("hasErrors", node.HasErrors, null) 15614public override TreeDumperNode VisitAwaitableInfo(BoundAwaitableInfo node, object? arg) => new TreeDumperNode("awaitableInfo", null, new TreeDumperNode[] 15616new TreeDumperNode("awaitableInstancePlaceholder", null, new TreeDumperNode[] { Visit(node.AwaitableInstancePlaceholder, null) }), 15617new TreeDumperNode("isDynamic", node.IsDynamic, null), 15618new TreeDumperNode("getAwaiter", null, new TreeDumperNode[] { Visit(node.GetAwaiter, null) }), 15619new TreeDumperNode("isCompleted", node.IsCompleted, null), 15620new TreeDumperNode("getResult", node.GetResult, null), 15621new TreeDumperNode("runtimeAsyncAwaitCall", null, new TreeDumperNode[] { Visit(node.RuntimeAsyncAwaitCall, null) }), 15622new TreeDumperNode("runtimeAsyncAwaitCallPlaceholder", null, new TreeDumperNode[] { Visit(node.RuntimeAsyncAwaitCallPlaceholder, null) }), 15623new TreeDumperNode("hasErrors", node.HasErrors, null) 15626public override TreeDumperNode VisitAwaitExpression(BoundAwaitExpression node, object? arg) => new TreeDumperNode("awaitExpression", null, new TreeDumperNode[] 15628new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 15629new TreeDumperNode("awaitableInfo", null, new TreeDumperNode[] { Visit(node.AwaitableInfo, null) }), 15630new TreeDumperNode("debugInfo", node.DebugInfo, null), 15631new TreeDumperNode("type", node.Type, null), 15632new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15633new TreeDumperNode("hasErrors", node.HasErrors, null) 15636public override TreeDumperNode VisitTypeOfOperator(BoundTypeOfOperator node, object? arg) => new TreeDumperNode("typeOfOperator", null, new TreeDumperNode[] 15638new TreeDumperNode("sourceType", null, new TreeDumperNode[] { Visit(node.SourceType, null) }), 15639new TreeDumperNode("getTypeFromHandle", node.GetTypeFromHandle, null), 15640new TreeDumperNode("type", node.Type, null), 15641new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15642new TreeDumperNode("hasErrors", node.HasErrors, null) 15645public override TreeDumperNode VisitBlockInstrumentation(BoundBlockInstrumentation node, object? arg) => new TreeDumperNode("blockInstrumentation", null, new TreeDumperNode[] 15647new TreeDumperNode("locals", node.Locals, null), 15648new TreeDumperNode("prologue", null, new TreeDumperNode[] { Visit(node.Prologue, null) }), 15649new TreeDumperNode("epilogue", null, new TreeDumperNode[] { Visit(node.Epilogue, null) }), 15650new TreeDumperNode("hasErrors", node.HasErrors, null) 15653public override TreeDumperNode VisitMethodDefIndex(BoundMethodDefIndex node, object? arg) => new TreeDumperNode("methodDefIndex", null, new TreeDumperNode[] 15655new TreeDumperNode("method", node.Method, null), 15656new TreeDumperNode("type", node.Type, null), 15657new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15658new TreeDumperNode("hasErrors", node.HasErrors, null) 15661public override TreeDumperNode VisitLocalId(BoundLocalId node, object? arg) => new TreeDumperNode("localId", null, new TreeDumperNode[] 15663new TreeDumperNode("local", node.Local, null), 15664new TreeDumperNode("hoistedField", node.HoistedField, null), 15665new TreeDumperNode("type", node.Type, null), 15666new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15667new TreeDumperNode("hasErrors", node.HasErrors, null) 15670public override TreeDumperNode VisitParameterId(BoundParameterId node, object? arg) => new TreeDumperNode("parameterId", null, new TreeDumperNode[] 15672new TreeDumperNode("parameter", node.Parameter, null), 15673new TreeDumperNode("hoistedField", node.HoistedField, null), 15674new TreeDumperNode("type", node.Type, null), 15675new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15676new TreeDumperNode("hasErrors", node.HasErrors, null) 15679public override TreeDumperNode VisitStateMachineInstanceId(BoundStateMachineInstanceId node, object? arg) => new TreeDumperNode("stateMachineInstanceId", null, new TreeDumperNode[] 15681new TreeDumperNode("type", node.Type, null), 15682new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15683new TreeDumperNode("hasErrors", node.HasErrors, null) 15686public override TreeDumperNode VisitMaximumMethodDefIndex(BoundMaximumMethodDefIndex node, object? arg) => new TreeDumperNode("maximumMethodDefIndex", null, new TreeDumperNode[] 15688new TreeDumperNode("type", node.Type, null), 15689new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15690new TreeDumperNode("hasErrors", node.HasErrors, null) 15693public override TreeDumperNode VisitInstrumentationPayloadRoot(BoundInstrumentationPayloadRoot node, object? arg) => new TreeDumperNode("instrumentationPayloadRoot", null, new TreeDumperNode[] 15695new TreeDumperNode("analysisKind", node.AnalysisKind, null), 15696new TreeDumperNode("type", node.Type, null), 15697new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15698new TreeDumperNode("hasErrors", node.HasErrors, null) 15701public override TreeDumperNode VisitThrowIfModuleCancellationRequested(BoundThrowIfModuleCancellationRequested node, object? arg) => new TreeDumperNode("throwIfModuleCancellationRequested", null, new TreeDumperNode[] 15703new TreeDumperNode("type", node.Type, null), 15704new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15705new TreeDumperNode("hasErrors", node.HasErrors, null) 15708public override TreeDumperNode VisitModuleCancellationTokenExpression(ModuleCancellationTokenExpression node, object? arg) => new TreeDumperNode("moduleCancellationTokenExpression", null, new TreeDumperNode[] 15710new TreeDumperNode("type", node.Type, null), 15711new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15712new TreeDumperNode("hasErrors", node.HasErrors, null) 15715public override TreeDumperNode VisitModuleVersionId(BoundModuleVersionId node, object? arg) => new TreeDumperNode("moduleVersionId", null, new TreeDumperNode[] 15717new TreeDumperNode("type", node.Type, null), 15718new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15719new TreeDumperNode("hasErrors", node.HasErrors, null) 15722public override TreeDumperNode VisitModuleVersionIdString(BoundModuleVersionIdString node, object? arg) => new TreeDumperNode("moduleVersionIdString", null, new TreeDumperNode[] 15724new TreeDumperNode("type", node.Type, null), 15725new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15726new TreeDumperNode("hasErrors", node.HasErrors, null) 15729public override TreeDumperNode VisitSourceDocumentIndex(BoundSourceDocumentIndex node, object? arg) => new TreeDumperNode("sourceDocumentIndex", null, new TreeDumperNode[] 15731new TreeDumperNode("document", node.Document, null), 15732new TreeDumperNode("type", node.Type, null), 15733new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15734new TreeDumperNode("hasErrors", node.HasErrors, null) 15737public override TreeDumperNode VisitMethodInfo(BoundMethodInfo node, object? arg) => new TreeDumperNode("methodInfo", null, new TreeDumperNode[] 15739new TreeDumperNode("method", node.Method, null), 15740new TreeDumperNode("getMethodFromHandle", node.GetMethodFromHandle, null), 15741new TreeDumperNode("type", node.Type, null), 15742new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15743new TreeDumperNode("hasErrors", node.HasErrors, null) 15746public override TreeDumperNode VisitFieldInfo(BoundFieldInfo node, object? arg) => new TreeDumperNode("fieldInfo", null, new TreeDumperNode[] 15748new TreeDumperNode("field", node.Field, null), 15749new TreeDumperNode("getFieldFromHandle", node.GetFieldFromHandle, null), 15750new TreeDumperNode("type", node.Type, null), 15751new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15752new TreeDumperNode("hasErrors", node.HasErrors, null) 15755public override TreeDumperNode VisitDefaultLiteral(BoundDefaultLiteral node, object? arg) => new TreeDumperNode("defaultLiteral", null, new TreeDumperNode[] 15757new TreeDumperNode("type", node.Type, null), 15758new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15759new TreeDumperNode("hasErrors", node.HasErrors, null) 15762public override TreeDumperNode VisitDefaultExpression(BoundDefaultExpression node, object? arg) => new TreeDumperNode("defaultExpression", null, new TreeDumperNode[] 15764new TreeDumperNode("targetType", null, new TreeDumperNode[] { Visit(node.TargetType, null) }), 15765new TreeDumperNode("constantValueOpt", node.ConstantValueOpt, null), 15766new TreeDumperNode("type", node.Type, null), 15767new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15768new TreeDumperNode("hasErrors", node.HasErrors, null) 15771public override TreeDumperNode VisitIsOperator(BoundIsOperator node, object? arg) => new TreeDumperNode("isOperator", null, new TreeDumperNode[] 15773new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15774new TreeDumperNode("targetType", null, new TreeDumperNode[] { Visit(node.TargetType, null) }), 15775new TreeDumperNode("conversionKind", node.ConversionKind, null), 15776new TreeDumperNode("type", node.Type, null), 15777new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15778new TreeDumperNode("hasErrors", node.HasErrors, null) 15781public override TreeDumperNode VisitAsOperator(BoundAsOperator node, object? arg) => new TreeDumperNode("asOperator", null, new TreeDumperNode[] 15783new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15784new TreeDumperNode("targetType", null, new TreeDumperNode[] { Visit(node.TargetType, null) }), 15785new TreeDumperNode("operandPlaceholder", null, new TreeDumperNode[] { Visit(node.OperandPlaceholder, null) }), 15786new TreeDumperNode("operandConversion", null, new TreeDumperNode[] { Visit(node.OperandConversion, null) }), 15787new TreeDumperNode("type", node.Type, null), 15788new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15789new TreeDumperNode("hasErrors", node.HasErrors, null) 15792public override TreeDumperNode VisitSizeOfOperator(BoundSizeOfOperator node, object? arg) => new TreeDumperNode("sizeOfOperator", null, new TreeDumperNode[] 15794new TreeDumperNode("sourceType", null, new TreeDumperNode[] { Visit(node.SourceType, null) }), 15795new TreeDumperNode("constantValueOpt", node.ConstantValueOpt, null), 15796new TreeDumperNode("type", node.Type, null), 15797new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15798new TreeDumperNode("hasErrors", node.HasErrors, null) 15801public override TreeDumperNode VisitConversion(BoundConversion node, object? arg) => new TreeDumperNode("conversion", null, new TreeDumperNode[] 15803new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15804new TreeDumperNode("conversion", node.Conversion, null), 15805new TreeDumperNode("isBaseConversion", node.IsBaseConversion, null), 15806new TreeDumperNode("@checked", node.Checked, null), 15807new TreeDumperNode("explicitCastInCode", node.ExplicitCastInCode, null), 15808new TreeDumperNode("constantValueOpt", node.ConstantValueOpt, null), 15809new TreeDumperNode("conversionGroupOpt", node.ConversionGroupOpt, null), 15810new TreeDumperNode("type", node.Type, null), 15811new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15812new TreeDumperNode("hasErrors", node.HasErrors, null) 15815public override TreeDumperNode VisitReadOnlySpanFromArray(BoundReadOnlySpanFromArray node, object? arg) => new TreeDumperNode("readOnlySpanFromArray", null, new TreeDumperNode[] 15817new TreeDumperNode("operand", null, new TreeDumperNode[] { Visit(node.Operand, null) }), 15818new TreeDumperNode("conversionMethod", node.ConversionMethod, null), 15819new TreeDumperNode("type", node.Type, null), 15820new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15821new TreeDumperNode("hasErrors", node.HasErrors, null) 15824public override TreeDumperNode VisitArgList(BoundArgList node, object? arg) => new TreeDumperNode("argList", null, new TreeDumperNode[] 15826new TreeDumperNode("type", node.Type, null), 15827new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15828new TreeDumperNode("hasErrors", node.HasErrors, null) 15831public override TreeDumperNode VisitArgListOperator(BoundArgListOperator node, object? arg) => new TreeDumperNode("argListOperator", null, new TreeDumperNode[] 15833new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 15834new TreeDumperNode("argumentRefKindsOpt", node.ArgumentRefKindsOpt, null), 15835new TreeDumperNode("type", node.Type, null), 15836new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15837new TreeDumperNode("hasErrors", node.HasErrors, null) 15840public override TreeDumperNode VisitFixedLocalCollectionInitializer(BoundFixedLocalCollectionInitializer node, object? arg) => new TreeDumperNode("fixedLocalCollectionInitializer", null, new TreeDumperNode[] 15842new TreeDumperNode("elementPointerType", node.ElementPointerType, null), 15843new TreeDumperNode("elementPointerPlaceholder", null, new TreeDumperNode[] { Visit(node.ElementPointerPlaceholder, null) }), 15844new TreeDumperNode("elementPointerConversion", null, new TreeDumperNode[] { Visit(node.ElementPointerConversion, null) }), 15845new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 15846new TreeDumperNode("getPinnableOpt", node.GetPinnableOpt, null), 15847new TreeDumperNode("type", node.Type, null), 15848new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 15849new TreeDumperNode("hasErrors", node.HasErrors, null) 15852public override TreeDumperNode VisitSequencePoint(BoundSequencePoint node, object? arg) => new TreeDumperNode("sequencePoint", null, new TreeDumperNode[] 15854new TreeDumperNode("statementOpt", null, new TreeDumperNode[] { Visit(node.StatementOpt, null) }), 15855new TreeDumperNode("hasErrors", node.HasErrors, null) 15858public override TreeDumperNode VisitSequencePointWithSpan(BoundSequencePointWithSpan node, object? arg) => new TreeDumperNode("sequencePointWithSpan", null, new TreeDumperNode[] 15860new TreeDumperNode("statementOpt", null, new TreeDumperNode[] { Visit(node.StatementOpt, null) }), 15861new TreeDumperNode("span", node.Span, null), 15862new TreeDumperNode("hasErrors", node.HasErrors, null) 15865public override TreeDumperNode VisitSavePreviousSequencePoint(BoundSavePreviousSequencePoint node, object? arg) => new TreeDumperNode("savePreviousSequencePoint", null, new TreeDumperNode[] 15867new TreeDumperNode("identifier", node.Identifier, null), 15868new TreeDumperNode("hasErrors", node.HasErrors, null) 15871public override TreeDumperNode VisitRestorePreviousSequencePoint(BoundRestorePreviousSequencePoint node, object? arg) => new TreeDumperNode("restorePreviousSequencePoint", null, new TreeDumperNode[] 15873new TreeDumperNode("identifier", node.Identifier, null), 15874new TreeDumperNode("hasErrors", node.HasErrors, null) 15877public override TreeDumperNode VisitStepThroughSequencePoint(BoundStepThroughSequencePoint node, object? arg) => new TreeDumperNode("stepThroughSequencePoint", null, new TreeDumperNode[] 15879new TreeDumperNode("span", node.Span, null), 15880new TreeDumperNode("hasErrors", node.HasErrors, null) 15883public override TreeDumperNode VisitBlock(BoundBlock node, object? arg) => new TreeDumperNode("block", null, new TreeDumperNode[] 15885new TreeDumperNode("locals", node.Locals, null), 15886new TreeDumperNode("localFunctions", node.LocalFunctions, null), 15887new TreeDumperNode("hasUnsafeModifier", node.HasUnsafeModifier, null), 15888new TreeDumperNode("instrumentation", null, new TreeDumperNode[] { Visit(node.Instrumentation, null) }), 15889new TreeDumperNode("statements", null, from x in node.Statements select Visit(x, null)), 15890new TreeDumperNode("hasErrors", node.HasErrors, null) 15893public override TreeDumperNode VisitScope(BoundScope node, object? arg) => new TreeDumperNode("scope", null, new TreeDumperNode[] 15895new TreeDumperNode("locals", node.Locals, null), 15896new TreeDumperNode("statements", null, from x in node.Statements select Visit(x, null)), 15897new TreeDumperNode("hasErrors", node.HasErrors, null) 15900public override TreeDumperNode VisitStateMachineScope(BoundStateMachineScope node, object? arg) => new TreeDumperNode("stateMachineScope", null, new TreeDumperNode[] 15902new TreeDumperNode("fields", node.Fields, null), 15903new TreeDumperNode("statement", null, new TreeDumperNode[] { Visit(node.Statement, null) }), 15904new TreeDumperNode("hasErrors", node.HasErrors, null) 15907public override TreeDumperNode VisitLocalDeclaration(BoundLocalDeclaration node, object? arg) => new TreeDumperNode("localDeclaration", null, new TreeDumperNode[] 15909new TreeDumperNode("localSymbol", node.LocalSymbol, null), 15910new TreeDumperNode("declaredTypeOpt", null, new TreeDumperNode[] { Visit(node.DeclaredTypeOpt, null) }), 15911new TreeDumperNode("initializerOpt", null, new TreeDumperNode[] { Visit(node.InitializerOpt, null) }), 15912new TreeDumperNode("argumentsOpt", null, node.ArgumentsOpt.IsDefault ? Array.Empty<TreeDumperNode>() : from x in node.ArgumentsOpt select Visit(x, null)), 15913new TreeDumperNode("inferredType", node.InferredType, null), 15914new TreeDumperNode("hasErrors", node.HasErrors, null) 15917public override TreeDumperNode VisitMultipleLocalDeclarations(BoundMultipleLocalDeclarations node, object? arg) => new TreeDumperNode("multipleLocalDeclarations", null, new TreeDumperNode[] 15919new TreeDumperNode("localDeclarations", null, from x in node.LocalDeclarations select Visit(x, null)), 15920new TreeDumperNode("hasErrors", node.HasErrors, null) 15923public override TreeDumperNode VisitUsingLocalDeclarations(BoundUsingLocalDeclarations node, object? arg) => new TreeDumperNode("usingLocalDeclarations", null, new TreeDumperNode[] 15925new TreeDumperNode("patternDisposeInfoOpt", node.PatternDisposeInfoOpt, null), 15926new TreeDumperNode("awaitOpt", null, new TreeDumperNode[] { Visit(node.AwaitOpt, null) }), 15927new TreeDumperNode("localDeclarations", null, from x in node.LocalDeclarations select Visit(x, null)), 15928new TreeDumperNode("hasErrors", node.HasErrors, null) 15931public override TreeDumperNode VisitLocalFunctionStatement(BoundLocalFunctionStatement node, object? arg) => new TreeDumperNode("localFunctionStatement", null, new TreeDumperNode[] 15933new TreeDumperNode("symbol", node.Symbol, null), 15934new TreeDumperNode("blockBody", null, new TreeDumperNode[] { Visit(node.BlockBody, null) }), 15935new TreeDumperNode("expressionBody", null, new TreeDumperNode[] { Visit(node.ExpressionBody, null) }), 15936new TreeDumperNode("hasErrors", node.HasErrors, null) 15939public override TreeDumperNode VisitNoOpStatement(BoundNoOpStatement node, object? arg) => new TreeDumperNode("noOpStatement", null, new TreeDumperNode[] 15941new TreeDumperNode("flavor", node.Flavor, null), 15942new TreeDumperNode("hasErrors", node.HasErrors, null) 15945public override TreeDumperNode VisitReturnStatement(BoundReturnStatement node, object? arg) => new TreeDumperNode("returnStatement", null, new TreeDumperNode[] 15947new TreeDumperNode("refKind", node.RefKind, null), 15948new TreeDumperNode("expressionOpt", null, new TreeDumperNode[] { Visit(node.ExpressionOpt, null) }), 15949new TreeDumperNode("@checked", node.Checked, null), 15950new TreeDumperNode("hasErrors", node.HasErrors, null) 15953public override TreeDumperNode VisitYieldReturnStatement(BoundYieldReturnStatement node, object? arg) => new TreeDumperNode("yieldReturnStatement", null, new TreeDumperNode[] 15955new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 15956new TreeDumperNode("hasErrors", node.HasErrors, null) 15959public override TreeDumperNode VisitYieldBreakStatement(BoundYieldBreakStatement node, object? arg) => new TreeDumperNode("yieldBreakStatement", null, Array.Empty<TreeDumperNode>() 15961public override TreeDumperNode VisitThrowStatement(BoundThrowStatement node, object? arg) => new TreeDumperNode("throwStatement", null, new TreeDumperNode[] 15963new TreeDumperNode("expressionOpt", null, new TreeDumperNode[] { Visit(node.ExpressionOpt, null) }), 15964new TreeDumperNode("hasErrors", node.HasErrors, null) 15967public override TreeDumperNode VisitExpressionStatement(BoundExpressionStatement node, object? arg) => new TreeDumperNode("expressionStatement", null, new TreeDumperNode[] 15969new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 15970new TreeDumperNode("hasErrors", node.HasErrors, null) 15973public override TreeDumperNode VisitBreakStatement(BoundBreakStatement node, object? arg) => new TreeDumperNode("breakStatement", null, new TreeDumperNode[] 15975new TreeDumperNode("label", node.Label, null), 15976new TreeDumperNode("hasErrors", node.HasErrors, null) 15979public override TreeDumperNode VisitContinueStatement(BoundContinueStatement node, object? arg) => new TreeDumperNode("continueStatement", null, new TreeDumperNode[] 15981new TreeDumperNode("label", node.Label, null), 15982new TreeDumperNode("hasErrors", node.HasErrors, null) 15985public override TreeDumperNode VisitSwitchStatement(BoundSwitchStatement node, object? arg) => new TreeDumperNode("switchStatement", null, new TreeDumperNode[] 15987new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 15988new TreeDumperNode("innerLocals", node.InnerLocals, null), 15989new TreeDumperNode("innerLocalFunctions", node.InnerLocalFunctions, null), 15990new TreeDumperNode("switchSections", null, from x in node.SwitchSections select Visit(x, null)), 15991new TreeDumperNode("reachabilityDecisionDag", null, new TreeDumperNode[] { Visit(node.ReachabilityDecisionDag, null) }), 15992new TreeDumperNode("defaultLabel", null, new TreeDumperNode[] { Visit(node.DefaultLabel, null) }), 15993new TreeDumperNode("breakLabel", node.BreakLabel, null), 15994new TreeDumperNode("hasErrors", node.HasErrors, null) 15997public override TreeDumperNode VisitSwitchDispatch(BoundSwitchDispatch node, object? arg) => new TreeDumperNode("switchDispatch", null, new TreeDumperNode[] 15999new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16000new TreeDumperNode("cases", node.Cases, null), 16001new TreeDumperNode("defaultLabel", node.DefaultLabel, null), 16002new TreeDumperNode("lengthBasedStringSwitchDataOpt", node.LengthBasedStringSwitchDataOpt, null), 16003new TreeDumperNode("hasErrors", node.HasErrors, null) 16006public override TreeDumperNode VisitIfStatement(BoundIfStatement node, object? arg) => new TreeDumperNode("ifStatement", null, new TreeDumperNode[] 16008new TreeDumperNode("condition", null, new TreeDumperNode[] { Visit(node.Condition, null) }), 16009new TreeDumperNode("consequence", null, new TreeDumperNode[] { Visit(node.Consequence, null) }), 16010new TreeDumperNode("alternativeOpt", null, new TreeDumperNode[] { Visit(node.AlternativeOpt, null) }), 16011new TreeDumperNode("hasErrors", node.HasErrors, null) 16014public override TreeDumperNode VisitDoStatement(BoundDoStatement node, object? arg) => new TreeDumperNode("doStatement", null, new TreeDumperNode[] 16016new TreeDumperNode("locals", node.Locals, null), 16017new TreeDumperNode("condition", null, new TreeDumperNode[] { Visit(node.Condition, null) }), 16018new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 16019new TreeDumperNode("breakLabel", node.BreakLabel, null), 16020new TreeDumperNode("continueLabel", node.ContinueLabel, null), 16021new TreeDumperNode("hasErrors", node.HasErrors, null) 16024public override TreeDumperNode VisitWhileStatement(BoundWhileStatement node, object? arg) => new TreeDumperNode("whileStatement", null, new TreeDumperNode[] 16026new TreeDumperNode("locals", node.Locals, null), 16027new TreeDumperNode("condition", null, new TreeDumperNode[] { Visit(node.Condition, null) }), 16028new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 16029new TreeDumperNode("breakLabel", node.BreakLabel, null), 16030new TreeDumperNode("continueLabel", node.ContinueLabel, null), 16031new TreeDumperNode("hasErrors", node.HasErrors, null) 16034public override TreeDumperNode VisitForStatement(BoundForStatement node, object? arg) => new TreeDumperNode("forStatement", null, new TreeDumperNode[] 16036new TreeDumperNode("outerLocals", node.OuterLocals, null), 16037new TreeDumperNode("initializer", null, new TreeDumperNode[] { Visit(node.Initializer, null) }), 16038new TreeDumperNode("innerLocals", node.InnerLocals, null), 16039new TreeDumperNode("condition", null, new TreeDumperNode[] { Visit(node.Condition, null) }), 16040new TreeDumperNode("increment", null, new TreeDumperNode[] { Visit(node.Increment, null) }), 16041new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 16042new TreeDumperNode("breakLabel", node.BreakLabel, null), 16043new TreeDumperNode("continueLabel", node.ContinueLabel, null), 16044new TreeDumperNode("hasErrors", node.HasErrors, null) 16047public override TreeDumperNode VisitForEachStatement(BoundForEachStatement node, object? arg) => new TreeDumperNode("forEachStatement", null, new TreeDumperNode[] 16049new TreeDumperNode("enumeratorInfoOpt", node.EnumeratorInfoOpt, null), 16050new TreeDumperNode("elementPlaceholder", null, new TreeDumperNode[] { Visit(node.ElementPlaceholder, null) }), 16051new TreeDumperNode("elementConversion", null, new TreeDumperNode[] { Visit(node.ElementConversion, null) }), 16052new TreeDumperNode("iterationVariableType", null, new TreeDumperNode[] { Visit(node.IterationVariableType, null) }), 16053new TreeDumperNode("iterationVariables", node.IterationVariables, null), 16054new TreeDumperNode("iterationErrorExpressionOpt", null, new TreeDumperNode[] { Visit(node.IterationErrorExpressionOpt, null) }), 16055new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16056new TreeDumperNode("deconstructionOpt", null, new TreeDumperNode[] { Visit(node.DeconstructionOpt, null) }), 16057new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 16058new TreeDumperNode("breakLabel", node.BreakLabel, null), 16059new TreeDumperNode("continueLabel", node.ContinueLabel, null), 16060new TreeDumperNode("hasErrors", node.HasErrors, null) 16063public override TreeDumperNode VisitForEachDeconstructStep(BoundForEachDeconstructStep node, object? arg) => new TreeDumperNode("forEachDeconstructStep", null, new TreeDumperNode[] 16065new TreeDumperNode("deconstructionAssignment", null, new TreeDumperNode[] { Visit(node.DeconstructionAssignment, null) }), 16066new TreeDumperNode("targetPlaceholder", null, new TreeDumperNode[] { Visit(node.TargetPlaceholder, null) }), 16067new TreeDumperNode("hasErrors", node.HasErrors, null) 16070public override TreeDumperNode VisitUsingStatement(BoundUsingStatement node, object? arg) => new TreeDumperNode("usingStatement", null, new TreeDumperNode[] 16072new TreeDumperNode("locals", node.Locals, null), 16073new TreeDumperNode("declarationsOpt", null, new TreeDumperNode[] { Visit(node.DeclarationsOpt, null) }), 16074new TreeDumperNode("expressionOpt", null, new TreeDumperNode[] { Visit(node.ExpressionOpt, null) }), 16075new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 16076new TreeDumperNode("awaitOpt", null, new TreeDumperNode[] { Visit(node.AwaitOpt, null) }), 16077new TreeDumperNode("patternDisposeInfoOpt", node.PatternDisposeInfoOpt, null), 16078new TreeDumperNode("hasErrors", node.HasErrors, null) 16081public override TreeDumperNode VisitFixedStatement(BoundFixedStatement node, object? arg) => new TreeDumperNode("fixedStatement", null, new TreeDumperNode[] 16083new TreeDumperNode("locals", node.Locals, null), 16084new TreeDumperNode("declarations", null, new TreeDumperNode[] { Visit(node.Declarations, null) }), 16085new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 16086new TreeDumperNode("hasErrors", node.HasErrors, null) 16089public override TreeDumperNode VisitLockStatement(BoundLockStatement node, object? arg) => new TreeDumperNode("lockStatement", null, new TreeDumperNode[] 16091new TreeDumperNode("argument", null, new TreeDumperNode[] { Visit(node.Argument, null) }), 16092new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 16093new TreeDumperNode("hasErrors", node.HasErrors, null) 16096public override TreeDumperNode VisitTryStatement(BoundTryStatement node, object? arg) => new TreeDumperNode("tryStatement", null, new TreeDumperNode[] 16098new TreeDumperNode("tryBlock", null, new TreeDumperNode[] { Visit(node.TryBlock, null) }), 16099new TreeDumperNode("catchBlocks", null, from x in node.CatchBlocks select Visit(x, null)), 16100new TreeDumperNode("finallyBlockOpt", null, new TreeDumperNode[] { Visit(node.FinallyBlockOpt, null) }), 16101new TreeDumperNode("finallyLabelOpt", node.FinallyLabelOpt, null), 16102new TreeDumperNode("preferFaultHandler", node.PreferFaultHandler, null), 16103new TreeDumperNode("hasErrors", node.HasErrors, null) 16106public override TreeDumperNode VisitCatchBlock(BoundCatchBlock node, object? arg) => new TreeDumperNode("catchBlock", null, new TreeDumperNode[] 16108new TreeDumperNode("locals", node.Locals, null), 16109new TreeDumperNode("exceptionSourceOpt", null, new TreeDumperNode[] { Visit(node.ExceptionSourceOpt, null) }), 16110new TreeDumperNode("exceptionTypeOpt", node.ExceptionTypeOpt, null), 16111new TreeDumperNode("exceptionFilterPrologueOpt", null, new TreeDumperNode[] { Visit(node.ExceptionFilterPrologueOpt, null) }), 16112new TreeDumperNode("exceptionFilterOpt", null, new TreeDumperNode[] { Visit(node.ExceptionFilterOpt, null) }), 16113new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 16114new TreeDumperNode("isSynthesizedAsyncCatchAll", node.IsSynthesizedAsyncCatchAll, null), 16115new TreeDumperNode("hasErrors", node.HasErrors, null) 16118public override TreeDumperNode VisitLiteral(BoundLiteral node, object? arg) => new TreeDumperNode("literal", null, new TreeDumperNode[] 16120new TreeDumperNode("constantValueOpt", node.ConstantValueOpt, null), 16121new TreeDumperNode("type", node.Type, null), 16122new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16123new TreeDumperNode("hasErrors", node.HasErrors, null) 16126public override TreeDumperNode VisitUtf8String(BoundUtf8String node, object? arg) => new TreeDumperNode("utf8String", null, new TreeDumperNode[] 16128new TreeDumperNode("value", node.Value, null), 16129new TreeDumperNode("type", node.Type, null), 16130new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16131new TreeDumperNode("hasErrors", node.HasErrors, null) 16134public override TreeDumperNode VisitThisReference(BoundThisReference node, object? arg) => new TreeDumperNode("thisReference", null, new TreeDumperNode[] 16136new TreeDumperNode("type", node.Type, null), 16137new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16138new TreeDumperNode("hasErrors", node.HasErrors, null) 16141public override TreeDumperNode VisitPreviousSubmissionReference(BoundPreviousSubmissionReference node, object? arg) => new TreeDumperNode("previousSubmissionReference", null, new TreeDumperNode[] 16143new TreeDumperNode("type", node.Type, null), 16144new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16145new TreeDumperNode("hasErrors", node.HasErrors, null) 16148public override TreeDumperNode VisitHostObjectMemberReference(BoundHostObjectMemberReference node, object? arg) => new TreeDumperNode("hostObjectMemberReference", null, new TreeDumperNode[] 16150new TreeDumperNode("type", node.Type, null), 16151new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16152new TreeDumperNode("hasErrors", node.HasErrors, null) 16155public override TreeDumperNode VisitBaseReference(BoundBaseReference node, object? arg) => new TreeDumperNode("baseReference", null, new TreeDumperNode[] 16157new TreeDumperNode("type", node.Type, null), 16158new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16159new TreeDumperNode("hasErrors", node.HasErrors, null) 16162public override TreeDumperNode VisitLocal(BoundLocal node, object? arg) => new TreeDumperNode("local", null, new TreeDumperNode[] 16164new TreeDumperNode("localSymbol", node.LocalSymbol, null), 16165new TreeDumperNode("declarationKind", node.DeclarationKind, null), 16166new TreeDumperNode("constantValueOpt", node.ConstantValueOpt, null), 16167new TreeDumperNode("isNullableUnknown", node.IsNullableUnknown, null), 16168new TreeDumperNode("type", node.Type, null), 16169new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16170new TreeDumperNode("hasErrors", node.HasErrors, null) 16173public override TreeDumperNode VisitPseudoVariable(BoundPseudoVariable node, object? arg) => new TreeDumperNode("pseudoVariable", null, new TreeDumperNode[] 16175new TreeDumperNode("localSymbol", node.LocalSymbol, null), 16176new TreeDumperNode("emitExpressions", node.EmitExpressions, null), 16177new TreeDumperNode("type", node.Type, null), 16178new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16179new TreeDumperNode("hasErrors", node.HasErrors, null) 16182public override TreeDumperNode VisitRangeVariable(BoundRangeVariable node, object? arg) => new TreeDumperNode("rangeVariable", null, new TreeDumperNode[] 16184new TreeDumperNode("rangeVariableSymbol", node.RangeVariableSymbol, null), 16185new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 16186new TreeDumperNode("type", node.Type, null), 16187new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16188new TreeDumperNode("hasErrors", node.HasErrors, null) 16191public override TreeDumperNode VisitParameter(BoundParameter node, object? arg) => new TreeDumperNode("parameter", null, new TreeDumperNode[] 16193new TreeDumperNode("parameterSymbol", node.ParameterSymbol, null), 16194new TreeDumperNode("type", node.Type, null), 16195new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16196new TreeDumperNode("hasErrors", node.HasErrors, null) 16199public override TreeDumperNode VisitLabelStatement(BoundLabelStatement node, object? arg) => new TreeDumperNode("labelStatement", null, new TreeDumperNode[] 16201new TreeDumperNode("label", node.Label, null), 16202new TreeDumperNode("hasErrors", node.HasErrors, null) 16205public override TreeDumperNode VisitGotoStatement(BoundGotoStatement node, object? arg) => new TreeDumperNode("gotoStatement", null, new TreeDumperNode[] 16207new TreeDumperNode("label", node.Label, null), 16208new TreeDumperNode("caseExpressionOpt", null, new TreeDumperNode[] { Visit(node.CaseExpressionOpt, null) }), 16209new TreeDumperNode("labelExpressionOpt", null, new TreeDumperNode[] { Visit(node.LabelExpressionOpt, null) }), 16210new TreeDumperNode("hasErrors", node.HasErrors, null) 16213public override TreeDumperNode VisitLabeledStatement(BoundLabeledStatement node, object? arg) => new TreeDumperNode("labeledStatement", null, new TreeDumperNode[] 16215new TreeDumperNode("label", node.Label, null), 16216new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 16217new TreeDumperNode("hasErrors", node.HasErrors, null) 16220public override TreeDumperNode VisitLabel(BoundLabel node, object? arg) => new TreeDumperNode("label", null, new TreeDumperNode[] 16222new TreeDumperNode("label", node.Label, null), 16223new TreeDumperNode("type", node.Type, null), 16224new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16225new TreeDumperNode("hasErrors", node.HasErrors, null) 16228public override TreeDumperNode VisitStatementList(BoundStatementList node, object? arg) => new TreeDumperNode("statementList", null, new TreeDumperNode[] 16230new TreeDumperNode("statements", null, from x in node.Statements select Visit(x, null)), 16231new TreeDumperNode("hasErrors", node.HasErrors, null) 16234public override TreeDumperNode VisitConditionalGoto(BoundConditionalGoto node, object? arg) => new TreeDumperNode("conditionalGoto", null, new TreeDumperNode[] 16236new TreeDumperNode("condition", null, new TreeDumperNode[] { Visit(node.Condition, null) }), 16237new TreeDumperNode("jumpIfTrue", node.JumpIfTrue, null), 16238new TreeDumperNode("label", node.Label, null), 16239new TreeDumperNode("hasErrors", node.HasErrors, null) 16242public override TreeDumperNode VisitSwitchExpressionArm(BoundSwitchExpressionArm node, object? arg) => new TreeDumperNode("switchExpressionArm", null, new TreeDumperNode[] 16244new TreeDumperNode("locals", node.Locals, null), 16245new TreeDumperNode("pattern", null, new TreeDumperNode[] { Visit(node.Pattern, null) }), 16246new TreeDumperNode("whenClause", null, new TreeDumperNode[] { Visit(node.WhenClause, null) }), 16247new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 16248new TreeDumperNode("label", node.Label, null), 16249new TreeDumperNode("hasErrors", node.HasErrors, null) 16252public override TreeDumperNode VisitUnconvertedSwitchExpression(BoundUnconvertedSwitchExpression node, object? arg) => new TreeDumperNode("unconvertedSwitchExpression", null, new TreeDumperNode[] 16254new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16255new TreeDumperNode("switchArms", null, from x in node.SwitchArms select Visit(x, null)), 16256new TreeDumperNode("reachabilityDecisionDag", null, new TreeDumperNode[] { Visit(node.ReachabilityDecisionDag, null) }), 16257new TreeDumperNode("defaultLabel", node.DefaultLabel, null), 16258new TreeDumperNode("reportedNotExhaustive", node.ReportedNotExhaustive, null), 16259new TreeDumperNode("type", node.Type, null), 16260new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16261new TreeDumperNode("hasErrors", node.HasErrors, null) 16264public override TreeDumperNode VisitConvertedSwitchExpression(BoundConvertedSwitchExpression node, object? arg) => new TreeDumperNode("convertedSwitchExpression", null, new TreeDumperNode[] 16266new TreeDumperNode("naturalTypeOpt", node.NaturalTypeOpt, null), 16267new TreeDumperNode("wasTargetTyped", node.WasTargetTyped, null), 16268new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16269new TreeDumperNode("switchArms", null, from x in node.SwitchArms select Visit(x, null)), 16270new TreeDumperNode("reachabilityDecisionDag", null, new TreeDumperNode[] { Visit(node.ReachabilityDecisionDag, null) }), 16271new TreeDumperNode("defaultLabel", node.DefaultLabel, null), 16272new TreeDumperNode("reportedNotExhaustive", node.ReportedNotExhaustive, null), 16273new TreeDumperNode("type", node.Type, null), 16274new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16275new TreeDumperNode("hasErrors", node.HasErrors, null) 16278public override TreeDumperNode VisitDecisionDag(BoundDecisionDag node, object? arg) => new TreeDumperNode("decisionDag", null, new TreeDumperNode[] 16280new TreeDumperNode("rootNode", null, new TreeDumperNode[] { Visit(node.RootNode, null) }), 16281new TreeDumperNode("hasErrors", node.HasErrors, null) 16284public override TreeDumperNode VisitEvaluationDecisionDagNode(BoundEvaluationDecisionDagNode node, object? arg) => new TreeDumperNode("evaluationDecisionDagNode", null, new TreeDumperNode[] 16286new TreeDumperNode("evaluation", null, new TreeDumperNode[] { Visit(node.Evaluation, null) }), 16287new TreeDumperNode("next", null, new TreeDumperNode[] { Visit(node.Next, null) }), 16288new TreeDumperNode("hasErrors", node.HasErrors, null) 16291public override TreeDumperNode VisitTestDecisionDagNode(BoundTestDecisionDagNode node, object? arg) => new TreeDumperNode("testDecisionDagNode", null, new TreeDumperNode[] 16293new TreeDumperNode("test", null, new TreeDumperNode[] { Visit(node.Test, null) }), 16294new TreeDumperNode("whenTrue", null, new TreeDumperNode[] { Visit(node.WhenTrue, null) }), 16295new TreeDumperNode("whenFalse", null, new TreeDumperNode[] { Visit(node.WhenFalse, null) }), 16296new TreeDumperNode("hasErrors", node.HasErrors, null) 16299public override TreeDumperNode VisitWhenDecisionDagNode(BoundWhenDecisionDagNode node, object? arg) => new TreeDumperNode("whenDecisionDagNode", null, new TreeDumperNode[] 16301new TreeDumperNode("bindings", node.Bindings, null), 16302new TreeDumperNode("whenExpression", null, new TreeDumperNode[] { Visit(node.WhenExpression, null) }), 16303new TreeDumperNode("whenTrue", null, new TreeDumperNode[] { Visit(node.WhenTrue, null) }), 16304new TreeDumperNode("whenFalse", null, new TreeDumperNode[] { Visit(node.WhenFalse, null) }), 16305new TreeDumperNode("hasErrors", node.HasErrors, null) 16308public override TreeDumperNode VisitLeafDecisionDagNode(BoundLeafDecisionDagNode node, object? arg) => new TreeDumperNode("leafDecisionDagNode", null, new TreeDumperNode[] 16310new TreeDumperNode("label", node.Label, null), 16311new TreeDumperNode("hasErrors", node.HasErrors, null) 16314public override TreeDumperNode VisitDagTemp(BoundDagTemp node, object? arg) => new TreeDumperNode("dagTemp", null, new TreeDumperNode[] 16316new TreeDumperNode("type", node.Type, null), 16317new TreeDumperNode("source", null, new TreeDumperNode[] { Visit(node.Source, null) }), 16318new TreeDumperNode("index", node.Index, null), 16319new TreeDumperNode("hasErrors", node.HasErrors, null) 16322public override TreeDumperNode VisitDagTypeTest(BoundDagTypeTest node, object? arg) => new TreeDumperNode("dagTypeTest", null, new TreeDumperNode[] 16324new TreeDumperNode("type", node.Type, null), 16325new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16326new TreeDumperNode("hasErrors", node.HasErrors, null) 16329public override TreeDumperNode VisitDagNonNullTest(BoundDagNonNullTest node, object? arg) => new TreeDumperNode("dagNonNullTest", null, new TreeDumperNode[] 16331new TreeDumperNode("isExplicitTest", node.IsExplicitTest, null), 16332new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16333new TreeDumperNode("hasErrors", node.HasErrors, null) 16336public override TreeDumperNode VisitDagExplicitNullTest(BoundDagExplicitNullTest node, object? arg) => new TreeDumperNode("dagExplicitNullTest", null, new TreeDumperNode[] 16338new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16339new TreeDumperNode("hasErrors", node.HasErrors, null) 16342public override TreeDumperNode VisitDagValueTest(BoundDagValueTest node, object? arg) => new TreeDumperNode("dagValueTest", null, new TreeDumperNode[] 16344new TreeDumperNode("value", node.Value, null), 16345new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16346new TreeDumperNode("hasErrors", node.HasErrors, null) 16349public override TreeDumperNode VisitDagRelationalTest(BoundDagRelationalTest node, object? arg) => new TreeDumperNode("dagRelationalTest", null, new TreeDumperNode[] 16351new TreeDumperNode("operatorKind", node.OperatorKind, null), 16352new TreeDumperNode("value", node.Value, null), 16353new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16354new TreeDumperNode("hasErrors", node.HasErrors, null) 16357public override TreeDumperNode VisitDagDeconstructEvaluation(BoundDagDeconstructEvaluation node, object? arg) => new TreeDumperNode("dagDeconstructEvaluation", null, new TreeDumperNode[] 16359new TreeDumperNode("deconstructMethod", node.DeconstructMethod, null), 16360new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16361new TreeDumperNode("hasErrors", node.HasErrors, null) 16364public override TreeDumperNode VisitDagTypeEvaluation(BoundDagTypeEvaluation node, object? arg) => new TreeDumperNode("dagTypeEvaluation", null, new TreeDumperNode[] 16366new TreeDumperNode("type", node.Type, null), 16367new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16368new TreeDumperNode("hasErrors", node.HasErrors, null) 16371public override TreeDumperNode VisitDagFieldEvaluation(BoundDagFieldEvaluation node, object? arg) => new TreeDumperNode("dagFieldEvaluation", null, new TreeDumperNode[] 16373new TreeDumperNode("field", node.Field, null), 16374new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16375new TreeDumperNode("hasErrors", node.HasErrors, null) 16378public override TreeDumperNode VisitDagPropertyEvaluation(BoundDagPropertyEvaluation node, object? arg) => new TreeDumperNode("dagPropertyEvaluation", null, new TreeDumperNode[] 16380new TreeDumperNode("property", node.Property, null), 16381new TreeDumperNode("isLengthOrCount", node.IsLengthOrCount, null), 16382new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16383new TreeDumperNode("hasErrors", node.HasErrors, null) 16386public override TreeDumperNode VisitDagIndexEvaluation(BoundDagIndexEvaluation node, object? arg) => new TreeDumperNode("dagIndexEvaluation", null, new TreeDumperNode[] 16388new TreeDumperNode("property", node.Property, null), 16389new TreeDumperNode("index", node.Index, null), 16390new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16391new TreeDumperNode("hasErrors", node.HasErrors, null) 16394public override TreeDumperNode VisitDagIndexerEvaluation(BoundDagIndexerEvaluation node, object? arg) => new TreeDumperNode("dagIndexerEvaluation", null, new TreeDumperNode[] 16396new TreeDumperNode("indexerType", node.IndexerType, null), 16397new TreeDumperNode("lengthTemp", null, new TreeDumperNode[] { Visit(node.LengthTemp, null) }), 16398new TreeDumperNode("index", node.Index, null), 16399new TreeDumperNode("indexerAccess", null, new TreeDumperNode[] { Visit(node.IndexerAccess, null) }), 16400new TreeDumperNode("receiverPlaceholder", null, new TreeDumperNode[] { Visit(node.ReceiverPlaceholder, null) }), 16401new TreeDumperNode("argumentPlaceholder", null, new TreeDumperNode[] { Visit(node.ArgumentPlaceholder, null) }), 16402new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16403new TreeDumperNode("hasErrors", node.HasErrors, null) 16406public override TreeDumperNode VisitDagSliceEvaluation(BoundDagSliceEvaluation node, object? arg) => new TreeDumperNode("dagSliceEvaluation", null, new TreeDumperNode[] 16408new TreeDumperNode("sliceType", node.SliceType, null), 16409new TreeDumperNode("lengthTemp", null, new TreeDumperNode[] { Visit(node.LengthTemp, null) }), 16410new TreeDumperNode("startIndex", node.StartIndex, null), 16411new TreeDumperNode("endIndex", node.EndIndex, null), 16412new TreeDumperNode("indexerAccess", null, new TreeDumperNode[] { Visit(node.IndexerAccess, null) }), 16413new TreeDumperNode("receiverPlaceholder", null, new TreeDumperNode[] { Visit(node.ReceiverPlaceholder, null) }), 16414new TreeDumperNode("argumentPlaceholder", null, new TreeDumperNode[] { Visit(node.ArgumentPlaceholder, null) }), 16415new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16416new TreeDumperNode("hasErrors", node.HasErrors, null) 16419public override TreeDumperNode VisitDagAssignmentEvaluation(BoundDagAssignmentEvaluation node, object? arg) => new TreeDumperNode("dagAssignmentEvaluation", null, new TreeDumperNode[] 16421new TreeDumperNode("target", null, new TreeDumperNode[] { Visit(node.Target, null) }), 16422new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16423new TreeDumperNode("hasErrors", node.HasErrors, null) 16426public override TreeDumperNode VisitSwitchSection(BoundSwitchSection node, object? arg) => new TreeDumperNode("switchSection", null, new TreeDumperNode[] 16428new TreeDumperNode("locals", node.Locals, null), 16429new TreeDumperNode("switchLabels", null, from x in node.SwitchLabels select Visit(x, null)), 16430new TreeDumperNode("statements", null, from x in node.Statements select Visit(x, null)), 16431new TreeDumperNode("hasErrors", node.HasErrors, null) 16434public override TreeDumperNode VisitSwitchLabel(BoundSwitchLabel node, object? arg) => new TreeDumperNode("switchLabel", null, new TreeDumperNode[] 16436new TreeDumperNode("label", node.Label, null), 16437new TreeDumperNode("pattern", null, new TreeDumperNode[] { Visit(node.Pattern, null) }), 16438new TreeDumperNode("whenClause", null, new TreeDumperNode[] { Visit(node.WhenClause, null) }), 16439new TreeDumperNode("hasErrors", node.HasErrors, null) 16442public override TreeDumperNode VisitSequencePointExpression(BoundSequencePointExpression node, object? arg) => new TreeDumperNode("sequencePointExpression", null, new TreeDumperNode[] 16444new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16445new TreeDumperNode("type", node.Type, null), 16446new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16447new TreeDumperNode("hasErrors", node.HasErrors, null) 16450public override TreeDumperNode VisitSequence(BoundSequence node, object? arg) => new TreeDumperNode("sequence", null, new TreeDumperNode[] 16452new TreeDumperNode("locals", node.Locals, null), 16453new TreeDumperNode("sideEffects", null, from x in node.SideEffects select Visit(x, null)), 16454new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 16455new TreeDumperNode("type", node.Type, null), 16456new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16457new TreeDumperNode("hasErrors", node.HasErrors, null) 16460public override TreeDumperNode VisitSpillSequence(BoundSpillSequence node, object? arg) => new TreeDumperNode("spillSequence", null, new TreeDumperNode[] 16462new TreeDumperNode("locals", node.Locals, null), 16463new TreeDumperNode("sideEffects", null, from x in node.SideEffects select Visit(x, null)), 16464new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 16465new TreeDumperNode("type", node.Type, null), 16466new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16467new TreeDumperNode("hasErrors", node.HasErrors, null) 16470public override TreeDumperNode VisitDynamicMemberAccess(BoundDynamicMemberAccess node, object? arg) => new TreeDumperNode("dynamicMemberAccess", null, new TreeDumperNode[] 16472new TreeDumperNode("receiver", null, new TreeDumperNode[] { Visit(node.Receiver, null) }), 16473new TreeDumperNode("typeArgumentsOpt", node.TypeArgumentsOpt, null), 16474new TreeDumperNode("name", node.Name, null), 16475new TreeDumperNode("invoked", node.Invoked, null), 16476new TreeDumperNode("indexed", node.Indexed, null), 16477new TreeDumperNode("type", node.Type, null), 16478new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16479new TreeDumperNode("hasErrors", node.HasErrors, null) 16482public override TreeDumperNode VisitDynamicInvocation(BoundDynamicInvocation node, object? arg) => new TreeDumperNode("dynamicInvocation", null, new TreeDumperNode[] 16484new TreeDumperNode("argumentNamesOpt", node.ArgumentNamesOpt, null), 16485new TreeDumperNode("argumentRefKindsOpt", node.ArgumentRefKindsOpt, null), 16486new TreeDumperNode("applicableMethods", node.ApplicableMethods, null), 16487new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16488new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 16489new TreeDumperNode("type", node.Type, null), 16490new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16491new TreeDumperNode("hasErrors", node.HasErrors, null) 16494public override TreeDumperNode VisitConditionalAccess(BoundConditionalAccess node, object? arg) => new TreeDumperNode("conditionalAccess", null, new TreeDumperNode[] 16496new TreeDumperNode("receiver", null, new TreeDumperNode[] { Visit(node.Receiver, null) }), 16497new TreeDumperNode("accessExpression", null, new TreeDumperNode[] { Visit(node.AccessExpression, null) }), 16498new TreeDumperNode("type", node.Type, null), 16499new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16500new TreeDumperNode("hasErrors", node.HasErrors, null) 16503public override TreeDumperNode VisitLoweredConditionalAccess(BoundLoweredConditionalAccess node, object? arg) => new TreeDumperNode("loweredConditionalAccess", null, new TreeDumperNode[] 16505new TreeDumperNode("receiver", null, new TreeDumperNode[] { Visit(node.Receiver, null) }), 16506new TreeDumperNode("hasValueMethodOpt", node.HasValueMethodOpt, null), 16507new TreeDumperNode("whenNotNull", null, new TreeDumperNode[] { Visit(node.WhenNotNull, null) }), 16508new TreeDumperNode("whenNullOpt", null, new TreeDumperNode[] { Visit(node.WhenNullOpt, null) }), 16509new TreeDumperNode("id", node.Id, null), 16510new TreeDumperNode("forceCopyOfNullableValueType", node.ForceCopyOfNullableValueType, null), 16511new TreeDumperNode("type", node.Type, null), 16512new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16513new TreeDumperNode("hasErrors", node.HasErrors, null) 16516public override TreeDumperNode VisitConditionalReceiver(BoundConditionalReceiver node, object? arg) => new TreeDumperNode("conditionalReceiver", null, new TreeDumperNode[] 16518new TreeDumperNode("id", node.Id, null), 16519new TreeDumperNode("type", node.Type, null), 16520new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16521new TreeDumperNode("hasErrors", node.HasErrors, null) 16524public override TreeDumperNode VisitComplexConditionalReceiver(BoundComplexConditionalReceiver node, object? arg) => new TreeDumperNode("complexConditionalReceiver", null, new TreeDumperNode[] 16526new TreeDumperNode("valueTypeReceiver", null, new TreeDumperNode[] { Visit(node.ValueTypeReceiver, null) }), 16527new TreeDumperNode("referenceTypeReceiver", null, new TreeDumperNode[] { Visit(node.ReferenceTypeReceiver, null) }), 16528new TreeDumperNode("type", node.Type, null), 16529new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16530new TreeDumperNode("hasErrors", node.HasErrors, null) 16533public override TreeDumperNode VisitMethodGroup(BoundMethodGroup node, object? arg) => new TreeDumperNode("methodGroup", null, new TreeDumperNode[] 16535new TreeDumperNode("typeArgumentsOpt", node.TypeArgumentsOpt, null), 16536new TreeDumperNode("name", node.Name, null), 16537new TreeDumperNode("methods", node.Methods, null), 16538new TreeDumperNode("lookupSymbolOpt", node.LookupSymbolOpt, null), 16539new TreeDumperNode("lookupError", node.LookupError, null), 16540new TreeDumperNode("flags", node.Flags, null), 16541new TreeDumperNode("functionType", node.FunctionType, null), 16542new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 16543new TreeDumperNode("resultKind", node.ResultKind, null), 16544new TreeDumperNode("type", node.Type, null), 16545new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16546new TreeDumperNode("hasErrors", node.HasErrors, null) 16549public override TreeDumperNode VisitPropertyGroup(BoundPropertyGroup node, object? arg) => new TreeDumperNode("propertyGroup", null, new TreeDumperNode[] 16551new TreeDumperNode("properties", node.Properties, null), 16552new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 16553new TreeDumperNode("resultKind", node.ResultKind, null), 16554new TreeDumperNode("type", node.Type, null), 16555new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16556new TreeDumperNode("hasErrors", node.HasErrors, null) 16559public override TreeDumperNode VisitCall(BoundCall node, object? arg) => new TreeDumperNode("call", null, new TreeDumperNode[] 16561new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 16562new TreeDumperNode("initialBindingReceiverIsSubjectToCloning", node.InitialBindingReceiverIsSubjectToCloning, null), 16563new TreeDumperNode("method", node.Method, null), 16564new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 16565new TreeDumperNode("argumentNamesOpt", node.ArgumentNamesOpt, null), 16566new TreeDumperNode("argumentRefKindsOpt", node.ArgumentRefKindsOpt, null), 16567new TreeDumperNode("isDelegateCall", node.IsDelegateCall, null), 16568new TreeDumperNode("expanded", node.Expanded, null), 16569new TreeDumperNode("invokedAsExtensionMethod", node.InvokedAsExtensionMethod, null), 16570new TreeDumperNode("argsToParamsOpt", node.ArgsToParamsOpt, null), 16571new TreeDumperNode("defaultArguments", node.DefaultArguments, null), 16572new TreeDumperNode("resultKind", node.ResultKind, null), 16573new TreeDumperNode("originalMethodsOpt", node.OriginalMethodsOpt, null), 16574new TreeDumperNode("type", node.Type, null), 16575new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16576new TreeDumperNode("hasErrors", node.HasErrors, null) 16579public override TreeDumperNode VisitEventAssignmentOperator(BoundEventAssignmentOperator node, object? arg) => new TreeDumperNode("eventAssignmentOperator", null, new TreeDumperNode[] 16581new TreeDumperNode("@event", node.Event, null), 16582new TreeDumperNode("isAddition", node.IsAddition, null), 16583new TreeDumperNode("isDynamic", node.IsDynamic, null), 16584new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 16585new TreeDumperNode("argument", null, new TreeDumperNode[] { Visit(node.Argument, null) }), 16586new TreeDumperNode("type", node.Type, null), 16587new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16588new TreeDumperNode("hasErrors", node.HasErrors, null) 16591public override TreeDumperNode VisitAttribute(BoundAttribute node, object? arg) => new TreeDumperNode("attribute", null, new TreeDumperNode[] 16593new TreeDumperNode("constructor", node.Constructor, null), 16594new TreeDumperNode("constructorArguments", null, from x in node.ConstructorArguments select Visit(x, null)), 16595new TreeDumperNode("constructorArgumentNamesOpt", node.ConstructorArgumentNamesOpt, null), 16596new TreeDumperNode("constructorArgumentsToParamsOpt", node.ConstructorArgumentsToParamsOpt, null), 16597new TreeDumperNode("constructorExpanded", node.ConstructorExpanded, null), 16598new TreeDumperNode("constructorDefaultArguments", node.ConstructorDefaultArguments, null), 16599new TreeDumperNode("namedArguments", null, from x in node.NamedArguments select Visit(x, null)), 16600new TreeDumperNode("resultKind", node.ResultKind, null), 16601new TreeDumperNode("type", node.Type, null), 16602new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16603new TreeDumperNode("hasErrors", node.HasErrors, null) 16606public override TreeDumperNode VisitUnconvertedObjectCreationExpression(BoundUnconvertedObjectCreationExpression node, object? arg) => new TreeDumperNode("unconvertedObjectCreationExpression", null, new TreeDumperNode[] 16608new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 16609new TreeDumperNode("argumentNamesOpt", node.ArgumentNamesOpt, null), 16610new TreeDumperNode("argumentRefKindsOpt", node.ArgumentRefKindsOpt, null), 16611new TreeDumperNode("initializerOpt", node.InitializerOpt, null), 16612new TreeDumperNode("binder", node.Binder, null), 16613new TreeDumperNode("type", node.Type, null), 16614new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16615new TreeDumperNode("hasErrors", node.HasErrors, null) 16618public override TreeDumperNode VisitObjectCreationExpression(BoundObjectCreationExpression node, object? arg) => new TreeDumperNode("objectCreationExpression", null, new TreeDumperNode[] 16620new TreeDumperNode("constructor", node.Constructor, null), 16621new TreeDumperNode("constructorsGroup", node.ConstructorsGroup, null), 16622new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 16623new TreeDumperNode("argumentNamesOpt", node.ArgumentNamesOpt, null), 16624new TreeDumperNode("argumentRefKindsOpt", node.ArgumentRefKindsOpt, null), 16625new TreeDumperNode("expanded", node.Expanded, null), 16626new TreeDumperNode("argsToParamsOpt", node.ArgsToParamsOpt, null), 16627new TreeDumperNode("defaultArguments", node.DefaultArguments, null), 16628new TreeDumperNode("constantValueOpt", node.ConstantValueOpt, null), 16629new TreeDumperNode("initializerExpressionOpt", null, new TreeDumperNode[] { Visit(node.InitializerExpressionOpt, null) }), 16630new TreeDumperNode("wasTargetTyped", node.WasTargetTyped, null), 16631new TreeDumperNode("type", node.Type, null), 16632new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16633new TreeDumperNode("hasErrors", node.HasErrors, null) 16636public override TreeDumperNode VisitUnconvertedCollectionExpression(BoundUnconvertedCollectionExpression node, object? arg) => new TreeDumperNode("unconvertedCollectionExpression", null, new TreeDumperNode[] 16638new TreeDumperNode("elements", null, from x in node.Elements select Visit(x, null)), 16639new TreeDumperNode("type", node.Type, null), 16640new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16641new TreeDumperNode("hasErrors", node.HasErrors, null) 16644public override TreeDumperNode VisitCollectionExpression(BoundCollectionExpression node, object? arg) => new TreeDumperNode("collectionExpression", null, new TreeDumperNode[] 16646new TreeDumperNode("collectionTypeKind", node.CollectionTypeKind, null), 16647new TreeDumperNode("placeholder", null, new TreeDumperNode[] { Visit(node.Placeholder, null) }), 16648new TreeDumperNode("collectionCreation", null, new TreeDumperNode[] { Visit(node.CollectionCreation, null) }), 16649new TreeDumperNode("collectionBuilderMethod", node.CollectionBuilderMethod, null), 16650new TreeDumperNode("collectionBuilderInvocationPlaceholder", null, new TreeDumperNode[] { Visit(node.CollectionBuilderInvocationPlaceholder, null) }), 16651new TreeDumperNode("collectionBuilderInvocationConversion", null, new TreeDumperNode[] { Visit(node.CollectionBuilderInvocationConversion, null) }), 16652new TreeDumperNode("wasTargetTyped", node.WasTargetTyped, null), 16653new TreeDumperNode("unconvertedCollectionExpression", null, new TreeDumperNode[] { Visit(node.UnconvertedCollectionExpression, null) }), 16654new TreeDumperNode("elements", null, from x in node.Elements select Visit(x, null)), 16655new TreeDumperNode("type", node.Type, null), 16656new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16657new TreeDumperNode("hasErrors", node.HasErrors, null) 16660public override TreeDumperNode VisitCollectionExpressionSpreadExpressionPlaceholder(BoundCollectionExpressionSpreadExpressionPlaceholder node, object? arg) => new TreeDumperNode("collectionExpressionSpreadExpressionPlaceholder", null, new TreeDumperNode[] 16662new TreeDumperNode("type", node.Type, null), 16663new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16664new TreeDumperNode("hasErrors", node.HasErrors, null) 16667public override TreeDumperNode VisitCollectionExpressionSpreadElement(BoundCollectionExpressionSpreadElement node, object? arg) => new TreeDumperNode("collectionExpressionSpreadElement", null, new TreeDumperNode[] 16669new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16670new TreeDumperNode("expressionPlaceholder", null, new TreeDumperNode[] { Visit(node.ExpressionPlaceholder, null) }), 16671new TreeDumperNode("conversion", null, new TreeDumperNode[] { Visit(node.Conversion, null) }), 16672new TreeDumperNode("enumeratorInfoOpt", node.EnumeratorInfoOpt, null), 16673new TreeDumperNode("lengthOrCount", null, new TreeDumperNode[] { Visit(node.LengthOrCount, null) }), 16674new TreeDumperNode("elementPlaceholder", null, new TreeDumperNode[] { Visit(node.ElementPlaceholder, null) }), 16675new TreeDumperNode("iteratorBody", null, new TreeDumperNode[] { Visit(node.IteratorBody, null) }), 16676new TreeDumperNode("hasErrors", node.HasErrors, null) 16679public override TreeDumperNode VisitTupleLiteral(BoundTupleLiteral node, object? arg) => new TreeDumperNode("tupleLiteral", null, new TreeDumperNode[] 16681new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 16682new TreeDumperNode("argumentNamesOpt", node.ArgumentNamesOpt, null), 16683new TreeDumperNode("inferredNamesOpt", node.InferredNamesOpt, null), 16684new TreeDumperNode("type", node.Type, null), 16685new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16686new TreeDumperNode("hasErrors", node.HasErrors, null) 16689public override TreeDumperNode VisitConvertedTupleLiteral(BoundConvertedTupleLiteral node, object? arg) => new TreeDumperNode("convertedTupleLiteral", null, new TreeDumperNode[] 16691new TreeDumperNode("sourceTuple", null, new TreeDumperNode[] { Visit(node.SourceTuple, null) }), 16692new TreeDumperNode("wasTargetTyped", node.WasTargetTyped, null), 16693new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 16694new TreeDumperNode("argumentNamesOpt", node.ArgumentNamesOpt, null), 16695new TreeDumperNode("inferredNamesOpt", node.InferredNamesOpt, null), 16696new TreeDumperNode("type", node.Type, null), 16697new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16698new TreeDumperNode("hasErrors", node.HasErrors, null) 16701public override TreeDumperNode VisitDynamicObjectCreationExpression(BoundDynamicObjectCreationExpression node, object? arg) => new TreeDumperNode("dynamicObjectCreationExpression", null, new TreeDumperNode[] 16703new TreeDumperNode("name", node.Name, null), 16704new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 16705new TreeDumperNode("argumentNamesOpt", node.ArgumentNamesOpt, null), 16706new TreeDumperNode("argumentRefKindsOpt", node.ArgumentRefKindsOpt, null), 16707new TreeDumperNode("initializerExpressionOpt", null, new TreeDumperNode[] { Visit(node.InitializerExpressionOpt, null) }), 16708new TreeDumperNode("applicableMethods", node.ApplicableMethods, null), 16709new TreeDumperNode("wasTargetTyped", node.WasTargetTyped, null), 16710new TreeDumperNode("type", node.Type, null), 16711new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16712new TreeDumperNode("hasErrors", node.HasErrors, null) 16715public override TreeDumperNode VisitNoPiaObjectCreationExpression(BoundNoPiaObjectCreationExpression node, object? arg) => new TreeDumperNode("noPiaObjectCreationExpression", null, new TreeDumperNode[] 16717new TreeDumperNode("guidString", node.GuidString, null), 16718new TreeDumperNode("initializerExpressionOpt", null, new TreeDumperNode[] { Visit(node.InitializerExpressionOpt, null) }), 16719new TreeDumperNode("wasTargetTyped", node.WasTargetTyped, null), 16720new TreeDumperNode("type", node.Type, null), 16721new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16722new TreeDumperNode("hasErrors", node.HasErrors, null) 16725public override TreeDumperNode VisitObjectInitializerExpression(BoundObjectInitializerExpression node, object? arg) => new TreeDumperNode("objectInitializerExpression", null, new TreeDumperNode[] 16727new TreeDumperNode("placeholder", null, new TreeDumperNode[] { Visit(node.Placeholder, null) }), 16728new TreeDumperNode("initializers", null, from x in node.Initializers select Visit(x, null)), 16729new TreeDumperNode("type", node.Type, null), 16730new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16731new TreeDumperNode("hasErrors", node.HasErrors, null) 16734public override TreeDumperNode VisitObjectInitializerMember(BoundObjectInitializerMember node, object? arg) => new TreeDumperNode("objectInitializerMember", null, new TreeDumperNode[] 16736new TreeDumperNode("memberSymbol", node.MemberSymbol, null), 16737new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 16738new TreeDumperNode("argumentNamesOpt", node.ArgumentNamesOpt, null), 16739new TreeDumperNode("argumentRefKindsOpt", node.ArgumentRefKindsOpt, null), 16740new TreeDumperNode("expanded", node.Expanded, null), 16741new TreeDumperNode("argsToParamsOpt", node.ArgsToParamsOpt, null), 16742new TreeDumperNode("defaultArguments", node.DefaultArguments, null), 16743new TreeDumperNode("resultKind", node.ResultKind, null), 16744new TreeDumperNode("accessorKind", node.AccessorKind, null), 16745new TreeDumperNode("receiverType", node.ReceiverType, null), 16746new TreeDumperNode("type", node.Type, null), 16747new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16748new TreeDumperNode("hasErrors", node.HasErrors, null) 16751public override TreeDumperNode VisitDynamicObjectInitializerMember(BoundDynamicObjectInitializerMember node, object? arg) => new TreeDumperNode("dynamicObjectInitializerMember", null, new TreeDumperNode[] 16753new TreeDumperNode("memberName", node.MemberName, null), 16754new TreeDumperNode("receiverType", node.ReceiverType, null), 16755new TreeDumperNode("type", node.Type, null), 16756new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16757new TreeDumperNode("hasErrors", node.HasErrors, null) 16760public override TreeDumperNode VisitCollectionInitializerExpression(BoundCollectionInitializerExpression node, object? arg) => new TreeDumperNode("collectionInitializerExpression", null, new TreeDumperNode[] 16762new TreeDumperNode("placeholder", null, new TreeDumperNode[] { Visit(node.Placeholder, null) }), 16763new TreeDumperNode("initializers", null, from x in node.Initializers select Visit(x, null)), 16764new TreeDumperNode("type", node.Type, null), 16765new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16766new TreeDumperNode("hasErrors", node.HasErrors, null) 16769public override TreeDumperNode VisitCollectionElementInitializer(BoundCollectionElementInitializer node, object? arg) => new TreeDumperNode("collectionElementInitializer", null, new TreeDumperNode[] 16771new TreeDumperNode("addMethod", node.AddMethod, null), 16772new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 16773new TreeDumperNode("implicitReceiverOpt", null, new TreeDumperNode[] { Visit(node.ImplicitReceiverOpt, null) }), 16774new TreeDumperNode("expanded", node.Expanded, null), 16775new TreeDumperNode("argsToParamsOpt", node.ArgsToParamsOpt, null), 16776new TreeDumperNode("defaultArguments", node.DefaultArguments, null), 16777new TreeDumperNode("invokedAsExtensionMethod", node.InvokedAsExtensionMethod, null), 16778new TreeDumperNode("resultKind", node.ResultKind, null), 16779new TreeDumperNode("type", node.Type, null), 16780new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16781new TreeDumperNode("hasErrors", node.HasErrors, null) 16784public override TreeDumperNode VisitDynamicCollectionElementInitializer(BoundDynamicCollectionElementInitializer node, object? arg) => new TreeDumperNode("dynamicCollectionElementInitializer", null, new TreeDumperNode[] 16786new TreeDumperNode("applicableMethods", node.ApplicableMethods, null), 16787new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16788new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 16789new TreeDumperNode("type", node.Type, null), 16790new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16791new TreeDumperNode("hasErrors", node.HasErrors, null) 16794public override TreeDumperNode VisitImplicitReceiver(BoundImplicitReceiver node, object? arg) => new TreeDumperNode("implicitReceiver", null, new TreeDumperNode[] 16796new TreeDumperNode("type", node.Type, null), 16797new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16798new TreeDumperNode("hasErrors", node.HasErrors, null) 16801public override TreeDumperNode VisitAnonymousObjectCreationExpression(BoundAnonymousObjectCreationExpression node, object? arg) => new TreeDumperNode("anonymousObjectCreationExpression", null, new TreeDumperNode[] 16803new TreeDumperNode("constructor", node.Constructor, null), 16804new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 16805new TreeDumperNode("declarations", null, from x in node.Declarations select Visit(x, null)), 16806new TreeDumperNode("type", node.Type, null), 16807new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16808new TreeDumperNode("hasErrors", node.HasErrors, null) 16811public override TreeDumperNode VisitAnonymousPropertyDeclaration(BoundAnonymousPropertyDeclaration node, object? arg) => new TreeDumperNode("anonymousPropertyDeclaration", null, new TreeDumperNode[] 16813new TreeDumperNode("property", node.Property, null), 16814new TreeDumperNode("type", node.Type, null), 16815new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16816new TreeDumperNode("hasErrors", node.HasErrors, null) 16819public override TreeDumperNode VisitNewT(BoundNewT node, object? arg) => new TreeDumperNode("newT", null, new TreeDumperNode[] 16821new TreeDumperNode("initializerExpressionOpt", null, new TreeDumperNode[] { Visit(node.InitializerExpressionOpt, null) }), 16822new TreeDumperNode("wasTargetTyped", node.WasTargetTyped, null), 16823new TreeDumperNode("type", node.Type, null), 16824new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16825new TreeDumperNode("hasErrors", node.HasErrors, null) 16828public override TreeDumperNode VisitDelegateCreationExpression(BoundDelegateCreationExpression node, object? arg) => new TreeDumperNode("delegateCreationExpression", null, new TreeDumperNode[] 16830new TreeDumperNode("argument", null, new TreeDumperNode[] { Visit(node.Argument, null) }), 16831new TreeDumperNode("methodOpt", node.MethodOpt, null), 16832new TreeDumperNode("isExtensionMethod", node.IsExtensionMethod, null), 16833new TreeDumperNode("wasTargetTyped", node.WasTargetTyped, null), 16834new TreeDumperNode("type", node.Type, null), 16835new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16836new TreeDumperNode("hasErrors", node.HasErrors, null) 16839public override TreeDumperNode VisitArrayCreation(BoundArrayCreation node, object? arg) => new TreeDumperNode("arrayCreation", null, new TreeDumperNode[] 16841new TreeDumperNode("bounds", null, from x in node.Bounds select Visit(x, null)), 16842new TreeDumperNode("initializerOpt", null, new TreeDumperNode[] { Visit(node.InitializerOpt, null) }), 16843new TreeDumperNode("type", node.Type, null), 16844new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16845new TreeDumperNode("hasErrors", node.HasErrors, null) 16848public override TreeDumperNode VisitArrayInitialization(BoundArrayInitialization node, object? arg) => new TreeDumperNode("arrayInitialization", null, new TreeDumperNode[] 16850new TreeDumperNode("isInferred", node.IsInferred, null), 16851new TreeDumperNode("initializers", null, from x in node.Initializers select Visit(x, null)), 16852new TreeDumperNode("type", node.Type, null), 16853new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16854new TreeDumperNode("hasErrors", node.HasErrors, null) 16857public override TreeDumperNode VisitStackAllocArrayCreation(BoundStackAllocArrayCreation node, object? arg) => new TreeDumperNode("stackAllocArrayCreation", null, new TreeDumperNode[] 16859new TreeDumperNode("elementType", node.ElementType, null), 16860new TreeDumperNode("count", null, new TreeDumperNode[] { Visit(node.Count, null) }), 16861new TreeDumperNode("initializerOpt", null, new TreeDumperNode[] { Visit(node.InitializerOpt, null) }), 16862new TreeDumperNode("type", node.Type, null), 16863new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16864new TreeDumperNode("hasErrors", node.HasErrors, null) 16867public override TreeDumperNode VisitConvertedStackAllocExpression(BoundConvertedStackAllocExpression node, object? arg) => new TreeDumperNode("convertedStackAllocExpression", null, new TreeDumperNode[] 16869new TreeDumperNode("elementType", node.ElementType, null), 16870new TreeDumperNode("count", null, new TreeDumperNode[] { Visit(node.Count, null) }), 16871new TreeDumperNode("initializerOpt", null, new TreeDumperNode[] { Visit(node.InitializerOpt, null) }), 16872new TreeDumperNode("type", node.Type, null), 16873new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16874new TreeDumperNode("hasErrors", node.HasErrors, null) 16877public override TreeDumperNode VisitFieldAccess(BoundFieldAccess node, object? arg) => new TreeDumperNode("fieldAccess", null, new TreeDumperNode[] 16879new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 16880new TreeDumperNode("fieldSymbol", node.FieldSymbol, null), 16881new TreeDumperNode("constantValueOpt", node.ConstantValueOpt, null), 16882new TreeDumperNode("resultKind", node.ResultKind, null), 16883new TreeDumperNode("isByValue", node.IsByValue, null), 16884new TreeDumperNode("isDeclaration", node.IsDeclaration, null), 16885new TreeDumperNode("type", node.Type, null), 16886new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16887new TreeDumperNode("hasErrors", node.HasErrors, null) 16890public override TreeDumperNode VisitHoistedFieldAccess(BoundHoistedFieldAccess node, object? arg) => new TreeDumperNode("hoistedFieldAccess", null, new TreeDumperNode[] 16892new TreeDumperNode("fieldSymbol", node.FieldSymbol, null), 16893new TreeDumperNode("type", node.Type, null), 16894new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16895new TreeDumperNode("hasErrors", node.HasErrors, null) 16898public override TreeDumperNode VisitPropertyAccess(BoundPropertyAccess node, object? arg) => new TreeDumperNode("propertyAccess", null, new TreeDumperNode[] 16900new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 16901new TreeDumperNode("initialBindingReceiverIsSubjectToCloning", node.InitialBindingReceiverIsSubjectToCloning, null), 16902new TreeDumperNode("propertySymbol", node.PropertySymbol, null), 16903new TreeDumperNode("autoPropertyAccessorKind", node.AutoPropertyAccessorKind, null), 16904new TreeDumperNode("resultKind", node.ResultKind, null), 16905new TreeDumperNode("type", node.Type, null), 16906new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16907new TreeDumperNode("hasErrors", node.HasErrors, null) 16910public override TreeDumperNode VisitEventAccess(BoundEventAccess node, object? arg) => new TreeDumperNode("eventAccess", null, new TreeDumperNode[] 16912new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 16913new TreeDumperNode("eventSymbol", node.EventSymbol, null), 16914new TreeDumperNode("isUsableAsField", node.IsUsableAsField, null), 16915new TreeDumperNode("resultKind", node.ResultKind, null), 16916new TreeDumperNode("type", node.Type, null), 16917new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16918new TreeDumperNode("hasErrors", node.HasErrors, null) 16921public override TreeDumperNode VisitIndexerAccess(BoundIndexerAccess node, object? arg) => new TreeDumperNode("indexerAccess", null, new TreeDumperNode[] 16923new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 16924new TreeDumperNode("initialBindingReceiverIsSubjectToCloning", node.InitialBindingReceiverIsSubjectToCloning, null), 16925new TreeDumperNode("indexer", node.Indexer, null), 16926new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 16927new TreeDumperNode("argumentNamesOpt", node.ArgumentNamesOpt, null), 16928new TreeDumperNode("argumentRefKindsOpt", node.ArgumentRefKindsOpt, null), 16929new TreeDumperNode("expanded", node.Expanded, null), 16930new TreeDumperNode("accessorKind", node.AccessorKind, null), 16931new TreeDumperNode("argsToParamsOpt", node.ArgsToParamsOpt, null), 16932new TreeDumperNode("defaultArguments", node.DefaultArguments, null), 16933new TreeDumperNode("originalIndexersOpt", node.OriginalIndexersOpt, null), 16934new TreeDumperNode("type", node.Type, null), 16935new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16936new TreeDumperNode("hasErrors", node.HasErrors, null) 16939public override TreeDumperNode VisitImplicitIndexerAccess(BoundImplicitIndexerAccess node, object? arg) => new TreeDumperNode("implicitIndexerAccess", null, new TreeDumperNode[] 16941new TreeDumperNode("receiver", null, new TreeDumperNode[] { Visit(node.Receiver, null) }), 16942new TreeDumperNode("argument", null, new TreeDumperNode[] { Visit(node.Argument, null) }), 16943new TreeDumperNode("lengthOrCountAccess", null, new TreeDumperNode[] { Visit(node.LengthOrCountAccess, null) }), 16944new TreeDumperNode("receiverPlaceholder", null, new TreeDumperNode[] { Visit(node.ReceiverPlaceholder, null) }), 16945new TreeDumperNode("indexerOrSliceAccess", null, new TreeDumperNode[] { Visit(node.IndexerOrSliceAccess, null) }), 16946new TreeDumperNode("argumentPlaceholders", null, from x in node.ArgumentPlaceholders select Visit(x, null)), 16947new TreeDumperNode("type", node.Type, null), 16948new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16949new TreeDumperNode("hasErrors", node.HasErrors, null) 16952public override TreeDumperNode VisitInlineArrayAccess(BoundInlineArrayAccess node, object? arg) => new TreeDumperNode("inlineArrayAccess", null, new TreeDumperNode[] 16954new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 16955new TreeDumperNode("argument", null, new TreeDumperNode[] { Visit(node.Argument, null) }), 16956new TreeDumperNode("isValue", node.IsValue, null), 16957new TreeDumperNode("getItemOrSliceHelper", node.GetItemOrSliceHelper, null), 16958new TreeDumperNode("type", node.Type, null), 16959new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16960new TreeDumperNode("hasErrors", node.HasErrors, null) 16963public override TreeDumperNode VisitDynamicIndexerAccess(BoundDynamicIndexerAccess node, object? arg) => new TreeDumperNode("dynamicIndexerAccess", null, new TreeDumperNode[] 16965new TreeDumperNode("receiver", null, new TreeDumperNode[] { Visit(node.Receiver, null) }), 16966new TreeDumperNode("arguments", null, from x in node.Arguments select Visit(x, null)), 16967new TreeDumperNode("argumentNamesOpt", node.ArgumentNamesOpt, null), 16968new TreeDumperNode("argumentRefKindsOpt", node.ArgumentRefKindsOpt, null), 16969new TreeDumperNode("applicableIndexers", node.ApplicableIndexers, null), 16970new TreeDumperNode("type", node.Type, null), 16971new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16972new TreeDumperNode("hasErrors", node.HasErrors, null) 16975public override TreeDumperNode VisitLambda(BoundLambda node, object? arg) => new TreeDumperNode("lambda", null, new TreeDumperNode[] 16977new TreeDumperNode("unboundLambda", null, new TreeDumperNode[] { Visit(node.UnboundLambda, null) }), 16978new TreeDumperNode("symbol", node.Symbol, null), 16979new TreeDumperNode("body", null, new TreeDumperNode[] { Visit(node.Body, null) }), 16980new TreeDumperNode("diagnostics", node.Diagnostics, null), 16981new TreeDumperNode("binder", node.Binder, null), 16982new TreeDumperNode("type", node.Type, null), 16983new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16984new TreeDumperNode("hasErrors", node.HasErrors, null) 16987public override TreeDumperNode VisitUnboundLambda(UnboundLambda node, object? arg) => new TreeDumperNode("unboundLambda", null, new TreeDumperNode[] 16989new TreeDumperNode("data", node.Data, null), 16990new TreeDumperNode("functionType", node.FunctionType, null), 16991new TreeDumperNode("withDependencies", node.WithDependencies, null), 16992new TreeDumperNode("type", node.Type, null), 16993new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 16994new TreeDumperNode("hasErrors", node.HasErrors, null) 16997public override TreeDumperNode VisitQueryClause(BoundQueryClause node, object? arg) => new TreeDumperNode("queryClause", null, new TreeDumperNode[] 16999new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 17000new TreeDumperNode("definedSymbol", node.DefinedSymbol, null), 17001new TreeDumperNode("operation", null, new TreeDumperNode[] { Visit(node.Operation, null) }), 17002new TreeDumperNode("cast", null, new TreeDumperNode[] { Visit(node.Cast, null) }), 17003new TreeDumperNode("binder", node.Binder, null), 17004new TreeDumperNode("unoptimizedForm", null, new TreeDumperNode[] { Visit(node.UnoptimizedForm, null) }), 17005new TreeDumperNode("type", node.Type, null), 17006new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17007new TreeDumperNode("hasErrors", node.HasErrors, null) 17010public override TreeDumperNode VisitTypeOrInstanceInitializers(BoundTypeOrInstanceInitializers node, object? arg) => new TreeDumperNode("typeOrInstanceInitializers", null, new TreeDumperNode[] 17012new TreeDumperNode("statements", null, from x in node.Statements select Visit(x, null)), 17013new TreeDumperNode("hasErrors", node.HasErrors, null) 17016public override TreeDumperNode VisitNameOfOperator(BoundNameOfOperator node, object? arg) => new TreeDumperNode("nameOfOperator", null, new TreeDumperNode[] 17018new TreeDumperNode("argument", null, new TreeDumperNode[] { Visit(node.Argument, null) }), 17019new TreeDumperNode("constantValueOpt", node.ConstantValueOpt, null), 17020new TreeDumperNode("type", node.Type, null), 17021new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17022new TreeDumperNode("hasErrors", node.HasErrors, null) 17025public override TreeDumperNode VisitUnconvertedInterpolatedString(BoundUnconvertedInterpolatedString node, object? arg) => new TreeDumperNode("unconvertedInterpolatedString", null, new TreeDumperNode[] 17027new TreeDumperNode("parts", null, from x in node.Parts select Visit(x, null)), 17028new TreeDumperNode("constantValueOpt", node.ConstantValueOpt, null), 17029new TreeDumperNode("type", node.Type, null), 17030new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17031new TreeDumperNode("hasErrors", node.HasErrors, null) 17034public override TreeDumperNode VisitInterpolatedString(BoundInterpolatedString node, object? arg) => new TreeDumperNode("interpolatedString", null, new TreeDumperNode[] 17036new TreeDumperNode("interpolationData", node.InterpolationData, null), 17037new TreeDumperNode("parts", null, from x in node.Parts select Visit(x, null)), 17038new TreeDumperNode("constantValueOpt", node.ConstantValueOpt, null), 17039new TreeDumperNode("type", node.Type, null), 17040new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17041new TreeDumperNode("hasErrors", node.HasErrors, null) 17044public override TreeDumperNode VisitInterpolatedStringHandlerPlaceholder(BoundInterpolatedStringHandlerPlaceholder node, object? arg) => new TreeDumperNode("interpolatedStringHandlerPlaceholder", null, new TreeDumperNode[] 17046new TreeDumperNode("type", node.Type, null), 17047new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17048new TreeDumperNode("hasErrors", node.HasErrors, null) 17051public override TreeDumperNode VisitInterpolatedStringArgumentPlaceholder(BoundInterpolatedStringArgumentPlaceholder node, object? arg) => new TreeDumperNode("interpolatedStringArgumentPlaceholder", null, new TreeDumperNode[] 17053new TreeDumperNode("argumentIndex", node.ArgumentIndex, null), 17054new TreeDumperNode("type", node.Type, null), 17055new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17056new TreeDumperNode("hasErrors", node.HasErrors, null) 17059public override TreeDumperNode VisitStringInsert(BoundStringInsert node, object? arg) => new TreeDumperNode("stringInsert", null, new TreeDumperNode[] 17061new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 17062new TreeDumperNode("alignment", null, new TreeDumperNode[] { Visit(node.Alignment, null) }), 17063new TreeDumperNode("format", null, new TreeDumperNode[] { Visit(node.Format, null) }), 17064new TreeDumperNode("isInterpolatedStringHandlerAppendCall", node.IsInterpolatedStringHandlerAppendCall, null), 17065new TreeDumperNode("type", node.Type, null), 17066new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17067new TreeDumperNode("hasErrors", node.HasErrors, null) 17070public override TreeDumperNode VisitIsPatternExpression(BoundIsPatternExpression node, object? arg) => new TreeDumperNode("isPatternExpression", null, new TreeDumperNode[] 17072new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 17073new TreeDumperNode("pattern", null, new TreeDumperNode[] { Visit(node.Pattern, null) }), 17074new TreeDumperNode("isNegated", node.IsNegated, null), 17075new TreeDumperNode("reachabilityDecisionDag", null, new TreeDumperNode[] { Visit(node.ReachabilityDecisionDag, null) }), 17076new TreeDumperNode("whenTrueLabel", node.WhenTrueLabel, null), 17077new TreeDumperNode("whenFalseLabel", node.WhenFalseLabel, null), 17078new TreeDumperNode("type", node.Type, null), 17079new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17080new TreeDumperNode("hasErrors", node.HasErrors, null) 17083public override TreeDumperNode VisitConstantPattern(BoundConstantPattern node, object? arg) => new TreeDumperNode("constantPattern", null, new TreeDumperNode[] 17085new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 17086new TreeDumperNode("constantValue", node.ConstantValue, null), 17087new TreeDumperNode("inputType", node.InputType, null), 17088new TreeDumperNode("narrowedType", node.NarrowedType, null), 17089new TreeDumperNode("hasErrors", node.HasErrors, null) 17092public override TreeDumperNode VisitDiscardPattern(BoundDiscardPattern node, object? arg) => new TreeDumperNode("discardPattern", null, new TreeDumperNode[] 17094new TreeDumperNode("inputType", node.InputType, null), 17095new TreeDumperNode("narrowedType", node.NarrowedType, null), 17096new TreeDumperNode("hasErrors", node.HasErrors, null) 17099public override TreeDumperNode VisitDeclarationPattern(BoundDeclarationPattern node, object? arg) => new TreeDumperNode("declarationPattern", null, new TreeDumperNode[] 17101new TreeDumperNode("declaredType", null, new TreeDumperNode[] { Visit(node.DeclaredType, null) }), 17102new TreeDumperNode("isVar", node.IsVar, null), 17103new TreeDumperNode("variable", node.Variable, null), 17104new TreeDumperNode("variableAccess", null, new TreeDumperNode[] { Visit(node.VariableAccess, null) }), 17105new TreeDumperNode("inputType", node.InputType, null), 17106new TreeDumperNode("narrowedType", node.NarrowedType, null), 17107new TreeDumperNode("hasErrors", node.HasErrors, null) 17110public override TreeDumperNode VisitRecursivePattern(BoundRecursivePattern node, object? arg) => new TreeDumperNode("recursivePattern", null, new TreeDumperNode[] 17112new TreeDumperNode("declaredType", null, new TreeDumperNode[] { Visit(node.DeclaredType, null) }), 17113new TreeDumperNode("deconstructMethod", node.DeconstructMethod, null), 17114new TreeDumperNode("deconstruction", null, node.Deconstruction.IsDefault ? Array.Empty<TreeDumperNode>() : from x in node.Deconstruction select Visit(x, null)), 17115new TreeDumperNode("properties", null, node.Properties.IsDefault ? Array.Empty<TreeDumperNode>() : from x in node.Properties select Visit(x, null)), 17116new TreeDumperNode("isExplicitNotNullTest", node.IsExplicitNotNullTest, null), 17117new TreeDumperNode("variable", node.Variable, null), 17118new TreeDumperNode("variableAccess", null, new TreeDumperNode[] { Visit(node.VariableAccess, null) }), 17119new TreeDumperNode("inputType", node.InputType, null), 17120new TreeDumperNode("narrowedType", node.NarrowedType, null), 17121new TreeDumperNode("hasErrors", node.HasErrors, null) 17124public override TreeDumperNode VisitListPattern(BoundListPattern node, object? arg) => new TreeDumperNode("listPattern", null, new TreeDumperNode[] 17126new TreeDumperNode("subpatterns", null, from x in node.Subpatterns select Visit(x, null)), 17127new TreeDumperNode("hasSlice", node.HasSlice, null), 17128new TreeDumperNode("lengthAccess", null, new TreeDumperNode[] { Visit(node.LengthAccess, null) }), 17129new TreeDumperNode("indexerAccess", null, new TreeDumperNode[] { Visit(node.IndexerAccess, null) }), 17130new TreeDumperNode("receiverPlaceholder", null, new TreeDumperNode[] { Visit(node.ReceiverPlaceholder, null) }), 17131new TreeDumperNode("argumentPlaceholder", null, new TreeDumperNode[] { Visit(node.ArgumentPlaceholder, null) }), 17132new TreeDumperNode("variable", node.Variable, null), 17133new TreeDumperNode("variableAccess", null, new TreeDumperNode[] { Visit(node.VariableAccess, null) }), 17134new TreeDumperNode("inputType", node.InputType, null), 17135new TreeDumperNode("narrowedType", node.NarrowedType, null), 17136new TreeDumperNode("hasErrors", node.HasErrors, null) 17139public override TreeDumperNode VisitSlicePattern(BoundSlicePattern node, object? arg) => new TreeDumperNode("slicePattern", null, new TreeDumperNode[] 17141new TreeDumperNode("pattern", null, new TreeDumperNode[] { Visit(node.Pattern, null) }), 17142new TreeDumperNode("indexerAccess", null, new TreeDumperNode[] { Visit(node.IndexerAccess, null) }), 17143new TreeDumperNode("receiverPlaceholder", null, new TreeDumperNode[] { Visit(node.ReceiverPlaceholder, null) }), 17144new TreeDumperNode("argumentPlaceholder", null, new TreeDumperNode[] { Visit(node.ArgumentPlaceholder, null) }), 17145new TreeDumperNode("inputType", node.InputType, null), 17146new TreeDumperNode("narrowedType", node.NarrowedType, null), 17147new TreeDumperNode("hasErrors", node.HasErrors, null) 17150public override TreeDumperNode VisitITuplePattern(BoundITuplePattern node, object? arg) => new TreeDumperNode("iTuplePattern", null, new TreeDumperNode[] 17152new TreeDumperNode("getLengthMethod", node.GetLengthMethod, null), 17153new TreeDumperNode("getItemMethod", node.GetItemMethod, null), 17154new TreeDumperNode("subpatterns", null, from x in node.Subpatterns select Visit(x, null)), 17155new TreeDumperNode("inputType", node.InputType, null), 17156new TreeDumperNode("narrowedType", node.NarrowedType, null), 17157new TreeDumperNode("hasErrors", node.HasErrors, null) 17160public override TreeDumperNode VisitPositionalSubpattern(BoundPositionalSubpattern node, object? arg) => new TreeDumperNode("positionalSubpattern", null, new TreeDumperNode[] 17162new TreeDumperNode("symbol", node.Symbol, null), 17163new TreeDumperNode("pattern", null, new TreeDumperNode[] { Visit(node.Pattern, null) }), 17164new TreeDumperNode("hasErrors", node.HasErrors, null) 17167public override TreeDumperNode VisitPropertySubpattern(BoundPropertySubpattern node, object? arg) => new TreeDumperNode("propertySubpattern", null, new TreeDumperNode[] 17169new TreeDumperNode("member", null, new TreeDumperNode[] { Visit(node.Member, null) }), 17170new TreeDumperNode("isLengthOrCount", node.IsLengthOrCount, null), 17171new TreeDumperNode("pattern", null, new TreeDumperNode[] { Visit(node.Pattern, null) }), 17172new TreeDumperNode("hasErrors", node.HasErrors, null) 17175public override TreeDumperNode VisitPropertySubpatternMember(BoundPropertySubpatternMember node, object? arg) => new TreeDumperNode("propertySubpatternMember", null, new TreeDumperNode[] 17177new TreeDumperNode("receiver", null, new TreeDumperNode[] { Visit(node.Receiver, null) }), 17178new TreeDumperNode("symbol", node.Symbol, null), 17179new TreeDumperNode("type", node.Type, null), 17180new TreeDumperNode("hasErrors", node.HasErrors, null) 17183public override TreeDumperNode VisitTypePattern(BoundTypePattern node, object? arg) => new TreeDumperNode("typePattern", null, new TreeDumperNode[] 17185new TreeDumperNode("declaredType", null, new TreeDumperNode[] { Visit(node.DeclaredType, null) }), 17186new TreeDumperNode("isExplicitNotNullTest", node.IsExplicitNotNullTest, null), 17187new TreeDumperNode("inputType", node.InputType, null), 17188new TreeDumperNode("narrowedType", node.NarrowedType, null), 17189new TreeDumperNode("hasErrors", node.HasErrors, null) 17192public override TreeDumperNode VisitBinaryPattern(BoundBinaryPattern node, object? arg) => new TreeDumperNode("binaryPattern", null, new TreeDumperNode[] 17194new TreeDumperNode("disjunction", node.Disjunction, null), 17195new TreeDumperNode("left", null, new TreeDumperNode[] { Visit(node.Left, null) }), 17196new TreeDumperNode("right", null, new TreeDumperNode[] { Visit(node.Right, null) }), 17197new TreeDumperNode("inputType", node.InputType, null), 17198new TreeDumperNode("narrowedType", node.NarrowedType, null), 17199new TreeDumperNode("hasErrors", node.HasErrors, null) 17202public override TreeDumperNode VisitNegatedPattern(BoundNegatedPattern node, object? arg) => new TreeDumperNode("negatedPattern", null, new TreeDumperNode[] 17204new TreeDumperNode("negated", null, new TreeDumperNode[] { Visit(node.Negated, null) }), 17205new TreeDumperNode("inputType", node.InputType, null), 17206new TreeDumperNode("narrowedType", node.NarrowedType, null), 17207new TreeDumperNode("hasErrors", node.HasErrors, null) 17210public override TreeDumperNode VisitRelationalPattern(BoundRelationalPattern node, object? arg) => new TreeDumperNode("relationalPattern", null, new TreeDumperNode[] 17212new TreeDumperNode("relation", node.Relation, null), 17213new TreeDumperNode("value", null, new TreeDumperNode[] { Visit(node.Value, null) }), 17214new TreeDumperNode("constantValue", node.ConstantValue, null), 17215new TreeDumperNode("inputType", node.InputType, null), 17216new TreeDumperNode("narrowedType", node.NarrowedType, null), 17217new TreeDumperNode("hasErrors", node.HasErrors, null) 17220public override TreeDumperNode VisitDiscardExpression(BoundDiscardExpression node, object? arg) => new TreeDumperNode("discardExpression", null, new TreeDumperNode[] 17222new TreeDumperNode("nullableAnnotation", node.NullableAnnotation, null), 17223new TreeDumperNode("isInferred", node.IsInferred, null), 17224new TreeDumperNode("type", node.Type, null), 17225new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17226new TreeDumperNode("hasErrors", node.HasErrors, null) 17229public override TreeDumperNode VisitThrowExpression(BoundThrowExpression node, object? arg) => new TreeDumperNode("throwExpression", null, new TreeDumperNode[] 17231new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 17232new TreeDumperNode("type", node.Type, null), 17233new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17234new TreeDumperNode("hasErrors", node.HasErrors, null) 17237public override TreeDumperNode VisitOutVariablePendingInference(OutVariablePendingInference node, object? arg) => new TreeDumperNode("outVariablePendingInference", null, new TreeDumperNode[] 17239new TreeDumperNode("variableSymbol", node.VariableSymbol, null), 17240new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 17241new TreeDumperNode("type", node.Type, null), 17242new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17243new TreeDumperNode("hasErrors", node.HasErrors, null) 17246public override TreeDumperNode VisitDeconstructionVariablePendingInference(DeconstructionVariablePendingInference node, object? arg) => new TreeDumperNode("deconstructionVariablePendingInference", null, new TreeDumperNode[] 17248new TreeDumperNode("variableSymbol", node.VariableSymbol, null), 17249new TreeDumperNode("receiverOpt", null, new TreeDumperNode[] { Visit(node.ReceiverOpt, null) }), 17250new TreeDumperNode("type", node.Type, null), 17251new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17252new TreeDumperNode("hasErrors", node.HasErrors, null) 17255public override TreeDumperNode VisitOutDeconstructVarPendingInference(OutDeconstructVarPendingInference node, object? arg) => new TreeDumperNode("outDeconstructVarPendingInference", null, new TreeDumperNode[] 17257new TreeDumperNode("variableSymbol", node.VariableSymbol, null), 17258new TreeDumperNode("isDiscardExpression", node.IsDiscardExpression, null), 17259new TreeDumperNode("type", node.Type, null), 17260new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17261new TreeDumperNode("hasErrors", node.HasErrors, null) 17264public override TreeDumperNode VisitNonConstructorMethodBody(BoundNonConstructorMethodBody node, object? arg) => new TreeDumperNode("nonConstructorMethodBody", null, new TreeDumperNode[] 17266new TreeDumperNode("blockBody", null, new TreeDumperNode[] { Visit(node.BlockBody, null) }), 17267new TreeDumperNode("expressionBody", null, new TreeDumperNode[] { Visit(node.ExpressionBody, null) }), 17268new TreeDumperNode("hasErrors", node.HasErrors, null) 17271public override TreeDumperNode VisitConstructorMethodBody(BoundConstructorMethodBody node, object? arg) => new TreeDumperNode("constructorMethodBody", null, new TreeDumperNode[] 17273new TreeDumperNode("locals", node.Locals, null), 17274new TreeDumperNode("initializer", null, new TreeDumperNode[] { Visit(node.Initializer, null) }), 17275new TreeDumperNode("blockBody", null, new TreeDumperNode[] { Visit(node.BlockBody, null) }), 17276new TreeDumperNode("expressionBody", null, new TreeDumperNode[] { Visit(node.ExpressionBody, null) }), 17277new TreeDumperNode("hasErrors", node.HasErrors, null) 17280public override TreeDumperNode VisitExpressionWithNullability(BoundExpressionWithNullability node, object? arg) => new TreeDumperNode("expressionWithNullability", null, new TreeDumperNode[] 17282new TreeDumperNode("expression", null, new TreeDumperNode[] { Visit(node.Expression, null) }), 17283new TreeDumperNode("nullableAnnotation", node.NullableAnnotation, null), 17284new TreeDumperNode("type", node.Type, null), 17285new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17286new TreeDumperNode("hasErrors", node.HasErrors, null) 17289public override TreeDumperNode VisitWithExpression(BoundWithExpression node, object? arg) => new TreeDumperNode("withExpression", null, new TreeDumperNode[] 17291new TreeDumperNode("receiver", null, new TreeDumperNode[] { Visit(node.Receiver, null) }), 17292new TreeDumperNode("cloneMethod", node.CloneMethod, null), 17293new TreeDumperNode("initializerExpression", null, new TreeDumperNode[] { Visit(node.InitializerExpression, null) }), 17294new TreeDumperNode("type", node.Type, null), 17295new TreeDumperNode("isSuppressed", node.IsSuppressed, null), 17296new 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 (1)
553return new TreeDumperNode(kind, null, node.ChildNodesAndTokens().Select(makeTree));