From 3ce9c21104e14a961cfebcdc180960e0817509ad Mon Sep 17 00:00:00 2001 From: Alireza Habibi Date: Tue, 3 May 2022 19:59:32 +0430 Subject: [PATCH] Simplify --- .../Generated/BoundNodes.xml.Generated.cs | 1070 +++++------------ .../BoundNodeClassWriter.cs | 23 +- 2 files changed, 281 insertions(+), 812 deletions(-) diff --git a/src/Compilers/CSharp/Portable/Generated/BoundNodes.xml.Generated.cs b/src/Compilers/CSharp/Portable/Generated/BoundNodes.xml.Generated.cs index ba665ad3e6e92..839b319fe933c 100644 --- a/src/Compilers/CSharp/Portable/Generated/BoundNodes.xml.Generated.cs +++ b/src/Compilers/CSharp/Portable/Generated/BoundNodes.xml.Generated.cs @@ -282,9 +282,7 @@ protected BoundEqualsValue(BoundKind kind, SyntaxNode syntax, ImmutableArray Locals { get; } - public BoundExpression Value { get; } } @@ -301,8 +299,8 @@ public BoundFieldEqualsValue(SyntaxNode syntax, FieldSymbol field, ImmutableArra this.Field = field; } - public FieldSymbol Field { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFieldEqualsValue(this); @@ -331,8 +329,8 @@ public BoundPropertyEqualsValue(SyntaxNode syntax, PropertySymbol property, Immu this.Property = property; } - public PropertySymbol Property { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertyEqualsValue(this); @@ -361,8 +359,8 @@ public BoundParameterEqualsValue(SyntaxNode syntax, ParameterSymbol parameter, I this.Parameter = parameter; } - public ParameterSymbol Parameter { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitParameterEqualsValue(this); @@ -389,8 +387,8 @@ public BoundGlobalStatementInitializer(SyntaxNode syntax, BoundStatement stateme this.Statement = statement; } - public BoundStatement Statement { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitGlobalStatementInitializer(this); @@ -420,7 +418,6 @@ protected BoundExpression(BoundKind kind, SyntaxNode syntax, TypeSymbol? type) this.Type = type; } - public TypeSymbol? Type { get; } } @@ -464,6 +461,7 @@ public BoundValuePlaceholder(SyntaxNode syntax, TypeSymbol? type) { } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitValuePlaceholder(this); @@ -499,10 +497,9 @@ public BoundDeconstructValuePlaceholder(SyntaxNode syntax, uint valEscape, TypeS this.ValEscape = valEscape; } - public new TypeSymbol Type => base.Type!; - public uint ValEscape { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeconstructValuePlaceholder(this); @@ -536,8 +533,8 @@ public BoundTupleOperandPlaceholder(SyntaxNode syntax, TypeSymbol type) } - public new TypeSymbol Type => base.Type!; + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTupleOperandPlaceholder(this); @@ -567,10 +564,9 @@ public BoundAwaitableValuePlaceholder(SyntaxNode syntax, uint valEscape, TypeSym this.ValEscape = valEscape; } - public new TypeSymbol? Type => base.Type; - public uint ValEscape { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAwaitableValuePlaceholder(this); @@ -604,8 +600,8 @@ public BoundDisposableValuePlaceholder(SyntaxNode syntax, TypeSymbol type) } - public new TypeSymbol Type => base.Type!; + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDisposableValuePlaceholder(this); @@ -641,10 +637,9 @@ public BoundObjectOrCollectionValuePlaceholder(SyntaxNode syntax, bool isNewInst this.IsNewInstance = isNewInstance; } - public new TypeSymbol Type => base.Type!; - public bool IsNewInstance { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectOrCollectionValuePlaceholder(this); @@ -678,8 +673,8 @@ public BoundImplicitIndexerValuePlaceholder(SyntaxNode syntax, TypeSymbol type) } - public new TypeSymbol Type => base.Type!; + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitIndexerValuePlaceholder(this); @@ -704,7 +699,7 @@ public BoundImplicitIndexerReceiverPlaceholder(SyntaxNode syntax, uint valEscape RoslynDebug.Assert(type is object, "Field 'type' cannot be null (make the type nullable in BoundNodes.xml to remove this check)"); this.ValEscape = valEscape; - this._IsEquivalentToThisReference = isEquivalentToThisReference; + this.IsEquivalentToThisReference = isEquivalentToThisReference; } public BoundImplicitIndexerReceiverPlaceholder(SyntaxNode syntax, uint valEscape, bool isEquivalentToThisReference, TypeSymbol type) @@ -714,16 +709,13 @@ public BoundImplicitIndexerReceiverPlaceholder(SyntaxNode syntax, uint valEscape RoslynDebug.Assert(type is object, "Field 'type' cannot be null (make the type nullable in BoundNodes.xml to remove this check)"); this.ValEscape = valEscape; - this._IsEquivalentToThisReference = isEquivalentToThisReference; + this.IsEquivalentToThisReference = isEquivalentToThisReference; } - public new TypeSymbol Type => base.Type!; - public uint ValEscape { get; } + public override bool IsEquivalentToThisReference { get; } - private readonly bool _IsEquivalentToThisReference; - public override bool IsEquivalentToThisReference { get { return _IsEquivalentToThisReference; } } [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitIndexerReceiverPlaceholder(this); @@ -759,10 +751,9 @@ public BoundListPatternReceiverPlaceholder(SyntaxNode syntax, uint valEscape, Ty this.ValEscape = valEscape; } - public new TypeSymbol Type => base.Type!; - public uint ValEscape { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitListPatternReceiverPlaceholder(this); @@ -796,8 +787,8 @@ public BoundListPatternIndexPlaceholder(SyntaxNode syntax, TypeSymbol type) } - public new TypeSymbol Type => base.Type!; + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitListPatternIndexPlaceholder(this); @@ -833,10 +824,9 @@ public BoundSlicePatternReceiverPlaceholder(SyntaxNode syntax, uint valEscape, T this.ValEscape = valEscape; } - public new TypeSymbol Type => base.Type!; - public uint ValEscape { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSlicePatternReceiverPlaceholder(this); @@ -870,8 +860,8 @@ public BoundSlicePatternRangePlaceholder(SyntaxNode syntax, TypeSymbol type) } - public new TypeSymbol Type => base.Type!; + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSlicePatternRangePlaceholder(this); @@ -901,8 +891,8 @@ public BoundDup(SyntaxNode syntax, RefKind refKind, TypeSymbol? type) this.RefKind = refKind; } - public RefKind RefKind { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDup(this); @@ -929,8 +919,8 @@ public BoundPassByCopy(SyntaxNode syntax, BoundExpression expression, TypeSymbol this.Expression = expression; } - public BoundExpression Expression { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPassByCopy(this); @@ -955,18 +945,15 @@ public BoundBadExpression(SyntaxNode syntax, LookupResultKind resultKind, Immuta RoslynDebug.Assert(!symbols.IsDefault, "Field 'symbols' cannot be null (use Null=\"allow\" in BoundNodes.xml to remove this check)"); RoslynDebug.Assert(!childBoundNodes.IsDefault, "Field 'childBoundNodes' cannot be null (use Null=\"allow\" in BoundNodes.xml to remove this check)"); - this._ResultKind = resultKind; + this.ResultKind = resultKind; this.Symbols = symbols; this.ChildBoundNodes = childBoundNodes; } - - private readonly LookupResultKind _ResultKind; - public override LookupResultKind ResultKind { get { return _ResultKind; } } - + public override LookupResultKind ResultKind { get; } public ImmutableArray Symbols { get; } - public ImmutableArray ChildBoundNodes { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBadExpression(this); @@ -993,8 +980,8 @@ public BoundBadStatement(SyntaxNode syntax, ImmutableArray childBound this.ChildBoundNodes = childBoundNodes; } - public ImmutableArray ChildBoundNodes { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBadStatement(this); @@ -1021,8 +1008,8 @@ public BoundExtractedFinallyBlock(SyntaxNode syntax, BoundBlock finallyBlock, bo this.FinallyBlock = finallyBlock; } - public BoundBlock FinallyBlock { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitExtractedFinallyBlock(this); @@ -1052,16 +1039,12 @@ public BoundTypeExpression(SyntaxNode syntax, AliasSymbol? aliasOpt, BoundTypeEx this.TypeWithAnnotations = typeWithAnnotations; } - public AliasSymbol? AliasOpt { get; } - public BoundTypeExpression? BoundContainingTypeOpt { get; } - public ImmutableArray BoundDimensionsOpt { get; } - public new TypeSymbol Type => base.Type!; - public TypeWithAnnotations TypeWithAnnotations { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeExpression(this); @@ -1097,10 +1080,9 @@ public BoundTypeOrValueExpression(SyntaxNode syntax, BoundTypeOrValueData data, this.Data = data; } - public new TypeSymbol Type => base.Type!; - public BoundTypeOrValueData Data { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeOrValueExpression(this); @@ -1138,12 +1120,10 @@ public BoundNamespaceExpression(SyntaxNode syntax, NamespaceSymbol namespaceSymb this.AliasOpt = aliasOpt; } - public new TypeSymbol? Type => base.Type; - public NamespaceSymbol NamespaceSymbol { get; } - public AliasSymbol? AliasOpt { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNamespaceExpression(this); @@ -1173,27 +1153,19 @@ public BoundUnaryOperator(SyntaxNode syntax, UnaryOperatorKind operatorKind, Bou this.ConstantValueOpt = constantValueOpt; this.MethodOpt = methodOpt; this.ConstrainedToTypeOpt = constrainedToTypeOpt; - this._ResultKind = resultKind; + this.ResultKind = resultKind; this.OriginalUserDefinedOperatorsOpt = originalUserDefinedOperatorsOpt; } - public new TypeSymbol Type => base.Type!; - public UnaryOperatorKind OperatorKind { get; } - public BoundExpression Operand { get; } - public ConstantValue? ConstantValueOpt { get; } - public MethodSymbol? MethodOpt { get; } - public TypeSymbol? ConstrainedToTypeOpt { get; } - - private readonly LookupResultKind _ResultKind; - public override LookupResultKind ResultKind { get { return _ResultKind; } } - + public override LookupResultKind ResultKind { get; } public ImmutableArray OriginalUserDefinedOperatorsOpt { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnaryOperator(this); @@ -1226,33 +1198,22 @@ public BoundIncrementOperator(SyntaxNode syntax, UnaryOperatorKind operatorKind, this.OperandConversion = operandConversion; this.ResultPlaceholder = resultPlaceholder; this.ResultConversion = resultConversion; - this._ResultKind = resultKind; + this.ResultKind = resultKind; this.OriginalUserDefinedOperatorsOpt = originalUserDefinedOperatorsOpt; } - public new TypeSymbol Type => base.Type!; - public UnaryOperatorKind OperatorKind { get; } - public BoundExpression Operand { get; } - public MethodSymbol? MethodOpt { get; } - public TypeSymbol? ConstrainedToTypeOpt { get; } - public BoundValuePlaceholder? OperandPlaceholder { get; } - public BoundExpression? OperandConversion { get; } - public BoundValuePlaceholder? ResultPlaceholder { get; } - public BoundExpression? ResultConversion { get; } - - private readonly LookupResultKind _ResultKind; - public override LookupResultKind ResultKind { get { return _ResultKind; } } - + public override LookupResultKind ResultKind { get; } public ImmutableArray OriginalUserDefinedOperatorsOpt { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIncrementOperator(this); @@ -1281,12 +1242,10 @@ public BoundAddressOfOperator(SyntaxNode syntax, BoundExpression operand, bool i this.IsManaged = isManaged; } - public new TypeSymbol Type => base.Type!; - public BoundExpression Operand { get; } - public bool IsManaged { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAddressOfOperator(this); @@ -1313,10 +1272,9 @@ public BoundUnconvertedAddressOfOperator(SyntaxNode syntax, BoundMethodGroup ope this.Operand = operand; } - public BoundMethodGroup Operand { get; } - public new TypeSymbol? Type => base.Type; + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedAddressOfOperator(this); @@ -1356,12 +1314,10 @@ public BoundFunctionPointerLoad(SyntaxNode syntax, MethodSymbol targetMethod, Ty this.ConstrainedToTypeOpt = constrainedToTypeOpt; } - public MethodSymbol TargetMethod { get; } - public TypeSymbol? ConstrainedToTypeOpt { get; } - public new TypeSymbol Type => base.Type!; + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFunctionPointerLoad(this); @@ -1390,12 +1346,10 @@ public BoundPointerIndirectionOperator(SyntaxNode syntax, BoundExpression operan this.RefersToLocation = refersToLocation; } - public new TypeSymbol Type => base.Type!; - public BoundExpression Operand { get; } - public bool RefersToLocation { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPointerIndirectionOperator(this); @@ -1427,16 +1381,12 @@ public BoundPointerElementAccess(SyntaxNode syntax, BoundExpression expression, this.RefersToLocation = refersToLocation; } - public new TypeSymbol Type => base.Type!; - public BoundExpression Expression { get; } - public BoundExpression Index { get; } - public bool Checked { get; } - public bool RefersToLocation { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPointerElementAccess(this); @@ -1465,20 +1415,15 @@ public BoundFunctionPointerInvocation(SyntaxNode syntax, BoundExpression invoked this.InvokedExpression = invokedExpression; this.Arguments = arguments; this.ArgumentRefKindsOpt = argumentRefKindsOpt; - this._ResultKind = resultKind; + this.ResultKind = resultKind; } - public new TypeSymbol Type => base.Type!; - public BoundExpression InvokedExpression { get; } - public ImmutableArray Arguments { get; } - public ImmutableArray ArgumentRefKindsOpt { get; } + public override LookupResultKind ResultKind { get; } - private readonly LookupResultKind _ResultKind; - public override LookupResultKind ResultKind { get { return _ResultKind; } } [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFunctionPointerInvocation(this); @@ -1507,12 +1452,10 @@ public BoundRefTypeOperator(SyntaxNode syntax, BoundExpression operand, MethodSy this.GetTypeFromHandle = getTypeFromHandle; } - public new TypeSymbol Type => base.Type!; - public BoundExpression Operand { get; } - public MethodSymbol? GetTypeFromHandle { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRefTypeOperator(this); @@ -1540,10 +1483,9 @@ public BoundMakeRefOperator(SyntaxNode syntax, BoundExpression operand, TypeSymb this.Operand = operand; } - public new TypeSymbol Type => base.Type!; - public BoundExpression Operand { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMakeRefOperator(this); @@ -1572,12 +1514,10 @@ public BoundRefValueOperator(SyntaxNode syntax, NullableAnnotation nullableAnnot this.Operand = operand; } - public new TypeSymbol Type => base.Type!; - public NullableAnnotation NullableAnnotation { get; } - public BoundExpression Operand { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRefValueOperator(this); @@ -1606,12 +1546,10 @@ public BoundFromEndIndexExpression(SyntaxNode syntax, BoundExpression operand, M this.MethodOpt = methodOpt; } - public new TypeSymbol Type => base.Type!; - public BoundExpression Operand { get; } - public MethodSymbol? MethodOpt { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFromEndIndexExpression(this); @@ -1640,14 +1578,11 @@ public BoundRangeExpression(SyntaxNode syntax, BoundExpression? leftOperandOpt, this.MethodOpt = methodOpt; } - public new TypeSymbol Type => base.Type!; - public BoundExpression? LeftOperandOpt { get; } - public BoundExpression? RightOperandOpt { get; } - public MethodSymbol? MethodOpt { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRangeExpression(this); @@ -1677,11 +1612,8 @@ protected BoundBinaryOperatorBase(BoundKind kind, SyntaxNode syntax, BoundExpres this.Right = right; } - public new TypeSymbol Type => base.Type!; - public BoundExpression Left { get; } - public BoundExpression Right { get; } } @@ -1697,16 +1629,13 @@ public BoundBinaryOperator(SyntaxNode syntax, BinaryOperatorKind operatorKind, B this.OperatorKind = operatorKind; this.Data = data; - this._ResultKind = resultKind; + this.ResultKind = resultKind; } - public BinaryOperatorKind OperatorKind { get; } - public BoundBinaryOperator.UncommonData? Data { get; } + public override LookupResultKind ResultKind { get; } - private readonly LookupResultKind _ResultKind; - public override LookupResultKind ResultKind { get { return _ResultKind; } } [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBinaryOperator(this); @@ -1739,16 +1668,12 @@ public BoundTupleBinaryOperator(SyntaxNode syntax, BoundExpression left, BoundEx this.Operators = operators; } - public new TypeSymbol Type => base.Type!; - public BoundExpression Left { get; } - public BoundExpression Right { get; } - public BinaryOperatorKind OperatorKind { get; } - public TupleBinaryOperatorInfo.Multiple Operators { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTupleBinaryOperator(this); @@ -1782,25 +1707,18 @@ public BoundUserDefinedConditionalLogicalOperator(SyntaxNode syntax, BinaryOpera this.TrueOperator = trueOperator; this.FalseOperator = falseOperator; this.ConstrainedToTypeOpt = constrainedToTypeOpt; - this._ResultKind = resultKind; + this.ResultKind = resultKind; this.OriginalUserDefinedOperatorsOpt = originalUserDefinedOperatorsOpt; } - public BinaryOperatorKind OperatorKind { get; } - public MethodSymbol LogicalOperator { get; } - public MethodSymbol TrueOperator { get; } - public MethodSymbol FalseOperator { get; } - public TypeSymbol? ConstrainedToTypeOpt { get; } - - private readonly LookupResultKind _ResultKind; - public override LookupResultKind ResultKind { get { return _ResultKind; } } - + public override LookupResultKind ResultKind { get; } public ImmutableArray OriginalUserDefinedOperatorsOpt { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUserDefinedConditionalLogicalOperator(this); @@ -1833,31 +1751,21 @@ public BoundCompoundAssignmentOperator(SyntaxNode syntax, BinaryOperatorSignatur this.LeftConversion = leftConversion; this.FinalPlaceholder = finalPlaceholder; this.FinalConversion = finalConversion; - this._ResultKind = resultKind; + this.ResultKind = resultKind; this.OriginalUserDefinedOperatorsOpt = originalUserDefinedOperatorsOpt; } - public new TypeSymbol Type => base.Type!; - public BinaryOperatorSignature Operator { get; } - public BoundExpression Left { get; } - public BoundExpression Right { get; } - public BoundValuePlaceholder? LeftPlaceholder { get; } - public BoundExpression? LeftConversion { get; } - public BoundValuePlaceholder? FinalPlaceholder { get; } - public BoundExpression? FinalConversion { get; } - - private readonly LookupResultKind _ResultKind; - public override LookupResultKind ResultKind { get { return _ResultKind; } } - + public override LookupResultKind ResultKind { get; } public ImmutableArray OriginalUserDefinedOperatorsOpt { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCompoundAssignmentOperator(this); @@ -1887,14 +1795,11 @@ public BoundAssignmentOperator(SyntaxNode syntax, BoundExpression left, BoundExp this.IsRef = isRef; } - public new TypeSymbol Type => base.Type!; - public BoundExpression Left { get; } - public BoundExpression Right { get; } - public bool IsRef { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAssignmentOperator(this); @@ -1925,14 +1830,11 @@ public BoundDeconstructionAssignmentOperator(SyntaxNode syntax, BoundTupleExpres this.IsUsed = isUsed; } - public new TypeSymbol Type => base.Type!; - public BoundTupleExpression Left { get; } - public BoundConversion Right { get; } - public bool IsUsed { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeconstructionAssignmentOperator(this); @@ -1966,20 +1868,14 @@ public BoundNullCoalescingOperator(SyntaxNode syntax, BoundExpression leftOperan this.Checked = @checked; } - public new TypeSymbol Type => base.Type!; - public BoundExpression LeftOperand { get; } - public BoundExpression RightOperand { get; } - public BoundValuePlaceholder? LeftPlaceholder { get; } - public BoundExpression? LeftConversion { get; } - public BoundNullCoalescingOperatorResultKind OperatorResultKind { get; } - public bool Checked { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNullCoalescingOperator(this); @@ -2008,10 +1904,9 @@ public BoundNullCoalescingAssignmentOperator(SyntaxNode syntax, BoundExpression this.RightOperand = rightOperand; } - public BoundExpression LeftOperand { get; } - public BoundExpression RightOperand { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNullCoalescingAssignmentOperator(this); @@ -2044,18 +1939,13 @@ public BoundUnconvertedConditionalOperator(SyntaxNode syntax, BoundExpression co this.NoCommonTypeError = noCommonTypeError; } - public new TypeSymbol? Type => base.Type; - public BoundExpression Condition { get; } - public BoundExpression Consequence { get; } - public BoundExpression Alternative { get; } - public ConstantValue? ConstantValueOpt { get; } - public ErrorCode NoCommonTypeError { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedConditionalOperator(this); @@ -2091,22 +1981,15 @@ public BoundConditionalOperator(SyntaxNode syntax, bool isRef, BoundExpression c this.WasTargetTyped = wasTargetTyped; } - public new TypeSymbol Type => base.Type!; - public bool IsRef { get; } - public BoundExpression Condition { get; } - public BoundExpression Consequence { get; } - public BoundExpression Alternative { get; } - public ConstantValue? ConstantValueOpt { get; } - public TypeSymbol? NaturalTypeOpt { get; } - public bool WasTargetTyped { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalOperator(this); @@ -2136,12 +2019,10 @@ public BoundArrayAccess(SyntaxNode syntax, BoundExpression expression, Immutable this.Indices = indices; } - public new TypeSymbol Type => base.Type!; - public BoundExpression Expression { get; } - public ImmutableArray Indices { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayAccess(this); @@ -2169,10 +2050,9 @@ public BoundArrayLength(SyntaxNode syntax, BoundExpression expression, TypeSymbo this.Expression = expression; } - public new TypeSymbol Type => base.Type!; - public BoundExpression Expression { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayLength(this); @@ -2200,16 +2080,12 @@ public BoundAwaitableInfo(SyntaxNode syntax, BoundAwaitableValuePlaceholder? awa this.GetResult = getResult; } - public BoundAwaitableValuePlaceholder? AwaitableInstancePlaceholder { get; } - public bool IsDynamic { get; } - public BoundExpression? GetAwaiter { get; } - public PropertySymbol? IsCompleted { get; } - public MethodSymbol? GetResult { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAwaitableInfo(this); @@ -2239,12 +2115,10 @@ public BoundAwaitExpression(SyntaxNode syntax, BoundExpression expression, Bound this.AwaitableInfo = awaitableInfo; } - public new TypeSymbol Type => base.Type!; - public BoundExpression Expression { get; } - public BoundAwaitableInfo AwaitableInfo { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAwaitExpression(this); @@ -2280,9 +2154,7 @@ protected BoundTypeOf(BoundKind kind, SyntaxNode syntax, MethodSymbol? getTypeFr this.GetTypeFromHandle = getTypeFromHandle; } - public new TypeSymbol Type => base.Type!; - public MethodSymbol? GetTypeFromHandle { get; } } @@ -2298,8 +2170,8 @@ public BoundTypeOfOperator(SyntaxNode syntax, BoundTypeExpression sourceType, Me this.SourceType = sourceType; } - public BoundTypeExpression SourceType { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypeOfOperator(this); @@ -2337,10 +2209,9 @@ public BoundMethodDefIndex(SyntaxNode syntax, MethodSymbol method, TypeSymbol ty this.Method = method; } - public new TypeSymbol Type => base.Type!; - public MethodSymbol Method { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMethodDefIndex(this); @@ -2374,8 +2245,8 @@ public BoundMaximumMethodDefIndex(SyntaxNode syntax, TypeSymbol type) } - public new TypeSymbol Type => base.Type!; + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMaximumMethodDefIndex(this); @@ -2411,10 +2282,9 @@ public BoundInstrumentationPayloadRoot(SyntaxNode syntax, int analysisKind, Type this.AnalysisKind = analysisKind; } - public int AnalysisKind { get; } - public new TypeSymbol Type => base.Type!; + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInstrumentationPayloadRoot(this); @@ -2448,8 +2318,8 @@ public BoundModuleVersionId(SyntaxNode syntax, TypeSymbol type) } - public new TypeSymbol Type => base.Type!; + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitModuleVersionId(this); @@ -2483,8 +2353,8 @@ public BoundModuleVersionIdString(SyntaxNode syntax, TypeSymbol type) } - public new TypeSymbol Type => base.Type!; + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitModuleVersionIdString(this); @@ -2522,10 +2392,9 @@ public BoundSourceDocumentIndex(SyntaxNode syntax, Cci.DebugSourceDocument docum this.Document = document; } - public new TypeSymbol Type => base.Type!; - public Cci.DebugSourceDocument Document { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSourceDocumentIndex(this); @@ -2565,12 +2434,10 @@ public BoundMethodInfo(SyntaxNode syntax, MethodSymbol method, MethodSymbol? get this.GetMethodFromHandle = getMethodFromHandle; } - public new TypeSymbol Type => base.Type!; - public MethodSymbol Method { get; } - public MethodSymbol? GetMethodFromHandle { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMethodInfo(this); @@ -2610,12 +2477,10 @@ public BoundFieldInfo(SyntaxNode syntax, FieldSymbol field, MethodSymbol? getFie this.GetFieldFromHandle = getFieldFromHandle; } - public new TypeSymbol Type => base.Type!; - public FieldSymbol Field { get; } - public MethodSymbol? GetFieldFromHandle { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFieldInfo(this); @@ -2643,8 +2508,8 @@ public BoundDefaultLiteral(SyntaxNode syntax) { } - public new TypeSymbol? Type => base.Type; + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDefaultLiteral(this); @@ -2666,12 +2531,10 @@ public BoundDefaultExpression(SyntaxNode syntax, BoundTypeExpression? targetType this.ConstantValueOpt = constantValueOpt; } - public new TypeSymbol Type => base.Type!; - public BoundTypeExpression? TargetType { get; } - public ConstantValue? ConstantValueOpt { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDefaultExpression(this); @@ -2702,14 +2565,11 @@ public BoundIsOperator(SyntaxNode syntax, BoundExpression operand, BoundTypeExpr this.ConversionKind = conversionKind; } - public new TypeSymbol Type => base.Type!; - public BoundExpression Operand { get; } - public BoundTypeExpression TargetType { get; } - public ConversionKind ConversionKind { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIsOperator(this); @@ -2741,16 +2601,12 @@ public BoundAsOperator(SyntaxNode syntax, BoundExpression operand, BoundTypeExpr this.OperandConversion = operandConversion; } - public new TypeSymbol Type => base.Type!; - public BoundExpression Operand { get; } - public BoundTypeExpression TargetType { get; } - public BoundValuePlaceholder? OperandPlaceholder { get; } - public BoundExpression? OperandConversion { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAsOperator(this); @@ -2779,12 +2635,10 @@ public BoundSizeOfOperator(SyntaxNode syntax, BoundTypeExpression sourceType, Co this.ConstantValueOpt = constantValueOpt; } - public new TypeSymbol Type => base.Type!; - public BoundTypeExpression SourceType { get; } - public ConstantValue? ConstantValueOpt { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSizeOfOperator(this); @@ -2819,24 +2673,16 @@ public BoundConversion(SyntaxNode syntax, BoundExpression operand, Conversion co this.OriginalUserDefinedConversionsOpt = originalUserDefinedConversionsOpt; } - public new TypeSymbol Type => base.Type!; - public BoundExpression Operand { get; } - public Conversion Conversion { get; } - public bool IsBaseConversion { get; } - public bool Checked { get; } - public bool ExplicitCastInCode { get; } - public ConstantValue? ConstantValueOpt { get; } - public ConversionGroup? ConversionGroupOpt { get; } - public ImmutableArray OriginalUserDefinedConversionsOpt { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConversion(this); @@ -2866,12 +2712,10 @@ public BoundReadOnlySpanFromArray(SyntaxNode syntax, BoundExpression operand, Me this.ConversionMethod = conversionMethod; } - public new TypeSymbol Type => base.Type!; - public BoundExpression Operand { get; } - public MethodSymbol ConversionMethod { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitReadOnlySpanFromArray(this); @@ -2905,8 +2749,8 @@ public BoundArgList(SyntaxNode syntax, TypeSymbol type) } - public new TypeSymbol Type => base.Type!; + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArgList(this); @@ -2934,12 +2778,10 @@ public BoundArgListOperator(SyntaxNode syntax, ImmutableArray a this.ArgumentRefKindsOpt = argumentRefKindsOpt; } - public new TypeSymbol? Type => base.Type; - public ImmutableArray Arguments { get; } - public ImmutableArray ArgumentRefKindsOpt { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArgListOperator(this); @@ -2972,18 +2814,13 @@ public BoundFixedLocalCollectionInitializer(SyntaxNode syntax, TypeSymbol elemen this.GetPinnableOpt = getPinnableOpt; } - public new TypeSymbol Type => base.Type!; - public TypeSymbol ElementPointerType { get; } - public BoundValuePlaceholder? ElementPointerPlaceholder { get; } - public BoundExpression? ElementPointerConversion { get; } - public BoundExpression Expression { get; } - public MethodSymbol? GetPinnableOpt { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFixedLocalCollectionInitializer(this); @@ -3021,8 +2858,8 @@ public BoundSequencePoint(SyntaxNode syntax, BoundStatement? statementOpt, bool this.StatementOpt = statementOpt; } - public BoundStatement? StatementOpt { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequencePoint(this); @@ -3047,10 +2884,9 @@ public BoundSequencePointWithSpan(SyntaxNode syntax, BoundStatement? statementOp this.Span = span; } - public BoundStatement? StatementOpt { get; } - public TextSpan Span { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequencePointWithSpan(this); @@ -3086,8 +2922,8 @@ public BoundSavePreviousSequencePoint(SyntaxNode syntax, object identifier) this.Identifier = identifier; } - public object Identifier { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSavePreviousSequencePoint(this); @@ -3123,8 +2959,8 @@ public BoundRestorePreviousSequencePoint(SyntaxNode syntax, object identifier) this.Identifier = identifier; } - public object Identifier { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRestorePreviousSequencePoint(this); @@ -3154,8 +2990,8 @@ public BoundStepThroughSequencePoint(SyntaxNode syntax, TextSpan span) this.Span = span; } - public TextSpan Span { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStepThroughSequencePoint(this); @@ -3185,10 +3021,9 @@ public BoundBlock(SyntaxNode syntax, ImmutableArray locals, Immutab this.LocalFunctions = localFunctions; } - public ImmutableArray Locals { get; } - public ImmutableArray LocalFunctions { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBlock(this); @@ -3216,8 +3051,8 @@ public BoundScope(SyntaxNode syntax, ImmutableArray locals, Immutab this.Locals = locals; } - public ImmutableArray Locals { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitScope(this); @@ -3246,10 +3081,9 @@ public BoundStateMachineScope(SyntaxNode syntax, ImmutableArray Fields { get; } - public BoundStatement Statement { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStateMachineScope(this); @@ -3280,16 +3114,12 @@ public BoundLocalDeclaration(SyntaxNode syntax, LocalSymbol localSymbol, BoundTy this.InferredType = inferredType; } - public LocalSymbol LocalSymbol { get; } - public BoundTypeExpression? DeclaredTypeOpt { get; } - public BoundExpression? InitializerOpt { get; } - public ImmutableArray ArgumentsOpt { get; } - public bool InferredType { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocalDeclaration(this); @@ -3316,7 +3146,6 @@ protected BoundMultipleLocalDeclarationsBase(BoundKind kind, SyntaxNode syntax, this.LocalDeclarations = localDeclarations; } - public ImmutableArray LocalDeclarations { get; } } @@ -3330,6 +3159,7 @@ public BoundMultipleLocalDeclarations(SyntaxNode syntax, ImmutableArray visitor.VisitMultipleLocalDeclarations(this); @@ -3357,10 +3187,9 @@ public BoundUsingLocalDeclarations(SyntaxNode syntax, MethodArgumentInfo? patter this.AwaitOpt = awaitOpt; } - public MethodArgumentInfo? PatternDisposeInfoOpt { get; } - public BoundAwaitableInfo? AwaitOpt { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUsingLocalDeclarations(this); @@ -3389,12 +3218,10 @@ public BoundLocalFunctionStatement(SyntaxNode syntax, LocalFunctionSymbol symbol this.ExpressionBody = expressionBody; } - public LocalFunctionSymbol Symbol { get; } - public BoundBlock? BlockBody { get; } - public BoundBlock? ExpressionBody { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocalFunctionStatement(this); @@ -3424,8 +3251,8 @@ public BoundNoOpStatement(SyntaxNode syntax, NoOpStatementFlavor flavor) this.Flavor = flavor; } - public NoOpStatementFlavor Flavor { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNoOpStatement(this); @@ -3451,12 +3278,10 @@ public BoundReturnStatement(SyntaxNode syntax, RefKind refKind, BoundExpression? this.Checked = @checked; } - public RefKind RefKind { get; } - public BoundExpression? ExpressionOpt { get; } - public bool Checked { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitReturnStatement(this); @@ -3483,8 +3308,8 @@ public BoundYieldReturnStatement(SyntaxNode syntax, BoundExpression expression, this.Expression = expression; } - public BoundExpression Expression { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitYieldReturnStatement(this); @@ -3512,6 +3337,7 @@ public BoundYieldBreakStatement(SyntaxNode syntax) { } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitYieldBreakStatement(this); } @@ -3524,8 +3350,8 @@ public BoundThrowStatement(SyntaxNode syntax, BoundExpression? expressionOpt, bo this.ExpressionOpt = expressionOpt; } - public BoundExpression? ExpressionOpt { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThrowStatement(this); @@ -3552,8 +3378,8 @@ public BoundExpressionStatement(SyntaxNode syntax, BoundExpression expression, b this.Expression = expression; } - public BoundExpression Expression { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitExpressionStatement(this); @@ -3589,8 +3415,8 @@ public BoundBreakStatement(SyntaxNode syntax, GeneratedLabelSymbol label) this.Label = label; } - public GeneratedLabelSymbol Label { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBreakStatement(this); @@ -3626,8 +3452,8 @@ public BoundContinueStatement(SyntaxNode syntax, GeneratedLabelSymbol label) this.Label = label; } - public GeneratedLabelSymbol Label { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitContinueStatement(this); @@ -3665,20 +3491,14 @@ public BoundSwitchStatement(SyntaxNode syntax, BoundExpression expression, Immut this.BreakLabel = breakLabel; } - public BoundExpression Expression { get; } - public ImmutableArray InnerLocals { get; } - public ImmutableArray InnerLocalFunctions { get; } - public ImmutableArray SwitchSections { get; } - public BoundDecisionDag ReachabilityDecisionDag { get; } - public BoundSwitchLabel? DefaultLabel { get; } - public GeneratedLabelSymbol BreakLabel { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchStatement(this); @@ -3709,12 +3529,10 @@ public BoundSwitchDispatch(SyntaxNode syntax, BoundExpression expression, Immuta this.DefaultLabel = defaultLabel; } - public BoundExpression Expression { get; } - public ImmutableArray<(ConstantValue value, LabelSymbol label)> Cases { get; } - public LabelSymbol DefaultLabel { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchDispatch(this); @@ -3744,12 +3562,10 @@ public BoundIfStatement(SyntaxNode syntax, BoundExpression condition, BoundState this.AlternativeOpt = alternativeOpt; } - public BoundExpression Condition { get; } - public BoundStatement Consequence { get; } - public BoundStatement? AlternativeOpt { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIfStatement(this); @@ -3789,9 +3605,7 @@ protected BoundLoopStatement(BoundKind kind, SyntaxNode syntax, GeneratedLabelSy this.ContinueLabel = continueLabel; } - public GeneratedLabelSymbol BreakLabel { get; } - public GeneratedLabelSymbol ContinueLabel { get; } } @@ -3812,11 +3626,8 @@ protected BoundConditionalLoopStatement(BoundKind kind, SyntaxNode syntax, Immut this.Body = body; } - public ImmutableArray Locals { get; } - public BoundExpression Condition { get; } - public BoundStatement Body { get; } } @@ -3834,6 +3645,7 @@ public BoundDoStatement(SyntaxNode syntax, ImmutableArray locals, B } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDoStatement(this); @@ -3863,6 +3675,7 @@ public BoundWhileStatement(SyntaxNode syntax, ImmutableArray locals } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitWhileStatement(this); @@ -3898,18 +3711,13 @@ public BoundForStatement(SyntaxNode syntax, ImmutableArray outerLoc this.Body = body; } - public ImmutableArray OuterLocals { get; } - public BoundStatement? Initializer { get; } - public ImmutableArray InnerLocals { get; } - public BoundExpression? Condition { get; } - public BoundStatement? Increment { get; } - public BoundStatement Body { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitForStatement(this); @@ -3950,26 +3758,17 @@ public BoundForEachStatement(SyntaxNode syntax, ForEachEnumeratorInfo? enumerato this.Body = body; } - public ForEachEnumeratorInfo? EnumeratorInfoOpt { get; } - public BoundValuePlaceholder? ElementPlaceholder { get; } - public BoundExpression? ElementConversion { get; } - public BoundTypeExpression IterationVariableType { get; } - public ImmutableArray IterationVariables { get; } - public BoundExpression? IterationErrorExpressionOpt { get; } - public BoundExpression Expression { get; } - public BoundForEachDeconstructStep? DeconstructionOpt { get; } - public BoundAwaitableInfo? AwaitOpt { get; } - public BoundStatement Body { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitForEachStatement(this); @@ -3998,10 +3797,9 @@ public BoundForEachDeconstructStep(SyntaxNode syntax, BoundDeconstructionAssignm this.TargetPlaceholder = targetPlaceholder; } - public BoundDeconstructionAssignmentOperator DeconstructionAssignment { get; } - public BoundDeconstructValuePlaceholder TargetPlaceholder { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitForEachDeconstructStep(this); @@ -4034,18 +3832,13 @@ public BoundUsingStatement(SyntaxNode syntax, ImmutableArray locals this.PatternDisposeInfoOpt = patternDisposeInfoOpt; } - public ImmutableArray Locals { get; } - public BoundMultipleLocalDeclarations? DeclarationsOpt { get; } - public BoundExpression? ExpressionOpt { get; } - public BoundStatement Body { get; } - public BoundAwaitableInfo? AwaitOpt { get; } - public MethodArgumentInfo? PatternDisposeInfoOpt { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUsingStatement(this); @@ -4076,12 +3869,10 @@ public BoundFixedStatement(SyntaxNode syntax, ImmutableArray locals this.Body = body; } - public ImmutableArray Locals { get; } - public BoundMultipleLocalDeclarations Declarations { get; } - public BoundStatement Body { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFixedStatement(this); @@ -4110,10 +3901,9 @@ public BoundLockStatement(SyntaxNode syntax, BoundExpression argument, BoundStat this.Body = body; } - public BoundExpression Argument { get; } - public BoundStatement Body { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLockStatement(this); @@ -4145,16 +3935,12 @@ public BoundTryStatement(SyntaxNode syntax, BoundBlock tryBlock, ImmutableArray< this.PreferFaultHandler = preferFaultHandler; } - public BoundBlock TryBlock { get; } - public ImmutableArray CatchBlocks { get; } - public BoundBlock? FinallyBlockOpt { get; } - public LabelSymbol? FinallyLabelOpt { get; } - public bool PreferFaultHandler { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTryStatement(this); @@ -4188,20 +3974,14 @@ public BoundCatchBlock(SyntaxNode syntax, ImmutableArray locals, Bo this.IsSynthesizedAsyncCatchAll = isSynthesizedAsyncCatchAll; } - public ImmutableArray Locals { get; } - public BoundExpression? ExceptionSourceOpt { get; } - public TypeSymbol? ExceptionTypeOpt { get; } - public BoundStatementList? ExceptionFilterPrologueOpt { get; } - public BoundExpression? ExceptionFilterOpt { get; } - public BoundBlock Body { get; } - public bool IsSynthesizedAsyncCatchAll { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCatchBlock(this); @@ -4231,8 +4011,8 @@ public BoundLiteral(SyntaxNode syntax, ConstantValue? constantValueOpt, TypeSymb this.ConstantValueOpt = constantValueOpt; } - public ConstantValue? ConstantValueOpt { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLiteral(this); @@ -4270,10 +4050,9 @@ public BoundUTF8String(SyntaxNode syntax, string value, TypeSymbol type) this.Value = value; } - public new TypeSymbol Type => base.Type!; - public string Value { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUTF8String(this); @@ -4307,8 +4086,8 @@ public BoundThisReference(SyntaxNode syntax, TypeSymbol type) } - public new TypeSymbol Type => base.Type!; + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThisReference(this); @@ -4342,8 +4121,8 @@ public BoundPreviousSubmissionReference(SyntaxNode syntax, TypeSymbol type) } - public new TypeSymbol Type => base.Type!; + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPreviousSubmissionReference(this); @@ -4377,8 +4156,8 @@ public BoundHostObjectMemberReference(SyntaxNode syntax, TypeSymbol type) } - public new TypeSymbol Type => base.Type!; + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitHostObjectMemberReference(this); @@ -4406,8 +4185,8 @@ public BoundBaseReference(SyntaxNode syntax, TypeSymbol? type) { } - public new TypeSymbol? Type => base.Type; + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBaseReference(this); @@ -4451,16 +4230,12 @@ public BoundLocal(SyntaxNode syntax, LocalSymbol localSymbol, BoundLocalDeclarat this.IsNullableUnknown = isNullableUnknown; } - public new TypeSymbol Type => base.Type!; - public LocalSymbol LocalSymbol { get; } - public BoundLocalDeclarationKind DeclarationKind { get; } - public ConstantValue? ConstantValueOpt { get; } - public bool IsNullableUnknown { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLocal(this); @@ -4502,12 +4277,10 @@ public BoundPseudoVariable(SyntaxNode syntax, LocalSymbol localSymbol, PseudoVar this.EmitExpressions = emitExpressions; } - public new TypeSymbol Type => base.Type!; - public LocalSymbol LocalSymbol { get; } - public PseudoVariableExpressions EmitExpressions { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPseudoVariable(this); @@ -4537,12 +4310,10 @@ public BoundRangeVariable(SyntaxNode syntax, RangeVariableSymbol rangeVariableSy this.Value = value; } - public new TypeSymbol Type => base.Type!; - public RangeVariableSymbol RangeVariableSymbol { get; } - public BoundExpression Value { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRangeVariable(this); @@ -4580,10 +4351,9 @@ public BoundParameter(SyntaxNode syntax, ParameterSymbol parameterSymbol, TypeSy this.ParameterSymbol = parameterSymbol; } - public new TypeSymbol Type => base.Type!; - public ParameterSymbol ParameterSymbol { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitParameter(this); @@ -4619,8 +4389,8 @@ public BoundLabelStatement(SyntaxNode syntax, LabelSymbol label) this.Label = label; } - public LabelSymbol Label { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLabelStatement(this); @@ -4649,12 +4419,10 @@ public BoundGotoStatement(SyntaxNode syntax, LabelSymbol label, BoundExpression? this.LabelExpressionOpt = labelExpressionOpt; } - public LabelSymbol Label { get; } - public BoundExpression? CaseExpressionOpt { get; } - public BoundLabel? LabelExpressionOpt { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitGotoStatement(this); @@ -4683,10 +4451,9 @@ public BoundLabeledStatement(SyntaxNode syntax, LabelSymbol label, BoundStatemen this.Body = body; } - public LabelSymbol Label { get; } - public BoundStatement Body { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLabeledStatement(this); @@ -4722,8 +4489,8 @@ public BoundLabel(SyntaxNode syntax, LabelSymbol label, TypeSymbol? type) this.Label = label; } - public LabelSymbol Label { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLabel(this); @@ -4759,8 +4526,8 @@ public BoundStatementList(SyntaxNode syntax, ImmutableArray stat this.Statements = statements; } - public ImmutableArray Statements { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStatementList(this); @@ -4790,12 +4557,10 @@ public BoundConditionalGoto(SyntaxNode syntax, BoundExpression condition, bool j this.Label = label; } - public BoundExpression Condition { get; } - public bool JumpIfTrue { get; } - public LabelSymbol Label { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalGoto(this); @@ -4828,15 +4593,10 @@ protected BoundSwitchExpression(BoundKind kind, SyntaxNode syntax, BoundExpressi this.ReportedNotExhaustive = reportedNotExhaustive; } - public BoundExpression Expression { get; } - public ImmutableArray SwitchArms { get; } - public BoundDecisionDag ReachabilityDecisionDag { get; } - public LabelSymbol? DefaultLabel { get; } - public bool ReportedNotExhaustive { get; } } @@ -4858,16 +4618,12 @@ public BoundSwitchExpressionArm(SyntaxNode syntax, ImmutableArray l this.Label = label; } - public ImmutableArray Locals { get; } - public BoundPattern Pattern { get; } - public BoundExpression? WhenClause { get; } - public BoundExpression Value { get; } - public LabelSymbol Label { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchExpressionArm(this); @@ -4895,6 +4651,7 @@ public BoundUnconvertedSwitchExpression(SyntaxNode syntax, BoundExpression expre } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedSwitchExpression(this); @@ -4925,12 +4682,10 @@ public BoundConvertedSwitchExpression(SyntaxNode syntax, TypeSymbol? naturalType this.WasTargetTyped = wasTargetTyped; } - public new TypeSymbol Type => base.Type!; - public TypeSymbol? NaturalTypeOpt { get; } - public bool WasTargetTyped { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConvertedSwitchExpression(this); @@ -4957,8 +4712,8 @@ public BoundDecisionDag(SyntaxNode syntax, BoundDecisionDagNode rootNode, bool h this.RootNode = rootNode; } - public BoundDecisionDagNode RootNode { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDecisionDag(this); @@ -5001,10 +4756,9 @@ public BoundEvaluationDecisionDagNode(SyntaxNode syntax, BoundDagEvaluation eval this.Next = next; } - public BoundDagEvaluation Evaluation { get; } - public BoundDecisionDagNode Next { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitEvaluationDecisionDagNode(this); @@ -5035,12 +4789,10 @@ public BoundTestDecisionDagNode(SyntaxNode syntax, BoundDagTest test, BoundDecis this.WhenFalse = whenFalse; } - public BoundDagTest Test { get; } - public BoundDecisionDagNode WhenTrue { get; } - public BoundDecisionDagNode WhenFalse { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTestDecisionDagNode(this); @@ -5071,14 +4823,11 @@ public BoundWhenDecisionDagNode(SyntaxNode syntax, ImmutableArray Bindings { get; } - public BoundExpression? WhenExpression { get; } - public BoundDecisionDagNode WhenTrue { get; } - public BoundDecisionDagNode? WhenFalse { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitWhenDecisionDagNode(this); @@ -5114,8 +4863,8 @@ public BoundLeafDecisionDagNode(SyntaxNode syntax, LabelSymbol label) this.Label = label; } - public LabelSymbol Label { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLeafDecisionDagNode(this); @@ -5142,7 +4891,6 @@ protected BoundDagTest(BoundKind kind, SyntaxNode syntax, BoundDagTemp input, bo this.Input = input; } - public BoundDagTemp Input { get; } } @@ -5159,12 +4907,10 @@ public BoundDagTemp(SyntaxNode syntax, TypeSymbol type, BoundDagEvaluation? sour this.Index = index; } - public TypeSymbol Type { get; } - public BoundDagEvaluation? Source { get; } - public int Index { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagTemp(this); @@ -5192,8 +4938,8 @@ public BoundDagTypeTest(SyntaxNode syntax, TypeSymbol type, BoundDagTemp input, this.Type = type; } - public TypeSymbol Type { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagTypeTest(this); @@ -5220,8 +4966,8 @@ public BoundDagNonNullTest(SyntaxNode syntax, bool isExplicitTest, BoundDagTemp this.IsExplicitTest = isExplicitTest; } - public bool IsExplicitTest { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagNonNullTest(this); @@ -5247,6 +4993,7 @@ public BoundDagExplicitNullTest(SyntaxNode syntax, BoundDagTemp input, bool hasE } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagExplicitNullTest(this); @@ -5274,8 +5021,8 @@ public BoundDagValueTest(SyntaxNode syntax, ConstantValue value, BoundDagTemp in this.Value = value; } - public ConstantValue Value { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagValueTest(this); @@ -5304,10 +5051,9 @@ public BoundDagRelationalTest(SyntaxNode syntax, BinaryOperatorKind operatorKind this.Value = value; } - public BinaryOperatorKind OperatorKind { get; } - public ConstantValue Value { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagRelationalTest(this); @@ -5347,8 +5093,8 @@ public BoundDagDeconstructEvaluation(SyntaxNode syntax, MethodSymbol deconstruct this.DeconstructMethod = deconstructMethod; } - public MethodSymbol DeconstructMethod { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagDeconstructEvaluation(this); @@ -5376,8 +5122,8 @@ public BoundDagTypeEvaluation(SyntaxNode syntax, TypeSymbol type, BoundDagTemp i this.Type = type; } - public TypeSymbol Type { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagTypeEvaluation(this); @@ -5405,8 +5151,8 @@ public BoundDagFieldEvaluation(SyntaxNode syntax, FieldSymbol field, BoundDagTem this.Field = field; } - public FieldSymbol Field { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagFieldEvaluation(this); @@ -5435,10 +5181,9 @@ public BoundDagPropertyEvaluation(SyntaxNode syntax, PropertySymbol property, bo this.IsLengthOrCount = isLengthOrCount; } - public PropertySymbol Property { get; } - public bool IsLengthOrCount { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagPropertyEvaluation(this); @@ -5467,10 +5212,9 @@ public BoundDagIndexEvaluation(SyntaxNode syntax, PropertySymbol property, int i this.Index = index; } - public PropertySymbol Property { get; } - public int Index { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagIndexEvaluation(this); @@ -5511,18 +5255,13 @@ public BoundDagIndexerEvaluation(SyntaxNode syntax, TypeSymbol indexerType, Boun [Conditional("DEBUG")] private partial void Validate(); - public TypeSymbol IndexerType { get; } - public BoundDagTemp LengthTemp { get; } - public int Index { get; } - public BoundExpression IndexerAccess { get; } - public BoundListPatternReceiverPlaceholder ReceiverPlaceholder { get; } - public BoundListPatternIndexPlaceholder ArgumentPlaceholder { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagIndexerEvaluation(this); @@ -5564,20 +5303,14 @@ public BoundDagSliceEvaluation(SyntaxNode syntax, TypeSymbol sliceType, BoundDag [Conditional("DEBUG")] private partial void Validate(); - public TypeSymbol SliceType { get; } - public BoundDagTemp LengthTemp { get; } - public int StartIndex { get; } - public int EndIndex { get; } - public BoundExpression IndexerAccess { get; } - public BoundSlicePatternReceiverPlaceholder ReceiverPlaceholder { get; } - public BoundSlicePatternRangePlaceholder ArgumentPlaceholder { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagSliceEvaluation(this); @@ -5605,8 +5338,8 @@ public BoundDagAssignmentEvaluation(SyntaxNode syntax, BoundDagTemp target, Boun this.Target = target; } - public BoundDagTemp Target { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDagAssignmentEvaluation(this); @@ -5636,10 +5369,9 @@ public BoundSwitchSection(SyntaxNode syntax, ImmutableArray locals, this.SwitchLabels = switchLabels; } - public ImmutableArray Locals { get; } - public ImmutableArray SwitchLabels { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchSection(this); @@ -5669,12 +5401,10 @@ public BoundSwitchLabel(SyntaxNode syntax, LabelSymbol label, BoundPattern patte this.WhenClause = whenClause; } - public LabelSymbol Label { get; } - public BoundPattern Pattern { get; } - public BoundExpression? WhenClause { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSwitchLabel(this); @@ -5696,16 +5426,12 @@ protected BoundMethodOrPropertyGroup(BoundKind kind, SyntaxNode syntax, BoundExp : base(kind, syntax, null, hasErrors) { this.ReceiverOpt = receiverOpt; - this._ResultKind = resultKind; + this.ResultKind = resultKind; } - public new TypeSymbol? Type => base.Type; - public BoundExpression? ReceiverOpt { get; } - - private readonly LookupResultKind _ResultKind; - public override LookupResultKind ResultKind { get { return _ResultKind; } } + public override LookupResultKind ResultKind { get; } } internal sealed partial class BoundSequencePointExpression : BoundExpression @@ -5719,8 +5445,8 @@ public BoundSequencePointExpression(SyntaxNode syntax, BoundExpression expressio this.Expression = expression; } - public BoundExpression Expression { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequencePointExpression(this); @@ -5752,14 +5478,11 @@ public BoundSequence(SyntaxNode syntax, ImmutableArray locals, Immu this.Value = value; } - public new TypeSymbol Type => base.Type!; - public ImmutableArray Locals { get; } - public ImmutableArray SideEffects { get; } - public BoundExpression Value { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSequence(this); @@ -5791,14 +5514,11 @@ public BoundSpillSequence(SyntaxNode syntax, ImmutableArray locals, this.Value = value; } - public new TypeSymbol Type => base.Type!; - public ImmutableArray Locals { get; } - public ImmutableArray SideEffects { get; } - public BoundExpression Value { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSpillSequence(this); @@ -5831,18 +5551,13 @@ public BoundDynamicMemberAccess(SyntaxNode syntax, BoundExpression receiver, Imm this.Indexed = indexed; } - public new TypeSymbol Type => base.Type!; - public BoundExpression Receiver { get; } - public ImmutableArray TypeArgumentsOpt { get; } - public string Name { get; } - public bool Invoked { get; } - public bool Indexed { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicMemberAccess(this); @@ -5871,9 +5586,7 @@ protected BoundDynamicInvocableBase(BoundKind kind, SyntaxNode syntax, BoundExpr this.Arguments = arguments; } - public BoundExpression Expression { get; } - public ImmutableArray Arguments { get; } } @@ -5893,14 +5606,11 @@ public BoundDynamicInvocation(SyntaxNode syntax, ImmutableArray argument this.ApplicableMethods = applicableMethods; } - public new TypeSymbol Type => base.Type!; - public ImmutableArray ArgumentNamesOpt { get; } - public ImmutableArray ArgumentRefKindsOpt { get; } - public ImmutableArray ApplicableMethods { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicInvocation(this); @@ -5930,12 +5640,10 @@ public BoundConditionalAccess(SyntaxNode syntax, BoundExpression receiver, Bound this.AccessExpression = accessExpression; } - public new TypeSymbol Type => base.Type!; - public BoundExpression Receiver { get; } - public BoundExpression AccessExpression { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalAccess(this); @@ -5968,18 +5676,13 @@ public BoundLoweredConditionalAccess(SyntaxNode syntax, BoundExpression receiver this.Id = id; } - public new TypeSymbol Type => base.Type!; - public BoundExpression Receiver { get; } - public MethodSymbol? HasValueMethodOpt { get; } - public BoundExpression WhenNotNull { get; } - public BoundExpression? WhenNullOpt { get; } - public int Id { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLoweredConditionalAccess(this); @@ -6015,10 +5718,9 @@ public BoundConditionalReceiver(SyntaxNode syntax, int id, TypeSymbol type) this.Id = id; } - public new TypeSymbol Type => base.Type!; - public int Id { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConditionalReceiver(this); @@ -6048,12 +5750,10 @@ public BoundComplexConditionalReceiver(SyntaxNode syntax, BoundExpression valueT this.ReferenceTypeReceiver = referenceTypeReceiver; } - public new TypeSymbol Type => base.Type!; - public BoundExpression ValueTypeReceiver { get; } - public BoundExpression ReferenceTypeReceiver { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitComplexConditionalReceiver(this); @@ -6087,20 +5787,14 @@ public BoundMethodGroup(SyntaxNode syntax, ImmutableArray t this.FunctionType = functionType; } - public ImmutableArray TypeArgumentsOpt { get; } - public string Name { get; } - public ImmutableArray Methods { get; } - public Symbol? LookupSymbolOpt { get; } - public DiagnosticInfo? LookupError { get; } - public BoundMethodGroupFlags? Flags { get; } - public FunctionTypeSymbol? FunctionType { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitMethodGroup(this); @@ -6127,8 +5821,8 @@ public BoundPropertyGroup(SyntaxNode syntax, ImmutableArray prop this.Properties = properties; } - public ImmutableArray Properties { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertyGroup(this); @@ -6164,37 +5858,24 @@ public BoundCall(SyntaxNode syntax, BoundExpression? receiverOpt, MethodSymbol m this.InvokedAsExtensionMethod = invokedAsExtensionMethod; this.ArgsToParamsOpt = argsToParamsOpt; this.DefaultArguments = defaultArguments; - this._ResultKind = resultKind; + this.ResultKind = resultKind; this.OriginalMethodsOpt = originalMethodsOpt; } - public new TypeSymbol Type => base.Type!; - public BoundExpression? ReceiverOpt { get; } - public MethodSymbol Method { get; } - public ImmutableArray Arguments { get; } - public ImmutableArray ArgumentNamesOpt { get; } - public ImmutableArray ArgumentRefKindsOpt { get; } - public bool IsDelegateCall { get; } - public bool Expanded { get; } - public bool InvokedAsExtensionMethod { get; } - public ImmutableArray ArgsToParamsOpt { get; } - public BitVector DefaultArguments { get; } - - private readonly LookupResultKind _ResultKind; - public override LookupResultKind ResultKind { get { return _ResultKind; } } - + public override LookupResultKind ResultKind { get; } public ImmutableArray OriginalMethodsOpt { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCall(this); @@ -6227,18 +5908,13 @@ public BoundEventAssignmentOperator(SyntaxNode syntax, EventSymbol @event, bool this.Argument = argument; } - public new TypeSymbol Type => base.Type!; - public EventSymbol Event { get; } - public bool IsAddition { get; } - public bool IsDynamic { get; } - public BoundExpression? ReceiverOpt { get; } - public BoundExpression Argument { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitEventAssignmentOperator(this); @@ -6271,28 +5947,19 @@ public BoundAttribute(SyntaxNode syntax, MethodSymbol? constructor, ImmutableArr this.ConstructorExpanded = constructorExpanded; this.ConstructorDefaultArguments = constructorDefaultArguments; this.NamedArguments = namedArguments; - this._ResultKind = resultKind; + this.ResultKind = resultKind; } - public new TypeSymbol Type => base.Type!; - public MethodSymbol? Constructor { get; } - public ImmutableArray ConstructorArguments { get; } - public ImmutableArray ConstructorArgumentNamesOpt { get; } - public ImmutableArray ConstructorArgumentsToParamsOpt { get; } - public bool ConstructorExpanded { get; } - public BitVector ConstructorDefaultArguments { get; } - public ImmutableArray NamedArguments { get; } + public override LookupResultKind ResultKind { get; } - private readonly LookupResultKind _ResultKind; - public override LookupResultKind ResultKind { get { return _ResultKind; } } [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAttribute(this); @@ -6322,16 +5989,12 @@ public BoundUnconvertedObjectCreationExpression(SyntaxNode syntax, ImmutableArra this.InitializerOpt = initializerOpt; } - public new TypeSymbol? Type => base.Type; - public ImmutableArray Arguments { get; } - public ImmutableArray<(string Name, Location Location)?> ArgumentNamesOpt { get; } - public ImmutableArray ArgumentRefKindsOpt { get; } - public InitializerExpressionSyntax? InitializerOpt { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedObjectCreationExpression(this); @@ -6365,7 +6028,6 @@ protected BoundObjectCreationExpressionBase(BoundKind kind, SyntaxNode syntax, T } - public new TypeSymbol Type => base.Type!; } @@ -6380,50 +6042,31 @@ public BoundObjectCreationExpression(SyntaxNode syntax, MethodSymbol constructor RoslynDebug.Assert(!arguments.IsDefault, "Field 'arguments' cannot be null (use Null=\"allow\" in BoundNodes.xml to remove this check)"); RoslynDebug.Assert(type is object, "Field 'type' cannot be null (make the type nullable in BoundNodes.xml to remove this check)"); - this._Constructor = constructor; + this.Constructor = constructor; this.ConstructorsGroup = constructorsGroup; - this._Arguments = arguments; - this._ArgumentNamesOpt = argumentNamesOpt; - this._ArgumentRefKindsOpt = argumentRefKindsOpt; - this._Expanded = expanded; - this._ArgsToParamsOpt = argsToParamsOpt; - this._DefaultArguments = defaultArguments; + this.Arguments = arguments; + this.ArgumentNamesOpt = argumentNamesOpt; + this.ArgumentRefKindsOpt = argumentRefKindsOpt; + this.Expanded = expanded; + this.ArgsToParamsOpt = argsToParamsOpt; + this.DefaultArguments = defaultArguments; this.ConstantValueOpt = constantValueOpt; - this._InitializerExpressionOpt = initializerExpressionOpt; - this._WasTargetTyped = wasTargetTyped; + this.InitializerExpressionOpt = initializerExpressionOpt; + this.WasTargetTyped = wasTargetTyped; } - - private readonly MethodSymbol _Constructor; - public override MethodSymbol Constructor { get { return _Constructor; } } - + public override MethodSymbol Constructor { get; } public ImmutableArray ConstructorsGroup { get; } - - private readonly ImmutableArray _Arguments; - public override ImmutableArray Arguments { get { return _Arguments; } } - - private readonly ImmutableArray _ArgumentNamesOpt; - public override ImmutableArray ArgumentNamesOpt { get { return _ArgumentNamesOpt; } } - - private readonly ImmutableArray _ArgumentRefKindsOpt; - public override ImmutableArray ArgumentRefKindsOpt { get { return _ArgumentRefKindsOpt; } } - - private readonly bool _Expanded; - public override bool Expanded { get { return _Expanded; } } - - private readonly ImmutableArray _ArgsToParamsOpt; - public override ImmutableArray ArgsToParamsOpt { get { return _ArgsToParamsOpt; } } - - private readonly BitVector _DefaultArguments; - public override BitVector DefaultArguments { get { return _DefaultArguments; } } - + public override ImmutableArray Arguments { get; } + public override ImmutableArray ArgumentNamesOpt { get; } + public override ImmutableArray ArgumentRefKindsOpt { get; } + public override bool Expanded { get; } + public override ImmutableArray ArgsToParamsOpt { get; } + public override BitVector DefaultArguments { get; } public ConstantValue? ConstantValueOpt { get; } + public override BoundObjectInitializerExpressionBase? InitializerExpressionOpt { get; } + public override bool WasTargetTyped { get; } - private readonly BoundObjectInitializerExpressionBase? _InitializerExpressionOpt; - public override BoundObjectInitializerExpressionBase? InitializerExpressionOpt { get { return _InitializerExpressionOpt; } } - - private readonly bool _WasTargetTyped; - public override bool WasTargetTyped { get { return _WasTargetTyped; } } [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectCreationExpression(this); @@ -6452,11 +6095,8 @@ protected BoundTupleExpression(BoundKind kind, SyntaxNode syntax, ImmutableArray this.InferredNamesOpt = inferredNamesOpt; } - public ImmutableArray Arguments { get; } - public ImmutableArray ArgumentNamesOpt { get; } - public ImmutableArray InferredNamesOpt { get; } } @@ -6470,8 +6110,8 @@ public BoundTupleLiteral(SyntaxNode syntax, ImmutableArray argu } - public new TypeSymbol? Type => base.Type; + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTupleLiteral(this); @@ -6499,10 +6139,9 @@ public BoundConvertedTupleLiteral(SyntaxNode syntax, BoundTupleLiteral? sourceTu this.WasTargetTyped = wasTargetTyped; } - public BoundTupleLiteral? SourceTuple { get; } - public bool WasTargetTyped { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConvertedTupleLiteral(this); @@ -6530,33 +6169,22 @@ public BoundDynamicObjectCreationExpression(SyntaxNode syntax, string name, Immu RoslynDebug.Assert(type is object, "Field 'type' cannot be null (make the type nullable in BoundNodes.xml to remove this check)"); this.Name = name; - this._Arguments = arguments; - this._ArgumentNamesOpt = argumentNamesOpt; - this._ArgumentRefKindsOpt = argumentRefKindsOpt; - this._InitializerExpressionOpt = initializerExpressionOpt; + this.Arguments = arguments; + this.ArgumentNamesOpt = argumentNamesOpt; + this.ArgumentRefKindsOpt = argumentRefKindsOpt; + this.InitializerExpressionOpt = initializerExpressionOpt; this.ApplicableMethods = applicableMethods; - this._WasTargetTyped = wasTargetTyped; + this.WasTargetTyped = wasTargetTyped; } - public string Name { get; } - - private readonly ImmutableArray _Arguments; - public override ImmutableArray Arguments { get { return _Arguments; } } - - private readonly ImmutableArray _ArgumentNamesOpt; - public override ImmutableArray ArgumentNamesOpt { get { return _ArgumentNamesOpt; } } - - private readonly ImmutableArray _ArgumentRefKindsOpt; - public override ImmutableArray ArgumentRefKindsOpt { get { return _ArgumentRefKindsOpt; } } - - private readonly BoundObjectInitializerExpressionBase? _InitializerExpressionOpt; - public override BoundObjectInitializerExpressionBase? InitializerExpressionOpt { get { return _InitializerExpressionOpt; } } - + public override ImmutableArray Arguments { get; } + public override ImmutableArray ArgumentNamesOpt { get; } + public override ImmutableArray ArgumentRefKindsOpt { get; } + public override BoundObjectInitializerExpressionBase? InitializerExpressionOpt { get; } public ImmutableArray ApplicableMethods { get; } + public override bool WasTargetTyped { get; } - private readonly bool _WasTargetTyped; - public override bool WasTargetTyped { get { return _WasTargetTyped; } } [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicObjectCreationExpression(this); @@ -6581,18 +6209,14 @@ public BoundNoPiaObjectCreationExpression(SyntaxNode syntax, string? guidString, RoslynDebug.Assert(type is object, "Field 'type' cannot be null (make the type nullable in BoundNodes.xml to remove this check)"); this.GuidString = guidString; - this._InitializerExpressionOpt = initializerExpressionOpt; - this._WasTargetTyped = wasTargetTyped; + this.InitializerExpressionOpt = initializerExpressionOpt; + this.WasTargetTyped = wasTargetTyped; } - public string? GuidString { get; } + public override BoundObjectInitializerExpressionBase? InitializerExpressionOpt { get; } + public override bool WasTargetTyped { get; } - private readonly BoundObjectInitializerExpressionBase? _InitializerExpressionOpt; - public override BoundObjectInitializerExpressionBase? InitializerExpressionOpt { get { return _InitializerExpressionOpt; } } - - private readonly bool _WasTargetTyped; - public override bool WasTargetTyped { get { return _WasTargetTyped; } } [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNoPiaObjectCreationExpression(this); @@ -6622,11 +6246,8 @@ protected BoundObjectInitializerExpressionBase(BoundKind kind, SyntaxNode syntax this.Initializers = initializers; } - public new TypeSymbol Type => base.Type!; - public BoundObjectOrCollectionValuePlaceholder Placeholder { get; } - public ImmutableArray Initializers { get; } } @@ -6642,6 +6263,7 @@ public BoundObjectInitializerExpression(SyntaxNode syntax, BoundObjectOrCollecti } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectInitializerExpression(this); @@ -6674,31 +6296,21 @@ public BoundObjectInitializerMember(SyntaxNode syntax, Symbol? memberSymbol, Imm this.Expanded = expanded; this.ArgsToParamsOpt = argsToParamsOpt; this.DefaultArguments = defaultArguments; - this._ResultKind = resultKind; + this.ResultKind = resultKind; this.ReceiverType = receiverType; } - public new TypeSymbol Type => base.Type!; - public Symbol? MemberSymbol { get; } - public ImmutableArray Arguments { get; } - public ImmutableArray ArgumentNamesOpt { get; } - public ImmutableArray ArgumentRefKindsOpt { get; } - public bool Expanded { get; } - public ImmutableArray ArgsToParamsOpt { get; } - public BitVector DefaultArguments { get; } - - private readonly LookupResultKind _ResultKind; - public override LookupResultKind ResultKind { get { return _ResultKind; } } - + public override LookupResultKind ResultKind { get; } public TypeSymbol ReceiverType { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectInitializerMember(this); @@ -6740,12 +6352,10 @@ public BoundDynamicObjectInitializerMember(SyntaxNode syntax, string memberName, this.ReceiverType = receiverType; } - public new TypeSymbol Type => base.Type!; - public string MemberName { get; } - public TypeSymbol ReceiverType { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicObjectInitializerMember(this); @@ -6773,6 +6383,7 @@ public BoundCollectionInitializerExpression(SyntaxNode syntax, BoundObjectOrColl } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionInitializerExpression(this); @@ -6805,28 +6416,19 @@ public BoundCollectionElementInitializer(SyntaxNode syntax, MethodSymbol addMeth this.ArgsToParamsOpt = argsToParamsOpt; this.DefaultArguments = defaultArguments; this.InvokedAsExtensionMethod = invokedAsExtensionMethod; - this._ResultKind = resultKind; + this.ResultKind = resultKind; } - public new TypeSymbol Type => base.Type!; - public MethodSymbol AddMethod { get; } - public ImmutableArray Arguments { get; } - public BoundExpression? ImplicitReceiverOpt { get; } - public bool Expanded { get; } - public ImmutableArray ArgsToParamsOpt { get; } - public BitVector DefaultArguments { get; } - public bool InvokedAsExtensionMethod { get; } + public override LookupResultKind ResultKind { get; } - private readonly LookupResultKind _ResultKind; - public override LookupResultKind ResultKind { get { return _ResultKind; } } [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionElementInitializer(this); @@ -6856,10 +6458,9 @@ public BoundDynamicCollectionElementInitializer(SyntaxNode syntax, ImmutableArra this.ApplicableMethods = applicableMethods; } - public new TypeSymbol Type => base.Type!; - public ImmutableArray ApplicableMethods { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicCollectionElementInitializer(this); @@ -6893,8 +6494,8 @@ public BoundImplicitReceiver(SyntaxNode syntax, TypeSymbol type) } - public new TypeSymbol Type => base.Type!; + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitReceiver(this); @@ -6926,14 +6527,11 @@ public BoundAnonymousObjectCreationExpression(SyntaxNode syntax, MethodSymbol co this.Declarations = declarations; } - public new TypeSymbol Type => base.Type!; - public MethodSymbol Constructor { get; } - public ImmutableArray Arguments { get; } - public ImmutableArray Declarations { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAnonymousObjectCreationExpression(this); @@ -6971,10 +6569,9 @@ public BoundAnonymousPropertyDeclaration(SyntaxNode syntax, PropertySymbol prope this.Property = property; } - public new TypeSymbol Type => base.Type!; - public PropertySymbol Property { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitAnonymousPropertyDeclaration(this); @@ -6998,16 +6595,13 @@ public BoundNewT(SyntaxNode syntax, BoundObjectInitializerExpressionBase? initia RoslynDebug.Assert(type is object, "Field 'type' cannot be null (make the type nullable in BoundNodes.xml to remove this check)"); - this._InitializerExpressionOpt = initializerExpressionOpt; - this._WasTargetTyped = wasTargetTyped; + this.InitializerExpressionOpt = initializerExpressionOpt; + this.WasTargetTyped = wasTargetTyped; } + public override BoundObjectInitializerExpressionBase? InitializerExpressionOpt { get; } + public override bool WasTargetTyped { get; } - private readonly BoundObjectInitializerExpressionBase? _InitializerExpressionOpt; - public override BoundObjectInitializerExpressionBase? InitializerExpressionOpt { get { return _InitializerExpressionOpt; } } - - private readonly bool _WasTargetTyped; - public override bool WasTargetTyped { get { return _WasTargetTyped; } } [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNewT(this); @@ -7038,16 +6632,12 @@ public BoundDelegateCreationExpression(SyntaxNode syntax, BoundExpression argume this.WasTargetTyped = wasTargetTyped; } - public new TypeSymbol Type => base.Type!; - public BoundExpression Argument { get; } - public MethodSymbol? MethodOpt { get; } - public bool IsExtensionMethod { get; } - public bool WasTargetTyped { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDelegateCreationExpression(this); @@ -7076,12 +6666,10 @@ public BoundArrayCreation(SyntaxNode syntax, ImmutableArray bou this.InitializerOpt = initializerOpt; } - public new TypeSymbol Type => base.Type!; - public ImmutableArray Bounds { get; } - public BoundArrayInitialization? InitializerOpt { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayCreation(this); @@ -7109,12 +6697,10 @@ public BoundArrayInitialization(SyntaxNode syntax, bool isInferred, ImmutableArr this.Initializers = initializers; } - public new TypeSymbol? Type => base.Type; - public bool IsInferred { get; } - public ImmutableArray Initializers { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitArrayInitialization(this); @@ -7144,11 +6730,8 @@ protected BoundStackAllocArrayCreationBase(BoundKind kind, SyntaxNode syntax, Ty this.InitializerOpt = initializerOpt; } - public TypeSymbol ElementType { get; } - public BoundExpression Count { get; } - public BoundArrayInitialization? InitializerOpt { get; } } @@ -7163,6 +6746,7 @@ public BoundStackAllocArrayCreation(SyntaxNode syntax, TypeSymbol elementType, B } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStackAllocArrayCreation(this); @@ -7190,8 +6774,8 @@ public BoundConvertedStackAllocExpression(SyntaxNode syntax, TypeSymbol elementT } - public new TypeSymbol Type => base.Type!; + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConvertedStackAllocExpression(this); @@ -7219,26 +6803,19 @@ public BoundFieldAccess(SyntaxNode syntax, BoundExpression? receiverOpt, FieldSy this.ReceiverOpt = receiverOpt; this.FieldSymbol = fieldSymbol; this.ConstantValueOpt = constantValueOpt; - this._ResultKind = resultKind; + this.ResultKind = resultKind; this.IsByValue = isByValue; this.IsDeclaration = isDeclaration; } - public new TypeSymbol Type => base.Type!; - public BoundExpression? ReceiverOpt { get; } - public FieldSymbol FieldSymbol { get; } - public ConstantValue? ConstantValueOpt { get; } - - private readonly LookupResultKind _ResultKind; - public override LookupResultKind ResultKind { get { return _ResultKind; } } - + public override LookupResultKind ResultKind { get; } public bool IsByValue { get; } - public bool IsDeclaration { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitFieldAccess(this); @@ -7276,10 +6853,9 @@ public BoundHoistedFieldAccess(SyntaxNode syntax, FieldSymbol fieldSymbol, TypeS this.FieldSymbol = fieldSymbol; } - public new TypeSymbol Type => base.Type!; - public FieldSymbol FieldSymbol { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitHoistedFieldAccess(this); @@ -7306,18 +6882,14 @@ public BoundPropertyAccess(SyntaxNode syntax, BoundExpression? receiverOpt, Prop this.ReceiverOpt = receiverOpt; this.PropertySymbol = propertySymbol; - this._ResultKind = resultKind; + this.ResultKind = resultKind; } - public new TypeSymbol Type => base.Type!; - public BoundExpression? ReceiverOpt { get; } - public PropertySymbol PropertySymbol { get; } + public override LookupResultKind ResultKind { get; } - private readonly LookupResultKind _ResultKind; - public override LookupResultKind ResultKind { get { return _ResultKind; } } [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertyAccess(this); @@ -7345,20 +6917,15 @@ public BoundEventAccess(SyntaxNode syntax, BoundExpression? receiverOpt, EventSy this.ReceiverOpt = receiverOpt; this.EventSymbol = eventSymbol; this.IsUsableAsField = isUsableAsField; - this._ResultKind = resultKind; + this.ResultKind = resultKind; } - public new TypeSymbol Type => base.Type!; - public BoundExpression? ReceiverOpt { get; } - public EventSymbol EventSymbol { get; } - public bool IsUsableAsField { get; } + public override LookupResultKind ResultKind { get; } - private readonly LookupResultKind _ResultKind; - public override LookupResultKind ResultKind { get { return _ResultKind; } } [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitEventAccess(this); @@ -7395,26 +6962,17 @@ public BoundIndexerAccess(SyntaxNode syntax, BoundExpression? receiverOpt, Prope this.OriginalIndexersOpt = originalIndexersOpt; } - public new TypeSymbol Type => base.Type!; - public BoundExpression? ReceiverOpt { get; } - public PropertySymbol Indexer { get; } - public ImmutableArray Arguments { get; } - public ImmutableArray ArgumentNamesOpt { get; } - public ImmutableArray ArgumentRefKindsOpt { get; } - public bool Expanded { get; } - public ImmutableArray ArgsToParamsOpt { get; } - public BitVector DefaultArguments { get; } - public ImmutableArray OriginalIndexersOpt { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIndexerAccess(this); @@ -7456,20 +7014,14 @@ public BoundImplicitIndexerAccess(SyntaxNode syntax, BoundExpression receiver, B [Conditional("DEBUG")] private partial void Validate(); - public new TypeSymbol Type => base.Type!; - public BoundExpression Receiver { get; } - public BoundExpression Argument { get; } - public BoundExpression LengthOrCountAccess { get; } - public BoundImplicitIndexerReceiverPlaceholder ReceiverPlaceholder { get; } - public BoundExpression IndexerOrSliceAccess { get; } - public ImmutableArray ArgumentPlaceholders { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitIndexerAccess(this); @@ -7503,18 +7055,13 @@ public BoundDynamicIndexerAccess(SyntaxNode syntax, BoundExpression receiver, Im this.ApplicableIndexers = applicableIndexers; } - public new TypeSymbol Type => base.Type!; - public BoundExpression Receiver { get; } - public ImmutableArray Arguments { get; } - public ImmutableArray ArgumentNamesOpt { get; } - public ImmutableArray ArgumentRefKindsOpt { get; } - public ImmutableArray ApplicableIndexers { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDynamicIndexerAccess(this); @@ -7548,18 +7095,13 @@ public BoundLambda(SyntaxNode syntax, UnboundLambda unboundLambda, LambdaSymbol this.Binder = binder; } - public UnboundLambda UnboundLambda { get; } - public LambdaSymbol Symbol { get; } - public new TypeSymbol? Type => base.Type; - public BoundBlock Body { get; } - public ImmutableBindingDiagnostic Diagnostics { get; } - public Binder Binder { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitLambda(this); @@ -7599,14 +7141,11 @@ public UnboundLambda(SyntaxNode syntax, UnboundLambdaState data, FunctionTypeSym this.WithDependencies = withDependencies; } - public new TypeSymbol? Type => base.Type; - public UnboundLambdaState Data { get; } - public FunctionTypeSymbol? FunctionType { get; } - public Boolean WithDependencies { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnboundLambda(this); @@ -7640,20 +7179,14 @@ public BoundQueryClause(SyntaxNode syntax, BoundExpression value, RangeVariableS this.UnoptimizedForm = unoptimizedForm; } - public new TypeSymbol Type => base.Type!; - public BoundExpression Value { get; } - public RangeVariableSymbol? DefinedSymbol { get; } - public BoundExpression? Operation { get; } - public BoundExpression? Cast { get; } - public Binder Binder { get; } - public BoundExpression? UnoptimizedForm { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitQueryClause(this); @@ -7679,6 +7212,7 @@ public BoundTypeOrInstanceInitializers(SyntaxNode syntax, ImmutableArray visitor.VisitTypeOrInstanceInitializers(this); @@ -7708,12 +7242,10 @@ public BoundNameOfOperator(SyntaxNode syntax, BoundExpression argument, Constant this.ConstantValueOpt = constantValueOpt; } - public new TypeSymbol Type => base.Type!; - public BoundExpression Argument { get; } - public ConstantValue ConstantValueOpt { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNameOfOperator(this); @@ -7741,9 +7273,7 @@ protected BoundInterpolatedStringBase(BoundKind kind, SyntaxNode syntax, Immutab this.ConstantValueOpt = constantValueOpt; } - public ImmutableArray Parts { get; } - public ConstantValue? ConstantValueOpt { get; } } @@ -7757,6 +7287,7 @@ public BoundUnconvertedInterpolatedString(SyntaxNode syntax, ImmutableArray visitor.VisitUnconvertedInterpolatedString(this); @@ -7783,8 +7314,8 @@ public BoundInterpolatedString(SyntaxNode syntax, InterpolatedStringHandlerData? this.InterpolationData = interpolationData; } - public InterpolatedStringHandlerData? InterpolationData { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedString(this); @@ -7812,6 +7343,7 @@ public BoundInterpolatedStringHandlerPlaceholder(SyntaxNode syntax, TypeSymbol? { } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedStringHandlerPlaceholder(this); @@ -7849,12 +7381,10 @@ public BoundInterpolatedStringArgumentPlaceholder(SyntaxNode syntax, int argumen this.ValSafeToEscape = valSafeToEscape; } - public new TypeSymbol Type => base.Type!; - public int ArgumentIndex { get; } - public uint ValSafeToEscape { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedStringArgumentPlaceholder(this); @@ -7884,16 +7414,12 @@ public BoundStringInsert(SyntaxNode syntax, BoundExpression value, BoundExpressi this.IsInterpolatedStringHandlerAppendCall = isInterpolatedStringHandlerAppendCall; } - public new TypeSymbol? Type => base.Type; - public BoundExpression Value { get; } - public BoundExpression? Alignment { get; } - public BoundLiteral? Format { get; } - public bool IsInterpolatedStringHandlerAppendCall { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStringInsert(this); @@ -7929,18 +7455,13 @@ public BoundIsPatternExpression(SyntaxNode syntax, BoundExpression expression, B this.WhenFalseLabel = whenFalseLabel; } - public BoundExpression Expression { get; } - public BoundPattern Pattern { get; } - public bool IsNegated { get; } - public BoundDecisionDag ReachabilityDecisionDag { get; } - public LabelSymbol WhenTrueLabel { get; } - public LabelSymbol WhenFalseLabel { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitIsPatternExpression(this); @@ -7980,9 +7501,7 @@ protected BoundPattern(BoundKind kind, SyntaxNode syntax, TypeSymbol inputType, this.NarrowedType = narrowedType; } - public TypeSymbol InputType { get; } - public TypeSymbol NarrowedType { get; } } @@ -8001,10 +7520,9 @@ public BoundConstantPattern(SyntaxNode syntax, BoundExpression value, ConstantVa this.ConstantValue = constantValue; } - public BoundExpression Value { get; } - public ConstantValue ConstantValue { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConstantPattern(this); @@ -8040,6 +7558,7 @@ public BoundDiscardPattern(SyntaxNode syntax, TypeSymbol inputType, TypeSymbol n } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDiscardPattern(this); @@ -8068,9 +7587,7 @@ protected BoundObjectPattern(BoundKind kind, SyntaxNode syntax, Symbol? variable this.VariableAccess = variableAccess; } - public Symbol? Variable { get; } - public BoundExpression? VariableAccess { get; } } @@ -8088,10 +7605,9 @@ public BoundDeclarationPattern(SyntaxNode syntax, BoundTypeExpression declaredTy this.IsVar = isVar; } - public BoundTypeExpression DeclaredType { get; } - public bool IsVar { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeclarationPattern(this); @@ -8123,16 +7639,12 @@ public BoundRecursivePattern(SyntaxNode syntax, BoundTypeExpression? declaredTyp this.IsExplicitNotNullTest = isExplicitNotNullTest; } - public BoundTypeExpression? DeclaredType { get; } - public MethodSymbol? DeconstructMethod { get; } - public ImmutableArray Deconstruction { get; } - public ImmutableArray Properties { get; } - public bool IsExplicitNotNullTest { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRecursivePattern(this); @@ -8170,18 +7682,13 @@ public BoundListPattern(SyntaxNode syntax, ImmutableArray subpatte [Conditional("DEBUG")] private partial void Validate(); - public ImmutableArray Subpatterns { get; } - public bool HasSlice { get; } - public BoundExpression? LengthAccess { get; } - public BoundExpression? IndexerAccess { get; } - public BoundListPatternReceiverPlaceholder? ReceiverPlaceholder { get; } - public BoundListPatternIndexPlaceholder? ArgumentPlaceholder { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitListPattern(this); @@ -8216,14 +7723,11 @@ public BoundSlicePattern(SyntaxNode syntax, BoundPattern? pattern, BoundExpressi [Conditional("DEBUG")] private partial void Validate(); - public BoundPattern? Pattern { get; } - public BoundExpression? IndexerAccess { get; } - public BoundSlicePatternReceiverPlaceholder? ReceiverPlaceholder { get; } - public BoundSlicePatternRangePlaceholder? ArgumentPlaceholder { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitSlicePattern(this); @@ -8256,12 +7760,10 @@ public BoundITuplePattern(SyntaxNode syntax, MethodSymbol getLengthMethod, Metho this.Subpatterns = subpatterns; } - public MethodSymbol GetLengthMethod { get; } - public MethodSymbol GetItemMethod { get; } - public ImmutableArray Subpatterns { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitITuplePattern(this); @@ -8288,7 +7790,6 @@ protected BoundSubpattern(BoundKind kind, SyntaxNode syntax, BoundPattern patter this.Pattern = pattern; } - public BoundPattern Pattern { get; } } @@ -8303,8 +7804,8 @@ public BoundPositionalSubpattern(SyntaxNode syntax, Symbol? symbol, BoundPattern this.Symbol = symbol; } - public Symbol? Symbol { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPositionalSubpattern(this); @@ -8332,10 +7833,9 @@ public BoundPropertySubpattern(SyntaxNode syntax, BoundPropertySubpatternMember? this.IsLengthOrCount = isLengthOrCount; } - public BoundPropertySubpatternMember? Member { get; } - public bool IsLengthOrCount { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertySubpattern(this); @@ -8364,12 +7864,10 @@ public BoundPropertySubpatternMember(SyntaxNode syntax, BoundPropertySubpatternM this.Type = type; } - public BoundPropertySubpatternMember? Receiver { get; } - public Symbol? Symbol { get; } - public TypeSymbol Type { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitPropertySubpatternMember(this); @@ -8399,10 +7897,9 @@ public BoundTypePattern(SyntaxNode syntax, BoundTypeExpression declaredType, boo this.IsExplicitNotNullTest = isExplicitNotNullTest; } - public BoundTypeExpression DeclaredType { get; } - public bool IsExplicitNotNullTest { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTypePattern(this); @@ -8434,12 +7931,10 @@ public BoundBinaryPattern(SyntaxNode syntax, bool disjunction, BoundPattern left this.Right = right; } - public bool Disjunction { get; } - public BoundPattern Left { get; } - public BoundPattern Right { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitBinaryPattern(this); @@ -8468,8 +7963,8 @@ public BoundNegatedPattern(SyntaxNode syntax, BoundPattern negated, TypeSymbol i this.Negated = negated; } - public BoundPattern Negated { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNegatedPattern(this); @@ -8501,12 +7996,10 @@ public BoundRelationalPattern(SyntaxNode syntax, BinaryOperatorKind relation, Bo this.ConstantValue = constantValue; } - public BinaryOperatorKind Relation { get; } - public BoundExpression Value { get; } - public ConstantValue ConstantValue { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitRelationalPattern(this); @@ -8536,10 +8029,9 @@ public BoundDiscardExpression(SyntaxNode syntax, uint valEscape, TypeSymbol? typ this.ValEscape = valEscape; } - public new TypeSymbol? Type => base.Type; - public uint ValEscape { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDiscardExpression(this); @@ -8566,8 +8058,8 @@ public BoundThrowExpression(SyntaxNode syntax, BoundExpression expression, TypeS this.Expression = expression; } - public BoundExpression Expression { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitThrowExpression(this); @@ -8595,11 +8087,8 @@ protected VariablePendingInference(BoundKind kind, SyntaxNode syntax, Symbol var this.ReceiverOpt = receiverOpt; } - public new TypeSymbol? Type => base.Type; - public Symbol VariableSymbol { get; } - public BoundExpression? ReceiverOpt { get; } } @@ -8613,6 +8102,7 @@ public OutVariablePendingInference(SyntaxNode syntax, Symbol variableSymbol, Bou } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitOutVariablePendingInference(this); @@ -8638,6 +8128,7 @@ public DeconstructionVariablePendingInference(SyntaxNode syntax, Symbol variable } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeconstructionVariablePendingInference(this); @@ -8665,8 +8156,8 @@ public OutDeconstructVarPendingInference(SyntaxNode syntax) { } - public new TypeSymbol? Type => base.Type; + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitOutDeconstructVarPendingInference(this); @@ -8685,9 +8176,7 @@ protected BoundMethodBodyBase(BoundKind kind, SyntaxNode syntax, BoundBlock? blo this.ExpressionBody = expressionBody; } - public BoundBlock? BlockBody { get; } - public BoundBlock? ExpressionBody { get; } } @@ -8698,6 +8187,7 @@ public BoundNonConstructorMethodBody(SyntaxNode syntax, BoundBlock? blockBody, B { } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNonConstructorMethodBody(this); @@ -8725,10 +8215,9 @@ public BoundConstructorMethodBody(SyntaxNode syntax, ImmutableArray this.Initializer = initializer; } - public ImmutableArray Locals { get; } - public BoundStatement? Initializer { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConstructorMethodBody(this); @@ -8756,12 +8245,10 @@ public BoundExpressionWithNullability(SyntaxNode syntax, BoundExpression express this.NullableAnnotation = nullableAnnotation; } - public BoundExpression Expression { get; } - public new TypeSymbol? Type => base.Type; - public NullableAnnotation NullableAnnotation { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitExpressionWithNullability(this); @@ -8792,14 +8279,11 @@ public BoundWithExpression(SyntaxNode syntax, BoundExpression receiver, MethodSy this.InitializerExpression = initializerExpression; } - public new TypeSymbol Type => base.Type!; - public BoundExpression Receiver { get; } - public MethodSymbol? CloneMethod { get; } - public BoundObjectInitializerExpressionBase InitializerExpression { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitWithExpression(this); diff --git a/src/Tools/Source/CompilerGeneratorTools/Source/BoundTreeGenerator/BoundNodeClassWriter.cs b/src/Tools/Source/CompilerGeneratorTools/Source/BoundTreeGenerator/BoundNodeClassWriter.cs index b3108a684985d..8b4037301be1f 100644 --- a/src/Tools/Source/CompilerGeneratorTools/Source/BoundTreeGenerator/BoundNodeClassWriter.cs +++ b/src/Tools/Source/CompilerGeneratorTools/Source/BoundTreeGenerator/BoundNodeClassWriter.cs @@ -462,14 +462,7 @@ private void WriteConstructorWithHasErrors(TreeType node, bool isPublic, bool ha foreach (var field in Fields(node)) { - if (IsPropertyOverrides(field)) - { - WriteLine("this._{0} = {1};", field.Name, FieldNullHandling(node, field.Name) == NullHandling.Always ? "null" : ToCamelCase(field.Name)); - } - else - { - WriteLine("this.{0} = {1};", field.Name, FieldNullHandling(node, field.Name) == NullHandling.Always ? "null" : ToCamelCase(field.Name)); - } + WriteLine("this.{0} = {1};", field.Name, FieldNullHandling(node, field.Name) == NullHandling.Always ? "null" : ToCamelCase(field.Name)); } bool hasValidate = HasValidate(node); @@ -605,14 +598,7 @@ private void WriteConstructorWithoutHasErrors(TreeType node, bool isPublic) foreach (var field in Fields(node)) { - if (IsPropertyOverrides(field)) - { - WriteLine("this._{0} = {1};", field.Name, FieldNullHandling(node, field.Name) == NullHandling.Always ? "null" : ToCamelCase(field.Name)); - } - else - { - WriteLine("this.{0} = {1};", field.Name, FieldNullHandling(node, field.Name) == NullHandling.Always ? "null" : ToCamelCase(field.Name)); - } + WriteLine("this.{0} = {1};", field.Name, FieldNullHandling(node, field.Name) == NullHandling.Always ? "null" : ToCamelCase(field.Name)); } Unbrace(); Blank(); @@ -849,11 +835,9 @@ private void WriteField(TreeType node, Field field) switch (_targetLang) { case TargetLanguage.CSharp: - Blank(); if (IsPropertyOverrides(field)) { - WriteLine("private readonly {0} _{1};", field.Type, field.Name); - WriteLine("public override {0}{1} {2} {{ get {{ return _{2}; }} }}", (IsNew(field) ? "new " : ""), field.Type, field.Name); + WriteLine("public override {0}{1} {2} {{ get; }}", (IsNew(field) ? "new " : ""), field.Type, field.Name); } else if (field.Override) { @@ -897,6 +881,7 @@ private void WriteAccept(string name) switch (_targetLang) { case TargetLanguage.CSharp: + Blank(); WriteLine("[DebuggerStepThrough]"); WriteLine("public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.Visit{0}(this);", StripBound(name)); break;