diff --git a/src/Compilers/CSharp/Portable/Generated/BoundNodes.xml.Generated.cs b/src/Compilers/CSharp/Portable/Generated/BoundNodes.xml.Generated.cs index fa66d8df9f0b5..3c941d6c2c27f 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); @@ -6324,18 +5991,13 @@ public BoundUnconvertedObjectCreationExpression(SyntaxNode syntax, ImmutableArra this.Binder = binder; } - 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; } - public Binder Binder { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitUnconvertedObjectCreationExpression(this); @@ -6369,7 +6031,6 @@ protected BoundObjectCreationExpressionBase(BoundKind kind, SyntaxNode syntax, T } - public new TypeSymbol Type => base.Type!; } @@ -6384,50 +6045,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); @@ -6456,11 +6098,8 @@ protected BoundTupleExpression(BoundKind kind, SyntaxNode syntax, ImmutableArray this.InferredNamesOpt = inferredNamesOpt; } - public ImmutableArray Arguments { get; } - public ImmutableArray ArgumentNamesOpt { get; } - public ImmutableArray InferredNamesOpt { get; } } @@ -6474,8 +6113,8 @@ public BoundTupleLiteral(SyntaxNode syntax, ImmutableArray argu } - public new TypeSymbol? Type => base.Type; + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitTupleLiteral(this); @@ -6503,10 +6142,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); @@ -6534,33 +6172,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); @@ -6585,18 +6212,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); @@ -6626,11 +6249,8 @@ protected BoundObjectInitializerExpressionBase(BoundKind kind, SyntaxNode syntax this.Initializers = initializers; } - public new TypeSymbol Type => base.Type!; - public BoundObjectOrCollectionValuePlaceholder Placeholder { get; } - public ImmutableArray Initializers { get; } } @@ -6646,6 +6266,7 @@ public BoundObjectInitializerExpression(SyntaxNode syntax, BoundObjectOrCollecti } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitObjectInitializerExpression(this); @@ -6678,31 +6299,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); @@ -6744,12 +6355,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); @@ -6777,6 +6386,7 @@ public BoundCollectionInitializerExpression(SyntaxNode syntax, BoundObjectOrColl } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitCollectionInitializerExpression(this); @@ -6809,28 +6419,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); @@ -6860,10 +6461,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); @@ -6897,8 +6497,8 @@ public BoundImplicitReceiver(SyntaxNode syntax, TypeSymbol type) } - public new TypeSymbol Type => base.Type!; + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitImplicitReceiver(this); @@ -6930,14 +6530,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); @@ -6975,10 +6572,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); @@ -7002,16 +6598,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); @@ -7042,16 +6635,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); @@ -7080,12 +6669,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); @@ -7113,12 +6700,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); @@ -7148,11 +6733,8 @@ protected BoundStackAllocArrayCreationBase(BoundKind kind, SyntaxNode syntax, Ty this.InitializerOpt = initializerOpt; } - public TypeSymbol ElementType { get; } - public BoundExpression Count { get; } - public BoundArrayInitialization? InitializerOpt { get; } } @@ -7167,6 +6749,7 @@ public BoundStackAllocArrayCreation(SyntaxNode syntax, TypeSymbol elementType, B } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitStackAllocArrayCreation(this); @@ -7194,8 +6777,8 @@ public BoundConvertedStackAllocExpression(SyntaxNode syntax, TypeSymbol elementT } - public new TypeSymbol Type => base.Type!; + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitConvertedStackAllocExpression(this); @@ -7223,26 +6806,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); @@ -7280,10 +6856,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); @@ -7310,18 +6885,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); @@ -7349,20 +6920,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); @@ -7399,26 +6965,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); @@ -7460,20 +7017,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); @@ -7507,18 +7058,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); @@ -7552,18 +7098,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); @@ -7603,14 +7144,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); @@ -7644,20 +7182,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); @@ -7683,6 +7215,7 @@ public BoundTypeOrInstanceInitializers(SyntaxNode syntax, ImmutableArray visitor.VisitTypeOrInstanceInitializers(this); @@ -7712,12 +7245,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); @@ -7745,9 +7276,7 @@ protected BoundInterpolatedStringBase(BoundKind kind, SyntaxNode syntax, Immutab this.ConstantValueOpt = constantValueOpt; } - public ImmutableArray Parts { get; } - public ConstantValue? ConstantValueOpt { get; } } @@ -7761,6 +7290,7 @@ public BoundUnconvertedInterpolatedString(SyntaxNode syntax, ImmutableArray visitor.VisitUnconvertedInterpolatedString(this); @@ -7787,8 +7317,8 @@ public BoundInterpolatedString(SyntaxNode syntax, InterpolatedStringHandlerData? this.InterpolationData = interpolationData; } - public InterpolatedStringHandlerData? InterpolationData { get; } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedString(this); @@ -7816,6 +7346,7 @@ public BoundInterpolatedStringHandlerPlaceholder(SyntaxNode syntax, TypeSymbol? { } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitInterpolatedStringHandlerPlaceholder(this); @@ -7853,12 +7384,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); @@ -7888,16 +7417,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); @@ -7933,18 +7458,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); @@ -7984,9 +7504,7 @@ protected BoundPattern(BoundKind kind, SyntaxNode syntax, TypeSymbol inputType, this.NarrowedType = narrowedType; } - public TypeSymbol InputType { get; } - public TypeSymbol NarrowedType { get; } } @@ -8005,10 +7523,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); @@ -8044,6 +7561,7 @@ public BoundDiscardPattern(SyntaxNode syntax, TypeSymbol inputType, TypeSymbol n } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDiscardPattern(this); @@ -8072,9 +7590,7 @@ protected BoundObjectPattern(BoundKind kind, SyntaxNode syntax, Symbol? variable this.VariableAccess = variableAccess; } - public Symbol? Variable { get; } - public BoundExpression? VariableAccess { get; } } @@ -8092,10 +7608,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); @@ -8127,16 +7642,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); @@ -8174,18 +7685,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); @@ -8220,14 +7726,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); @@ -8260,12 +7763,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); @@ -8292,7 +7793,6 @@ protected BoundSubpattern(BoundKind kind, SyntaxNode syntax, BoundPattern patter this.Pattern = pattern; } - public BoundPattern Pattern { get; } } @@ -8307,8 +7807,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); @@ -8336,10 +7836,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); @@ -8368,12 +7867,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); @@ -8403,10 +7900,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); @@ -8438,12 +7934,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); @@ -8472,8 +7966,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); @@ -8505,12 +7999,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); @@ -8540,10 +8032,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); @@ -8570,8 +8061,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); @@ -8599,11 +8090,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; } } @@ -8617,6 +8105,7 @@ public OutVariablePendingInference(SyntaxNode syntax, Symbol variableSymbol, Bou } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitOutVariablePendingInference(this); @@ -8642,6 +8131,7 @@ public DeconstructionVariablePendingInference(SyntaxNode syntax, Symbol variable } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitDeconstructionVariablePendingInference(this); @@ -8669,8 +8159,8 @@ public OutDeconstructVarPendingInference(SyntaxNode syntax) { } - public new TypeSymbol? Type => base.Type; + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitOutDeconstructVarPendingInference(this); @@ -8689,9 +8179,7 @@ protected BoundMethodBodyBase(BoundKind kind, SyntaxNode syntax, BoundBlock? blo this.ExpressionBody = expressionBody; } - public BoundBlock? BlockBody { get; } - public BoundBlock? ExpressionBody { get; } } @@ -8702,6 +8190,7 @@ public BoundNonConstructorMethodBody(SyntaxNode syntax, BoundBlock? blockBody, B { } + [DebuggerStepThrough] public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.VisitNonConstructorMethodBody(this); @@ -8729,10 +8218,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); @@ -8760,12 +8248,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); @@ -8796,14 +8282,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/Compilers/CSharp/Portable/xlf/CSharpResources.cs.xlf b/src/Compilers/CSharp/Portable/xlf/CSharpResources.cs.xlf index 9107d38fdcb41..fee27ecb9f496 100644 --- a/src/Compilers/CSharp/Portable/xlf/CSharpResources.cs.xlf +++ b/src/Compilers/CSharp/Portable/xlf/CSharpResources.cs.xlf @@ -134,12 +134,12 @@ The first operand of an overloaded shift operator must have the same type as the containing type or its type parameter constrained to it - První operand přetěžovaného operátoru shift musí být stejného typu jako obsahující typ nebo jeho parametr typu omezený na něj a druhý operand musí být typu int. + The first operand of an overloaded shift operator must have the same type as the containing type or its type parameter constrained to it A static virtual or abstract interface member can be accessed only on a type parameter. - Ke statickému členu abstraktního rozhraní lze přistupovat pouze přes parametr obecného typu. + A static virtual or abstract interface member can be accessed only on a type parameter. @@ -474,7 +474,7 @@ An expression tree may not contain an access of static virtual or abstract interface member - Strom výrazů nesmí obsahovat přístup statického člena abstraktního rozhraní. + An expression tree may not contain an access of static virtual or abstract interface member @@ -1919,7 +1919,7 @@ 'UnmanagedCallersOnly' can only be applied to ordinary static non-abstract, non-virtual methods or static local functions. - UnmanagedCallersOnly se dá použít jen pro běžné statické neabstraktní metody nebo statické místní funkce. + 'UnmanagedCallersOnly' can only be applied to ordinary static non-abstract, non-virtual methods or static local functions. UnmanagedCallersOnly is not localizable. @@ -2195,7 +2195,7 @@ -instrument:TestCoverage Vytvoří sestavení instrumentované ke shromažďování informací o pokrytí. -sourcelink:<file> Informace o zdrojovém odkazu vkládané do souboru PDB.. - + - CHYBY A UPOZORNĚNÍ - -warnaserror[+|-] Hlásí všechna upozornění jako chyby. -warnaserror[+|-]:<warn list> Hlásí zadaná upozornění jako chyby. @@ -5922,7 +5922,7 @@ Pokud se taková třída používá jako základní třída a pokud odvozující The first operand of an overloaded shift operator must have the same type as the containing type - První operand přetěžovaného operátoru shift musí být stejného typu jako obsahující typ a druhý operand musí být typu int. + The first operand of an overloaded shift operator must have the same type as the containing type diff --git a/src/Compilers/CSharp/Portable/xlf/CSharpResources.de.xlf b/src/Compilers/CSharp/Portable/xlf/CSharpResources.de.xlf index 06bcf1349cf24..ea3a8a7706dc9 100644 --- a/src/Compilers/CSharp/Portable/xlf/CSharpResources.de.xlf +++ b/src/Compilers/CSharp/Portable/xlf/CSharpResources.de.xlf @@ -134,12 +134,12 @@ The first operand of an overloaded shift operator must have the same type as the containing type or its type parameter constrained to it - Der erste Operand eines überladenen Shift-Operators muss denselben Typ wie der enthaltende Typ oder den Typparameter aufweisen, der auf ihn beschränkt ist, und der Typ des zweiten Operanden muss "int" sein. + The first operand of an overloaded shift operator must have the same type as the containing type or its type parameter constrained to it A static virtual or abstract interface member can be accessed only on a type parameter. - Auf ein statisches abstraktes Schnittstellenelement kann nur auf einen Typparameter zugegriffen werden. + A static virtual or abstract interface member can be accessed only on a type parameter. @@ -474,7 +474,7 @@ An expression tree may not contain an access of static virtual or abstract interface member - Eine Ausdrucksbaumstruktur darf keinen Zugriff auf ein statisches abstraktes Schnittstellenelement enthalten + An expression tree may not contain an access of static virtual or abstract interface member @@ -1919,7 +1919,7 @@ 'UnmanagedCallersOnly' can only be applied to ordinary static non-abstract, non-virtual methods or static local functions. - "UnmanagedCallersOnly" kann nur auf gewöhnliche statische, nicht abstrakte Methoden oder statische lokale Funktionen angewendet werden. + 'UnmanagedCallersOnly' can only be applied to ordinary static non-abstract, non-virtual methods or static local functions. UnmanagedCallersOnly is not localizable. @@ -2198,7 +2198,7 @@ – FEHLER UND WARNUNGEN – -warnaserror[+|-] Meldet alle Warnungen als Fehler. --warnaserror[+|-]:<Warnungsliste> Meldet bestimmte Warnungen als Fehler +-warnaserror[+|-]:<Warnungsliste> Meldet bestimmte Warnungen als Fehler (Verwendung von "nullable" für alle Warnungen zur NULL-Zulässigkeit). -warn:<n> Legt die Warnstufe fest (0 oder höher) (Kurzform: -w). -nowarn:<Warnungsliste> Deaktiviert bestimmte Warnmeldungen @@ -5922,7 +5922,7 @@ Wenn solch eine Klasse als Basisklasse verwendet wird und die ableitende Klasse The first operand of an overloaded shift operator must have the same type as the containing type - Der erste Operand eines überladenen Schiebeoperators muss den enthaltenden Typ aufweisen, und der zweite Operand muss eine ganze Zahl sein. + The first operand of an overloaded shift operator must have the same type as the containing type diff --git a/src/Compilers/CSharp/Portable/xlf/CSharpResources.es.xlf b/src/Compilers/CSharp/Portable/xlf/CSharpResources.es.xlf index 82b93565f069e..203d9f2f7308f 100644 --- a/src/Compilers/CSharp/Portable/xlf/CSharpResources.es.xlf +++ b/src/Compilers/CSharp/Portable/xlf/CSharpResources.es.xlf @@ -134,12 +134,12 @@ The first operand of an overloaded shift operator must have the same type as the containing type or its type parameter constrained to it - El primer operando de un operador de desplazamiento sobrecargado debe tener el mismo tipo que el tipo contenedor o su parámetro de tipo restringido, y el tipo del segundo operando debe ser int + The first operand of an overloaded shift operator must have the same type as the containing type or its type parameter constrained to it A static virtual or abstract interface member can be accessed only on a type parameter. - Solo se puede tener acceso a un miembro de interfaz abstracta estático en un parámetro de tipo. + A static virtual or abstract interface member can be accessed only on a type parameter. @@ -474,7 +474,7 @@ An expression tree may not contain an access of static virtual or abstract interface member - Un árbol de (la) expresión no puede contener un acceso de miembro de interfaz abstracta estática + An expression tree may not contain an access of static virtual or abstract interface member @@ -1919,7 +1919,7 @@ 'UnmanagedCallersOnly' can only be applied to ordinary static non-abstract, non-virtual methods or static local functions. - 'UnmanagedCallersOnly' solo se puede aplicar a métodos estáticos ordinarios no abstractos o funciones locales estáticas. + 'UnmanagedCallersOnly' can only be applied to ordinary static non-abstract, non-virtual methods or static local functions. UnmanagedCallersOnly is not localizable. @@ -2133,7 +2133,7 @@ Opciones del compilador de Visual C# - ARCHIVOS DE SALIDA - --out:<archivo> Especifica el nombre del archivo de salida (el valor predeterminado: nombre base del +-out:<archivo> Especifica el nombre del archivo de salida (el valor predeterminado: nombre base del archivo con la clase principal o el primer archivo) -target:exe Compila un archivo ejecutable de consola (predeterminado) (forma corta: -t:exe) @@ -2195,7 +2195,7 @@ -instrument:TestCoverage Produce un ensamblado instrumentado para recopilar información de cobertura. -sourcelink:<archivo> Información del vínculo de origen para insertar en el PDB. - + - ERRORES Y ADVERTENCIAS - -warnaserror[+|-] Notifica todas las advertencias como errores. -warnaserror[+|-]:<lista de advertencias > Notifica advertencias específicas como errores @@ -2267,7 +2267,7 @@ -pdb:<archivo> Especifica el nombre de archivo de información de depuración (valor predeterminado: nombre de archivo de salida con la extensión .pdb). -errorendlocation Línea y columna de salida de la ubicación final de - cada error. + cada error. -preferreduilang Especifica el nombre del lenguaje de salida preferido. -nosdkpath Deshabilita la búsqueda de la ruta del SDK predeterminada para los ensamblados de biblioteca estándar. -nostdlib[+|-] No hace referencia a la biblioteca estándar (mscorlib.dll). @@ -5922,7 +5922,7 @@ Si se utiliza una clase de este tipo como clase base y si la clase derivada defi The first operand of an overloaded shift operator must have the same type as the containing type - El primer operando de un operador de desplazamiento sobrecargado debe tener el mismo tipo que el tipo contenedor, y el tipo del segundo operando debe ser int + The first operand of an overloaded shift operator must have the same type as the containing type diff --git a/src/Compilers/CSharp/Portable/xlf/CSharpResources.fr.xlf b/src/Compilers/CSharp/Portable/xlf/CSharpResources.fr.xlf index 76efa2ef017a8..2788cafca9f6f 100644 --- a/src/Compilers/CSharp/Portable/xlf/CSharpResources.fr.xlf +++ b/src/Compilers/CSharp/Portable/xlf/CSharpResources.fr.xlf @@ -134,12 +134,12 @@ The first operand of an overloaded shift operator must have the same type as the containing type or its type parameter constrained to it - Le premier opérande d'un opérateur de décalage surchargé doit être du même type que le type conteneur ou son paramètre de type limité, et le type du second opérande doit être int + The first operand of an overloaded shift operator must have the same type as the containing type or its type parameter constrained to it A static virtual or abstract interface member can be accessed only on a type parameter. - Vous pouvez accéder à un membre d’interface abstrait statique uniquement sur un paramètre de type. + A static virtual or abstract interface member can be accessed only on a type parameter. @@ -474,7 +474,7 @@ An expression tree may not contain an access of static virtual or abstract interface member - Une arborescence de l’expression ne peut pas contenir un accès à un membre d’interface abstraite statique + An expression tree may not contain an access of static virtual or abstract interface member @@ -1919,7 +1919,7 @@ 'UnmanagedCallersOnly' can only be applied to ordinary static non-abstract, non-virtual methods or static local functions. - 'UnmanagedCallersOnly' ne peut être appliqué qu’à des méthodes statiques non abstraites ordinaires ou à des fonctions locales statiques. + 'UnmanagedCallersOnly' can only be applied to ordinary static non-abstract, non-virtual methods or static local functions. UnmanagedCallersOnly is not localizable. @@ -2195,7 +2195,7 @@ -instrument:TestCoverage Produire un assembly instrumenté pour collecter les informations de couverture -sourcelink:<fichier> Informations du lien source à incorporer dans le fichier PDB. - + - ERREURS ET AVERTISSEMENTS - -warnaserror[+|-] Signaler tous les avertissements comme des erreurs -warnaserror[+|-]:<avertiss.> Signaler des avertissements spécifiques comme des erreurs @@ -5922,7 +5922,7 @@ Si une telle classe est utilisée en tant que classe de base et si la classe dé The first operand of an overloaded shift operator must have the same type as the containing type - Le premier opérande d'un opérateur de décalage surchargé doit être du même type que le type conteneur et le type du second opérande doit être int + The first operand of an overloaded shift operator must have the same type as the containing type diff --git a/src/Compilers/CSharp/Portable/xlf/CSharpResources.it.xlf b/src/Compilers/CSharp/Portable/xlf/CSharpResources.it.xlf index 1d351656705c5..691b2de6f2654 100644 --- a/src/Compilers/CSharp/Portable/xlf/CSharpResources.it.xlf +++ b/src/Compilers/CSharp/Portable/xlf/CSharpResources.it.xlf @@ -134,12 +134,12 @@ The first operand of an overloaded shift operator must have the same type as the containing type or its type parameter constrained to it - Il primo operando di un operatore shift di overload deve essere dello stesso tipo del tipo che lo contiene o del relativo parametro di tipo vincolato ad esso, mentre il tipo del secondo operando deve essere int + The first operand of an overloaded shift operator must have the same type as the containing type or its type parameter constrained to it A static virtual or abstract interface member can be accessed only on a type parameter. - È possibile accedere a un membro di interfaccia astratto statico solo in un parametro di tipo. + A static virtual or abstract interface member can be accessed only on a type parameter. @@ -474,7 +474,7 @@ An expression tree may not contain an access of static virtual or abstract interface member - Un albero delle espressioni non può contenere un accesso del membro di interfaccia astratto statico + An expression tree may not contain an access of static virtual or abstract interface member @@ -1919,7 +1919,7 @@ 'UnmanagedCallersOnly' can only be applied to ordinary static non-abstract, non-virtual methods or static local functions. - 'UnmanagedCallersOnly' può essere applicato solo a metodi non astratti statici normali o funzioni locali statiche. + 'UnmanagedCallersOnly' can only be applied to ordinary static non-abstract, non-virtual methods or static local functions. UnmanagedCallersOnly is not localizable. @@ -2158,7 +2158,7 @@ ai caratteri jolly specificati -reference:<alias>=<file> Crea un riferimento ai metadati dal file di assembly specificato usando l'alias indicato. Forma breve: -r --reference:<elenco file> Crea un riferimento ai metadati dai file di assembly +-reference:<elenco file> Crea un riferimento ai metadati dai file di assembly specificati. Forma breve: -r -addmodule:<elenco file> Collega i moduli specificati in questo assembly -link:<elenco file> Incorpora metadati dai file di assembly di @@ -2195,7 +2195,7 @@ -instrument:TestCoverage Produce un assembly instrumentato per raccogliere informazioni sul code coverage -sourcelink:<file> Informazioni sul collegamento all'origine da incorporare nel file PDB. - + - ERRORI E AVVISI - -warnaserror[+|-] Segnala tutti gli avvisi come errori -warnaserror[+|-]:<elenco avvisi> Segnala determinati avvisi come errori @@ -2249,7 +2249,7 @@ - AVANZATE - -baseaddress:<indirizzo> Indirizzo di base della libreria da compilare --checksumalgorithm:<alg> Consente di specificare l'algoritmo per calcolare il checksum +-checksumalgorithm:<alg> Consente di specificare l'algoritmo per calcolare il checksum del file di origine archiviato nel file PDB. I valori supportati sono: SHA1 o SHA256 (impostazione predefinita). -codepage:<n> Consente di specificare la tabella codici da usare all'apertura dei file @@ -5922,7 +5922,7 @@ Se si usa tale classe come classe base e se la classe di derivazione definisce u The first operand of an overloaded shift operator must have the same type as the containing type - Il primo operando di un operatore shift di overload deve essere dello stesso tipo del tipo che lo contiene, mentre il tipo del secondo operando deve essere int + The first operand of an overloaded shift operator must have the same type as the containing type diff --git a/src/Compilers/CSharp/Portable/xlf/CSharpResources.ja.xlf b/src/Compilers/CSharp/Portable/xlf/CSharpResources.ja.xlf index a26d48e06359d..54ef5ec1c3c9a 100644 --- a/src/Compilers/CSharp/Portable/xlf/CSharpResources.ja.xlf +++ b/src/Compilers/CSharp/Portable/xlf/CSharpResources.ja.xlf @@ -134,12 +134,12 @@ The first operand of an overloaded shift operator must have the same type as the containing type or its type parameter constrained to it - オーバーロードされたシフト演算子の最初のオペランドは、それを含む型またはそれに制約された型パラメーターと同じ型である必要があり、2 番目のオペランドの型は int でなければなりません + The first operand of an overloaded shift operator must have the same type as the containing type or its type parameter constrained to it A static virtual or abstract interface member can be accessed only on a type parameter. - 静的な抽象インターフェイス メンバーには、型パラメーターでのみアクセスできます。 + A static virtual or abstract interface member can be accessed only on a type parameter. @@ -474,7 +474,7 @@ An expression tree may not contain an access of static virtual or abstract interface member - 式ツリーに静的抽象インターフェイス メンバーへのアクセス権を含めることはできません + An expression tree may not contain an access of static virtual or abstract interface member @@ -1919,7 +1919,7 @@ 'UnmanagedCallersOnly' can only be applied to ordinary static non-abstract, non-virtual methods or static local functions. - 'UnmanagedCallersOnly' は、通常の静的な非抽象的メソッドまたは静的なローカル関数にのみ適用できます。 + 'UnmanagedCallersOnly' can only be applied to ordinary static non-abstract, non-virtual methods or static local functions. UnmanagedCallersOnly is not localizable. @@ -2195,7 +2195,7 @@ -instrument:TestCoverage カバレッジ情報を収集するようにインストルメント化された アセンブリを生成します -sourcelink:<file> PDB に埋め込むソース リンク情報。 - + - エラーと警告 - -warnaserror[+|-] すべての警告をエラーとして報告します -warnaserror[+|-]:<warn list> 特定の警告をエラーとして報告します @@ -5922,7 +5922,7 @@ If such a class is used as a base class and if the deriving class defines a dest The first operand of an overloaded shift operator must have the same type as the containing type - オーバーロードされた shift 演算子の最初のオペランドはそれを含む型と同じ型、2 番目のオペランドの型は int でなければなりません + The first operand of an overloaded shift operator must have the same type as the containing type diff --git a/src/Compilers/CSharp/Portable/xlf/CSharpResources.ko.xlf b/src/Compilers/CSharp/Portable/xlf/CSharpResources.ko.xlf index bd04981258c72..c413fd25c20d3 100644 --- a/src/Compilers/CSharp/Portable/xlf/CSharpResources.ko.xlf +++ b/src/Compilers/CSharp/Portable/xlf/CSharpResources.ko.xlf @@ -134,12 +134,12 @@ The first operand of an overloaded shift operator must have the same type as the containing type or its type parameter constrained to it - 오버로드된 Shift 연산자의 첫 번째 피연산자는 포함하는 형식 또는 제한된 형식 매개 변수와 동일한 형식이어야 하며 두 번째 피연산자의 형식은 int여야 합니다. + The first operand of an overloaded shift operator must have the same type as the containing type or its type parameter constrained to it A static virtual or abstract interface member can be accessed only on a type parameter. - 정적 추상 인터페이스 멤버는 형식 매개 변수에서만 액세스할 수 있습니다. + A static virtual or abstract interface member can be accessed only on a type parameter. @@ -474,7 +474,7 @@ An expression tree may not contain an access of static virtual or abstract interface member - 식 트리는 정적 추상 인터페이스 멤버의 액세스를 포함할 수 없습니다. + An expression tree may not contain an access of static virtual or abstract interface member @@ -1919,7 +1919,7 @@ 'UnmanagedCallersOnly' can only be applied to ordinary static non-abstract, non-virtual methods or static local functions. - 'UnmanagedCallersOnly'는 일반 정적 비추상 메서드 또는 정적 로컬 함수에만 적용할 수 있습니다. + 'UnmanagedCallersOnly' can only be applied to ordinary static non-abstract, non-virtual methods or static local functions. UnmanagedCallersOnly is not localizable. @@ -2141,7 +2141,7 @@ -target:library 라이브러리를 빌드합니다. (약식: -t:library) -target:module 다른 어셈블리에 추가할 수 있는 모듈을 빌드합니다. (약식: -t:module) --target:appcontainerexe Appcontainer 실행 파일을 빌드합니다. (약식: +-target:appcontainerexe Appcontainer 실행 파일을 빌드합니다. (약식: -t:appcontainerexe) -target:winmdobj WinMDExp에서 사용되는 Windows 런타임 중간 파일을 빌드합니다. (약식: -t:winmdobj) @@ -2255,7 +2255,7 @@ 지정합니다. -utf8output 컴파일러 메시지를 UTF-8 인코딩으로 출력합니다. -main:<type> 진입점이 포함된 형식을 지정합니다(다른 - 모든 가능한 진입점 무시). + 모든 가능한 진입점 무시). (약식: -m) -fullpaths 컴파일러가 정규화된 경로를 생성합니다. -filealign:<n> 출력 파일 섹션에 사용되는 맞춤을 @@ -5921,7 +5921,7 @@ If such a class is used as a base class and if the deriving class defines a dest The first operand of an overloaded shift operator must have the same type as the containing type - 오버로드된 시프트 연산자의 첫 번째 피연산자는 포함하는 형식과 동일한 형식이어야 하며 두 번째 피연산자는 정수 형식이어야 합니다. + The first operand of an overloaded shift operator must have the same type as the containing type diff --git a/src/Compilers/CSharp/Portable/xlf/CSharpResources.pl.xlf b/src/Compilers/CSharp/Portable/xlf/CSharpResources.pl.xlf index 32a438a1adf15..ab6db8fd07c83 100644 --- a/src/Compilers/CSharp/Portable/xlf/CSharpResources.pl.xlf +++ b/src/Compilers/CSharp/Portable/xlf/CSharpResources.pl.xlf @@ -134,12 +134,12 @@ The first operand of an overloaded shift operator must have the same type as the containing type or its type parameter constrained to it - Pierwszy operand operatora przeciążonego przesunięcia musi mieć ten sam typ co typ zawierający lub jego parametr typu ograniczony do niego, a typ drugiego operandu musi mieć wartość „int” + The first operand of an overloaded shift operator must have the same type as the containing type or its type parameter constrained to it A static virtual or abstract interface member can be accessed only on a type parameter. - Dostęp do statycznej składowej interfejsu abstrakcyjnego można uzyskać tylko w przypadku parametru typu. + A static virtual or abstract interface member can be accessed only on a type parameter. @@ -474,7 +474,7 @@ An expression tree may not contain an access of static virtual or abstract interface member - Drzewo wyrażenia nie może zawierać dostępu do statycznej składowej abstrakcyjnej w interfejsie + An expression tree may not contain an access of static virtual or abstract interface member @@ -1919,7 +1919,7 @@ 'UnmanagedCallersOnly' can only be applied to ordinary static non-abstract, non-virtual methods or static local functions. - Element „UnmanagedCallersOnly” można stosować tylko do zwykłych statycznych metod nieabstrakcyjnych lub statycznych funkcji lokalnych. + 'UnmanagedCallersOnly' can only be applied to ordinary static non-abstract, non-virtual methods or static local functions. UnmanagedCallersOnly is not localizable. @@ -2133,35 +2133,35 @@ Opcje kompilatora Visual C# - PLIKI WYJŚCIOWE - --out:<plik> Określ nazwę pliku wyjściowego (domyślnie: nazwa podstawowa +-out:<plik> Określ nazwę pliku wyjściowego (domyślnie: nazwa podstawowa pliku z klasą główną lub pierwszego pliku) --target:exe Kompiluj plik wykonywalny konsoli (domyślnie) (krótka +-target:exe Kompiluj plik wykonywalny konsoli (domyślnie) (krótka wersja: -t:exe) --target:winexe Kompiluj plik wykonywalny systemu Windows (krótka wersja: +-target:winexe Kompiluj plik wykonywalny systemu Windows (krótka wersja: -t:winexe) -target:library Kompiluj bibliotekę (krótka wersja: -t:library) --target:module Kompiluj moduł, który można dodać do innego +-target:module Kompiluj moduł, który można dodać do innego zestawu (krótka wersja: -t:module) --target:appcontainerexe Kompiluj plik wykonywalny kontenera aplikacji (krótka wersja: +-target:appcontainerexe Kompiluj plik wykonywalny kontenera aplikacji (krótka wersja: -t:appcontainerexe) --target:winmdobj Kompiluj plik pośredni środowiska uruchomieniowego systemu Windows +-target:winmdobj Kompiluj plik pośredni środowiska uruchomieniowego systemu Windows przeznaczony dla narzędzia WinMDExp (krótka wersja: -t:winmdobj) -doc:<plik> Plik dokumentacji XML do wygenerowania -refout:<plik> Dane wyjściowe zestawu odwołania do wygenerowania -platform:<ciąg> Ogranicz platformy, na których można uruchamiać ten kod: x86, - Itanium, x64, arm, arm64, anycpu32bitpreferred lub + Itanium, x64, arm, arm64, anycpu32bitpreferred lub anycpu. Wartość domyślna to anycpu. - PLIKI WEJŚCIOWE - --recurse:<symbol wieloznaczny> Uwzględnij wszystkie pliki zawarte w bieżącym katalogu i - podkatalogach zgodnie ze specyfikacją określoną przy użyciu +-recurse:<symbol wieloznaczny> Uwzględnij wszystkie pliki zawarte w bieżącym katalogu i + podkatalogach zgodnie ze specyfikacją określoną przy użyciu symboli wieloznacznych --reference:<alias>=<plik> Odwołuj się do metadanych z określonego pliku +-reference:<alias>=<plik> Odwołuj się do metadanych z określonego pliku zestawu przy użyciu podanego aliasu (krótka wersja: -r) --reference:<lista_plików> Odwołuj się do metadanych z określonych +-reference:<lista_plików> Odwołuj się do metadanych z określonych plików zestawów (krótka wersja: -r) -addmodule:<lista plików> Połącz określone moduły z tym zestawem --link:<lista_plików> Osadź metadane z określonych plików +-link:<lista_plików> Osadź metadane z określonych plików zestawów międzyoperacyjnych (krótka wersja: -l) -analyzer:<lista_plików> Uruchom analizatory z tego zestawu (krótka wersja: -a) @@ -2177,16 +2177,16 @@ -win32manifest:<plik> Określ plik manifestu środowiska Win32 (xml) -nowin32manifest Nie dołączaj domyślnego manifestu środowiska Win32 -resource:<informacje_o_zasobie> Osadź określony zasób (krótka wersja: -res) --linkresource:<informacje_o_zasobie> Połącz określony zasób z tym zestawem - (krótka wersja: -linkres), gdzie format informacji o zasobie +-linkresource:<informacje_o_zasobie> Połącz określony zasób z tym zestawem + (krótka wersja: -linkres), gdzie format informacji o zasobie to <plik>[,<nazwa ciągu>[,public|private]] - GENEROWANIE KODU - -debug[+|-] Emituj informacje o debugowaniu -debug:{full|pdbonly|portable|embedded} - Określ typ debugowania (wartość domyślna to „full”, + Określ typ debugowania (wartość domyślna to „full”, wartość „portable” to format międzyplatformowy, - a wartość „embedded” to format międzyplatformowy wbudowany w + a wartość „embedded” to format międzyplatformowy wbudowany w docelowym pliku dll lub exe) -optimize[+|-] Włącz optymalizacje (krótka wersja: -o) -deterministic Utwórz zestaw deterministyczny @@ -2213,11 +2213,11 @@ -reportanalyzer Zgłaszaj dodatkowe informacje analizatora, takie jak czas wykonywania. -skipanalyzers[+|-] Pomiń wykonywanie analizatorów diagnostycznych. - + -JĘZYK - -checked[+|-] Generuj operacje sprawdzenia przepełnienia -unsafe[+|-] Zezwalaj na niebezpieczny kod --define:<lista symboli> Zdefiniuj symbole kompilacji warunkowej (krótka +-define:<lista symboli> Zdefiniuj symbole kompilacji warunkowej (krótka wersja: -d) -langversion:? Wyświetl dozwolone wartości dla wersji języka -langversion:<ciąg> Określ wersję języka, na przykład @@ -2231,7 +2231,7 @@ Określ opcję kontekstu dopuszczającego wartość null: enable|disable|warnings|annotations. - ZABEZPIECZENIA - --delaysign[+|-] Podpisz z opóźnieniem zestaw, używając tylko +-delaysign[+|-] Podpisz z opóźnieniem zestaw, używając tylko części publicznej klucza o silnej nazwie -publicsign[+|-] Podpisz publicznie zestaw, używając tylko części publicznej klucza o silnej nazwie @@ -2252,34 +2252,34 @@ -checksumalgorithm:<algorytm> Określ algorytm do obliczania sumy kontrolnej pliku źródłowego przechowywanej w pliku PDB. Obsługiwane wartości: SHA1 lub SHA256 (domyślnie). --codepage:<n> Określ stronę kodową do użycia podczas otwierania +-codepage:<n> Określ stronę kodową do użycia podczas otwierania plików źródłowych -utf8output Wyprowadź komunikaty kompilatora przy użyciu kodowania UTF-8 --main:<typ> Określ typ zawierający punkt wejścia - (zignoruj wszystkie pozostałe możliwe punkty wejścia) (krótka +-main:<typ> Określ typ zawierający punkt wejścia + (zignoruj wszystkie pozostałe możliwe punkty wejścia) (krótka wersja: -m) -fullpaths Kompilator generuje w pełni kwalifikowane ścieżki --filealign:<n> Określ wyrównanie stosowane dla sekcji +-filealign:<n> Określ wyrównanie stosowane dla sekcji plików wyjściowych --pathmap:<K1>=<W1>,<K2>=<W2>,... - Określ mapowanie dla nazw ścieżek źródłowych wyprowadzanych przez +-pathmap:<K1>=<W1>,<K2>=<W2>,... + Określ mapowanie dla nazw ścieżek źródłowych wyprowadzanych przez kompilator. --pdb:<plik> Określ nazwę pliku z informacjami o debugowaniu (domyślnie: +-pdb:<plik> Określ nazwę pliku z informacjami o debugowaniu (domyślnie: nazwa pliku wyjściowego z rozszerzeniem pdb) --errorendlocation Wyprowadź wiersz i kolumnę lokalizacji końcowej dla +-errorendlocation Wyprowadź wiersz i kolumnę lokalizacji końcowej dla każdego błędu -preferreduilang Określ nazwę preferowanego języka wyjściowego. -nosdkpath Wyłącz przeszukiwanie domyślnej ścieżki zestawu SDK dla zestawów biblioteki standardowej. -nostdlib[+|-] Nie odwołuj się do biblioteki standardowej (mscorlib.dll) -subsystemversion:<ciąg> Określ wersję podsystemu tego zestawu --lib:<lista plików> Określ dodatkowe katalogi do przeszukania pod kątem +-lib:<lista plików> Określ dodatkowe katalogi do przeszukania pod kątem odwołań --errorreport:<ciąg> Określ, w jaki sposób obsługiwać wewnętrzne błędy kompilatora: - prompt, send, queue lub none. Wartość domyślna to +-errorreport:<ciąg> Określ, w jaki sposób obsługiwać wewnętrzne błędy kompilatora: + prompt, send, queue lub none. Wartość domyślna to queue. --appconfig:<plik> Określ plik konfiguracji aplikacji +-appconfig:<plik> Określ plik konfiguracji aplikacji zawierający ustawienia powiązania zestawu --moduleassemblyname:<ciąg> Nazwa zestawu, którego częścią +-moduleassemblyname:<ciąg> Nazwa zestawu, którego częścią ma być ten moduł -modulename:<ciąg> Określ nazwę modułu źródłowego -generatedfilesout:<katalog> Umieść pliki wygenerowane podczas kompilacji @@ -5922,7 +5922,7 @@ Jeśli taka klasa zostanie użyta jako klasa bazowa i klasa pochodna definiuje d The first operand of an overloaded shift operator must have the same type as the containing type - Pierwszy argument operacji przeciążonego operatora przesunięcia musi mieć taki sam typ co typ zawierający, a typ drugiego argumentu operacji musi być typem int + The first operand of an overloaded shift operator must have the same type as the containing type diff --git a/src/Compilers/CSharp/Portable/xlf/CSharpResources.pt-BR.xlf b/src/Compilers/CSharp/Portable/xlf/CSharpResources.pt-BR.xlf index 591357163e376..1b66fc3203cb1 100644 --- a/src/Compilers/CSharp/Portable/xlf/CSharpResources.pt-BR.xlf +++ b/src/Compilers/CSharp/Portable/xlf/CSharpResources.pt-BR.xlf @@ -134,12 +134,12 @@ The first operand of an overloaded shift operator must have the same type as the containing type or its type parameter constrained to it - O primeiro operando de um operador de deslocamento sobrecarregado deve ser do tipo recipiente ou o parâmetro de tipo restrito a ele, enquanto o do segundo deve ser int + The first operand of an overloaded shift operator must have the same type as the containing type or its type parameter constrained to it A static virtual or abstract interface member can be accessed only on a type parameter. - Um membro de interface abstrato estático só pode ser acessado em um parâmetro de tipo. + A static virtual or abstract interface member can be accessed only on a type parameter. @@ -474,7 +474,7 @@ An expression tree may not contain an access of static virtual or abstract interface member - Uma árvore de expressão pode não conter um acesso de membro de interface abstrato estático + An expression tree may not contain an access of static virtual or abstract interface member @@ -1919,7 +1919,7 @@ 'UnmanagedCallersOnly' can only be applied to ordinary static non-abstract, non-virtual methods or static local functions. - 'UnmanagedCallersOnly' só pode ser aplicado a métodos estáticos não abstratos comuns ou funções locais estáticas. + 'UnmanagedCallersOnly' can only be applied to ordinary static non-abstract, non-virtual methods or static local functions. UnmanagedCallersOnly is not localizable. @@ -2158,7 +2158,7 @@ curinga -reference:<alias>=<file> Metadados de referência do arquivo de assembly especificado usando o alias fornecido (Forma abreviada: -r) --reference:<file list> Metadados de referência dos arquivos de assembly +-reference:<file list> Metadados de referência dos arquivos de assembly especificados (Forma abreviada: -r) -addmodule:<file list> Vincular o módulo especificado a este assembly -link:<file list> Inserir os metadados dos arquivos de assembly de @@ -2186,7 +2186,7 @@ -debug:{full|pdbonly|portable|embedded} Especificar o tipo de depuração ('full' é o padrão, 'portable' é um formato multiplataforma, - 'embedded' é um formato multiplataforma inserido no + 'embedded' é um formato multiplataforma inserido no .dll ou no .exe de destino) -optimize[+|-] Habilitar as otimizações (Forma abreviada: -o) -deterministic Produzir um assembly determinístico @@ -2220,7 +2220,7 @@ -define:<symbol list> Definir os símbolos de compilação condicional (Forma abreviada: -d) -langversion:? Exibir os valores permitidos para a versão da linguagem --langversion:<string> Especificar a versão da linguagem, como +-langversion:<string> Especificar a versão da linguagem, como `latest` (última versão, incluindo as versões secundárias), `default` (igual a `latest`), `latestmajor` (última versão, excluindo as versões secundárias), @@ -2237,7 +2237,7 @@ da chave de nome forte -keyfile:<file> Especificar a arquivo de chave de nome forte -keycontainer:<string> Especificar o contêiner de chave de nome forte --highentropyva[+|-] Habilitar a ASLR de alta entropia +-highentropyva[+|-] Habilitar a ASLR de alta entropia – DIVERSOS – @<file> Ler o arquivo de resposta de mais opções @@ -5922,7 +5922,7 @@ Se tal classe for usada como uma classe base e se a classe derivada definir um d The first operand of an overloaded shift operator must have the same type as the containing type - O primeiro operando de um operador de deslocamento sobrecarregado deve ser do tipo recipiente, enquanto o do segundo deve ser int + The first operand of an overloaded shift operator must have the same type as the containing type diff --git a/src/Compilers/CSharp/Portable/xlf/CSharpResources.ru.xlf b/src/Compilers/CSharp/Portable/xlf/CSharpResources.ru.xlf index 85aa878b454bd..f95d3bb5018bc 100644 --- a/src/Compilers/CSharp/Portable/xlf/CSharpResources.ru.xlf +++ b/src/Compilers/CSharp/Portable/xlf/CSharpResources.ru.xlf @@ -134,12 +134,12 @@ The first operand of an overloaded shift operator must have the same type as the containing type or its type parameter constrained to it - Тип первого операнда перегруженного оператора сдвига должен совпадать с содержащим типом или параметр его типа должен быть им ограничен, а тип второго операнда должен быть int. + The first operand of an overloaded shift operator must have the same type as the containing type or its type parameter constrained to it A static virtual or abstract interface member can be accessed only on a type parameter. - Доступ к статическому абстрактному элементу интерфейса возможен только для параметра типа. + A static virtual or abstract interface member can be accessed only on a type parameter. @@ -474,7 +474,7 @@ An expression tree may not contain an access of static virtual or abstract interface member - Дерево выражения не может содержать доступ к статическому абстрактному элементу интерфейса. + An expression tree may not contain an access of static virtual or abstract interface member @@ -1919,7 +1919,7 @@ 'UnmanagedCallersOnly' can only be applied to ordinary static non-abstract, non-virtual methods or static local functions. - Атрибут UnmanagedCallersOnly может применяться только к обычным статическим неабстрактным методам или статическим локальным функциям. + 'UnmanagedCallersOnly' can only be applied to ordinary static non-abstract, non-virtual methods or static local functions. UnmanagedCallersOnly is not localizable. @@ -2195,7 +2195,7 @@ -instrument:TestCoverage Создать сборку, инструментированную для сбора сведений об объеме протестированного кода -sourcelink:<file> Данные о ссылке на исходные файлы для внедрения в PDB. - + — Ошибки и предупреждения - -warnaserror[+|-] Регистрировать все предупреждения как ошибки -warnaserror[+|-]:<warn list> Регистрировать указанные предупреждения как ошибки @@ -5922,7 +5922,7 @@ If such a class is used as a base class and if the deriving class defines a dest The first operand of an overloaded shift operator must have the same type as the containing type - Тип первого операнда переопределенного оператора сдвига должен совпадать с вмещающим типом, а тип второго операнда должен быть int. + The first operand of an overloaded shift operator must have the same type as the containing type diff --git a/src/Compilers/CSharp/Portable/xlf/CSharpResources.tr.xlf b/src/Compilers/CSharp/Portable/xlf/CSharpResources.tr.xlf index 9bfa411e7c8af..568f06a6c07cb 100644 --- a/src/Compilers/CSharp/Portable/xlf/CSharpResources.tr.xlf +++ b/src/Compilers/CSharp/Portable/xlf/CSharpResources.tr.xlf @@ -134,12 +134,12 @@ The first operand of an overloaded shift operator must have the same type as the containing type or its type parameter constrained to it - Aşırı yüklenmiş kaydırma işlecinin ilk işleneni, içeren türle aynı türe veya buna kısıtlanmış tür parametresine sahip olmalıdır ve ikinci işlenenin türü int olmalıdır + The first operand of an overloaded shift operator must have the same type as the containing type or its type parameter constrained to it A static virtual or abstract interface member can be accessed only on a type parameter. - Statik soyut arabirim üyesine yalnızca tür parametresinde erişilebilir. + A static virtual or abstract interface member can be accessed only on a type parameter. @@ -474,7 +474,7 @@ An expression tree may not contain an access of static virtual or abstract interface member - İfade ağacı statik soyut arabirim üyesi erişimi içeremez + An expression tree may not contain an access of static virtual or abstract interface member @@ -1919,7 +1919,7 @@ 'UnmanagedCallersOnly' can only be applied to ordinary static non-abstract, non-virtual methods or static local functions. - 'UnmanagedCallersOnly', yalnızca normal statik soyut olmayan metotlara veya statik yerel işlevlere uygulanabilir. + 'UnmanagedCallersOnly' can only be applied to ordinary static non-abstract, non-virtual methods or static local functions. UnmanagedCallersOnly is not localizable. @@ -5922,7 +5922,7 @@ Bu sınıf temel sınıf olarak kullanılırsa ve türetilen sınıf bir yıkıc The first operand of an overloaded shift operator must have the same type as the containing type - Tekrar yüklenen kaydırma işlecinin ilk işleneninin türü kapsayan tür ile aynı, ikinci işlenenin türü de tamsayı olmalıdır + The first operand of an overloaded shift operator must have the same type as the containing type diff --git a/src/Compilers/CSharp/Portable/xlf/CSharpResources.zh-Hans.xlf b/src/Compilers/CSharp/Portable/xlf/CSharpResources.zh-Hans.xlf index efb086f71931a..a76c12f40011c 100644 --- a/src/Compilers/CSharp/Portable/xlf/CSharpResources.zh-Hans.xlf +++ b/src/Compilers/CSharp/Portable/xlf/CSharpResources.zh-Hans.xlf @@ -134,12 +134,12 @@ The first operand of an overloaded shift operator must have the same type as the containing type or its type parameter constrained to it - 重载移位运算符的第一个操作数的类型必须与包含类型或约束为该类型的类型参数相同,第二个操作数的类型必须是 int 类型 + The first operand of an overloaded shift operator must have the same type as the containing type or its type parameter constrained to it A static virtual or abstract interface member can be accessed only on a type parameter. - 只能在类型参数上访问静态的抽象接口成员。 + A static virtual or abstract interface member can be accessed only on a type parameter. @@ -474,7 +474,7 @@ An expression tree may not contain an access of static virtual or abstract interface member - 表达式树可能不包含静态抽象接口成员的访问权限 + An expression tree may not contain an access of static virtual or abstract interface member @@ -1919,7 +1919,7 @@ 'UnmanagedCallersOnly' can only be applied to ordinary static non-abstract, non-virtual methods or static local functions. - “UnmanagedCallersOnly”仅可应用于普通静态非抽象方法或静态本地函数。 + 'UnmanagedCallersOnly' can only be applied to ordinary static non-abstract, non-virtual methods or static local functions. UnmanagedCallersOnly is not localizable. @@ -2148,12 +2148,12 @@ (短格式: - t:winmdobj) -doc:<file> 要生成的 XML 文档文件 -refout:<file> 要生成的引用程序集输出 - + -platform:<string> 限制可以运行此代码的平台: x86、 Itanium、x64、arm、arm64、 anycpu32bitpreferred 或 anycpu。默认值是 anycpu。 - - 输入文件 - + - 输入文件 - -recurse:<wildcard> 根据通配符规范包括当前目录和 子目录中的 所有文件 @@ -2167,7 +2167,7 @@ -analyzer:<file list> 从此程序集运行分析器 (短格式: -a) -additionalfile:<file list> 不直接影响代码生成 - 但由分析器用于生成错误或警报 + 但由分析器用于生成错误或警报 的其他文件。 -embed 在 PDB 中嵌入所有源文件。 -embed:<file list> 在 PDB 中嵌入特定文件。 @@ -2180,7 +2180,7 @@ -resource:<resinfo> 嵌入指定的资源(短格式: -res) - linkresource:<resinfo> 将指定资源关联到此程序集 (短格式: -linkres),其中 resinfo 格式 - + 是 <file>[,<string name>[,public|private]] - 代码生成 - @@ -2197,16 +2197,16 @@ -instrument:TestCoverage 生成 已检测的程序集以收集 覆盖范围信息 -sourcelink:<file> 要嵌入 PDB 的源链接信息。 - + - 错误和警报 - -warnaserror[+|-] 将所有警报报告为错误 -warnaserror[+|-]:<warn list> 将特定警报报告为错误 (将 "nullable" 用于所有可为 null 的警报) -warn:<n> 设置警报级别(0 或更高) (短格式: -w) - + -nowarn:<warn list> 禁用特定警报消息 (将 "nullable" 用于所有可为 null 的警报) - + -ruleset:<file> 指定禁用特定诊断的规则集 文件。 -errorlog:<file> [,version=<sarif_version>] @@ -2215,7 +2215,7 @@ sarif_version:{1|2|2.1} 默认值是 1. 2 和 2.1 这两者 都是指 SARIF 版本 2.1.0。 -reportanalyzer 报告其他分析器信息,例如 - 执行时间。 + 执行时间。 -skipanalyzers[+|-] 跳过诊断分析器的执行。 - 语言 - @@ -2256,7 +2256,7 @@ -checksumalgorithm:<alg> 指定算法以计算存储在 PDB 中的源文件 校验和。支持的值是: SHA1 或 SHA256 (默认)。 - + -codepage:<n> 指定打开源文件时使用的 代码页 -utf8output 采用 UTF-8 编码的输出编译器消息 @@ -5927,7 +5927,7 @@ If such a class is used as a base class and if the deriving class defines a dest The first operand of an overloaded shift operator must have the same type as the containing type - 重载移位运算符的第一个操作数的类型必须与包含类型相同,第二个操作数的类型必须是 int 类型 + The first operand of an overloaded shift operator must have the same type as the containing type diff --git a/src/Compilers/CSharp/Portable/xlf/CSharpResources.zh-Hant.xlf b/src/Compilers/CSharp/Portable/xlf/CSharpResources.zh-Hant.xlf index 43ebf5ec70aab..cc7ae203714e6 100644 --- a/src/Compilers/CSharp/Portable/xlf/CSharpResources.zh-Hant.xlf +++ b/src/Compilers/CSharp/Portable/xlf/CSharpResources.zh-Hant.xlf @@ -134,12 +134,12 @@ The first operand of an overloaded shift operator must have the same type as the containing type or its type parameter constrained to it - 多載移位運算子的第一個運算元的類型必須和包含的類型相同,或是其型別參數受限於該運算子,而第二個運算元的類型必須是 INT + The first operand of an overloaded shift operator must have the same type as the containing type or its type parameter constrained to it A static virtual or abstract interface member can be accessed only on a type parameter. - 只能在型別參數上存取靜態抽象介面成員。 + A static virtual or abstract interface member can be accessed only on a type parameter. @@ -474,7 +474,7 @@ An expression tree may not contain an access of static virtual or abstract interface member - 運算式樹狀架構不可包含靜態抽象介面成員的存取權 + An expression tree may not contain an access of static virtual or abstract interface member @@ -1919,7 +1919,7 @@ 'UnmanagedCallersOnly' can only be applied to ordinary static non-abstract, non-virtual methods or static local functions. - 'UnmanagedCallersOnly' 僅適用於一般靜態非抽象方法或靜態區域函式。 + 'UnmanagedCallersOnly' can only be applied to ordinary static non-abstract, non-virtual methods or static local functions. UnmanagedCallersOnly is not localizable. @@ -2195,7 +2195,7 @@ -instrument:TestCoverage 產生經檢測的組件,以收集 涵蓋範圍資訊 -sourcelink:<file> 要內嵌至 PDB 的來源連結資訊。 - + - 錯誤與警告 - -warnaserror[+|-] 將所有警告回報為錯誤 -warnaserror[+|-]:<warn list> 將特定警告回報為錯誤 @@ -5922,7 +5922,7 @@ If such a class is used as a base class and if the deriving class defines a dest The first operand of an overloaded shift operator must have the same type as the containing type - 多載移位 (Shift) 運算子的第一個運算元的類型必須和包含類型相同,而第二個運算元的類型必須是 int + The first operand of an overloaded shift operator must have the same type as the containing type diff --git a/src/Compilers/VisualBasic/Portable/xlf/VBResources.cs.xlf b/src/Compilers/VisualBasic/Portable/xlf/VBResources.cs.xlf index d79bad69eb7db..09113d4d330ce 100644 --- a/src/Compilers/VisualBasic/Portable/xlf/VBResources.cs.xlf +++ b/src/Compilers/VisualBasic/Portable/xlf/VBResources.cs.xlf @@ -9,7 +9,7 @@ A shared abstract or virtual interface member cannot be accessed. - Nejde získat přístup ke členu sdíleného abstraktního rozhraní. + A shared abstract or virtual interface member cannot be accessed. @@ -69,7 +69,7 @@ {0} '{1}' cannot implement interface '{3}' because it contains shared abstract or virtual '{2}'. - {0} {1} nemůže implementovat rozhraní {3}, protože obsahuje sdílené abstraktní {2}. + {0} '{1}' cannot implement interface '{3}' because it contains shared abstract or virtual '{2}'. diff --git a/src/Compilers/VisualBasic/Portable/xlf/VBResources.de.xlf b/src/Compilers/VisualBasic/Portable/xlf/VBResources.de.xlf index c130472905343..73ebf501c72f2 100644 --- a/src/Compilers/VisualBasic/Portable/xlf/VBResources.de.xlf +++ b/src/Compilers/VisualBasic/Portable/xlf/VBResources.de.xlf @@ -9,7 +9,7 @@ A shared abstract or virtual interface member cannot be accessed. - Auf einen freigegebenen abstrakten Schnittstellenmember kann nicht zugegriffen werden. + A shared abstract or virtual interface member cannot be accessed. @@ -69,7 +69,7 @@ {0} '{1}' cannot implement interface '{3}' because it contains shared abstract or virtual '{2}'. - {0} „{1}“ kann die Schnittstelle „{3}“ nicht implementieren, da sie freigegebene abstrakte „{2}“ enthält. + {0} '{1}' cannot implement interface '{3}' because it contains shared abstract or virtual '{2}'. diff --git a/src/Compilers/VisualBasic/Portable/xlf/VBResources.es.xlf b/src/Compilers/VisualBasic/Portable/xlf/VBResources.es.xlf index 53d192e23a74c..7d6fae5a7291f 100644 --- a/src/Compilers/VisualBasic/Portable/xlf/VBResources.es.xlf +++ b/src/Compilers/VisualBasic/Portable/xlf/VBResources.es.xlf @@ -9,7 +9,7 @@ A shared abstract or virtual interface member cannot be accessed. - No se puede obtener acceso a un miembro de interfaz abstracta compartida. + A shared abstract or virtual interface member cannot be accessed. @@ -69,7 +69,7 @@ {0} '{1}' cannot implement interface '{3}' because it contains shared abstract or virtual '{2}'. - {0} '{1}' no puede implementar la interfaz '{3}' porque contiene abstracto compartido '{2}'. + {0} '{1}' cannot implement interface '{3}' because it contains shared abstract or virtual '{2}'. diff --git a/src/Compilers/VisualBasic/Portable/xlf/VBResources.fr.xlf b/src/Compilers/VisualBasic/Portable/xlf/VBResources.fr.xlf index d80659dcbe299..34c24bec5d4ce 100644 --- a/src/Compilers/VisualBasic/Portable/xlf/VBResources.fr.xlf +++ b/src/Compilers/VisualBasic/Portable/xlf/VBResources.fr.xlf @@ -9,7 +9,7 @@ A shared abstract or virtual interface member cannot be accessed. - Impossible d’accéder à un membre d’interface abstract partagé. + A shared abstract or virtual interface member cannot be accessed. @@ -69,7 +69,7 @@ {0} '{1}' cannot implement interface '{3}' because it contains shared abstract or virtual '{2}'. - {0} ' {1} 'ne peut pas implémenter l’interface' {3} ', car il contient un abstract partagé' {2} '. + {0} '{1}' cannot implement interface '{3}' because it contains shared abstract or virtual '{2}'. diff --git a/src/Compilers/VisualBasic/Portable/xlf/VBResources.it.xlf b/src/Compilers/VisualBasic/Portable/xlf/VBResources.it.xlf index b897a4801bf89..6b4e6d5330be7 100644 --- a/src/Compilers/VisualBasic/Portable/xlf/VBResources.it.xlf +++ b/src/Compilers/VisualBasic/Portable/xlf/VBResources.it.xlf @@ -9,7 +9,7 @@ A shared abstract or virtual interface member cannot be accessed. - Impossibile accedere a un membro di interfaccia abstract condiviso. + A shared abstract or virtual interface member cannot be accessed. @@ -69,7 +69,7 @@ {0} '{1}' cannot implement interface '{3}' because it contains shared abstract or virtual '{2}'. - {0} '{1}' non può implementare l'interfaccia '{3}' perché contiene l'abstract condiviso '{2}'. + {0} '{1}' cannot implement interface '{3}' because it contains shared abstract or virtual '{2}'. diff --git a/src/Compilers/VisualBasic/Portable/xlf/VBResources.ja.xlf b/src/Compilers/VisualBasic/Portable/xlf/VBResources.ja.xlf index 333a89fdb4add..bda5a64f13533 100644 --- a/src/Compilers/VisualBasic/Portable/xlf/VBResources.ja.xlf +++ b/src/Compilers/VisualBasic/Portable/xlf/VBResources.ja.xlf @@ -9,7 +9,7 @@ A shared abstract or virtual interface member cannot be accessed. - 共有された抽象インターフェイスメンバーにアクセスできません。 + A shared abstract or virtual interface member cannot be accessed. @@ -69,7 +69,7 @@ {0} '{1}' cannot implement interface '{3}' because it contains shared abstract or virtual '{2}'. - {0} '{1}' には、共有された抽象 '{2}' が含まれているため、インターフェイス '{3}' を実装できません。 + {0} '{1}' cannot implement interface '{3}' because it contains shared abstract or virtual '{2}'. diff --git a/src/Compilers/VisualBasic/Portable/xlf/VBResources.ko.xlf b/src/Compilers/VisualBasic/Portable/xlf/VBResources.ko.xlf index e9b9e3a1d4c40..b96c1a76e376d 100644 --- a/src/Compilers/VisualBasic/Portable/xlf/VBResources.ko.xlf +++ b/src/Compilers/VisualBasic/Portable/xlf/VBResources.ko.xlf @@ -9,7 +9,7 @@ A shared abstract or virtual interface member cannot be accessed. - 공유 추상 인터페이스 멤버에 액세스할 수 없습니다. + A shared abstract or virtual interface member cannot be accessed. @@ -69,7 +69,7 @@ {0} '{1}' cannot implement interface '{3}' because it contains shared abstract or virtual '{2}'. - {0} '{1}'은(는) 공유 추상 '{2}'이(가) 포함되어 있으므로 '{3}' 인터페이스를 구현할 수 없습니다. + {0} '{1}' cannot implement interface '{3}' because it contains shared abstract or virtual '{2}'. diff --git a/src/Compilers/VisualBasic/Portable/xlf/VBResources.pl.xlf b/src/Compilers/VisualBasic/Portable/xlf/VBResources.pl.xlf index 9183d572e299f..2988594a92278 100644 --- a/src/Compilers/VisualBasic/Portable/xlf/VBResources.pl.xlf +++ b/src/Compilers/VisualBasic/Portable/xlf/VBResources.pl.xlf @@ -9,7 +9,7 @@ A shared abstract or virtual interface member cannot be accessed. - Nie można uzyskać dostępu do współużytkowanego abstrakcyjnego elementu członkowskiego interfejsu. + A shared abstract or virtual interface member cannot be accessed. @@ -69,7 +69,7 @@ {0} '{1}' cannot implement interface '{3}' because it contains shared abstract or virtual '{2}'. - {0}„{1}” nie może zaimplementować interfejsu „{3}”, ponieważ zawiera udostępnioną abstrakcję „{2}”. + {0} '{1}' cannot implement interface '{3}' because it contains shared abstract or virtual '{2}'. diff --git a/src/Compilers/VisualBasic/Portable/xlf/VBResources.pt-BR.xlf b/src/Compilers/VisualBasic/Portable/xlf/VBResources.pt-BR.xlf index 8ec37b0530323..91e78efd15448 100644 --- a/src/Compilers/VisualBasic/Portable/xlf/VBResources.pt-BR.xlf +++ b/src/Compilers/VisualBasic/Portable/xlf/VBResources.pt-BR.xlf @@ -9,7 +9,7 @@ A shared abstract or virtual interface member cannot be accessed. - Não é possível acessar um membro da interface abstrata compartilhada. + A shared abstract or virtual interface member cannot be accessed. @@ -69,7 +69,7 @@ {0} '{1}' cannot implement interface '{3}' because it contains shared abstract or virtual '{2}'. - {0} '{1}' não é possível implementar a interface '{3}' porque contém um resumo compartilhado '{2}'. + {0} '{1}' cannot implement interface '{3}' because it contains shared abstract or virtual '{2}'. diff --git a/src/Compilers/VisualBasic/Portable/xlf/VBResources.ru.xlf b/src/Compilers/VisualBasic/Portable/xlf/VBResources.ru.xlf index b1030e6230aaa..999efd678a597 100644 --- a/src/Compilers/VisualBasic/Portable/xlf/VBResources.ru.xlf +++ b/src/Compilers/VisualBasic/Portable/xlf/VBResources.ru.xlf @@ -9,7 +9,7 @@ A shared abstract or virtual interface member cannot be accessed. - Не удается получить доступ к элементу интерфейса общей аннотации. + A shared abstract or virtual interface member cannot be accessed. @@ -69,7 +69,7 @@ {0} '{1}' cannot implement interface '{3}' because it contains shared abstract or virtual '{2}'. - {0} "{1}" не может реализовать интерфейс "{3}", потому что он содержит общую аннотацию "{2}". + {0} '{1}' cannot implement interface '{3}' because it contains shared abstract or virtual '{2}'. diff --git a/src/Compilers/VisualBasic/Portable/xlf/VBResources.tr.xlf b/src/Compilers/VisualBasic/Portable/xlf/VBResources.tr.xlf index 74617aa20bef5..29ef70ef9a0fd 100644 --- a/src/Compilers/VisualBasic/Portable/xlf/VBResources.tr.xlf +++ b/src/Compilers/VisualBasic/Portable/xlf/VBResources.tr.xlf @@ -9,7 +9,7 @@ A shared abstract or virtual interface member cannot be accessed. - Paylaşılan bir soyut arabirim üyesine erişilemiyor. + A shared abstract or virtual interface member cannot be accessed. @@ -69,7 +69,7 @@ {0} '{1}' cannot implement interface '{3}' because it contains shared abstract or virtual '{2}'. - {0} “{1}”,”{3}'” arabirimini uygulayamıyor, çünkü paylaşılan özet “{2}” içeriyor. + {0} '{1}' cannot implement interface '{3}' because it contains shared abstract or virtual '{2}'. diff --git a/src/Compilers/VisualBasic/Portable/xlf/VBResources.zh-Hans.xlf b/src/Compilers/VisualBasic/Portable/xlf/VBResources.zh-Hans.xlf index f68447a699f22..1606dad35e73e 100644 --- a/src/Compilers/VisualBasic/Portable/xlf/VBResources.zh-Hans.xlf +++ b/src/Compilers/VisualBasic/Portable/xlf/VBResources.zh-Hans.xlf @@ -9,7 +9,7 @@ A shared abstract or virtual interface member cannot be accessed. - 无法访问共享摘要接口成员。 + A shared abstract or virtual interface member cannot be accessed. @@ -69,7 +69,7 @@ {0} '{1}' cannot implement interface '{3}' because it contains shared abstract or virtual '{2}'. - {0}“{1}”无法实现接口“{3}”因为其包含共享摘要“{2}”。 + {0} '{1}' cannot implement interface '{3}' because it contains shared abstract or virtual '{2}'. diff --git a/src/Compilers/VisualBasic/Portable/xlf/VBResources.zh-Hant.xlf b/src/Compilers/VisualBasic/Portable/xlf/VBResources.zh-Hant.xlf index f05fb08ec4276..3fab663fc3fc4 100644 --- a/src/Compilers/VisualBasic/Portable/xlf/VBResources.zh-Hant.xlf +++ b/src/Compilers/VisualBasic/Portable/xlf/VBResources.zh-Hant.xlf @@ -9,7 +9,7 @@ A shared abstract or virtual interface member cannot be accessed. - 無法存取共用摘要介面成員。 + A shared abstract or virtual interface member cannot be accessed. @@ -69,7 +69,7 @@ {0} '{1}' cannot implement interface '{3}' because it contains shared abstract or virtual '{2}'. - {0} '{1}' 無法實作介面 '{3}' 因為其包含共用摘要 '{2}'。 + {0} '{1}' cannot implement interface '{3}' because it contains shared abstract or virtual '{2}'. diff --git a/src/EditorFeatures/Core/IntelliSense/AsyncCompletion/AsyncCompletionLogger.cs b/src/EditorFeatures/Core/IntelliSense/AsyncCompletion/AsyncCompletionLogger.cs index bcd12a505f7cc..8bc051446a7d6 100644 --- a/src/EditorFeatures/Core/IntelliSense/AsyncCompletion/AsyncCompletionLogger.cs +++ b/src/EditorFeatures/Core/IntelliSense/AsyncCompletion/AsyncCompletionLogger.cs @@ -2,15 +2,16 @@ // The .NET Foundation licenses this file to you under the MIT license. // See the LICENSE file in the project root for more information. +using System; using Microsoft.CodeAnalysis.Internal.Log; namespace Microsoft.CodeAnalysis.Editor.Implementation.IntelliSense.AsyncCompletion { internal static class AsyncCompletionLogger { - private static readonly LogAggregator s_logAggregator = new(); - private static readonly StatisticLogAggregator s_statisticLogAggregator = new(); - private static readonly HistogramLogAggregator s_histogramLogAggregator = new(25, 500); + private static readonly CountLogAggregator s_countLogAggregator = new(); + private static readonly StatisticLogAggregator s_statisticLogAggregator = new(); + private static readonly HistogramLogAggregator s_histogramLogAggregator = new(25, 500); private enum ActionInfo { @@ -44,60 +45,60 @@ private enum ActionInfo internal static void LogImportCompletionGetContext(bool isBlocking, bool delayed) { - s_logAggregator.IncreaseCount((int)ActionInfo.SessionWithTypeImportCompletionEnabled); + s_countLogAggregator.IncreaseCount(ActionInfo.SessionWithTypeImportCompletionEnabled); if (isBlocking) - s_logAggregator.IncreaseCount((int)ActionInfo.SessionWithImportCompletionBlocking); + s_countLogAggregator.IncreaseCount(ActionInfo.SessionWithImportCompletionBlocking); if (delayed) - s_logAggregator.IncreaseCount((int)ActionInfo.SessionWithImportCompletionDelayed); + s_countLogAggregator.IncreaseCount(ActionInfo.SessionWithImportCompletionDelayed); } internal static void LogSessionWithDelayedImportCompletionIncludedInUpdate() => - s_logAggregator.IncreaseCount((int)ActionInfo.SessionWithDelayedImportCompletionIncludedInUpdate); + s_countLogAggregator.IncreaseCount(ActionInfo.SessionWithDelayedImportCompletionIncludedInUpdate); - internal static void LogAdditionalTicksToCompleteDelayedImportCompletionDataPoint(int count) => - s_histogramLogAggregator.IncreaseCount((int)ActionInfo.AdditionalTicksToCompleteDelayedImportCompletion, count); + internal static void LogAdditionalTicksToCompleteDelayedImportCompletionDataPoint(TimeSpan timeSpan) => + s_histogramLogAggregator.LogTime(ActionInfo.AdditionalTicksToCompleteDelayedImportCompletion, timeSpan); internal static void LogDelayedImportCompletionIncluded() => - s_logAggregator.IncreaseCount((int)ActionInfo.SessionWithTypeImportCompletionEnabled); + s_countLogAggregator.IncreaseCount(ActionInfo.SessionWithTypeImportCompletionEnabled); internal static void LogExpanderUsage() => - s_logAggregator.IncreaseCount((int)ActionInfo.ExpanderUsageCount); + s_countLogAggregator.IncreaseCount(ActionInfo.ExpanderUsageCount); internal static void LogGetDefaultsMatchTicksDataPoint(int count) => - s_statisticLogAggregator.AddDataPoint((int)ActionInfo.GetDefaultsMatchTicks, count); + s_statisticLogAggregator.AddDataPoint(ActionInfo.GetDefaultsMatchTicks, count); - internal static void LogSourceInitializationTicksDataPoint(int count) + internal static void LogSourceInitializationTicksDataPoint(TimeSpan elapsed) { - s_statisticLogAggregator.AddDataPoint((int)ActionInfo.SourceInitializationTicks, count); - s_histogramLogAggregator.IncreaseCount((int)ActionInfo.SourceInitializationTicks, count); + s_statisticLogAggregator.AddDataPoint(ActionInfo.SourceInitializationTicks, elapsed); + s_histogramLogAggregator.LogTime(ActionInfo.SourceInitializationTicks, elapsed); } - internal static void LogSourceGetContextTicksDataPoint(int count, bool isCanceled) + internal static void LogSourceGetContextTicksDataPoint(TimeSpan elapsed, bool isCanceled) { var key = isCanceled ? ActionInfo.SourceGetContextCanceledTicks : ActionInfo.SourceGetContextCompletedTicks; - s_statisticLogAggregator.AddDataPoint((int)key, count); - s_histogramLogAggregator.IncreaseCount((int)key, count); + s_statisticLogAggregator.AddDataPoint(key, elapsed); + s_histogramLogAggregator.LogTime(key, elapsed); } - internal static void LogItemManagerSortTicksDataPoint(int count) + internal static void LogItemManagerSortTicksDataPoint(TimeSpan elapsed) { - s_statisticLogAggregator.AddDataPoint((int)ActionInfo.ItemManagerSortTicks, count); - s_histogramLogAggregator.IncreaseCount((int)ActionInfo.ItemManagerSortTicks, count); + s_statisticLogAggregator.AddDataPoint(ActionInfo.ItemManagerSortTicks, elapsed); + s_histogramLogAggregator.LogTime(ActionInfo.ItemManagerSortTicks, elapsed); } - internal static void LogItemManagerUpdateDataPoint(int count, bool isCanceled) + internal static void LogItemManagerUpdateDataPoint(TimeSpan elapsed, bool isCanceled) { var key = isCanceled ? ActionInfo.ItemManagerUpdateCanceledTicks : ActionInfo.ItemManagerUpdateCompletedTicks; - s_statisticLogAggregator.AddDataPoint((int)key, count); - s_histogramLogAggregator.IncreaseCount((int)key, count); + s_statisticLogAggregator.AddDataPoint(key, elapsed); + s_histogramLogAggregator.LogTime(key, elapsed); } internal static void ReportTelemetry() @@ -106,7 +107,7 @@ internal static void ReportTelemetry() { foreach (var kv in s_statisticLogAggregator) { - var info = ((ActionInfo)kv.Key).ToString("f"); + var info = kv.Key.ToString("f"); var statistics = kv.Value.GetStatisticResult(); m[CreateProperty(info, nameof(StatisticResult.Maximum))] = statistics.Maximum; @@ -116,15 +117,15 @@ internal static void ReportTelemetry() m[CreateProperty(info, nameof(StatisticResult.Count))] = statistics.Count; } - foreach (var kv in s_logAggregator) + foreach (var kv in s_countLogAggregator) { - var mergeInfo = ((ActionInfo)kv.Key).ToString("f"); + var mergeInfo = kv.Key.ToString("f"); m[mergeInfo] = kv.Value.GetCount(); } foreach (var kv in s_histogramLogAggregator) { - var info = ((ActionInfo)kv.Key).ToString("f"); + var info = kv.Key.ToString("f"); m[$"{info}.BucketSize"] = kv.Value.BucketSize; m[$"{info}.MaxBucketValue"] = kv.Value.MaxBucketValue; m[$"{info}.Buckets"] = kv.Value.GetBucketsAsString(); diff --git a/src/EditorFeatures/Core/IntelliSense/AsyncCompletion/CompletionSource.cs b/src/EditorFeatures/Core/IntelliSense/AsyncCompletion/CompletionSource.cs index 3788dc3b738d4..127ae8440b406 100644 --- a/src/EditorFeatures/Core/IntelliSense/AsyncCompletion/CompletionSource.cs +++ b/src/EditorFeatures/Core/IntelliSense/AsyncCompletion/CompletionSource.cs @@ -143,7 +143,7 @@ public AsyncCompletionData.CompletionStartData InitializeCompletion( } finally { - AsyncCompletionLogger.LogSourceInitializationTicksDataPoint((int)stopwatch.Elapsed.TotalMilliseconds); + AsyncCompletionLogger.LogSourceInitializationTicksDataPoint(stopwatch.Elapsed); } } @@ -311,7 +311,7 @@ public async Task GetCompletionContextAsync( // There could be a race around the usage of this stopwatch, I ignored it since we just need a rough idea: // we always log the time even if the stopwatch's not started regardless of whether expand items are included intially // (that number can be obtained via another property.) - AsyncCompletionLogger.LogAdditionalTicksToCompleteDelayedImportCompletionDataPoint((int)stopwatch.ElapsedMilliseconds); + AsyncCompletionLogger.LogAdditionalTicksToCompleteDelayedImportCompletionDataPoint(stopwatch.Elapsed); return result; }, cancellationToken); @@ -346,7 +346,7 @@ public async Task GetCompletionContextAsync( } finally { - AsyncCompletionLogger.LogSourceGetContextTicksDataPoint((int)totalStopWatch.Elapsed.TotalMilliseconds, isCanceled: cancellationToken.IsCancellationRequested); + AsyncCompletionLogger.LogSourceGetContextTicksDataPoint(totalStopWatch.Elapsed, isCanceled: cancellationToken.IsCancellationRequested); } static VSCompletionContext CombineCompletionContext(IAsyncCompletionSession session, VSCompletionContext context1, VSCompletionContext context2) diff --git a/src/EditorFeatures/Core/IntelliSense/AsyncCompletion/ItemManager.cs b/src/EditorFeatures/Core/IntelliSense/AsyncCompletion/ItemManager.cs index 923ccaf47ce15..c0f9325d8622f 100644 --- a/src/EditorFeatures/Core/IntelliSense/AsyncCompletion/ItemManager.cs +++ b/src/EditorFeatures/Core/IntelliSense/AsyncCompletion/ItemManager.cs @@ -39,7 +39,7 @@ public Task> SortCompletionListAsync( var stopwatch = SharedStopwatch.StartNew(); var items = SortCompletionitems(data, cancellationToken).ToImmutableArray(); - AsyncCompletionLogger.LogItemManagerSortTicksDataPoint((int)stopwatch.Elapsed.TotalMilliseconds); + AsyncCompletionLogger.LogItemManagerSortTicksDataPoint(stopwatch.Elapsed); return Task.FromResult(items); } @@ -51,7 +51,7 @@ public Task> SortCompletionItemListAsync( var stopwatch = SharedStopwatch.StartNew(); var itemList = session.CreateCompletionList(SortCompletionitems(data, cancellationToken)); - AsyncCompletionLogger.LogItemManagerSortTicksDataPoint((int)stopwatch.Elapsed.TotalMilliseconds); + AsyncCompletionLogger.LogItemManagerSortTicksDataPoint(stopwatch.Elapsed); return Task.FromResult(itemList); } @@ -122,7 +122,7 @@ private static SegmentedList SortCompletionitems(AsyncCompleti } finally { - AsyncCompletionLogger.LogItemManagerUpdateDataPoint((int)stopwatch.Elapsed.TotalMilliseconds, isCanceled: cancellationToken.IsCancellationRequested); + AsyncCompletionLogger.LogItemManagerUpdateDataPoint(stopwatch.Elapsed, isCanceled: cancellationToken.IsCancellationRequested); } } diff --git a/src/Features/CSharp/Portable/Completion/CompletionProviders/EnumAndCompletionListTagCompletionProvider.cs b/src/Features/CSharp/Portable/Completion/CompletionProviders/EnumAndCompletionListTagCompletionProvider.cs index e40458a90feeb..521e7e94149fc 100644 --- a/src/Features/CSharp/Portable/Completion/CompletionProviders/EnumAndCompletionListTagCompletionProvider.cs +++ b/src/Features/CSharp/Portable/Completion/CompletionProviders/EnumAndCompletionListTagCompletionProvider.cs @@ -72,7 +72,7 @@ public override async Task ProvideCompletionsAsync(CompletionContext context) var syntaxContext = await context.GetSyntaxContextWithExistingSpeculativeModelAsync(document, cancellationToken).ConfigureAwait(false); var semanticModel = syntaxContext.SemanticModel; - if (syntaxContext.IsInTaskLikeTypeContext) + if (syntaxContext.IsTaskLikeTypeContext) return; var token = syntaxContext.TargetToken; diff --git a/src/Features/CSharp/Portable/Completion/CompletionProviders/SnippetCompletionProvider.cs b/src/Features/CSharp/Portable/Completion/CompletionProviders/SnippetCompletionProvider.cs index 079196bfe4ba4..771250f152f69 100644 --- a/src/Features/CSharp/Portable/Completion/CompletionProviders/SnippetCompletionProvider.cs +++ b/src/Features/CSharp/Portable/Completion/CompletionProviders/SnippetCompletionProvider.cs @@ -97,11 +97,6 @@ private static async Task> GetSnippetsForDocument var context = await completionContext.GetSyntaxContextWithExistingSpeculativeModelAsync(document, cancellationToken).ConfigureAwait(false); var semanticModel = context.SemanticModel; - if (context.IsInTaskLikeTypeContext) - { - return ImmutableArray.Empty; - } - if (syntaxFacts.IsPreProcessorDirectiveContext(syntaxTree, position, cancellationToken)) { var directive = leftToken.GetAncestor(); diff --git a/src/Features/CSharp/Portable/Completion/CompletionProviders/SpeculativeTCompletionProvider.cs b/src/Features/CSharp/Portable/Completion/CompletionProviders/SpeculativeTCompletionProvider.cs index 3a4c0bccc7421..ba3ab404158a1 100644 --- a/src/Features/CSharp/Portable/Completion/CompletionProviders/SpeculativeTCompletionProvider.cs +++ b/src/Features/CSharp/Portable/Completion/CompletionProviders/SpeculativeTCompletionProvider.cs @@ -78,7 +78,7 @@ private static async Task ShouldShowSpeculativeTCompletionItemAsync(Docume var context = await completionContext.GetSyntaxContextWithExistingSpeculativeModelAsync(document, cancellationToken).ConfigureAwait(false); - if (context.IsInTaskLikeTypeContext) + if (context.IsTaskLikeTypeContext) return false; var spanStart = position; diff --git a/src/Features/CSharp/Portable/Completion/KeywordRecommenders/AbstractNativeIntegerKeywordRecommender.cs b/src/Features/CSharp/Portable/Completion/KeywordRecommenders/AbstractNativeIntegerKeywordRecommender.cs index 5836238b504a0..711ab8e938644 100644 --- a/src/Features/CSharp/Portable/Completion/KeywordRecommenders/AbstractNativeIntegerKeywordRecommender.cs +++ b/src/Features/CSharp/Portable/Completion/KeywordRecommenders/AbstractNativeIntegerKeywordRecommender.cs @@ -15,7 +15,7 @@ internal abstract class AbstractNativeIntegerKeywordRecommender : IKeywordRecomm private static bool IsValidContext(CSharpSyntaxContext context) { - if (context.IsInTaskLikeTypeContext || + if (context.IsTaskLikeTypeContext || context.IsGenericConstraintContext) { return false; diff --git a/src/Features/CSharp/Portable/Completion/KeywordRecommenders/AbstractSpecialTypePreselectingKeywordRecommender.cs b/src/Features/CSharp/Portable/Completion/KeywordRecommenders/AbstractSpecialTypePreselectingKeywordRecommender.cs index 5318188573326..126e2ba18f56a 100644 --- a/src/Features/CSharp/Portable/Completion/KeywordRecommenders/AbstractSpecialTypePreselectingKeywordRecommender.cs +++ b/src/Features/CSharp/Portable/Completion/KeywordRecommenders/AbstractSpecialTypePreselectingKeywordRecommender.cs @@ -27,7 +27,7 @@ protected override bool ShouldPreselect(CSharpSyntaxContext context, Cancellatio protected sealed override bool IsValidContext(int position, CSharpSyntaxContext context, CancellationToken cancellationToken) { // Filter out all special-types from locations where we think we only want something task-like. - if (context.IsInTaskLikeTypeContext) + if (context.IsTaskLikeTypeContext) return false; return IsValidContextWorker(position, context, cancellationToken); diff --git a/src/Features/CSharp/Portable/Completion/KeywordRecommenders/DynamicKeywordRecommender.cs b/src/Features/CSharp/Portable/Completion/KeywordRecommenders/DynamicKeywordRecommender.cs index 8094431002ca7..922c50cf349ec 100644 --- a/src/Features/CSharp/Portable/Completion/KeywordRecommenders/DynamicKeywordRecommender.cs +++ b/src/Features/CSharp/Portable/Completion/KeywordRecommenders/DynamicKeywordRecommender.cs @@ -19,7 +19,7 @@ internal class DynamicKeywordRecommender : IKeywordRecommender Add 'await' - Add 'await' + Přidat await {Locked="await"} "await" is a C# keyword and should not be localized. diff --git a/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.de.xlf b/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.de.xlf index 2adc01512c8e5..15a00a75d65d5 100644 --- a/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.de.xlf +++ b/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.de.xlf @@ -4,7 +4,7 @@ Add 'await' - Add 'await' + "await" hinzufügen {Locked="await"} "await" is a C# keyword and should not be localized. diff --git a/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.es.xlf b/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.es.xlf index 94796d4cfb3c5..2ac65d58d82c1 100644 --- a/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.es.xlf +++ b/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.es.xlf @@ -4,7 +4,7 @@ Add 'await' - Add 'await' + Agregar "await" {Locked="await"} "await" is a C# keyword and should not be localized. diff --git a/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.fr.xlf b/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.fr.xlf index 0bbca808db5e8..f84eb6c90f839 100644 --- a/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.fr.xlf +++ b/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.fr.xlf @@ -4,7 +4,7 @@ Add 'await' - Add 'await' + Ajouter 'await' {Locked="await"} "await" is a C# keyword and should not be localized. diff --git a/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.it.xlf b/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.it.xlf index 2a00ed9d3f68a..fba8a217ad2c7 100644 --- a/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.it.xlf +++ b/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.it.xlf @@ -4,7 +4,7 @@ Add 'await' - Add 'await' + Aggiungi 'await' {Locked="await"} "await" is a C# keyword and should not be localized. diff --git a/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.ja.xlf b/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.ja.xlf index ea233e502b782..ba4b06731c1ad 100644 --- a/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.ja.xlf +++ b/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.ja.xlf @@ -4,7 +4,7 @@ Add 'await' - Add 'await' + 'await' の追加 {Locked="await"} "await" is a C# keyword and should not be localized. diff --git a/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.ko.xlf b/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.ko.xlf index 943be3487fb8f..20a5b22671bc6 100644 --- a/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.ko.xlf +++ b/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.ko.xlf @@ -4,7 +4,7 @@ Add 'await' - Add 'await' + 'await' 추가 {Locked="await"} "await" is a C# keyword and should not be localized. diff --git a/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.pl.xlf b/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.pl.xlf index a9e710994802c..387c86e89d987 100644 --- a/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.pl.xlf +++ b/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.pl.xlf @@ -4,7 +4,7 @@ Add 'await' - Add 'await' + Dodaj operator „await” {Locked="await"} "await" is a C# keyword and should not be localized. diff --git a/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.pt-BR.xlf b/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.pt-BR.xlf index 2a12ca888048f..88e99fdafe2ac 100644 --- a/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.pt-BR.xlf +++ b/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.pt-BR.xlf @@ -4,7 +4,7 @@ Add 'await' - Add 'await' + Adicionar 'await' {Locked="await"} "await" is a C# keyword and should not be localized. diff --git a/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.ru.xlf b/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.ru.xlf index 339102c114ab0..9c2883af12600 100644 --- a/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.ru.xlf +++ b/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.ru.xlf @@ -4,7 +4,7 @@ Add 'await' - Add 'await' + Добавить "await" {Locked="await"} "await" is a C# keyword and should not be localized. diff --git a/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.tr.xlf b/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.tr.xlf index 6c2859c3e3f4f..381f8aa8eacb9 100644 --- a/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.tr.xlf +++ b/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.tr.xlf @@ -4,7 +4,7 @@ Add 'await' - Add 'await' + 'await' ekleyin {Locked="await"} "await" is a C# keyword and should not be localized. diff --git a/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.zh-Hans.xlf b/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.zh-Hans.xlf index 3898475613e83..ecf6327e305f2 100644 --- a/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.zh-Hans.xlf +++ b/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.zh-Hans.xlf @@ -4,7 +4,7 @@ Add 'await' - Add 'await' + 添加 "await" {Locked="await"} "await" is a C# keyword and should not be localized. diff --git a/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.zh-Hant.xlf b/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.zh-Hant.xlf index c93a20760e9a0..21d76e75831f2 100644 --- a/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.zh-Hant.xlf +++ b/src/Features/CSharp/Portable/xlf/CSharpFeaturesResources.zh-Hant.xlf @@ -4,7 +4,7 @@ Add 'await' - Add 'await' + 新增 'await' {Locked="await"} "await" is a C# keyword and should not be localized. diff --git a/src/Features/Core/Portable/ChangeSignature/AbstractChangeSignatureService.cs b/src/Features/Core/Portable/ChangeSignature/AbstractChangeSignatureService.cs index 9f23f66e57ba0..a3b9b8668f7ce 100644 --- a/src/Features/Core/Portable/ChangeSignature/AbstractChangeSignatureService.cs +++ b/src/Features/Core/Portable/ChangeSignature/AbstractChangeSignatureService.cs @@ -427,7 +427,7 @@ private static async Task> FindChangeSignatureR } telemetryTimer.Stop(); - ChangeSignatureLogger.LogCommitInformation(telemetryNumberOfDeclarationsToUpdate, telemetryNumberOfReferencesToUpdate, (int)telemetryTimer.ElapsedMilliseconds); + ChangeSignatureLogger.LogCommitInformation(telemetryNumberOfDeclarationsToUpdate, telemetryNumberOfReferencesToUpdate, telemetryTimer.Elapsed); return (currentSolution, confirmationMessage); } diff --git a/src/Features/Core/Portable/ChangeSignature/ChangeSignatureTelemetryLogger.cs b/src/Features/Core/Portable/ChangeSignature/ChangeSignatureTelemetryLogger.cs index 58c09b0537c93..634980d055b5b 100644 --- a/src/Features/Core/Portable/ChangeSignature/ChangeSignatureTelemetryLogger.cs +++ b/src/Features/Core/Portable/ChangeSignature/ChangeSignatureTelemetryLogger.cs @@ -4,6 +4,7 @@ #nullable disable +using System; using Microsoft.CodeAnalysis.Internal.Log; namespace Microsoft.CodeAnalysis.ChangeSignature @@ -14,9 +15,9 @@ internal class ChangeSignatureLogger private const string Minimum = nameof(Minimum); private const string Mean = nameof(Mean); - private static readonly LogAggregator s_logAggregator = new(); - private static readonly StatisticLogAggregator s_statisticLogAggregator = new(); - private static readonly HistogramLogAggregator s_histogramLogAggregator = new(bucketSize: 1000, maxBucketValue: 30000); + private static readonly CountLogAggregator s_countLogAggregator = new(); + private static readonly StatisticLogAggregator s_statisticLogAggregator = new(); + private static readonly HistogramLogAggregator s_histogramLogAggregator = new(bucketSize: 1000, maxBucketValue: 30000); internal enum ActionInfo { @@ -62,31 +63,31 @@ internal enum ActionInfo } internal static void LogChangeSignatureDialogLaunched() => - s_logAggregator.IncreaseCount((int)ActionInfo.ChangeSignatureDialogLaunched); + s_countLogAggregator.IncreaseCount(ActionInfo.ChangeSignatureDialogLaunched); internal static void LogChangeSignatureDialogCommitted() => - s_logAggregator.IncreaseCount((int)ActionInfo.ChangeSignatureDialogCommitted); + s_countLogAggregator.IncreaseCount(ActionInfo.ChangeSignatureDialogCommitted); internal static void LogAddParameterDialogLaunched() => - s_logAggregator.IncreaseCount((int)ActionInfo.AddParameterDialogLaunched); + s_countLogAggregator.IncreaseCount(ActionInfo.AddParameterDialogLaunched); internal static void LogAddParameterDialogCommitted() => - s_logAggregator.IncreaseCount((int)ActionInfo.AddParameterDialogCommitted); + s_countLogAggregator.IncreaseCount(ActionInfo.AddParameterDialogCommitted); internal static void LogTransformationInformation(int numOriginalParameters, int numParametersAdded, int numParametersRemoved, bool anyParametersReordered) { LogTransformationCombination(numParametersAdded > 0, numParametersRemoved > 0, anyParametersReordered); - s_logAggregator.IncreaseCountBy((int)ActionInfo.CommittedSession_OriginalParameterCount, numOriginalParameters); + s_countLogAggregator.IncreaseCountBy(ActionInfo.CommittedSession_OriginalParameterCount, numOriginalParameters); if (numParametersAdded > 0) { - s_logAggregator.IncreaseCountBy((int)ActionInfo.CommittedSessionWithAdded_NumberAdded, numParametersAdded); + s_countLogAggregator.IncreaseCountBy(ActionInfo.CommittedSessionWithAdded_NumberAdded, numParametersAdded); } if (numParametersRemoved > 0) { - s_logAggregator.IncreaseCountBy((int)ActionInfo.CommittedSessionWithRemoved_NumberRemoved, numParametersRemoved); + s_countLogAggregator.IncreaseCountBy(ActionInfo.CommittedSessionWithRemoved_NumberRemoved, numParametersRemoved); } } @@ -95,103 +96,103 @@ private static void LogTransformationCombination(bool parametersAdded, bool para // All three transformations if (parametersAdded && parametersRemoved && parametersReordered) { - s_logAggregator.IncreaseCount((int)ActionInfo.CommittedSessionAddedRemovedReordered); + s_countLogAggregator.IncreaseCount(ActionInfo.CommittedSessionAddedRemovedReordered); return; } // Two transformations if (parametersAdded && parametersRemoved) { - s_logAggregator.IncreaseCount((int)ActionInfo.CommittedSessionAddedRemovedOnly); + s_countLogAggregator.IncreaseCount(ActionInfo.CommittedSessionAddedRemovedOnly); return; } if (parametersAdded && parametersReordered) { - s_logAggregator.IncreaseCount((int)ActionInfo.CommittedSessionAddedReorderedOnly); + s_countLogAggregator.IncreaseCount(ActionInfo.CommittedSessionAddedReorderedOnly); return; } if (parametersRemoved && parametersReordered) { - s_logAggregator.IncreaseCount((int)ActionInfo.CommittedSessionRemovedReorderedOnly); + s_countLogAggregator.IncreaseCount(ActionInfo.CommittedSessionRemovedReorderedOnly); return; } // One transformation if (parametersAdded) { - s_logAggregator.IncreaseCount((int)ActionInfo.CommittedSessionAddedOnly); + s_countLogAggregator.IncreaseCount(ActionInfo.CommittedSessionAddedOnly); return; } if (parametersRemoved) { - s_logAggregator.IncreaseCount((int)ActionInfo.CommittedSessionRemovedOnly); + s_countLogAggregator.IncreaseCount(ActionInfo.CommittedSessionRemovedOnly); return; } if (parametersReordered) { - s_logAggregator.IncreaseCount((int)ActionInfo.CommittedSessionReorderedOnly); + s_countLogAggregator.IncreaseCount(ActionInfo.CommittedSessionReorderedOnly); return; } } - internal static void LogCommitInformation(int numDeclarationsUpdated, int numCallSitesUpdated, int elapsedMS) + internal static void LogCommitInformation(int numDeclarationsUpdated, int numCallSitesUpdated, TimeSpan elapsedTime) { - s_logAggregator.IncreaseCount((int)ActionInfo.ChangeSignatureCommitCompleted); + s_countLogAggregator.IncreaseCount(ActionInfo.ChangeSignatureCommitCompleted); - s_logAggregator.IncreaseCountBy((int)ActionInfo.CommittedSessionNumberOfDeclarationsUpdated, numDeclarationsUpdated); - s_logAggregator.IncreaseCountBy((int)ActionInfo.CommittedSessionNumberOfCallSitesUpdated, numCallSitesUpdated); + s_countLogAggregator.IncreaseCountBy(ActionInfo.CommittedSessionNumberOfDeclarationsUpdated, numDeclarationsUpdated); + s_countLogAggregator.IncreaseCountBy(ActionInfo.CommittedSessionNumberOfCallSitesUpdated, numCallSitesUpdated); - s_statisticLogAggregator.AddDataPoint((int)ActionInfo.CommittedSessionCommitElapsedMS, elapsedMS); - s_histogramLogAggregator.IncreaseCount((int)ActionInfo.CommittedSessionCommitElapsedMS, elapsedMS); + s_statisticLogAggregator.AddDataPoint(ActionInfo.CommittedSessionCommitElapsedMS, (int)elapsedTime.TotalMilliseconds); + s_histogramLogAggregator.LogTime(ActionInfo.CommittedSessionCommitElapsedMS, elapsedTime); } internal static void LogAddedParameterTypeBinds() { - s_logAggregator.IncreaseCount((int)ActionInfo.AddedParameterTypeBinds); + s_countLogAggregator.IncreaseCount(ActionInfo.AddedParameterTypeBinds); } internal static void LogAddedParameterRequired() { - s_logAggregator.IncreaseCount((int)ActionInfo.AddedParameterRequired); + s_countLogAggregator.IncreaseCount(ActionInfo.AddedParameterRequired); } internal static void LogAddedParameter_ValueExplicit() { - s_logAggregator.IncreaseCount((int)ActionInfo.AddedParameterValueExplicit); + s_countLogAggregator.IncreaseCount(ActionInfo.AddedParameterValueExplicit); } internal static void LogAddedParameter_ValueExplicitNamed() { - s_logAggregator.IncreaseCount((int)ActionInfo.AddedParameterValueExplicitNamed); + s_countLogAggregator.IncreaseCount(ActionInfo.AddedParameterValueExplicitNamed); } internal static void LogAddedParameter_ValueTODO() { - s_logAggregator.IncreaseCount((int)ActionInfo.AddedParameterValueTODO); + s_countLogAggregator.IncreaseCount(ActionInfo.AddedParameterValueTODO); } internal static void LogAddedParameter_ValueOmitted() { - s_logAggregator.IncreaseCount((int)ActionInfo.AddedParameterValueOmitted); + s_countLogAggregator.IncreaseCount(ActionInfo.AddedParameterValueOmitted); } internal static void ReportTelemetry() { Logger.Log(FunctionId.ChangeSignature_Data, KeyValueLogMessage.Create(m => { - foreach (var kv in s_logAggregator) + foreach (var kv in s_countLogAggregator) { - var info = ((ActionInfo)kv.Key).ToString("f"); + var info = kv.Key.ToString("f"); m[info] = kv.Value.GetCount(); } foreach (var kv in s_statisticLogAggregator) { - var info = ((ActionInfo)kv.Key).ToString("f"); + var info = kv.Key.ToString("f"); var statistics = kv.Value.GetStatisticResult(); m[CreateProperty(info, Maximum)] = statistics.Maximum; @@ -201,7 +202,7 @@ internal static void ReportTelemetry() foreach (var kv in s_histogramLogAggregator) { - var info = ((ActionInfo)kv.Key).ToString("f"); + var info = kv.Key.ToString("f"); m[$"{info}.BucketSize"] = kv.Value.BucketSize; m[$"{info}.MaxBucketValue"] = kv.Value.MaxBucketValue; m[$"{info}.Buckets"] = kv.Value.GetBucketsAsString(); diff --git a/src/Features/Core/Portable/Completion/Log/CompletionProvidersLogger.cs b/src/Features/Core/Portable/Completion/Log/CompletionProvidersLogger.cs index f0f0030f34b4e..eab198df2b957 100644 --- a/src/Features/Core/Portable/Completion/Log/CompletionProvidersLogger.cs +++ b/src/Features/Core/Portable/Completion/Log/CompletionProvidersLogger.cs @@ -2,16 +2,17 @@ // The .NET Foundation licenses this file to you under the MIT license. // See the LICENSE file in the project root for more information. +using System; using Microsoft.CodeAnalysis.Internal.Log; namespace Microsoft.CodeAnalysis.Completion.Log { internal static class CompletionProvidersLogger { - private static readonly StatisticLogAggregator s_statisticLogAggregator = new(); - private static readonly LogAggregator s_logAggregator = new(); + private static readonly StatisticLogAggregator s_statisticLogAggregator = new(); + private static readonly CountLogAggregator s_countLogAggregator = new(); - private static readonly HistogramLogAggregator s_histogramLogAggregator = new(bucketSize: 50, maxBucketValue: 1000); + private static readonly HistogramLogAggregator s_histogramLogAggregator = new(bucketSize: 50, maxBucketValue: 1000); internal enum ActionInfo { @@ -33,52 +34,52 @@ internal enum ActionInfo CommitUsingDotToAddParenthesis } - internal static void LogTypeImportCompletionTicksDataPoint(int count) + internal static void LogTypeImportCompletionTicksDataPoint(TimeSpan elapsed) { - s_histogramLogAggregator.IncreaseCount((int)ActionInfo.TypeImportCompletionTicks, count); - s_statisticLogAggregator.AddDataPoint((int)ActionInfo.TypeImportCompletionTicks, count); + s_histogramLogAggregator.LogTime(ActionInfo.TypeImportCompletionTicks, elapsed); + s_statisticLogAggregator.AddDataPoint(ActionInfo.TypeImportCompletionTicks, elapsed); } internal static void LogTypeImportCompletionItemCountDataPoint(int count) => - s_statisticLogAggregator.AddDataPoint((int)ActionInfo.TypeImportCompletionItemCount, count); + s_statisticLogAggregator.AddDataPoint(ActionInfo.TypeImportCompletionItemCount, count); internal static void LogTypeImportCompletionReferenceCountDataPoint(int count) => - s_statisticLogAggregator.AddDataPoint((int)ActionInfo.TypeImportCompletionReferenceCount, count); + s_statisticLogAggregator.AddDataPoint(ActionInfo.TypeImportCompletionReferenceCount, count); internal static void LogTypeImportCompletionCacheMiss() => - s_logAggregator.IncreaseCount((int)ActionInfo.TypeImportCompletionCacheMissCount); + s_countLogAggregator.IncreaseCount(ActionInfo.TypeImportCompletionCacheMissCount); internal static void LogCommitOfTypeImportCompletionItem() => - s_logAggregator.IncreaseCount((int)ActionInfo.CommitsOfTypeImportCompletionItem); + s_countLogAggregator.IncreaseCount(ActionInfo.CommitsOfTypeImportCompletionItem); - internal static void LogExtensionMethodCompletionTicksDataPoint(int total, int getSymbols, int createItems, bool isRemote) + internal static void LogExtensionMethodCompletionTicksDataPoint(TimeSpan total, TimeSpan getSymbols, TimeSpan createItems, bool isRemote) { - s_histogramLogAggregator.IncreaseCount((int)ActionInfo.ExtensionMethodCompletionTicks, total); - s_statisticLogAggregator.AddDataPoint((int)ActionInfo.ExtensionMethodCompletionTicks, total); + s_histogramLogAggregator.LogTime(ActionInfo.ExtensionMethodCompletionTicks, total); + s_statisticLogAggregator.AddDataPoint(ActionInfo.ExtensionMethodCompletionTicks, total); if (isRemote) { - s_statisticLogAggregator.AddDataPoint((int)ActionInfo.ExtensionMethodCompletionRemoteTicks, (total - getSymbols - createItems)); + s_statisticLogAggregator.AddDataPoint(ActionInfo.ExtensionMethodCompletionRemoteTicks, total - getSymbols - createItems); } - s_statisticLogAggregator.AddDataPoint((int)ActionInfo.ExtensionMethodCompletionGetSymbolsTicks, getSymbols); - s_statisticLogAggregator.AddDataPoint((int)ActionInfo.ExtensionMethodCompletionCreateItemsTicks, createItems); + s_statisticLogAggregator.AddDataPoint(ActionInfo.ExtensionMethodCompletionGetSymbolsTicks, getSymbols); + s_statisticLogAggregator.AddDataPoint(ActionInfo.ExtensionMethodCompletionCreateItemsTicks, createItems); } internal static void LogExtensionMethodCompletionMethodsProvidedDataPoint(int count) => - s_statisticLogAggregator.AddDataPoint((int)ActionInfo.ExtensionMethodCompletionMethodsProvided, count); + s_statisticLogAggregator.AddDataPoint(ActionInfo.ExtensionMethodCompletionMethodsProvided, count); internal static void LogCommitOfExtensionMethodImportCompletionItem() => - s_logAggregator.IncreaseCount((int)ActionInfo.CommitsOfExtensionMethodImportCompletionItem); + s_countLogAggregator.IncreaseCount(ActionInfo.CommitsOfExtensionMethodImportCompletionItem); internal static void LogExtensionMethodCompletionPartialResultCount() => - s_logAggregator.IncreaseCount((int)ActionInfo.ExtensionMethodCompletionPartialResultCount); + s_countLogAggregator.IncreaseCount(ActionInfo.ExtensionMethodCompletionPartialResultCount); internal static void LogCommitUsingSemicolonToAddParenthesis() => - s_logAggregator.IncreaseCount((int)ActionInfo.CommitUsingSemicolonToAddParenthesis); + s_countLogAggregator.IncreaseCount(ActionInfo.CommitUsingSemicolonToAddParenthesis); internal static void LogCommitUsingDotToAddParenthesis() => - s_logAggregator.IncreaseCount((int)ActionInfo.CommitUsingDotToAddParenthesis); + s_countLogAggregator.IncreaseCount(ActionInfo.CommitUsingDotToAddParenthesis); internal static void LogCustomizedCommitToAddParenthesis(char? commitChar) { @@ -109,7 +110,7 @@ internal static void ReportTelemetry() m[CreateProperty(info, nameof(statistics.Count))] = statistics.Count; } - foreach (var kv in s_logAggregator) + foreach (var kv in s_countLogAggregator) { var info = ((ActionInfo)kv.Key).ToString("f"); m[info] = kv.Value.GetCount(); diff --git a/src/Features/Core/Portable/Completion/Providers/AbstractRecommendationServiceBasedCompletionProvider.cs b/src/Features/Core/Portable/Completion/Providers/AbstractRecommendationServiceBasedCompletionProvider.cs index 067c9fa919ac8..29f67ce539802 100644 --- a/src/Features/Core/Portable/Completion/Providers/AbstractRecommendationServiceBasedCompletionProvider.cs +++ b/src/Features/Core/Portable/Completion/Providers/AbstractRecommendationServiceBasedCompletionProvider.cs @@ -34,7 +34,7 @@ internal abstract class AbstractRecommendationServiceBasedCompletionProvider(); var recommendedSymbols = recommender.GetRecommendedSymbolsInContext(context, recommendationOptions, cancellationToken); - if (context.IsInTaskLikeTypeContext) + if (context.IsTaskLikeTypeContext) { // If we get 'Task' back, attempt to preselect that as the most likely result. var taskType = context.SemanticModel.Compilation.TaskType(); @@ -92,7 +92,8 @@ private static bool IsValidForTaskLikeTypeOnlyContext(ISymbol symbol, TSyntaxCon namedType.Equals(compilation.IAsyncEnumeratorOfTType()); } - return symbol.IsAwaitableNonDynamic(context.SemanticModel, context.Position); + return namedType.IsAwaitableNonDynamic(context.SemanticModel, context.Position) || + namedType.GetTypeMembers().Any(static (m, context) => IsValidForTaskLikeTypeOnlyContext(m, context), context); } private static bool IsValidForGenericConstraintContext(ISymbol symbol) diff --git a/src/Features/Core/Portable/Completion/Providers/ImportCompletionProvider/AbstractExtensionMethodImportCompletionProvider.cs b/src/Features/Core/Portable/Completion/Providers/ImportCompletionProvider/AbstractExtensionMethodImportCompletionProvider.cs index 53e4aaf73766d..9c8ba4264dfdc 100644 --- a/src/Features/Core/Portable/Completion/Providers/ImportCompletionProvider/AbstractExtensionMethodImportCompletionProvider.cs +++ b/src/Features/Core/Portable/Completion/Providers/ImportCompletionProvider/AbstractExtensionMethodImportCompletionProvider.cs @@ -14,6 +14,7 @@ using Microsoft.CodeAnalysis.LanguageServices; using Microsoft.CodeAnalysis.Shared.Extensions; using Microsoft.CodeAnalysis.Shared.Extensions.ContextQuery; +using Roslyn.Utilities; namespace Microsoft.CodeAnalysis.Completion.Providers { @@ -43,7 +44,8 @@ protected override async Task AddCompletionItemsAsync( var syntaxFacts = completionContext.Document.GetRequiredLanguageService(); if (TryGetReceiverTypeSymbol(syntaxContext, syntaxFacts, cancellationToken, out var receiverTypeSymbol)) { - var ticks = Environment.TickCount; + var totalTime = SharedStopwatch.StartNew(); + var inferredTypes = completionContext.CompletionOptions.TargetTypedCompletionFilter ? syntaxContext.InferredTypes : ImmutableArray.Empty; @@ -65,9 +67,8 @@ protected override async Task AddCompletionItemsAsync( completionContext.AddItems(result.CompletionItems.Select(i => Convert(i, receiverTypeKey))); // report telemetry: - var totalTicks = Environment.TickCount - ticks; CompletionProvidersLogger.LogExtensionMethodCompletionTicksDataPoint( - totalTicks, result.GetSymbolsTicks, result.CreateItemsTicks, result.IsRemote); + totalTime.Elapsed, result.GetSymbolsTime, result.CreateItemsTime, result.IsRemote); if (result.IsPartialResult) CompletionProvidersLogger.LogExtensionMethodCompletionPartialResultCount(); diff --git a/src/Features/Core/Portable/Completion/Providers/ImportCompletionProvider/AbstractTypeImportCompletionProvider.cs b/src/Features/Core/Portable/Completion/Providers/ImportCompletionProvider/AbstractTypeImportCompletionProvider.cs index 2e39c11984bcf..21b6828393396 100644 --- a/src/Features/Core/Portable/Completion/Providers/ImportCompletionProvider/AbstractTypeImportCompletionProvider.cs +++ b/src/Features/Core/Portable/Completion/Providers/ImportCompletionProvider/AbstractTypeImportCompletionProvider.cs @@ -163,7 +163,7 @@ static bool ShouldAddItem( private class TelemetryCounter { - private readonly int _tick; + private readonly SharedStopwatch _elapsedTime; public int ItemsCount { get; set; } public int ReferenceCount { get; set; } @@ -171,7 +171,7 @@ private class TelemetryCounter public TelemetryCounter() { - _tick = Environment.TickCount; + _elapsedTime = SharedStopwatch.StartNew(); } public void Report() @@ -182,8 +182,7 @@ public void Report() } // cache miss still count towards the cost of completion, so we need to log regardless of it. - var delta = Environment.TickCount - _tick; - CompletionProvidersLogger.LogTypeImportCompletionTicksDataPoint(delta); + CompletionProvidersLogger.LogTypeImportCompletionTicksDataPoint(_elapsedTime.Elapsed); CompletionProvidersLogger.LogTypeImportCompletionItemCountDataPoint(ItemsCount); CompletionProvidersLogger.LogTypeImportCompletionReferenceCountDataPoint(ReferenceCount); } diff --git a/src/Features/Core/Portable/Completion/Providers/ImportCompletionProvider/ExtensionMethodImportCompletionHelper.cs b/src/Features/Core/Portable/Completion/Providers/ImportCompletionProvider/ExtensionMethodImportCompletionHelper.cs index 7eeb953a45410..d7cb5c655c5ed 100644 --- a/src/Features/Core/Portable/Completion/Providers/ImportCompletionProvider/ExtensionMethodImportCompletionHelper.cs +++ b/src/Features/Core/Portable/Completion/Providers/ImportCompletionProvider/ExtensionMethodImportCompletionHelper.cs @@ -90,7 +90,7 @@ public static async Task GetUnimportedEx bool isRemote, CancellationToken cancellationToken) { - var ticks = Environment.TickCount; + var stopwatch = SharedStopwatch.StartNew(); // First find symbols of all applicable extension methods. // Workspace's syntax/symbol index is used to avoid iterating every method symbols in the solution. @@ -98,15 +98,15 @@ public static async Task GetUnimportedEx document, position, receiverTypeSymbol, namespaceInScope, cancellationToken).ConfigureAwait(false); var (extentsionMethodSymbols, isPartialResult) = await symbolComputer.GetExtensionMethodSymbolsAsync(forceCacheCreation, hideAdvancedMembers, cancellationToken).ConfigureAwait(false); - var getSymbolsTicks = Environment.TickCount - ticks; - ticks = Environment.TickCount; + var getSymbolsTime = stopwatch.Elapsed; + stopwatch = SharedStopwatch.StartNew(); var compilation = await document.Project.GetRequiredCompilationAsync(cancellationToken).ConfigureAwait(false); var items = ConvertSymbolsToCompletionItems(compilation, extentsionMethodSymbols, targetTypes, cancellationToken); - var createItemsTicks = Environment.TickCount - ticks; + var createItemsTime = stopwatch.Elapsed; - return new SerializableUnimportedExtensionMethods(items, isPartialResult, getSymbolsTicks, createItemsTicks, isRemote); + return new SerializableUnimportedExtensionMethods(items, isPartialResult, getSymbolsTime, createItemsTime, isRemote); } public static async ValueTask BatchUpdateCacheAsync(ImmutableSegmentedList projects, CancellationToken cancellationToken) diff --git a/src/Features/Core/Portable/Completion/Providers/ImportCompletionProvider/SerializableUnimportedExtensionMethods.cs b/src/Features/Core/Portable/Completion/Providers/ImportCompletionProvider/SerializableUnimportedExtensionMethods.cs index b8eee20c00241..b7dc7a3362067 100644 --- a/src/Features/Core/Portable/Completion/Providers/ImportCompletionProvider/SerializableUnimportedExtensionMethods.cs +++ b/src/Features/Core/Portable/Completion/Providers/ImportCompletionProvider/SerializableUnimportedExtensionMethods.cs @@ -2,6 +2,7 @@ // The .NET Foundation licenses this file to you under the MIT license. // See the LICENSE file in the project root for more information. +using System; using System.Collections.Immutable; using System.Runtime.Serialization; @@ -17,10 +18,10 @@ internal sealed class SerializableUnimportedExtensionMethods public readonly bool IsPartialResult; [DataMember(Order = 2)] - public readonly int GetSymbolsTicks; + public readonly TimeSpan GetSymbolsTime; [DataMember(Order = 3)] - public readonly int CreateItemsTicks; + public readonly TimeSpan CreateItemsTime; [DataMember(Order = 4)] public readonly bool IsRemote; @@ -28,14 +29,14 @@ internal sealed class SerializableUnimportedExtensionMethods public SerializableUnimportedExtensionMethods( ImmutableArray completionItems, bool isPartialResult, - int getSymbolsTicks, - int createItemsTicks, + TimeSpan getSymbolsTime, + TimeSpan createItemsTime, bool isRemote) { CompletionItems = completionItems; IsPartialResult = isPartialResult; - GetSymbolsTicks = getSymbolsTicks; - CreateItemsTicks = createItemsTicks; + GetSymbolsTime = getSymbolsTime; + CreateItemsTime = createItemsTime; IsRemote = isRemote; } } diff --git a/src/Features/Core/Portable/EditAndContinue/DebuggingSession.cs b/src/Features/Core/Portable/EditAndContinue/DebuggingSession.cs index 1f80311fa17b0..7ff73722dc34e 100644 --- a/src/Features/Core/Portable/EditAndContinue/DebuggingSession.cs +++ b/src/Features/Core/Portable/EditAndContinue/DebuggingSession.cs @@ -1042,7 +1042,7 @@ async Task GetTaskAsync(ProjectId projectId) private static void ReportTelemetry(DebuggingSessionTelemetry.Data data) { // report telemetry (fire and forget): - _ = Task.Run(() => DebuggingSessionTelemetry.Log(data, Logger.Log, LogAggregator.GetNextId)); + _ = Task.Run(() => DebuggingSessionTelemetry.Log(data, Logger.Log, CorrelationIdFactory.GetNextId)); } internal TestAccessor GetTestAccessor() diff --git a/src/Features/Core/Portable/SolutionCrawler/SolutionCrawlerLogger.cs b/src/Features/Core/Portable/SolutionCrawler/SolutionCrawlerLogger.cs index 181cef3b13f01..c1e248b062b22 100644 --- a/src/Features/Core/Portable/SolutionCrawler/SolutionCrawlerLogger.cs +++ b/src/Features/Core/Portable/SolutionCrawler/SolutionCrawlerLogger.cs @@ -134,10 +134,10 @@ public static void LogWorkCoordinatorShutdownTimeout(int correlationId) })); } - public static void LogWorkspaceEvent(LogAggregator logAggregator, int kind) + public static void LogWorkspaceEvent(CountLogAggregator logAggregator, WorkspaceChangeKind kind) => logAggregator.IncreaseCount(kind); - public static void LogWorkCoordinatorShutdown(int correlationId, LogAggregator logAggregator) + public static void LogWorkCoordinatorShutdown(int correlationId, CountLogAggregator logAggregator) { Logger.Log(FunctionId.WorkCoordinator_Shutdown, KeyValueLogMessage.Create(m => { @@ -145,23 +145,23 @@ public static void LogWorkCoordinatorShutdown(int correlationId, LogAggregator l foreach (var kv in logAggregator) { - var change = ((WorkspaceChangeKind)kv.Key).ToString(); + var change = kv.Key.ToString(); m[change] = kv.Value.GetCount(); } })); } - public static void LogGlobalOperation(LogAggregator logAggregator) + public static void LogGlobalOperation(CountLogAggregator logAggregator) => logAggregator.IncreaseCount(GlobalOperation); - public static void LogActiveFileEnqueue(LogAggregator logAggregator) + public static void LogActiveFileEnqueue(CountLogAggregator logAggregator) => logAggregator.IncreaseCount(ActiveFileEnqueue); - public static void LogWorkItemEnqueue(LogAggregator logAggregator, ProjectId _) + public static void LogWorkItemEnqueue(CountLogAggregator logAggregator, ProjectId _) => logAggregator.IncreaseCount(ProjectEnqueue); public static void LogWorkItemEnqueue( - LogAggregator logAggregator, string language, DocumentId? documentId, InvocationReasons reasons, bool lowPriority, SyntaxPath? activeMember, bool added) + CountLogAggregator logAggregator, string language, DocumentId? documentId, InvocationReasons reasons, bool lowPriority, SyntaxPath? activeMember, bool added) { logAggregator.IncreaseCount(language); logAggregator.IncreaseCount(added ? NewWorkItem : UpdateWorkItem); @@ -183,16 +183,16 @@ public static void LogWorkItemEnqueue( } } - public static void LogHigherPriority(LogAggregator logAggregator, Guid documentId) + public static void LogHigherPriority(CountLogAggregator logAggregator, Guid documentId) { logAggregator.IncreaseCount(HigherPriority); logAggregator.IncreaseCount(ValueTuple.Create(HigherPriority, documentId)); } - public static void LogResetStates(LogAggregator logAggregator) + public static void LogResetStates(CountLogAggregator logAggregator) => logAggregator.IncreaseCount(ResetStates); - public static void LogIncrementalAnalyzerProcessorStatistics(int correlationId, Solution solution, LogAggregator logAggregator, ImmutableArray analyzers) + public static void LogIncrementalAnalyzerProcessorStatistics(int correlationId, Solution solution, CountLogAggregator logAggregator, ImmutableArray analyzers) { Logger.Log(FunctionId.IncrementalAnalyzerProcessor_Shutdown, KeyValueLogMessage.Create(m => { @@ -207,22 +207,21 @@ public static void LogIncrementalAnalyzerProcessorStatistics(int correlationId, if (key is string stringKey) { m[stringKey] = counter.GetCount(); - continue; } - - if (key is ValueTuple propertyNameAndId) + else if (key is ValueTuple propertyNameAndId) { var list = statMap.GetOrAdd(propertyNameAndId.Item1, _ => new List()); list.Add(counter.GetCount()); - continue; } - - throw ExceptionUtilities.Unreachable; + else + { + throw ExceptionUtilities.Unreachable; + } } foreach (var (propertyName, propertyValues) in statMap) { - var result = LogAggregator.GetStatistics(propertyValues); + var result = StatisticResult.FromList(propertyValues); m[CreateProperty(propertyName, Max)] = result.Maximum; m[CreateProperty(propertyName, Min)] = result.Minimum; @@ -253,19 +252,19 @@ private static int GetSolutionHash(Solution solution) private static string CreateProperty(string parent, string child) => parent + "." + child; - public static void LogProcessCloseDocument(LogAggregator logAggregator, Guid documentId) + public static void LogProcessCloseDocument(CountLogAggregator logAggregator, Guid documentId) { logAggregator.IncreaseCount(CloseDocument); logAggregator.IncreaseCount(ValueTuple.Create(CloseDocument, documentId)); } - public static void LogProcessOpenDocument(LogAggregator logAggregator, Guid documentId) + public static void LogProcessOpenDocument(CountLogAggregator logAggregator, Guid documentId) { logAggregator.IncreaseCount(OpenDocument); logAggregator.IncreaseCount(ValueTuple.Create(OpenDocument, documentId)); } - public static void LogProcessActiveFileDocument(LogAggregator logAggregator, Guid _, bool processed) + public static void LogProcessActiveFileDocument(CountLogAggregator logAggregator, Guid _, bool processed) { if (processed) { @@ -277,7 +276,7 @@ public static void LogProcessActiveFileDocument(LogAggregator logAggregator, Gui } } - public static void LogProcessDocument(LogAggregator logAggregator, Guid documentId, bool processed) + public static void LogProcessDocument(CountLogAggregator logAggregator, Guid documentId, bool processed) { if (processed) { @@ -291,10 +290,10 @@ public static void LogProcessDocument(LogAggregator logAggregator, Guid document logAggregator.IncreaseCount(ValueTuple.Create(ProcessDocument, documentId)); } - public static void LogProcessDocumentNotExist(LogAggregator logAggregator) + public static void LogProcessDocumentNotExist(CountLogAggregator logAggregator) => logAggregator.IncreaseCount(DocumentNotExist); - public static void LogProcessProject(LogAggregator logAggregator, Guid projectId, bool processed) + public static void LogProcessProject(CountLogAggregator logAggregator, Guid projectId, bool processed) { if (processed) { @@ -308,7 +307,7 @@ public static void LogProcessProject(LogAggregator logAggregator, Guid projectId logAggregator.IncreaseCount(ValueTuple.Create(ProcessProject, projectId)); } - public static void LogProcessProjectNotExist(LogAggregator logAggregator) + public static void LogProcessProjectNotExist(CountLogAggregator logAggregator) => logAggregator.IncreaseCount(ProjectNotExist); } } diff --git a/src/Features/Core/Portable/SolutionCrawler/SolutionCrawlerRegistrationService.cs b/src/Features/Core/Portable/SolutionCrawler/SolutionCrawlerRegistrationService.cs index b5def68057044..18a1e2e3aba98 100644 --- a/src/Features/Core/Portable/SolutionCrawler/SolutionCrawlerRegistrationService.cs +++ b/src/Features/Core/Portable/SolutionCrawler/SolutionCrawlerRegistrationService.cs @@ -62,7 +62,7 @@ public void EnsureRegistration(Workspace workspace, bool initializeLazily) { Contract.ThrowIfNull(workspace.Kind); - var correlationId = LogAggregator.GetNextId(); + var correlationId = CorrelationIdFactory.GetNextId(); lock (_gate) { diff --git a/src/Features/Core/Portable/SolutionCrawler/WorkCoordinator.IncrementalAnalyzerProcessor.cs b/src/Features/Core/Portable/SolutionCrawler/WorkCoordinator.IncrementalAnalyzerProcessor.cs index f4a317aceaad5..2412aed423528 100644 --- a/src/Features/Core/Portable/SolutionCrawler/WorkCoordinator.IncrementalAnalyzerProcessor.cs +++ b/src/Features/Core/Portable/SolutionCrawler/WorkCoordinator.IncrementalAnalyzerProcessor.cs @@ -42,7 +42,11 @@ private partial class IncrementalAnalyzerProcessor // NOTE: IDiagnosticAnalyzerService can be null in test environment. private readonly Lazy _lazyDiagnosticAnalyzerService; - private LogAggregator _logAggregator = new(); + /// + /// The keys in this are either a string or a (string, Guid) tuple. See + /// for what is writing this out. + /// + private CountLogAggregator _logAggregator = new(); public IncrementalAnalyzerProcessor( IAsynchronousOperationListener listener, @@ -150,7 +154,7 @@ private IEnumerable GetOpenDocumentIds() => _registration.Workspace.GetOpenDocumentIds(); private void ResetLogAggregator() - => _logAggregator = new LogAggregator(); + => _logAggregator = new CountLogAggregator(); private void ReportPendingWorkItemCount() { diff --git a/src/Features/Core/Portable/SolutionCrawler/WorkCoordinator.cs b/src/Features/Core/Portable/SolutionCrawler/WorkCoordinator.cs index cf3c7a1f63683..9484183220b3e 100644 --- a/src/Features/Core/Portable/SolutionCrawler/WorkCoordinator.cs +++ b/src/Features/Core/Portable/SolutionCrawler/WorkCoordinator.cs @@ -24,7 +24,7 @@ internal sealed partial class WorkCoordinator private readonly Registration _registration; private readonly object _gate = new(); - private readonly LogAggregator _logAggregator = new(); + private readonly CountLogAggregator _logAggregator = new(); private readonly IAsynchronousOperationListener _listener; private readonly IDocumentTrackingService _documentTrackingService; private readonly IWorkspaceConfigurationService? _workspaceConfigurationService; @@ -192,7 +192,7 @@ private bool NotOurShutdownToken(OperationCanceledException oce) private void ProcessEvent(WorkspaceChangeEventArgs args, string eventName) { - SolutionCrawlerLogger.LogWorkspaceEvent(_logAggregator, (int)args.Kind); + SolutionCrawlerLogger.LogWorkspaceEvent(_logAggregator, args.Kind); // TODO: add telemetry that record how much it takes to process an event (max, min, average and etc) switch (args.Kind) diff --git a/src/Features/LanguageServer/Protocol/Features/Diagnostics/DiagnosticAnalyzerService_IncrementalAnalyzer.cs b/src/Features/LanguageServer/Protocol/Features/Diagnostics/DiagnosticAnalyzerService_IncrementalAnalyzer.cs index 4a8469a9ee997..4bb863a34fdbd 100644 --- a/src/Features/LanguageServer/Protocol/Features/Diagnostics/DiagnosticAnalyzerService_IncrementalAnalyzer.cs +++ b/src/Features/LanguageServer/Protocol/Features/Diagnostics/DiagnosticAnalyzerService_IncrementalAnalyzer.cs @@ -49,7 +49,7 @@ private DiagnosticIncrementalAnalyzer CreateIncrementalAnalyzerCallback(Workspac // subscribe to active context changed event for new workspace workspace.DocumentActiveContextChanged += OnDocumentActiveContextChanged; - return new DiagnosticIncrementalAnalyzer(this, LogAggregator.GetNextId(), workspace, AnalyzerInfoCache); + return new DiagnosticIncrementalAnalyzer(this, CorrelationIdFactory.GetNextId(), workspace, AnalyzerInfoCache); } private void OnDocumentActiveContextChanged(object? sender, DocumentActiveContextChangedEventArgs e) diff --git a/src/Features/LanguageServer/Protocol/Handler/RequestTelemetryLogger.cs b/src/Features/LanguageServer/Protocol/Handler/RequestTelemetryLogger.cs index e53c233f0caa2..1f6cd5520feb6 100644 --- a/src/Features/LanguageServer/Protocol/Handler/RequestTelemetryLogger.cs +++ b/src/Features/LanguageServer/Protocol/Handler/RequestTelemetryLogger.cs @@ -24,7 +24,7 @@ internal sealed class RequestTelemetryLogger : IDisposable, ILspService /// /// Histogram to aggregate the time in queue metrics. /// - private readonly HistogramLogAggregator _queuedDurationLogAggregator; + private readonly HistogramLogAggregator _queuedDurationLogAggregator; /// /// Histogram to aggregate total request duration metrics. @@ -34,7 +34,7 @@ internal sealed class RequestTelemetryLogger : IDisposable, ILspService /// This provides highly detailed buckets when duration is in MS, but less detailed /// when the duration is in terms of seconds or minutes. /// - private readonly HistogramLogAggregator _requestDurationLogAggregator; + private readonly HistogramLogAggregator _requestDurationLogAggregator; /// /// Store request counters in a concurrent dictionary as non-mutating LSP requests can @@ -42,9 +42,9 @@ internal sealed class RequestTelemetryLogger : IDisposable, ILspService /// private readonly ConcurrentDictionary _requestCounters; - private readonly LogAggregator _findDocumentResults; + private readonly CountLogAggregator _findDocumentResults; - private readonly LogAggregator _usedForkedSolutionCounter; + private readonly CountLogAggregator _usedForkedSolutionCounter; private int _disposed; @@ -57,11 +57,11 @@ public RequestTelemetryLogger(string serverTypeName) // Buckets queued duration into 10ms buckets with the last bucket starting at 1000ms. // Queue times are relatively short and fall under 50ms, so tracking past 1000ms is not useful. - _queuedDurationLogAggregator = new HistogramLogAggregator(bucketSize: 10, maxBucketValue: 1000); + _queuedDurationLogAggregator = new HistogramLogAggregator(bucketSize: 10, maxBucketValue: 1000); // Since this is a log based histogram, these are appropriate bucket sizes for the log data. // A bucket at 1 corresponds to ~26ms, while the max bucket value corresponds to ~17minutes - _requestDurationLogAggregator = new HistogramLogAggregator(bucketSize: 1, maxBucketValue: 40); + _requestDurationLogAggregator = new HistogramLogAggregator(bucketSize: 1, maxBucketValue: 40); } public void UpdateFindDocumentTelemetryData(bool success, string? workspaceKind) @@ -87,10 +87,10 @@ public void UpdateTelemetryData( { // Find the bucket corresponding to the queued duration and update the count of durations in that bucket. // This is not broken down per method as time in queue is not specific to an LSP method. - _queuedDurationLogAggregator.IncreaseCount(QueuedDurationKey, Convert.ToDecimal(queuedDuration.TotalMilliseconds)); + _queuedDurationLogAggregator.LogTime(QueuedDurationKey, queuedDuration); // Store the request time metrics per LSP method. - _requestDurationLogAggregator.IncreaseCount(methodName, Convert.ToDecimal(ComputeLogValue(requestDuration.TotalMilliseconds))); + _requestDurationLogAggregator.IncreaseCount(methodName, (int)ComputeLogValue(requestDuration.TotalMilliseconds)); _requestCounters.GetOrAdd(methodName, (_) => new Counter()).IncrementCount(result); } diff --git a/src/Features/VisualBasic/Portable/Completion/KeywordRecommenders/Types/BuiltInTypesKeywordRecommender.vb b/src/Features/VisualBasic/Portable/Completion/KeywordRecommenders/Types/BuiltInTypesKeywordRecommender.vb index ed1fdc7e708d6..2d57f12cfd367 100644 --- a/src/Features/VisualBasic/Portable/Completion/KeywordRecommenders/Types/BuiltInTypesKeywordRecommender.vb +++ b/src/Features/VisualBasic/Portable/Completion/KeywordRecommenders/Types/BuiltInTypesKeywordRecommender.vb @@ -17,7 +17,7 @@ Namespace Microsoft.CodeAnalysis.VisualBasic.Completion.KeywordRecommenders.Type Inherits AbstractKeywordRecommender Protected Overrides Function RecommendKeywords(context As VisualBasicSyntaxContext, cancellationToken As CancellationToken) As ImmutableArray(Of RecommendedKeyword) - If context.IsInTaskLikeTypeContext Then + If context.IsTaskLikeTypeContext Then Return ImmutableArray(Of RecommendedKeyword).Empty End If diff --git a/src/Tools/ExternalAccess/AspNetCore/EmbeddedLanguages/AspNetCoreVirtualChar.cs b/src/Tools/ExternalAccess/AspNetCore/EmbeddedLanguages/AspNetCoreVirtualChar.cs index 7b18884493f2f..713f86869d74f 100644 --- a/src/Tools/ExternalAccess/AspNetCore/EmbeddedLanguages/AspNetCoreVirtualChar.cs +++ b/src/Tools/ExternalAccess/AspNetCore/EmbeddedLanguages/AspNetCoreVirtualChar.cs @@ -2,13 +2,14 @@ // The .NET Foundation licenses this file to you under the MIT license. // See the LICENSE file in the project root for more information. +using System; using System.Text; using Microsoft.CodeAnalysis.EmbeddedLanguages.VirtualChars; using Microsoft.CodeAnalysis.Text; namespace Microsoft.CodeAnalysis.ExternalAccess.AspNetCore.EmbeddedLanguages { - internal readonly struct AspNetCoreVirtualChar + internal readonly struct AspNetCoreVirtualChar : IEquatable { private readonly VirtualChar _virtualChar; @@ -17,8 +18,15 @@ internal AspNetCoreVirtualChar(VirtualChar virtualChar) _virtualChar = virtualChar; } - /// - public Rune Rune => _virtualChar.Rune; + /// + /// Returns the Unicode scalar value as an integer. + /// + public int RuneValue + { + // Rune is an internal shim with netstandard2.0 and accessing it throws an internal access exception. + // Expose integer value. Can be converted back to Rune by caller. + get => _virtualChar.Rune.Value; + } /// public char SurrogateChar => _virtualChar.SurrogateChar; @@ -31,5 +39,14 @@ internal AspNetCoreVirtualChar(VirtualChar virtualChar) /// public override string ToString() => _virtualChar.ToString(); + + /// + public override bool Equals(object? obj) => obj is AspNetCoreVirtualChar vc && Equals(vc); + + /// + public bool Equals(AspNetCoreVirtualChar other) => _virtualChar.Equals(other._virtualChar); + + /// + public override int GetHashCode() => _virtualChar.GetHashCode(); } } diff --git a/src/Tools/Source/CompilerGeneratorTools/Source/BoundTreeGenerator/BoundNodeClassWriter.cs b/src/Tools/Source/CompilerGeneratorTools/Source/BoundTreeGenerator/BoundNodeClassWriter.cs index e4612add8b8d6..eeb7d410a1862 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(); @@ -843,11 +829,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) { @@ -891,6 +875,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; diff --git a/src/VisualStudio/CSharp/Impl/xlf/VSPackage.cs.xlf b/src/VisualStudio/CSharp/Impl/xlf/VSPackage.cs.xlf index 5b4c526db4aa6..5d2549b347231 100644 --- a/src/VisualStudio/CSharp/Impl/xlf/VSPackage.cs.xlf +++ b/src/VisualStudio/CSharp/Impl/xlf/VSPackage.cs.xlf @@ -94,64 +94,67 @@ Detect and offer editor features for JSON strings; Use enhanced colors; Editor Color Scheme; Inheritance Margin; - Podtrhnout znovu přiřazené proměnné; -Zobrazovat vložené nápovědy; -Zobrazit diagnostiku pro zavřené soubory; -Vybarvit regulární výraz; -Zvýrazňovat související komponenty pod kurzorem; -Nahlásit neplatné regulární výrazy; -Povolit úplnou analýzu řešení; -Provést analýzu funkcí editoru v externím procesu; -Povolit navigaci na dekompilované zdroje; -Pro navigaci vždy používat výchozí servery symbolů; -Direktivy using; -Při řazení direktiv using umístit systémové direktivy jako první; -Oddělovat skupiny direktiv using; -Navrhnout použití typů v sestaveních reference; -Navrhnout použití typů v balíčcích NuGet; -Zvýrazňování; -Zvýrazňovat odkazy na symbol pod kurzorem; -Zvýrazňovat související klíčová slova pod kurzorem; -Sbalení; -Po otevření souborů přejít do režimu osnovy; -Zobrazovat oddělovače řádků procedur; -Zobrazit sbalení pro konstrukty na úrovni deklarace; -Zobrazit sbalení pro konstrukty na úrovni kódu; -Zobrazit sbalení pro komentáře a oblasti pro preprocesor; -Při sbalování na definice sbalovat oblasti; -Zesvětlení; -Zesvětlit nepoužité direktivy using; -Zesvětlit nedosažitelný kód; -Vodítka pro strukturu bloku; -Zobrazit vodítka pro konstrukty na úrovni deklarace; -Zobrazit vodítka pro konstrukty na úrovni kódu; -Nápověda k editoru; -Generovat komentáře dokumentace XML pro ///; -Při psaní komentářů /* */ vkládat na začátek nových řádků hvězdičku (*); -Zobrazovat náhled pro sledování přejmenování; -Rozdělit literály řetězců u Enter; -Oznamovat neplatné zástupné symboly ve voláních string.Format; -Extrahovat metodu; -Nevkládat odkaz nebo výstup do vlastní struktury; -Implementovat rozhraní nebo abstraktní třídu; -Vlastnosti, události a metody při vkládání umístit; -s ostatními členy stejného druhu; -na konec; -Při generování vlastnosti; -preferovat vyvolávací vlastnosti; -preferovat automatické vlastnosti; + Underline reassigned variables; +Display inline hints; +Show diagnostics for closed files; +Colorize regular expression; +Highlight related components under cursor; +Report invalid regular expressions; +Enable full solution analysis; +Perform editor feature analysis in external process; +Enable navigation to decompiled sources; +Always use default symbol servers for navigation; +Using directives; +Place system directives first when sorting usings; +Separate using directive groups; +Suggest usings for types in reference assemblies; +Suggest usings for types in NuGet packages; +Highlighting; +Highlight references to symbol under cursor; +Highlight related keywords under cursor; +Outlining; +Enter outlining mode when files open; +Collapse #regions on file open; +Collapse usings on file open; +Collapse metadata implementations on file open; +Show procedure line separators; +Show outlining for declaration level constructs; +Show outlining for code level constructs; +Show outlining for comments and preprocessor regions; +Collapse regions when collapsing to definitions; +Fading; +Fade out unused usings; +Fade out unreachable code; +Block Structure Guides; +Show guides for declaration level constructs; +Show guides for code level constructs; +Editor Help; +Generate XML documentation comments for ///; +Insert * at the start of new lines when writing /* */ comments; +Show preview for rename tracking; +Split string literals on Enter; +Report invalid placeholders in string.Format calls; +Extract Method; +Don't put ref or out on custom struct; +Implement Interface or Abstract Class; +When inserting properties, events and methods, place them; +with other members of the same kind; +at the end; +When generating property; +prefer throwing properties; +prefer auto properties; regex; -regulární výraz; -Obarvit regulární výrazy; -Zvýraznit související komponenty pod kurzorem; -Nahlásit neplatné regulární výrazy; +regular expression; +Colorize regular expressions; +Highlight related components under cursor; +Report invalid regular expressions; JSON; -Obarvit řetězce JSON; -Nahlásit neplatné řetězce JSON; -Rozpoznat a nabízet funkce editoru pro řetězce JSON; -Používat rozšířené barvy; -Barevné schéma editoru; -Okraj dědičnosti; +Colorize JSON strings; +Report invalid JSON strings; +Detect and offer editor features for JSON strings; +Use enhanced colors; +Editor Color Scheme; +Inheritance Margin; C# Advanced options page keywords diff --git a/src/VisualStudio/CSharp/Impl/xlf/VSPackage.de.xlf b/src/VisualStudio/CSharp/Impl/xlf/VSPackage.de.xlf index 143ba4e534f79..a807264972260 100644 --- a/src/VisualStudio/CSharp/Impl/xlf/VSPackage.de.xlf +++ b/src/VisualStudio/CSharp/Impl/xlf/VSPackage.de.xlf @@ -94,64 +94,67 @@ Detect and offer editor features for JSON strings; Use enhanced colors; Editor Color Scheme; Inheritance Margin; - Neu zugewiesene Variablen unterstreichen; -Inlinehinweise anzeigen; -Diagnoseinformationen für geschlossene Dateien anzeigen; -Reguläre Ausdrücke farbig hervorheben; -Zugehörige Komponenten unter dem Cursor hervorheben; -Ungültige reguläre Ausdrücke melden; -Vollständige Lösungsanalyse aktivieren; -Editor-Funktionsanalyse in externem Prozess ausführen; -Navigation zu dekompilierten Quellen aktivieren; -Immer Standardsymbolserver für die Navigation verwenden; -Verarbeitungsanweisungen; -Systemanweisungen beim Sortieren von Verarbeitungen an erster Stelle platzieren; -Verarbeitungsrichtliniengruppen aufteilen; -Verarbeitungen für Typen in Verweisassemblys vorschlagen; -Verarbeitungen für Typen in NuGet-Paketen vorschlagen; -Hervorhebung; -Verweise auf Symbol unter Cursor hervorheben; -Verwandte Schlüsselbegriffe unter Cursor hervorheben; -Gliederung; -Gliederungsmodus beim Öffnen von Dateien starten; -Zeilentrennzeichen in Prozeduren anzeigen; -Gliederung für Konstrukte auf Deklarationsebene anzeigen; -Gliederung für Konstrukte auf Codeebene anzeigen; -Gliederung für Kommentare und Präprozessorregionen anzeigen; -Regionen beim Reduzieren auf Definitionen zuklappen; -Ausblenden; -Nicht verwendete Verarbeitungsanweisungen ausblenden; -Unerreichbaren Code ausblenden; -Führungslinien für Struktur blockieren; -Führungslinien für Konstrukte auf Deklarationsebene anzeigen; -Führungslinien für Konstrukte auf Codeebene anzeigen; -Editor-Hilfe; -XML-Dokumentationskommentare für /// generieren; -Beim Schreiben von /* */-Kommentaren * am Beginn neuer Zeilen einfügen; -Vorschau für Nachverfolgung beim Umbenennen anzeigen; -Zeichenfolgenliterale bei Eingabe teilen; -Ungültige Platzhalter in string.Format-Aufrufen melden; -Methode extrahieren; -Weder „ref“ noch „out“ in benutzerdefinierter Struktur platzieren; -Schnittstellen- oder abstrakte Klasse implementieren; -Eigenschaften, Ereignisse und Methoden beim Einfügen; -bei anderen Membern derselben Art platzieren; -am Ende platzieren; -Beim Generieren von Eigenschaften; -ausgelöste Eigenschaften bevorzugen; -automatische Eigenschaften bevorzugen; -RegEx; -regulärer Ausdruck; -reguläre Audrücke farblich hervorheben; -Verwandte Komponenten unter dem Cursor hervorheben; -Ungültige reguläre Ausdrücke melden; + Underline reassigned variables; +Display inline hints; +Show diagnostics for closed files; +Colorize regular expression; +Highlight related components under cursor; +Report invalid regular expressions; +Enable full solution analysis; +Perform editor feature analysis in external process; +Enable navigation to decompiled sources; +Always use default symbol servers for navigation; +Using directives; +Place system directives first when sorting usings; +Separate using directive groups; +Suggest usings for types in reference assemblies; +Suggest usings for types in NuGet packages; +Highlighting; +Highlight references to symbol under cursor; +Highlight related keywords under cursor; +Outlining; +Enter outlining mode when files open; +Collapse #regions on file open; +Collapse usings on file open; +Collapse metadata implementations on file open; +Show procedure line separators; +Show outlining for declaration level constructs; +Show outlining for code level constructs; +Show outlining for comments and preprocessor regions; +Collapse regions when collapsing to definitions; +Fading; +Fade out unused usings; +Fade out unreachable code; +Block Structure Guides; +Show guides for declaration level constructs; +Show guides for code level constructs; +Editor Help; +Generate XML documentation comments for ///; +Insert * at the start of new lines when writing /* */ comments; +Show preview for rename tracking; +Split string literals on Enter; +Report invalid placeholders in string.Format calls; +Extract Method; +Don't put ref or out on custom struct; +Implement Interface or Abstract Class; +When inserting properties, events and methods, place them; +with other members of the same kind; +at the end; +When generating property; +prefer throwing properties; +prefer auto properties; +regex; +regular expression; +Colorize regular expressions; +Highlight related components under cursor; +Report invalid regular expressions; JSON; -JSON-Zeichenfolgen farblich hervorheben; -Ungültige JSON-Zeichenfolgen hervorheben;Redakteurfunktionen funden und für JSON-Zeichenfolgen anbieten; -Erweiterte Farben benutzen; -Redakteur-Farbschema; -Vererbungsspielraum; -Vererbungsrand; +Colorize JSON strings; +Report invalid JSON strings; +Detect and offer editor features for JSON strings; +Use enhanced colors; +Editor Color Scheme; +Inheritance Margin; C# Advanced options page keywords diff --git a/src/VisualStudio/CSharp/Impl/xlf/VSPackage.es.xlf b/src/VisualStudio/CSharp/Impl/xlf/VSPackage.es.xlf index e66f073edd51a..941d0bad3de0d 100644 --- a/src/VisualStudio/CSharp/Impl/xlf/VSPackage.es.xlf +++ b/src/VisualStudio/CSharp/Impl/xlf/VSPackage.es.xlf @@ -94,64 +94,67 @@ Detect and offer editor features for JSON strings; Use enhanced colors; Editor Color Scheme; Inheritance Margin; - Subrayar variables reasignadas; -Mostrar sugerencias insertadas; -Mostrar diagnóstico para archivos cerrados; -Colorear expresión regular; -Resaltar componentes relacionados bajo el cursor; -Informar sobre expresiones regulares no válidas; -Habilitar análisis de la solución completa; -Realizar el análisis de características del editor en proceso externo; -Habilitar la navegación a orígenes descompilados; -Usar siempre servidores de símbolo predeterminados para la navegación; -Directivas using; -Poner directivas del sistema primero cuando se organicen instrucciones using; -Separar grupos de directivas using; -Sugerir directivas using para los tipos en los ensamblados de referencia; -Sugerir directivas using para los tipos en los paquetes NuGet; -Resaltar; -Resaltar referencias al símbolo bajo el cursor; -Resaltar palabras clave relacionadas bajo el cursor; -Esquematización; -Especificar el modo de esquematización al abrir los archivos; -Mostrar separadores de líneas de procedimientos; -Mostrar esquematización para construcciones a nivel de declaración; -Mostrar esquematización para construcciones a nivel de código; -Mostrar esquematización para regiones de preprocesador y comentarios; -Contraer regiones cuando se contraigan las definiciones; -Atenuación; -Atenuar directivas using no usadas; -Atenuar código inaccesible; -Guías de estructura de bloque; -Mostrar guías para construcciones a nivel de declaración; -Mostrar guías para construcciones a nivel de código; -Ayuda del editor; -Generar comentarios de documentación XML para ///; -Insertar * al comienzo de las nuevas líneas al escribir comentarios /* */ -Mostrar vista previa para seguimiento de cambio de nombre; -Dividir literales de cadena al presionar Entrar; -Informar sobre marcadores de posición no válidos en llamadas a string.Format; -Extraer método; -No colocar \"out\" o \"ref\" en estructura personalizada; -Implementar interfaz o clase abstracta; -Al insertar propiedades, eventos y métodos, colóquelos; -con otros miembros de la misma clase; -al final; -Al generar una propiedad; -preferir propiedades de lanzamiento; -preferir propiedades automáticas; + Underline reassigned variables; +Display inline hints; +Show diagnostics for closed files; +Colorize regular expression; +Highlight related components under cursor; +Report invalid regular expressions; +Enable full solution analysis; +Perform editor feature analysis in external process; +Enable navigation to decompiled sources; +Always use default symbol servers for navigation; +Using directives; +Place system directives first when sorting usings; +Separate using directive groups; +Suggest usings for types in reference assemblies; +Suggest usings for types in NuGet packages; +Highlighting; +Highlight references to symbol under cursor; +Highlight related keywords under cursor; +Outlining; +Enter outlining mode when files open; +Collapse #regions on file open; +Collapse usings on file open; +Collapse metadata implementations on file open; +Show procedure line separators; +Show outlining for declaration level constructs; +Show outlining for code level constructs; +Show outlining for comments and preprocessor regions; +Collapse regions when collapsing to definitions; +Fading; +Fade out unused usings; +Fade out unreachable code; +Block Structure Guides; +Show guides for declaration level constructs; +Show guides for code level constructs; +Editor Help; +Generate XML documentation comments for ///; +Insert * at the start of new lines when writing /* */ comments; +Show preview for rename tracking; +Split string literals on Enter; +Report invalid placeholders in string.Format calls; +Extract Method; +Don't put ref or out on custom struct; +Implement Interface or Abstract Class; +When inserting properties, events and methods, place them; +with other members of the same kind; +at the end; +When generating property; +prefer throwing properties; +prefer auto properties; regex; -expresión regular; -Colorear las expresiones regulares; -Resaltar los componentes relacionados bajo el cursor; -Informar de las expresiones regulares no válidas; +regular expression; +Colorize regular expressions; +Highlight related components under cursor; +Report invalid regular expressions; JSON; -Colorear las cadenas JSON; -Informar de las cadenas JSON no válidas; -Detectar y ofrecer funciones del editor para las cadenas JSON; -Utilizar colores mejorados; -Esquema de colores del editor; -Margen de herencia; +Colorize JSON strings; +Report invalid JSON strings; +Detect and offer editor features for JSON strings; +Use enhanced colors; +Editor Color Scheme; +Inheritance Margin; C# Advanced options page keywords diff --git a/src/VisualStudio/CSharp/Impl/xlf/VSPackage.fr.xlf b/src/VisualStudio/CSharp/Impl/xlf/VSPackage.fr.xlf index c81fb966fdaf8..69157c0b0d84f 100644 --- a/src/VisualStudio/CSharp/Impl/xlf/VSPackage.fr.xlf +++ b/src/VisualStudio/CSharp/Impl/xlf/VSPackage.fr.xlf @@ -94,64 +94,67 @@ Detect and offer editor features for JSON strings; Use enhanced colors; Editor Color Scheme; Inheritance Margin; - Souligner les variables réaffectées ; -Afficher les indications en ligne ; -Afficher les diagnostics pour les fichiers fermés ; -Coloriser les expressions régulières ; -Mettre en évidence les composants associés sous le curseur ; -Signaler les expressions régulières invalides ; -Activer l'analyse complète de la solution ; -Effectuer l'analyse des fonctionnalités de l'éditeur dans le processus externe ; -Activer la navigation vers les sources décompilées ; -Toujours utiliser les serveurs de symboles par défaut pour la navigation ; -Utiliser les directives ; -Placer les directives système en premier lors du tri des utilisations ; -Séparer les groupes de directives d'utilisation ; -Suggérer des utilisations pour les types dans les assemblages de référence ; -Suggérer des utilisations pour les types dans les paquets NuGet ; -Mettre en évidence ; -Mettre en évidence les références au symbole sous le curseur ; -Mettre en évidence les mots-clés associés sous le curseur ; -Contournement ; -Entrer dans le mode contour lorsque les fichiers sont ouverts ; -Afficher les séparateurs de lignes de procédure ; -Afficher le contour pour les constructions au niveau de la déclaration ; -Afficher le contour pour les constructions au niveau du code ; -Afficher le contour pour les commentaires et les régions du préprocesseur ; -Réduire les régions lors de la réduction aux définitions ; -Estompage ; -Faire disparaître les utilisations inutilisées ; -Faire disparaître le code inaccessible ; -Guides de structure de bloc ; -Afficher les guides pour les constructions au niveau de la déclaration ; -Afficher les guides pour les constructions au niveau du code ; -Aide de l'éditeur ; -Générer des commentaires de documentation XML pour /// ; -Insérer * au début des nouvelles lignes lors de l'écriture de commentaires /* */ ; -Afficher l'aperçu pour le suivi des renommages ; -Diviser les littéraux de chaîne à l'entrée ; -Signaler les caractères de remplacement invalides dans la chaîne. Format calls ; -Méthode d’extraction; -Ne mettez pas de réf ou de hors sur la structure personnalisée ; - Implementez l’Interface ou classe abstraite ; - Lorsque vous insérez des propriétés, des événements et des méthodes, placez-les ; -avec d’autres membres du même type -à la fin ; -; En générant la propriété ; -préférez les propriétés de lancement ; -préférez les propriétés auto ; -regex ; -Expression régulière ; - Coloriser les expressions régulières ; - Mettre en surbrillance les composants associés sous le curseur ; - Signaler les expressions régulières invalides ; - JSON ; - Coloriser les chaînes JSON ; -Signaler les chaînes JSON invalides ; - Détecter et proposer des fonctionnalités d'éditeur pour les chaînes JSON ; -Utiliser des couleurs améliorées ; - Schéma de couleurs de l'éditeur ; -Marge d'héritage ; + Underline reassigned variables; +Display inline hints; +Show diagnostics for closed files; +Colorize regular expression; +Highlight related components under cursor; +Report invalid regular expressions; +Enable full solution analysis; +Perform editor feature analysis in external process; +Enable navigation to decompiled sources; +Always use default symbol servers for navigation; +Using directives; +Place system directives first when sorting usings; +Separate using directive groups; +Suggest usings for types in reference assemblies; +Suggest usings for types in NuGet packages; +Highlighting; +Highlight references to symbol under cursor; +Highlight related keywords under cursor; +Outlining; +Enter outlining mode when files open; +Collapse #regions on file open; +Collapse usings on file open; +Collapse metadata implementations on file open; +Show procedure line separators; +Show outlining for declaration level constructs; +Show outlining for code level constructs; +Show outlining for comments and preprocessor regions; +Collapse regions when collapsing to definitions; +Fading; +Fade out unused usings; +Fade out unreachable code; +Block Structure Guides; +Show guides for declaration level constructs; +Show guides for code level constructs; +Editor Help; +Generate XML documentation comments for ///; +Insert * at the start of new lines when writing /* */ comments; +Show preview for rename tracking; +Split string literals on Enter; +Report invalid placeholders in string.Format calls; +Extract Method; +Don't put ref or out on custom struct; +Implement Interface or Abstract Class; +When inserting properties, events and methods, place them; +with other members of the same kind; +at the end; +When generating property; +prefer throwing properties; +prefer auto properties; +regex; +regular expression; +Colorize regular expressions; +Highlight related components under cursor; +Report invalid regular expressions; +JSON; +Colorize JSON strings; +Report invalid JSON strings; +Detect and offer editor features for JSON strings; +Use enhanced colors; +Editor Color Scheme; +Inheritance Margin; C# Advanced options page keywords diff --git a/src/VisualStudio/CSharp/Impl/xlf/VSPackage.it.xlf b/src/VisualStudio/CSharp/Impl/xlf/VSPackage.it.xlf index 86d067f66e711..0f9e69d08c326 100644 --- a/src/VisualStudio/CSharp/Impl/xlf/VSPackage.it.xlf +++ b/src/VisualStudio/CSharp/Impl/xlf/VSPackage.it.xlf @@ -94,64 +94,67 @@ Detect and offer editor features for JSON strings; Use enhanced colors; Editor Color Scheme; Inheritance Margin; - Sottolinea variabili riassegnate; -Visualizza suggerimenti inline; -Mostra diagnostica per file chiusi; -Colora espressione regolare; -Evidenzia i componenti correlati sotto il cursore; -Segnala espressioni regolari non valide; -Abilita analisi della soluzione completa; -Esegui analisi delle funzionalità dell'editor in processo esterno; -Abilita spostamento a origini decompilate; -Usa sempre i server di simboli predefiniti per lo spostamento; -Direttive using; -Inserisci prima le direttive system durante l'ordinamento delle direttive using; -Separa gruppi di direttive using; -Suggerisci le direttive using per i tipi in assembly di riferimento; -Suggerisci le direttive using per i tipi in pacchetti NuGet; -Evidenziazione; -Evidenzia riferimenti al simbolo sotto il cursore; -Evidenzia parole chiave correlate sotto il cursore; -Struttura; -Attiva la modalità struttura all'apertura del file; -Mostra separatori di riga routine; -Mostra la struttura per i costrutti a livello di dichiarazione; -Mostra la struttura per i costrutti a livello di codice; -Mostra la struttura per i commenti e le regioni del preprocessore; -Comprimi regioni durante la compressione delle definizioni; -Dissolvenza; -Applica dissolvenza a direttive using non usate; -Applica dissolvenza a codice non eseguibile; -Guide per strutture a blocchi; -Mostra le guide per i costrutti a livello di dichiarazione; -Mostra le guide per i costrutti a livello di codice; -Guida dell'editor; -Genera commenti relativi alla documentazione XML per ///; -Inserisci * all'inizio di nuove righe quando si scrivono commenti /* */; -Mostra anteprima per verifica ridenominazione; -Dividi valori letterali stringa dopo INVIO; -Segnala segnaposto non validi in chiamate string.Format; -Estrai metodo; -Non inserire out o ref in uno struct personalizzato; -Implementa interfaccia o classe astratta; -Posiziona proprietà, eventi e metodi inseriti; -con altri membri dello stesso tipo; -alla fine; -Durante la generazione della proprietà; -preferisci proprietà generate; -preferisci proprietà automatiche; + Underline reassigned variables; +Display inline hints; +Show diagnostics for closed files; +Colorize regular expression; +Highlight related components under cursor; +Report invalid regular expressions; +Enable full solution analysis; +Perform editor feature analysis in external process; +Enable navigation to decompiled sources; +Always use default symbol servers for navigation; +Using directives; +Place system directives first when sorting usings; +Separate using directive groups; +Suggest usings for types in reference assemblies; +Suggest usings for types in NuGet packages; +Highlighting; +Highlight references to symbol under cursor; +Highlight related keywords under cursor; +Outlining; +Enter outlining mode when files open; +Collapse #regions on file open; +Collapse usings on file open; +Collapse metadata implementations on file open; +Show procedure line separators; +Show outlining for declaration level constructs; +Show outlining for code level constructs; +Show outlining for comments and preprocessor regions; +Collapse regions when collapsing to definitions; +Fading; +Fade out unused usings; +Fade out unreachable code; +Block Structure Guides; +Show guides for declaration level constructs; +Show guides for code level constructs; +Editor Help; +Generate XML documentation comments for ///; +Insert * at the start of new lines when writing /* */ comments; +Show preview for rename tracking; +Split string literals on Enter; +Report invalid placeholders in string.Format calls; +Extract Method; +Don't put ref or out on custom struct; +Implement Interface or Abstract Class; +When inserting properties, events and methods, place them; +with other members of the same kind; +at the end; +When generating property; +prefer throwing properties; +prefer auto properties; regex; -espressione regolare; -Colora espressioni regolari; -Evidenzia componenti correlati sotto il cursore; -Segnala espressioni regolari non valide; +regular expression; +Colorize regular expressions; +Highlight related components under cursor; +Report invalid regular expressions; JSON; -Colora le stringhe JSON; -Segnala stringhe JSON non valide; -Rileva e offri funzionalità dell'editor per le stringhe JSON; -Usa colori migliorati; -Combinazione colori editor; -Margine di ereditarietà; +Colorize JSON strings; +Report invalid JSON strings; +Detect and offer editor features for JSON strings; +Use enhanced colors; +Editor Color Scheme; +Inheritance Margin; C# Advanced options page keywords diff --git a/src/VisualStudio/CSharp/Impl/xlf/VSPackage.ja.xlf b/src/VisualStudio/CSharp/Impl/xlf/VSPackage.ja.xlf index 17d12325f54ea..58ef9ada432c0 100644 --- a/src/VisualStudio/CSharp/Impl/xlf/VSPackage.ja.xlf +++ b/src/VisualStudio/CSharp/Impl/xlf/VSPackage.ja.xlf @@ -94,64 +94,67 @@ Detect and offer editor features for JSON strings; Use enhanced colors; Editor Color Scheme; Inheritance Margin; - 再割り当てされた変数に下線を引く; -インラインのヒントを表示する; -閉じているファイルの診断結果を表示する; -正規表現をカラー化する; -カーソルの下にある関連コンポーネントを強調表示する; -無効な正規表現を報告する; -完全ソリューション解析を有効にする; -外部プロセスでエディター機能解析を実行する; -逆コンパイルされたソースへのナビゲーションを有効にする; -ナビゲーションには常に既定のシンボル サーバーを使用する; -using ディレクティブ; -using を並べ替える際に、システム ディレクティブを先頭に配置する; -using ディレクティブ グループを分離する; -参照アセンブリの型に using を提案する; -NuGet パッケージの型に using を提案する; -強調表示; -カーソルの下にあるシンボルへの参照を強調表示する; -カーソルの下にある関連キーワードを強調表示する; -アウトライン; -ファイルを開くときにアウトライン モードを入力する; -プロシージャ行の区切り記号を表示する; -宣言レベルのコンストラクトのアウトラインを表示する; -コード レベルのコンストラクトのアウトラインを表示する; -コメントとプリプロセッサ リージョンのアウトラインを表示する; -定義を折りたたむときにリージョンを折りたたむ; -フェード中; -未使用の using をフェードアウトする; -到達できないコードをフェードアウトする; -ブロック構造のガイド; -宣言レベルのコンストラクトのガイドを表示する; -コード レベルのコンストラクトのガイドを表示する; -エディターのヘルプ; -/// の XML ドキュメント コメントを生成する; -/* */ コメントを記述する際、新しい行の先頭に * を挿入する; -名前変更追跡のプレビューを表示する; -Enter で文字列リテラルを分割する; -string.Format の呼び出しで無効なプレースホルダーをレポートする; -メソッドを抽出する; -カスタム構造体に ref または out を設定しない; -インターフェイスまたは抽象クラスを実装する; -プロパティ、イベント、メソッドを挿入する際には、次の場所に挿入する; -同じ種類の他のメンバーと共に; -末尾; -プロパティの生成時; -スロー プロパティを優先する; -自動プロパティを優先する; -RegEx; -正規表現; -正規表現の色付け; -カーソルの下の関連コンポーネントの強調表示; -無効な正規表現の報告; + Underline reassigned variables; +Display inline hints; +Show diagnostics for closed files; +Colorize regular expression; +Highlight related components under cursor; +Report invalid regular expressions; +Enable full solution analysis; +Perform editor feature analysis in external process; +Enable navigation to decompiled sources; +Always use default symbol servers for navigation; +Using directives; +Place system directives first when sorting usings; +Separate using directive groups; +Suggest usings for types in reference assemblies; +Suggest usings for types in NuGet packages; +Highlighting; +Highlight references to symbol under cursor; +Highlight related keywords under cursor; +Outlining; +Enter outlining mode when files open; +Collapse #regions on file open; +Collapse usings on file open; +Collapse metadata implementations on file open; +Show procedure line separators; +Show outlining for declaration level constructs; +Show outlining for code level constructs; +Show outlining for comments and preprocessor regions; +Collapse regions when collapsing to definitions; +Fading; +Fade out unused usings; +Fade out unreachable code; +Block Structure Guides; +Show guides for declaration level constructs; +Show guides for code level constructs; +Editor Help; +Generate XML documentation comments for ///; +Insert * at the start of new lines when writing /* */ comments; +Show preview for rename tracking; +Split string literals on Enter; +Report invalid placeholders in string.Format calls; +Extract Method; +Don't put ref or out on custom struct; +Implement Interface or Abstract Class; +When inserting properties, events and methods, place them; +with other members of the same kind; +at the end; +When generating property; +prefer throwing properties; +prefer auto properties; +regex; +regular expression; +Colorize regular expressions; +Highlight related components under cursor; +Report invalid regular expressions; JSON; -JSON 文字列の色付け; -無効な JSON 文字列の報告; -JSON 文字列のエディター機能の検出と提供; -拡張された色を使用する; -エディターの配色; -継承余白; +Colorize JSON strings; +Report invalid JSON strings; +Detect and offer editor features for JSON strings; +Use enhanced colors; +Editor Color Scheme; +Inheritance Margin; C# Advanced options page keywords diff --git a/src/VisualStudio/CSharp/Impl/xlf/VSPackage.ko.xlf b/src/VisualStudio/CSharp/Impl/xlf/VSPackage.ko.xlf index 6d65b6a206f36..d8b001eea30cc 100644 --- a/src/VisualStudio/CSharp/Impl/xlf/VSPackage.ko.xlf +++ b/src/VisualStudio/CSharp/Impl/xlf/VSPackage.ko.xlf @@ -94,64 +94,67 @@ Detect and offer editor features for JSON strings; Use enhanced colors; Editor Color Scheme; Inheritance Margin; - 다시 할당된 변수에 밑줄 긋기; -인라인 힌트 표시; -닫힌 파일에 대한 진단 표시; -정규식 색 지정; -커서 아래의 관련 구성 요소 강조 표시; -잘못된 정규식 보고; -전체 솔루션 분석 사용; -외부 프로세스에서 편집기 기능 분석 수행; -디컴파일된 원본 탐색 사용; -탐색 시 항상 기본 기호 서버 사용; -Using 지시문; -Using 정렬 시 system 지시문 먼저 배치; -Using 지시문 그룹 구분; -참조 어셈블리의 형식에 Using 제안; -NuGet 패키지의 형식에 Using 제안; -강조 표시; -커서 아래의 기호에 대한 참조 강조 표시; -커서 아래의 관련 키워드 강조 표시; -개요; -개요 모드로 파일 열기; -프로시저 줄 구분선 표시; -선언 수준 구문에 대한 개요 표시; -코드 수준 구문에 대한 개요 표시; -설명 및 전처리기 영역에 대한 개요 표시; -정의로 축소할 때 영역 축소; -페이딩; -사용하지 않는 using 페이드 아웃; -접근할 수 없는 코드 페이드 아웃; -블록 구문 가이드; -선언 수준 구문에 대한 가이드 표시; -코드 수준 구문에 대한 가이드 표시; -편집기 도움말; -///에 대해 XML 문서 주석 생성; -/* */ 주석을 작성할 때 새 줄의 시작 부분에 * 삽입; -이름 바꾸기 추적 미리 보기 표시; -<Enter> 키를 누르면 문자열 리터럴 분할; -string.Format 호출에서 잘못된 자리 표시자 보고; -메서드 추출; -사용자 지정 구조체에 ref 또는 out 추가 안 함; -인터페이스 또는 추상 클래스 구현; -속성, 이벤트 및 메서드 삽입 시 다음과 같이 배치; -같은 종류의 다른 멤버와 함께; -끝에; -속성 생성 시; -throw되는 속성 선호; -자동 속성 선호; + Underline reassigned variables; +Display inline hints; +Show diagnostics for closed files; +Colorize regular expression; +Highlight related components under cursor; +Report invalid regular expressions; +Enable full solution analysis; +Perform editor feature analysis in external process; +Enable navigation to decompiled sources; +Always use default symbol servers for navigation; +Using directives; +Place system directives first when sorting usings; +Separate using directive groups; +Suggest usings for types in reference assemblies; +Suggest usings for types in NuGet packages; +Highlighting; +Highlight references to symbol under cursor; +Highlight related keywords under cursor; +Outlining; +Enter outlining mode when files open; +Collapse #regions on file open; +Collapse usings on file open; +Collapse metadata implementations on file open; +Show procedure line separators; +Show outlining for declaration level constructs; +Show outlining for code level constructs; +Show outlining for comments and preprocessor regions; +Collapse regions when collapsing to definitions; +Fading; +Fade out unused usings; +Fade out unreachable code; +Block Structure Guides; +Show guides for declaration level constructs; +Show guides for code level constructs; +Editor Help; +Generate XML documentation comments for ///; +Insert * at the start of new lines when writing /* */ comments; +Show preview for rename tracking; +Split string literals on Enter; +Report invalid placeholders in string.Format calls; +Extract Method; +Don't put ref or out on custom struct; +Implement Interface or Abstract Class; +When inserting properties, events and methods, place them; +with other members of the same kind; +at the end; +When generating property; +prefer throwing properties; +prefer auto properties; regex; -정규식; -정규식 색 지정; -커서 아래의 관련 구성 요소 강조; -잘못된 정규식 보고; +regular expression; +Colorize regular expressions; +Highlight related components under cursor; +Report invalid regular expressions; JSON; -JSON 문자열 색 지정; -잘못된 JSON 문자열 보고; -JSON 문자열용 편집기 기능 탐지 및 제안; -향상된 색 사용; -편집기 색 구성표; -상속 여백; +Colorize JSON strings; +Report invalid JSON strings; +Detect and offer editor features for JSON strings; +Use enhanced colors; +Editor Color Scheme; +Inheritance Margin; C# Advanced options page keywords diff --git a/src/VisualStudio/CSharp/Impl/xlf/VSPackage.pl.xlf b/src/VisualStudio/CSharp/Impl/xlf/VSPackage.pl.xlf index 6cba9cc4bd4bc..310922e41e839 100644 --- a/src/VisualStudio/CSharp/Impl/xlf/VSPackage.pl.xlf +++ b/src/VisualStudio/CSharp/Impl/xlf/VSPackage.pl.xlf @@ -94,64 +94,67 @@ Detect and offer editor features for JSON strings; Use enhanced colors; Editor Color Scheme; Inheritance Margin; - Podkreślaj ponownie przypisane zmienne; -Wyświetlaj wskazówki w tekście; -Pokaż dane diagnostyczne dla zamkniętych plików; -Koloruj wyrażenia regularne; -Wyróżnij powiązane składniki pod kursorem; -Raportuj nieprawidłowe wyrażenia regularne; -Włącz pełną analizę rozwiązania; -Wykonaj analizę funkcji edytora w procesie zewnętrznym; -Włącz nawigowanie do dekompilowanych źródeł; -Zawsze używaj domyślnych serwerów symboli na potrzeby nawigowania -Używaj dyrektyw; -Najpierw umieść dyrektywy systemu podczas sortowania użycia; -Oddziel grupy dyrektywy użycia; -Sugeruj użycia dla typów w zestawach odwołań; -Sugeruj użycia dla typów w pakietach NuGet; -Wyróżnianie; -Wyróżnij odwołania do symbolu pod kursorem; -Wyróżnij pokrewne słowa kluczowe pod kursorem; -Konspekt; -Przejdź do trybu konspektu przy otwieraniu pliku; -Pokaż separatory wierszy procedur; -Pokaż konspekt dla konstrukcji na poziomie deklaracji; -Pokaż konspekt dla konstrukcji na poziomie kodu; -Pokaż konspekt dla regionów komentarzy i preprocesora; -Zwiń regiony podczas zwijania do definicji; -Zanikanie; -Zanikanie nieużywanych użyć; -Zanikanie nieosiągalnego kodu; -Prowadnice struktury blokowej; -Pokaż prowadnice dla konstrukcji na poziomie deklaracji; -Pokaż prowadnice dla konstrukcji na poziomie kodu; -Pomoc edytora; -Generuj komentarze dokumentacji XML dla elementów ///; -Wstaw znak * na początku nowych wierszy podczas pisania komentarzy typu /* */; -Pokaż podgląd śledzenia zmian nazw; -Dziel literały ciągów po naciśnięciu klawisza Enter; -Zgłaszaj nieprawidłowe symbole zastępcze w ciągu.Formatuj komórki; -Metoda wyodrębniania; -Nie umieszczaj parametrów ref i out w strukturze niestandardowej; -Implementuj interfejs lub klasę abstrakcyjną; -W przypadku wstawiania właściwości, zdarzeń i metod umieszczaj je razem; -z innymi składowymi tego samego rodzaju; -na końcu; -Podczas generowania właściwości; -preferuj zgłaszanie właściwości; -preferuj właściwości automatyczne; -wyrażenie regex; -wyrażenie regularne; -Koloruj wyrażenia regularne; -Wyróżniaj powiązane składniki pod kursorem; -Zgłaszaj nieprawidłowe wyrażenia regularne; -JSON, -Koloruj ciągi JSON; -Zgłaszaj nieprawidłowe ciągi JSON; -Wykrywaj i oferuj funkcje edytowania dla ciągów JSON; -Używaj rozszerzonych kolorów; -Schemat kolorów edytora; -Margines dziedziczenia; + Underline reassigned variables; +Display inline hints; +Show diagnostics for closed files; +Colorize regular expression; +Highlight related components under cursor; +Report invalid regular expressions; +Enable full solution analysis; +Perform editor feature analysis in external process; +Enable navigation to decompiled sources; +Always use default symbol servers for navigation; +Using directives; +Place system directives first when sorting usings; +Separate using directive groups; +Suggest usings for types in reference assemblies; +Suggest usings for types in NuGet packages; +Highlighting; +Highlight references to symbol under cursor; +Highlight related keywords under cursor; +Outlining; +Enter outlining mode when files open; +Collapse #regions on file open; +Collapse usings on file open; +Collapse metadata implementations on file open; +Show procedure line separators; +Show outlining for declaration level constructs; +Show outlining for code level constructs; +Show outlining for comments and preprocessor regions; +Collapse regions when collapsing to definitions; +Fading; +Fade out unused usings; +Fade out unreachable code; +Block Structure Guides; +Show guides for declaration level constructs; +Show guides for code level constructs; +Editor Help; +Generate XML documentation comments for ///; +Insert * at the start of new lines when writing /* */ comments; +Show preview for rename tracking; +Split string literals on Enter; +Report invalid placeholders in string.Format calls; +Extract Method; +Don't put ref or out on custom struct; +Implement Interface or Abstract Class; +When inserting properties, events and methods, place them; +with other members of the same kind; +at the end; +When generating property; +prefer throwing properties; +prefer auto properties; +regex; +regular expression; +Colorize regular expressions; +Highlight related components under cursor; +Report invalid regular expressions; +JSON; +Colorize JSON strings; +Report invalid JSON strings; +Detect and offer editor features for JSON strings; +Use enhanced colors; +Editor Color Scheme; +Inheritance Margin; C# Advanced options page keywords diff --git a/src/VisualStudio/CSharp/Impl/xlf/VSPackage.pt-BR.xlf b/src/VisualStudio/CSharp/Impl/xlf/VSPackage.pt-BR.xlf index d915c5aedcf5f..7a235295ddab3 100644 --- a/src/VisualStudio/CSharp/Impl/xlf/VSPackage.pt-BR.xlf +++ b/src/VisualStudio/CSharp/Impl/xlf/VSPackage.pt-BR.xlf @@ -94,64 +94,67 @@ Detect and offer editor features for JSON strings; Use enhanced colors; Editor Color Scheme; Inheritance Margin; - Sublinhar variáveis ​​reatribuídas; -Exibir dicas embutidas; -Mostrar diagnósticos para arquivos fechados; -Colorizar expressões regulares; -Realçar componentes relacionados sob o cursor; -Relatar expressões regulares inválidas; -Habilitar análise completa da solução; -Realizar análise de recursos do editor em processo externo; -Habilitar navegação para fontes descompiladas; -Sempre use servidores de símbolos padrão para navegação; -Usando diretivas; -Coloque as diretivas do sistema primeiro ao classificar os usos; -Separe usando grupos de diretivas; -Sugerir usos para tipos em assemblies de referência; -Sugerir usos para tipos em pacotes NuGet; -Realçar; -Realçar referências ao símbolo sob o cursor; -Realçar palavras-chave relacionadas sob o cursor; -Esboço; -Entrar no modo de destaque quando os arquivos são abertos; -Mostrar separadores de linha de procedimento; -Mostrar estrutura de tópicos para construções de nível de declaração; -Mostrar contornos para construções de nível de código; -Mostrar contornos para comentários e regiões de pré-processador; -Recolher regiões ao recolher definições; -Desvanecimento; -Fade out de usos não utilizados; -Fade out de código inacessível ; -Guias de estrutura de bloco; -Mostrar guias para construções de nível de declaração; -Mostrar guias para construções de nível de código; -Ajuda do editor; -Gerar comentários de documentação XML para ///; -Inserir * no início de novas linhas ao escrever /* */ comentários; -Mostrar visualização para rastreamento de renomeação; -Dividir literais de cadeia de caracteres em Enter; -Relatar espaços reservados inválidos em chamadas string.Format; -Extrair Método; -Não colocar ref ou out em estrutura personalizada; -Implementar Interface ou Classe Abstrata; -Ao inserir propriedades, eventos e métodos, coloque-os; -com outros membros do mesmo tipo; -no final ; -Ao gerar propriedade; -prefira lançar propriedades; -prefira propriedades automáticas; + Underline reassigned variables; +Display inline hints; +Show diagnostics for closed files; +Colorize regular expression; +Highlight related components under cursor; +Report invalid regular expressions; +Enable full solution analysis; +Perform editor feature analysis in external process; +Enable navigation to decompiled sources; +Always use default symbol servers for navigation; +Using directives; +Place system directives first when sorting usings; +Separate using directive groups; +Suggest usings for types in reference assemblies; +Suggest usings for types in NuGet packages; +Highlighting; +Highlight references to symbol under cursor; +Highlight related keywords under cursor; +Outlining; +Enter outlining mode when files open; +Collapse #regions on file open; +Collapse usings on file open; +Collapse metadata implementations on file open; +Show procedure line separators; +Show outlining for declaration level constructs; +Show outlining for code level constructs; +Show outlining for comments and preprocessor regions; +Collapse regions when collapsing to definitions; +Fading; +Fade out unused usings; +Fade out unreachable code; +Block Structure Guides; +Show guides for declaration level constructs; +Show guides for code level constructs; +Editor Help; +Generate XML documentation comments for ///; +Insert * at the start of new lines when writing /* */ comments; +Show preview for rename tracking; +Split string literals on Enter; +Report invalid placeholders in string.Format calls; +Extract Method; +Don't put ref or out on custom struct; +Implement Interface or Abstract Class; +When inserting properties, events and methods, place them; +with other members of the same kind; +at the end; +When generating property; +prefer throwing properties; +prefer auto properties; regex; -expressão regular; -Colorizar expressões regulares; -Realçar componentes relacionados sob o cursor; -Informar expressões regulares inválidas; +regular expression; +Colorize regular expressions; +Highlight related components under cursor; +Report invalid regular expressions; JSON; -Colorizar cadeias de caracteres JSON; -Relatório inválido de cadeias de caracteres JSON; -Detectar e oferecer recursos de editor para cadeias de caracteres JSON; -Usar cores aprimoradas; -Editar Esquema de Cores; -Margem de herança; +Colorize JSON strings; +Report invalid JSON strings; +Detect and offer editor features for JSON strings; +Use enhanced colors; +Editor Color Scheme; +Inheritance Margin; C# Advanced options page keywords diff --git a/src/VisualStudio/CSharp/Impl/xlf/VSPackage.ru.xlf b/src/VisualStudio/CSharp/Impl/xlf/VSPackage.ru.xlf index 09420680087e3..08f0234b9708f 100644 --- a/src/VisualStudio/CSharp/Impl/xlf/VSPackage.ru.xlf +++ b/src/VisualStudio/CSharp/Impl/xlf/VSPackage.ru.xlf @@ -94,64 +94,67 @@ Detect and offer editor features for JSON strings; Use enhanced colors; Editor Color Scheme; Inheritance Margin; - Подчеркивать переназначенные переменные; -Показывать встроенные подсказки; -Показывать диагностику для закрытых файлов; -Выделять регулярные выражения цветом; -Выделять родственные компоненты под курсором; -Сообщать о недопустимых регулярных выражениях; -Включить полный анализ решения; -Выполнять анализ функций редактора во внешнем процессе; -Включить переход к декомпилированным источникам; -Всегда использовать серверы символов по умолчанию для навигации; -Директивы using; -Располагать директивы system первыми при сортировке директив using; -Разделять группы директив using; -Предлагать директивы using для типов в базовых сборках; -Предлагать директивы using для типов в пакетах NuGet; -Выделение; -Выделять ссылки на символ под курсором; -Выделять связанные ключевые слова под курсором; -Структурирование; -Включать режим редактирования структуры при открытии файлов; -Показывать разделители строк процедур; -Показывать структуру для конструкций уровня объявления; -Показывать структуру для конструкций уровня кода; -Показывать структуру для комментариев и областей препроцессора; -Сворачивать области при сворачивании в определения; -Показывать бледным цветом; -Показывать неиспользуемые директивы using бледным цветом; -Показывать недостижимый код бледным цветом; -Направляющие для структуры блоков; -Показывать направляющие для конструкций уровня объявления; -Показывать направляющие для конструкций уровня кода; -Справка по редактору; -Генерировать комментарии XML-документации для ///; -Вставлять \"*\" в начале новой строки при написании комментариев типа \"/* */\"; -Показывать предварительный просмотр для отслеживания переименований; -Разделять строковые литералы при нажатии клавиши ВВОД; -Сообщать о недопустимых заполнителях в вызовах string.Format; -Извлечение метода; -Не помещать ref и out в пользовательские структуры; -Реализовать интерфейс или абстрактный класс; -При вставке свойств, методов и событий помещать их; -вместе с другими элементами того же типа; -в конец; -При создании свойства; -предпочитать свойства, создающие исключения; -предпочитать автоматические свойства; -регулярное выражение; -регулярное выражение; -Выделять регулярные выражение цветом; -Выделять связанные компоненты под курсором; -Сообщать о недопустимых регулярных выражениях; + Underline reassigned variables; +Display inline hints; +Show diagnostics for closed files; +Colorize regular expression; +Highlight related components under cursor; +Report invalid regular expressions; +Enable full solution analysis; +Perform editor feature analysis in external process; +Enable navigation to decompiled sources; +Always use default symbol servers for navigation; +Using directives; +Place system directives first when sorting usings; +Separate using directive groups; +Suggest usings for types in reference assemblies; +Suggest usings for types in NuGet packages; +Highlighting; +Highlight references to symbol under cursor; +Highlight related keywords under cursor; +Outlining; +Enter outlining mode when files open; +Collapse #regions on file open; +Collapse usings on file open; +Collapse metadata implementations on file open; +Show procedure line separators; +Show outlining for declaration level constructs; +Show outlining for code level constructs; +Show outlining for comments and preprocessor regions; +Collapse regions when collapsing to definitions; +Fading; +Fade out unused usings; +Fade out unreachable code; +Block Structure Guides; +Show guides for declaration level constructs; +Show guides for code level constructs; +Editor Help; +Generate XML documentation comments for ///; +Insert * at the start of new lines when writing /* */ comments; +Show preview for rename tracking; +Split string literals on Enter; +Report invalid placeholders in string.Format calls; +Extract Method; +Don't put ref or out on custom struct; +Implement Interface or Abstract Class; +When inserting properties, events and methods, place them; +with other members of the same kind; +at the end; +When generating property; +prefer throwing properties; +prefer auto properties; +regex; +regular expression; +Colorize regular expressions; +Highlight related components under cursor; +Report invalid regular expressions; JSON; -Выделять строки JSON цветом; -Сообщать о недопустимых строках JSON; -Находить и предлагать функции редактора для строк JSON; -Использовать расширенный набор цветов; -Цветовая схема редактора; -Поле наследования; +Colorize JSON strings; +Report invalid JSON strings; +Detect and offer editor features for JSON strings; +Use enhanced colors; +Editor Color Scheme; +Inheritance Margin; C# Advanced options page keywords diff --git a/src/VisualStudio/CSharp/Impl/xlf/VSPackage.tr.xlf b/src/VisualStudio/CSharp/Impl/xlf/VSPackage.tr.xlf index 552843bda31b3..c3c3530bbe913 100644 --- a/src/VisualStudio/CSharp/Impl/xlf/VSPackage.tr.xlf +++ b/src/VisualStudio/CSharp/Impl/xlf/VSPackage.tr.xlf @@ -94,64 +94,67 @@ Detect and offer editor features for JSON strings; Use enhanced colors; Editor Color Scheme; Inheritance Margin; - Yeniden atanan değişkenlerin altını çiz; -Satır içi ipuçlarını göster; -Kapatılan dosyalara ilişkin tanılamaları göster; -Normal ifadeyi renklendir; -İmlecin altındaki ilgili bileşenleri vurgula; -Geçersiz normal ifadeleri bildir; -Tam çözüm analizini etkinleştir; -Dış işlemde düzenleyici özellik analizi gerçekleştir; -Kaynak koda dönüştürülen kaynaklar için gezintiyi etkinleştir; -Gezinti için her zaman varsayılan sembol sunucularını kullan; -Using yönergeleri; -Using yönergelerini sıralarken sistem yönergelerini en başa yerleştir; -Using yönerge gruplarını ayır; -Başvuru bütünleştirilmiş kodlarında türler için using yönergeleri öner; -NuGet paketlerinde türler için using yönergeleri öner; -Vurgulama; -İmlecin altındaki sembole yönelik başvuruları vurgula; -İmlecin altındaki ilgili anahtar sözcükleri vurgula; -Ana Hat Oluşturma; -Dosyalar açılırken ana hat oluşturma moduna gir; -Yordam satır ayırıcılarını göster; -Bildirim düzeyinde yapılar için ana hattı göster; -Kod düzeyinde yapılar için ana hattı göster; -Açıklamalar ve ön işlemci bölgeleri için ana hattı göster; -Tanımlara daraltırken bölgeleri daralt; -Soluklaştırma; -Kullanılmayan using yönergelerini soluklaştır; -Erişilemeyen kodu soluklaştır; -Blok Yapısı Kılavuzları; -Bildirim düzeyinde yapılar için kılavuzları göster; -Kod düzeyinde yapılar için kılavuzları göster; -Düzenleyici Yardımı; -/// için XML belge açıklamaları oluştur; -/* */ açıklamaları yazılırken her yeni satırın başına * ekle; -Yeniden adlandırma izlemesi için önizleme göster; -Enter tuşuna basıldığında dize sabit değerlerini böl; -string.Format çağrılarındaki geçersiz yer tutucuları bildir; -Ayıklama Metodu; -Özel yapıya ref veya out koyma; -Arabirim veya Soyut Sınıfı uygula; -Özellik, olay ve metot eklerken bunları; -aynı türdeki başka üyelerle birlikte; -sona yerleştir; -Özellik oluştururken; -oluşturma özelliklerini tercih et; -otomatik özellikleri tercih et; -normal ifade; -normal ifade; -Normal ifadeleri renklendir; -İmleç altındaki ilgili bileşenleri vurgula; -Geçersiz normal ifadeleri bildir; + Underline reassigned variables; +Display inline hints; +Show diagnostics for closed files; +Colorize regular expression; +Highlight related components under cursor; +Report invalid regular expressions; +Enable full solution analysis; +Perform editor feature analysis in external process; +Enable navigation to decompiled sources; +Always use default symbol servers for navigation; +Using directives; +Place system directives first when sorting usings; +Separate using directive groups; +Suggest usings for types in reference assemblies; +Suggest usings for types in NuGet packages; +Highlighting; +Highlight references to symbol under cursor; +Highlight related keywords under cursor; +Outlining; +Enter outlining mode when files open; +Collapse #regions on file open; +Collapse usings on file open; +Collapse metadata implementations on file open; +Show procedure line separators; +Show outlining for declaration level constructs; +Show outlining for code level constructs; +Show outlining for comments and preprocessor regions; +Collapse regions when collapsing to definitions; +Fading; +Fade out unused usings; +Fade out unreachable code; +Block Structure Guides; +Show guides for declaration level constructs; +Show guides for code level constructs; +Editor Help; +Generate XML documentation comments for ///; +Insert * at the start of new lines when writing /* */ comments; +Show preview for rename tracking; +Split string literals on Enter; +Report invalid placeholders in string.Format calls; +Extract Method; +Don't put ref or out on custom struct; +Implement Interface or Abstract Class; +When inserting properties, events and methods, place them; +with other members of the same kind; +at the end; +When generating property; +prefer throwing properties; +prefer auto properties; +regex; +regular expression; +Colorize regular expressions; +Highlight related components under cursor; +Report invalid regular expressions; JSON; -JSON dizelerini renklendir; -Geçersiz JSON dizelerini bildir; -JSON dizeleri için düzenleyici özelliklerini algıla ve sun; -Gelişmiş renkleri kullan; -Düzenleyici Renk Düzeni; -Devralma Kenar Boşluğu; +Colorize JSON strings; +Report invalid JSON strings; +Detect and offer editor features for JSON strings; +Use enhanced colors; +Editor Color Scheme; +Inheritance Margin; C# Advanced options page keywords diff --git a/src/VisualStudio/CSharp/Impl/xlf/VSPackage.zh-Hans.xlf b/src/VisualStudio/CSharp/Impl/xlf/VSPackage.zh-Hans.xlf index 1c80c3d93b78a..c646a7df2430c 100644 --- a/src/VisualStudio/CSharp/Impl/xlf/VSPackage.zh-Hans.xlf +++ b/src/VisualStudio/CSharp/Impl/xlf/VSPackage.zh-Hans.xlf @@ -94,64 +94,67 @@ Detect and offer editor features for JSON strings; Use enhanced colors; Editor Color Scheme; Inheritance Margin; - 为重新分配的变量添加下划线; -显示内联提示; -显示已关闭文件的诊断; -对正则表达式着色; -突出显示游标下的相关组件; -报告无效的正则表达式; -启用完整解决方案分析; -在外部进程中执行编辑器功能分析; -对反编译的源启用导航; -始终使用默认符号服务器进行导航; -Using 指令; -对 using 排序时将系统指令放在开头; -分离 using 指令组; -建议对引用程序集中的类型使用 using; -建议对 NuGet 包中的类型使用 using; -突出显示; -突出显示对游标下符号的引用; -突出显示游标下的相关关键字; -大纲; -在文件打开时进入大纲模式; -显示过程行分隔符; -显示声明级别构造的大纲; -显示代码级别构造的大纲; -显示注释和预处理器区域的大纲; -在折叠到定义时折叠区域; -淡出; -未使用的 using 淡出; -不可访问的代码淡出; -块结构指南; -显示声明级别构造的指南; -显示代码级别构造的指南; -编辑器帮助; -为 /// 生成 XML 文档注释; -在写入 /* */ 注释时在新行开头插入 *; -显示重命名跟踪的预览;在按 Enter 时拆分字符串字面量; -在按 Enter 时拆分字符串字面量; -报告 string.Format 调用中的无效占位符; -提取方法; -实现接口或抽象类; -不要在自定义结构上放置 ref 或 out; -插入属性、事件和方法时,放置它们; -位于末尾; -具有相同种类的其他成员; -在生成属性时; -首选引发属性; -首选自动属性; -regex; -正则表达式; -对正则表达式着色; -突出显示游标下的相关组件; -报告无效的正则表达式; -JSON; -对 JSON 字符串着色; -报告无效的 JSON 字符串; -为 JSON 字符串检测并提供编辑器功能; -使用增强颜色; -编辑器配色方案; -继承边距; + Underline reassigned variables; +Display inline hints; +Show diagnostics for closed files; +Colorize regular expression; +Highlight related components under cursor; +Report invalid regular expressions; +Enable full solution analysis; +Perform editor feature analysis in external process; +Enable navigation to decompiled sources; +Always use default symbol servers for navigation; +Using directives; +Place system directives first when sorting usings; +Separate using directive groups; +Suggest usings for types in reference assemblies; +Suggest usings for types in NuGet packages; +Highlighting; +Highlight references to symbol under cursor; +Highlight related keywords under cursor; +Outlining; +Enter outlining mode when files open; +Collapse #regions on file open; +Collapse usings on file open; +Collapse metadata implementations on file open; +Show procedure line separators; +Show outlining for declaration level constructs; +Show outlining for code level constructs; +Show outlining for comments and preprocessor regions; +Collapse regions when collapsing to definitions; +Fading; +Fade out unused usings; +Fade out unreachable code; +Block Structure Guides; +Show guides for declaration level constructs; +Show guides for code level constructs; +Editor Help; +Generate XML documentation comments for ///; +Insert * at the start of new lines when writing /* */ comments; +Show preview for rename tracking; +Split string literals on Enter; +Report invalid placeholders in string.Format calls; +Extract Method; +Don't put ref or out on custom struct; +Implement Interface or Abstract Class; +When inserting properties, events and methods, place them; +with other members of the same kind; +at the end; +When generating property; +prefer throwing properties; +prefer auto properties; +regex; +regular expression; +Colorize regular expressions; +Highlight related components under cursor; +Report invalid regular expressions; +JSON; +Colorize JSON strings; +Report invalid JSON strings; +Detect and offer editor features for JSON strings; +Use enhanced colors; +Editor Color Scheme; +Inheritance Margin; C# Advanced options page keywords diff --git a/src/VisualStudio/CSharp/Impl/xlf/VSPackage.zh-Hant.xlf b/src/VisualStudio/CSharp/Impl/xlf/VSPackage.zh-Hant.xlf index 7559af5f5ce12..cb16745b0f485 100644 --- a/src/VisualStudio/CSharp/Impl/xlf/VSPackage.zh-Hant.xlf +++ b/src/VisualStudio/CSharp/Impl/xlf/VSPackage.zh-Hant.xlf @@ -94,64 +94,67 @@ Detect and offer editor features for JSON strings; Use enhanced colors; Editor Color Scheme; Inheritance Margin; - 為重新指派的變數加上底線; -顯示內嵌提示; -顯示已關閉檔案的診斷; -為規則運算式上色; -醒目提示游標下的相關元件; -回報無效的規則運算式; -啟用完整解決方案分析; -執行在外部處理序中編輯器的功能分析; -啟用瀏覽至解編譯的來源; -一律使用指示詞; -Using 指示詞; -排序Using 時,請先放置系統指示詞 ; -將Using 指示詞分開; -建議Using為參考組件 -建議Using為 NuGet 套件中的型別; -醒目提示; -醒目提示游標下的符號參考; -醒目提示游標下的符號參考; -大綱; -在檔案開啟時進入大綱模式; -顯示程序行分隔符號; - 顯示宣告層級建構的大綱; -顯示程式碼層級建構的大綱; -顯示註解與前置處理器區域的大綱; -在摺疊到定義時摺疊區域; -漸層; -淡出未使用的 Using; -淡出無法執行到的程式碼; -封鎖結構輔助線 -顯示建構宣示層級的輔助線; -顯示程式碼層級建構的輔助線; -編輯器說明; -產生 /// 的 XML 文件註解; -在撰寫 /* */ 註解時,於新行開頭插入* -顯示重新命名追蹤的預覽; -在按 Enter 鍵時分割字串常值; -回報 string.Format 呼叫中無效的預留位置; - 擷取方法; -不要在自訂結構上放置 ref 或 out; -實作介面或抽象類別;***************** -隨同其他同種類的成員; -隨同其他同種類的成員; -結尾處; -產生屬性時; -建議使用擲回屬性; -建議使用自動屬性; + Underline reassigned variables; +Display inline hints; +Show diagnostics for closed files; +Colorize regular expression; +Highlight related components under cursor; +Report invalid regular expressions; +Enable full solution analysis; +Perform editor feature analysis in external process; +Enable navigation to decompiled sources; +Always use default symbol servers for navigation; +Using directives; +Place system directives first when sorting usings; +Separate using directive groups; +Suggest usings for types in reference assemblies; +Suggest usings for types in NuGet packages; +Highlighting; +Highlight references to symbol under cursor; +Highlight related keywords under cursor; +Outlining; +Enter outlining mode when files open; +Collapse #regions on file open; +Collapse usings on file open; +Collapse metadata implementations on file open; +Show procedure line separators; +Show outlining for declaration level constructs; +Show outlining for code level constructs; +Show outlining for comments and preprocessor regions; +Collapse regions when collapsing to definitions; +Fading; +Fade out unused usings; +Fade out unreachable code; +Block Structure Guides; +Show guides for declaration level constructs; +Show guides for code level constructs; +Editor Help; +Generate XML documentation comments for ///; +Insert * at the start of new lines when writing /* */ comments; +Show preview for rename tracking; +Split string literals on Enter; +Report invalid placeholders in string.Format calls; +Extract Method; +Don't put ref or out on custom struct; +Implement Interface or Abstract Class; +When inserting properties, events and methods, place them; +with other members of the same kind; +at the end; +When generating property; +prefer throwing properties; +prefer auto properties; regex; -為規則運算式上色; -為規則運算式上色; -醒目提示游標下的元件; -回報無效的規則運算式; +regular expression; +Colorize regular expressions; +Highlight related components under cursor; +Report invalid regular expressions; JSON; -為 JSON 字串上色; -報無效的 JSON 字串; -偵測並提供 JSON 字串的編輯器功能; -使用進階色彩; -色彩配置編輯器; -繼承頁面邊界; +Colorize JSON strings; +Report invalid JSON strings; +Detect and offer editor features for JSON strings; +Use enhanced colors; +Editor Color Scheme; +Inheritance Margin; C# Advanced options page keywords diff --git a/src/VisualStudio/Core/Def/InheritanceMargin/InheritanceMarginLogger.cs b/src/VisualStudio/Core/Def/InheritanceMargin/InheritanceMarginLogger.cs index 253e1dc07c4a9..0b38743b65005 100644 --- a/src/VisualStudio/Core/Def/InheritanceMargin/InheritanceMarginLogger.cs +++ b/src/VisualStudio/Core/Def/InheritanceMargin/InheritanceMarginLogger.cs @@ -10,7 +10,7 @@ namespace Microsoft.VisualStudio.LanguageServices.InheritanceMargin internal static class InheritanceMarginLogger { // 1 sec per bucket, and if it takes more than 1 min, then this log is considered as time-out in the last bucket. - private static readonly HistogramLogAggregator s_histogramLogAggregator = new(1000, 60000); + private static readonly HistogramLogAggregator s_histogramLogAggregator = new(1000, 60000); private enum ActionInfo { @@ -18,8 +18,8 @@ private enum ActionInfo } public static void LogGenerateBackgroundInheritanceInfo(TimeSpan elapsedTime) - => s_histogramLogAggregator.IncreaseCount( - ActionInfo.GetInheritanceMarginMembers, Convert.ToDecimal(elapsedTime.TotalMilliseconds)); + => s_histogramLogAggregator.LogTime( + ActionInfo.GetInheritanceMarginMembers, elapsedTime); public static void LogInheritanceTargetsMenuOpen() => Logger.Log(FunctionId.InheritanceMargin_TargetsMenuOpen, KeyValueLogMessage.Create(LogType.UserAction)); diff --git a/src/VisualStudio/Core/Def/xlf/ServicesVSResources.cs.xlf b/src/VisualStudio/Core/Def/xlf/ServicesVSResources.cs.xlf index 410fc4135d3d9..50a2e6c429e7a 100644 --- a/src/VisualStudio/Core/Def/xlf/ServicesVSResources.cs.xlf +++ b/src/VisualStudio/Core/Def/xlf/ServicesVSResources.cs.xlf @@ -1049,7 +1049,7 @@ Paste a stack trace to view and navigate its values. - Pokud chcete zobrazit a procházet jeho hodnoty, vložte platné trasování zásobníku. + Paste a stack trace to view and navigate its values. "Stack Trace" is a language term and should be kept the same. diff --git a/src/VisualStudio/Core/Def/xlf/ServicesVSResources.de.xlf b/src/VisualStudio/Core/Def/xlf/ServicesVSResources.de.xlf index 2a98139ada8c0..8e41e841a0e3c 100644 --- a/src/VisualStudio/Core/Def/xlf/ServicesVSResources.de.xlf +++ b/src/VisualStudio/Core/Def/xlf/ServicesVSResources.de.xlf @@ -1049,7 +1049,7 @@ Paste a stack trace to view and navigate its values. - Fügen Sie eine gültige Stapelüberwachung ein, um ihre Werte anzuzeigen und durch sie zu navigieren. + Paste a stack trace to view and navigate its values. "Stack Trace" is a language term and should be kept the same. diff --git a/src/VisualStudio/Core/Def/xlf/ServicesVSResources.es.xlf b/src/VisualStudio/Core/Def/xlf/ServicesVSResources.es.xlf index 965071375c21e..aeece359b20ce 100644 --- a/src/VisualStudio/Core/Def/xlf/ServicesVSResources.es.xlf +++ b/src/VisualStudio/Core/Def/xlf/ServicesVSResources.es.xlf @@ -1049,7 +1049,7 @@ Paste a stack trace to view and navigate its values. - Pegar un seguimiento de pila válido para ver y navegar sus valores + Paste a stack trace to view and navigate its values. "Stack Trace" is a language term and should be kept the same. diff --git a/src/VisualStudio/Core/Def/xlf/ServicesVSResources.fr.xlf b/src/VisualStudio/Core/Def/xlf/ServicesVSResources.fr.xlf index 783310dcf401d..85f95022a866a 100644 --- a/src/VisualStudio/Core/Def/xlf/ServicesVSResources.fr.xlf +++ b/src/VisualStudio/Core/Def/xlf/ServicesVSResources.fr.xlf @@ -1049,7 +1049,7 @@ Paste a stack trace to view and navigate its values. - Collez une trace de pile valide pour afficher et parcourir ses valeurs + Paste a stack trace to view and navigate its values. "Stack Trace" is a language term and should be kept the same. diff --git a/src/VisualStudio/Core/Def/xlf/ServicesVSResources.it.xlf b/src/VisualStudio/Core/Def/xlf/ServicesVSResources.it.xlf index 4ca13ac893c04..e9cb4e8384fcf 100644 --- a/src/VisualStudio/Core/Def/xlf/ServicesVSResources.it.xlf +++ b/src/VisualStudio/Core/Def/xlf/ServicesVSResources.it.xlf @@ -1049,7 +1049,7 @@ Paste a stack trace to view and navigate its values. - Incolla un'analisi dello stack valida per visualizzare e spostarti tra i relativi valori + Paste a stack trace to view and navigate its values. "Stack Trace" is a language term and should be kept the same. diff --git a/src/VisualStudio/Core/Def/xlf/ServicesVSResources.ja.xlf b/src/VisualStudio/Core/Def/xlf/ServicesVSResources.ja.xlf index 8f3b4b755a72e..61959ac0cf713 100644 --- a/src/VisualStudio/Core/Def/xlf/ServicesVSResources.ja.xlf +++ b/src/VisualStudio/Core/Def/xlf/ServicesVSResources.ja.xlf @@ -1049,7 +1049,7 @@ Paste a stack trace to view and navigate its values. - 有効なスタック トレースを貼り付けて、値を表示して移動します + Paste a stack trace to view and navigate its values. "Stack Trace" is a language term and should be kept the same. diff --git a/src/VisualStudio/Core/Def/xlf/ServicesVSResources.ko.xlf b/src/VisualStudio/Core/Def/xlf/ServicesVSResources.ko.xlf index b9ec52597d46d..785bf1dea4d91 100644 --- a/src/VisualStudio/Core/Def/xlf/ServicesVSResources.ko.xlf +++ b/src/VisualStudio/Core/Def/xlf/ServicesVSResources.ko.xlf @@ -1049,7 +1049,7 @@ Paste a stack trace to view and navigate its values. - 유효한 스택 추적을 붙여넣어 해당 값을 보고 탐색합니다. + Paste a stack trace to view and navigate its values. "Stack Trace" is a language term and should be kept the same. diff --git a/src/VisualStudio/Core/Def/xlf/ServicesVSResources.pl.xlf b/src/VisualStudio/Core/Def/xlf/ServicesVSResources.pl.xlf index 87afaf4d8b910..2483410d17c3f 100644 --- a/src/VisualStudio/Core/Def/xlf/ServicesVSResources.pl.xlf +++ b/src/VisualStudio/Core/Def/xlf/ServicesVSResources.pl.xlf @@ -1049,7 +1049,7 @@ Paste a stack trace to view and navigate its values. - Wklej prawidłowy ślad stosu, aby wyświetlić jego wartościach i nawigować po nich + Paste a stack trace to view and navigate its values. "Stack Trace" is a language term and should be kept the same. diff --git a/src/VisualStudio/Core/Def/xlf/ServicesVSResources.pt-BR.xlf b/src/VisualStudio/Core/Def/xlf/ServicesVSResources.pt-BR.xlf index 37c000891e839..144ec5e987926 100644 --- a/src/VisualStudio/Core/Def/xlf/ServicesVSResources.pt-BR.xlf +++ b/src/VisualStudio/Core/Def/xlf/ServicesVSResources.pt-BR.xlf @@ -1049,7 +1049,7 @@ Paste a stack trace to view and navigate its values. - Cole um rastreamento de pilha válido para exibir e navegar pelos valores + Paste a stack trace to view and navigate its values. "Stack Trace" is a language term and should be kept the same. diff --git a/src/VisualStudio/Core/Def/xlf/ServicesVSResources.ru.xlf b/src/VisualStudio/Core/Def/xlf/ServicesVSResources.ru.xlf index c63b64eea36bf..f51cc796ecd6c 100644 --- a/src/VisualStudio/Core/Def/xlf/ServicesVSResources.ru.xlf +++ b/src/VisualStudio/Core/Def/xlf/ServicesVSResources.ru.xlf @@ -1049,7 +1049,7 @@ Paste a stack trace to view and navigate its values. - Вставьте допустимую трассировку стека для просмотра ее значений и перехода к ним + Paste a stack trace to view and navigate its values. "Stack Trace" is a language term and should be kept the same. diff --git a/src/VisualStudio/Core/Def/xlf/ServicesVSResources.tr.xlf b/src/VisualStudio/Core/Def/xlf/ServicesVSResources.tr.xlf index 56e3f32caadb1..242b3989e009f 100644 --- a/src/VisualStudio/Core/Def/xlf/ServicesVSResources.tr.xlf +++ b/src/VisualStudio/Core/Def/xlf/ServicesVSResources.tr.xlf @@ -1049,7 +1049,7 @@ Paste a stack trace to view and navigate its values. - Değerlerini görüntülemek ve gezinmek için geçerli bir yığın izlemesi yapıştırın + Paste a stack trace to view and navigate its values. "Stack Trace" is a language term and should be kept the same. diff --git a/src/VisualStudio/Core/Def/xlf/ServicesVSResources.zh-Hans.xlf b/src/VisualStudio/Core/Def/xlf/ServicesVSResources.zh-Hans.xlf index 96da70c75caa3..e9140a437a79c 100644 --- a/src/VisualStudio/Core/Def/xlf/ServicesVSResources.zh-Hans.xlf +++ b/src/VisualStudio/Core/Def/xlf/ServicesVSResources.zh-Hans.xlf @@ -1049,7 +1049,7 @@ Paste a stack trace to view and navigate its values. - 粘贴有效的堆栈跟踪以查看和导航其值 + Paste a stack trace to view and navigate its values. "Stack Trace" is a language term and should be kept the same. diff --git a/src/VisualStudio/Core/Def/xlf/ServicesVSResources.zh-Hant.xlf b/src/VisualStudio/Core/Def/xlf/ServicesVSResources.zh-Hant.xlf index 8ce90f5612f28..ad5ab178881ee 100644 --- a/src/VisualStudio/Core/Def/xlf/ServicesVSResources.zh-Hant.xlf +++ b/src/VisualStudio/Core/Def/xlf/ServicesVSResources.zh-Hant.xlf @@ -1049,7 +1049,7 @@ Paste a stack trace to view and navigate its values. - 貼上有效的堆疊追蹤以檢視及瀏覽其值 + Paste a stack trace to view and navigate its values. "Stack Trace" is a language term and should be kept the same. diff --git a/src/VisualStudio/VisualBasic/Impl/Snippets/SnippetCompletionProvider.vb b/src/VisualStudio/VisualBasic/Impl/Snippets/SnippetCompletionProvider.vb index 53916c54a9c40..3e5aa39daf701 100644 --- a/src/VisualStudio/VisualBasic/Impl/Snippets/SnippetCompletionProvider.vb +++ b/src/VisualStudio/VisualBasic/Impl/Snippets/SnippetCompletionProvider.vb @@ -89,11 +89,6 @@ Namespace Microsoft.VisualStudio.LanguageServices.VisualBasic.Snippets Return End If - Dim syntaxContext = Await context.GetSyntaxContextWithExistingSpeculativeModelAsync(document, cancellationToken).ConfigureAwait(False) - If syntaxContext.IsInTaskLikeTypeContext Then - Return - End If - Dim syntaxFacts = document.GetLanguageService(Of ISyntaxFactsService)() If IsInNonUserCode(syntaxTree, position, cancellationToken) Then Return diff --git a/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.cs.xlf b/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.cs.xlf index f56f55b8cf5e4..2cc3488689706 100644 --- a/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.cs.xlf +++ b/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.cs.xlf @@ -33,18 +33,21 @@ Collapse #regions on file open; Collapse Imports on file open; Collapse metadata implementations on file open; Use enhanced colors;Editor Color Scheme;Inheritance Margin;Import Directives; - Podtrhnout znovu přiřazené proměnné;Zobrazovat vložené nápovědy;Automatické vložení koncových konstruktorů;Změnit nastavení přehledného výpisu;Změnit režim sbalení;Automatické vkládání členů Interface a MustOverride;Zobrazit nebo skrýt oddělovače řádků procedur;Zapnout nebo vypnout návrhy oprav chyb;Zapnout nebo vypnout zvýrazňování odkazů a klíčových slov; + Underline reassigned variables;Display inline hints;Automatic insertion of end constructs;Change pretty listing settings;Change outlining mode;Automatic insertion of Interface and MustOverride members;Show or hide procedure line separators;Turn error correction suggestions on or off;Turn highlighting of references and keywords on or off; Regex; -regulární výrazy; -související komponenty pod kurzorem; -Nahlásit neplatné regulární výrazy; +regular expressions; +related components under cursor; +Report invalid regular expressions; regex; -regulární výraz; +regular expression; JSON; -Obarvit řetězce JSON; -Nahlásit neplatné řetězce JSON; -Rozpoznat a nabízet funkce editoru pro řetězce JSON; -Používat rozšířené barvy;Barevné schéma editoru;Okraj dědičnosti;Direktivy importu; +Colorize JSON strings; +Report invalid JSON strings; +Detect and offer editor features for JSON strings; +Collapse #regions on file open; +Collapse Imports on file open; +Collapse metadata implementations on file open; +Use enhanced colors;Editor Color Scheme;Inheritance Margin;Import Directives; Advanced options page keywords diff --git a/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.de.xlf b/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.de.xlf index d26234c122205..398b5358c6e94 100644 --- a/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.de.xlf +++ b/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.de.xlf @@ -33,18 +33,21 @@ Collapse #regions on file open; Collapse Imports on file open; Collapse metadata implementations on file open; Use enhanced colors;Editor Color Scheme;Inheritance Margin;Import Directives; - Neu zugewiesene Variablen unterstreichen;Inlinehinweise anzeigen; Automatisches Einfügen von Endkonstrukten;Pretty Listing-Einstellungen ändern;Gliederungsmodus ändern;Automatisches Einfügen von Schnittstellen- und MustOverride-Membern;Prozedurzeilentrennzeichen ein- oder ausblenden;Fehlerkorrekturvorschläge aktivieren oder deaktivieren;Aktivieren oder Deaktivieren der Hervorhebung von Verweisen und Schlüsselwörtern; + Underline reassigned variables;Display inline hints;Automatic insertion of end constructs;Change pretty listing settings;Change outlining mode;Automatic insertion of Interface and MustOverride members;Show or hide procedure line separators;Turn error correction suggestions on or off;Turn highlighting of references and keywords on or off; Regex; -reguläre Ausdrücke; -zugehörige Komponenten unter dem Cursor; -Ungültige reguläre Ausdrücke melden; -RegEx; -regulärer Ausdruck; +regular expressions; +related components under cursor; +Report invalid regular expressions; +regex; +regular expression; JSON; -JSON-Zeichenfolgen farbig hervorheben; -Ungültige JSON-Zeichenfolgen melden; -Editorfeatures für JSON-Zeichenfolgen erkennen und anbieten; -erweiterte Farben verwenden;Editor-Farbschema;Vererbungsrand;Einfuhrrichtlinien; +Colorize JSON strings; +Report invalid JSON strings; +Detect and offer editor features for JSON strings; +Collapse #regions on file open; +Collapse Imports on file open; +Collapse metadata implementations on file open; +Use enhanced colors;Editor Color Scheme;Inheritance Margin;Import Directives; Advanced options page keywords diff --git a/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.es.xlf b/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.es.xlf index c33a60803e7b6..738e852e5375a 100644 --- a/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.es.xlf +++ b/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.es.xlf @@ -33,18 +33,21 @@ Collapse #regions on file open; Collapse Imports on file open; Collapse metadata implementations on file open; Use enhanced colors;Editor Color Scheme;Inheritance Margin;Import Directives; - Subrayar variables reasignadas;Mostrar sugerencias alineadas;Insertar automáticamente las construcciones finales;Cambiar configuración de la lista descriptiva;Cambiar el modo de esquematización;Inserción automática de miembros Interface y MustOverride; Mostrar u ocultar separadores de línea de procedimiento;Activar o desactivar las sugerencias de corrección de errores; Activar o desactivar el resaltado de referencias y palabras clave; -Expresión regular; -expresiones regulares; -componentes relacionados bajo el cursor; -Notificar las expresiones regulares no válidas; -Expresión regular; -Expresión regular; + Underline reassigned variables;Display inline hints;Automatic insertion of end constructs;Change pretty listing settings;Change outlining mode;Automatic insertion of Interface and MustOverride members;Show or hide procedure line separators;Turn error correction suggestions on or off;Turn highlighting of references and keywords on or off; +Regex; +regular expressions; +related components under cursor; +Report invalid regular expressions; +regex; +regular expression; JSON; -Colorear las cadenas JSON; -Notificar las cadenas JSON no válidas; -Detectar y ofrecer las características de editor para las cadenas JSON; -Usar colores mejorados; Combinación de colores del editor;Margen de herencia;Directivas de importación; +Colorize JSON strings; +Report invalid JSON strings; +Detect and offer editor features for JSON strings; +Collapse #regions on file open; +Collapse Imports on file open; +Collapse metadata implementations on file open; +Use enhanced colors;Editor Color Scheme;Inheritance Margin;Import Directives; Advanced options page keywords diff --git a/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.fr.xlf b/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.fr.xlf index 54bccda3f3c75..a3ce1b602dfec 100644 --- a/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.fr.xlf +++ b/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.fr.xlf @@ -33,18 +33,21 @@ Collapse #regions on file open; Collapse Imports on file open; Collapse metadata implementations on file open; Use enhanced colors;Editor Color Scheme;Inheritance Margin;Import Directives; - Souligner les variables réaffectées; afficher les indications en ligne; insérer automatiquement les constructions de fin; modifier les paramètres du listing en mode pretty; modifier le mode de contournement; insérer automatiquement les membres Interface et MustOverride; afficher ou masquer les séparateurs de ligne de procédure; activer ou désactiver les suggestions de correction des erreurs; activer ou désactiver la mise en évidence des références et des mots-clés; + Underline reassigned variables;Display inline hints;Automatic insertion of end constructs;Change pretty listing settings;Change outlining mode;Automatic insertion of Interface and MustOverride members;Show or hide procedure line separators;Turn error correction suggestions on or off;Turn highlighting of references and keywords on or off; Regex; - expressions régulières; -composants associés sous le curseur; -Signaler les expressions régulières invalides; +regular expressions; +related components under cursor; +Report invalid regular expressions; regex; - expression régulière; +regular expression; JSON; - Coloriser les chaînes JSON; -Signaler les chaînes JSON invalides; - Détecter et proposer des fonctionnalités d'éditeur pour les chaînes JSON; - Utiliser des couleurs améliorées; Schéma de couleurs de l'éditeur; Marge d'héritage; Directives d'importation; +Colorize JSON strings; +Report invalid JSON strings; +Detect and offer editor features for JSON strings; +Collapse #regions on file open; +Collapse Imports on file open; +Collapse metadata implementations on file open; +Use enhanced colors;Editor Color Scheme;Inheritance Margin;Import Directives; Advanced options page keywords diff --git a/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.it.xlf b/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.it.xlf index 09e712d305fd3..fb6f2cf86b429 100644 --- a/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.it.xlf +++ b/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.it.xlf @@ -33,18 +33,21 @@ Collapse #regions on file open; Collapse Imports on file open; Collapse metadata implementations on file open; Use enhanced colors;Editor Color Scheme;Inheritance Margin;Import Directives; - Sottolinea le variabili riassegnate;Visualizza hint inline; Inserimento automatico di costrutti finali; Modifica riformattazione dell'elenco; Modifica la modalità di struttura; Inserimento automatico dei membri Interface e MustOverride; Mostra o nasconde i separatori di riga della procedura; Attiva o disattiva i suggerimenti per la correzione degli errori; Attiva o disattiva l'evidenziazione di riferimenti e parole chiave; -regex; -espressioni regolari; -componenti correlati sotto il cursore; -Segnala espressioni regolari non valide; + Underline reassigned variables;Display inline hints;Automatic insertion of end constructs;Change pretty listing settings;Change outlining mode;Automatic insertion of Interface and MustOverride members;Show or hide procedure line separators;Turn error correction suggestions on or off;Turn highlighting of references and keywords on or off; +Regex; +regular expressions; +related components under cursor; +Report invalid regular expressions; regex; -espressione regolare; +regular expression; JSON; -Colora le stringhe JSON; -Segnala stringhe JSON non valide; -Rileva e offri funzionalità dell'editor per le stringhe JSON; -Usa colori migliorati;Combinazione colori editor;Margine di ereditarietà;Direttive Import; +Colorize JSON strings; +Report invalid JSON strings; +Detect and offer editor features for JSON strings; +Collapse #regions on file open; +Collapse Imports on file open; +Collapse metadata implementations on file open; +Use enhanced colors;Editor Color Scheme;Inheritance Margin;Import Directives; Advanced options page keywords diff --git a/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.ja.xlf b/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.ja.xlf index 3a3b243b1338c..96f4e4060cad2 100644 --- a/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.ja.xlf +++ b/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.ja.xlf @@ -33,18 +33,21 @@ Collapse #regions on file open; Collapse Imports on file open; Collapse metadata implementations on file open; Use enhanced colors;Editor Color Scheme;Inheritance Margin;Import Directives; - 再割り当てされる変数に下線を引く;インラインのヒントを表示する;コンストラクトの終端の自動挿入;再フォーマット設定の変更;アウトライン モードの変更;Interface と MustOverride メンバーの自動挿入;プロシージャ行の区切り記号の表示/非表示;エラー修正候補のオン/オフの切り替え;参照とキーワードの強調表示のオン/オフの切り替え; + Underline reassigned variables;Display inline hints;Automatic insertion of end constructs;Change pretty listing settings;Change outlining mode;Automatic insertion of Interface and MustOverride members;Show or hide procedure line separators;Turn error correction suggestions on or off;Turn highlighting of references and keywords on or off; Regex; -正規表現; -カーソルの下の関連コンポーネント; -無効な正規表現の報告; -RegEx; -正規表現; +regular expressions; +related components under cursor; +Report invalid regular expressions; +regex; +regular expression; JSON; -JSON 文字列の色付け; -無効な JSON 文字列の報告; -JSON 文字列のエディター機能の検出と提供; -拡張された色を使用する;エディターの配色;継承余白;インポート ディレクティブ; +Colorize JSON strings; +Report invalid JSON strings; +Detect and offer editor features for JSON strings; +Collapse #regions on file open; +Collapse Imports on file open; +Collapse metadata implementations on file open; +Use enhanced colors;Editor Color Scheme;Inheritance Margin;Import Directives; Advanced options page keywords diff --git a/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.ko.xlf b/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.ko.xlf index b7e76297ae4d4..d3d20c73eb7c7 100644 --- a/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.ko.xlf +++ b/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.ko.xlf @@ -33,18 +33,21 @@ Collapse #regions on file open; Collapse Imports on file open; Collapse metadata implementations on file open; Use enhanced colors;Editor Color Scheme;Inheritance Margin;Import Directives; - 다시 할당된 변수에 밑줄 긋기;인라인 힌트 표시; 맺음 구문 자동 삽입;자동 서식 지정 설정 변경;개요 모드 변경;인터페이스 및 MustOverride 멤버 자동 삽입;프로시저 줄 구분 기호 표시/숨기기;오류 수정 제안 설정/해제;참조 및 키워드 강조 표시 설정/해제; + Underline reassigned variables;Display inline hints;Automatic insertion of end constructs;Change pretty listing settings;Change outlining mode;Automatic insertion of Interface and MustOverride members;Show or hide procedure line separators;Turn error correction suggestions on or off;Turn highlighting of references and keywords on or off; Regex; -정규식; -커서 아래의 관련 구성; -잘못된 정규식 보고; +regular expressions; +related components under cursor; +Report invalid regular expressions; regex; -정규식; +regular expression; JSON; -JSON 문자열 색 지정; -잘못된 JSON 문자열 보고; -JSON 문자열용 편집기 기능 탐지 및 제안; -향상된 색 사용;편집기 색 구성표;상속 여백;Import 지시문 +Colorize JSON strings; +Report invalid JSON strings; +Detect and offer editor features for JSON strings; +Collapse #regions on file open; +Collapse Imports on file open; +Collapse metadata implementations on file open; +Use enhanced colors;Editor Color Scheme;Inheritance Margin;Import Directives; Advanced options page keywords diff --git a/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.pl.xlf b/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.pl.xlf index cf177973f6353..555dbe4e712ba 100644 --- a/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.pl.xlf +++ b/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.pl.xlf @@ -33,18 +33,21 @@ Collapse #regions on file open; Collapse Imports on file open; Collapse metadata implementations on file open; Use enhanced colors;Editor Color Scheme;Inheritance Margin;Import Directives; - Podkreślanie ponownie przypisanych zmiennych;Wyświatlnie wskazówek śródwierszowych; Automatyczne wstawianie konstrukcji końcowych; Zmiana ustawień wyświetlania listy;Zmiana trybu konspektu; Automatyczne wstawianie elementów członkowskich Interfejs i Należy Zastąpić; Pokazywanie lub ukrywanie separatorów wierszy procedury; Włączanie lub wyłączanie sugestii poprawek błędów; Włączanie lub wyłączanie wyróżnianie odwołań i słów kluczowych; -Wyrażenie regularne; -Wyrażenia regularne; -Powiązane składniki pod kursorem; -Zgłaszanie nieprawidłowych wyrażeń regularnych; -wyrażenie regularne; -wyrażenie regularne; -JSON, -Kolorowanie ciągów JSON; -Zgłaszanie nieprawidłowych ciągów JSON; -Wykrywanie i oferowanie funkcji edytowania dla ciągów JSON; -Użycie rozszerzonych kolorów; Schemat kolorów edytora;Margines dziedziczenia;Dyrektywy importu; + Underline reassigned variables;Display inline hints;Automatic insertion of end constructs;Change pretty listing settings;Change outlining mode;Automatic insertion of Interface and MustOverride members;Show or hide procedure line separators;Turn error correction suggestions on or off;Turn highlighting of references and keywords on or off; +Regex; +regular expressions; +related components under cursor; +Report invalid regular expressions; +regex; +regular expression; +JSON; +Colorize JSON strings; +Report invalid JSON strings; +Detect and offer editor features for JSON strings; +Collapse #regions on file open; +Collapse Imports on file open; +Collapse metadata implementations on file open; +Use enhanced colors;Editor Color Scheme;Inheritance Margin;Import Directives; Advanced options page keywords diff --git a/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.pt-BR.xlf b/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.pt-BR.xlf index e7fa4568ba4ec..11de66c196a65 100644 --- a/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.pt-BR.xlf +++ b/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.pt-BR.xlf @@ -33,18 +33,21 @@ Collapse #regions on file open; Collapse Imports on file open; Collapse metadata implementations on file open; Use enhanced colors;Editor Color Scheme;Inheritance Margin;Import Directives; - Sublinhar variáveis reatribuídas;exibir dicas incorporadas;inserção automática de construções finais;Alterar as configurações de reformatação automática;Alterar o modo de estrutura de tópicos;Inserção automática de interface e membros MustOverride;Mostrar ou ocultar separadores de linha de procedimento;Ativar ou desativar as sugestões de correção de erros;ativar ou desativar o realce de referências e palavras-chave; -Regex; -expressões regulares; -componentes relacionados sob o cursor; -Notificar expressões regulares inválidas; + Underline reassigned variables;Display inline hints;Automatic insertion of end constructs;Change pretty listing settings;Change outlining mode;Automatic insertion of Interface and MustOverride members;Show or hide procedure line separators;Turn error correction suggestions on or off;Turn highlighting of references and keywords on or off; +Regex; +regular expressions; +related components under cursor; +Report invalid regular expressions; regex; -expressões regulares; +regular expression; JSON; -Colorizar cadeias de caracteres JSON; -Notificar cadeias de caracteres JSON inválidas; -Detectar e oferecer recursos de editor para cadeia de caracteres JSON; -Usar cores aprimoradas; editar o Esquema de Cores;Margem de Herança; Importar Diretivas; +Colorize JSON strings; +Report invalid JSON strings; +Detect and offer editor features for JSON strings; +Collapse #regions on file open; +Collapse Imports on file open; +Collapse metadata implementations on file open; +Use enhanced colors;Editor Color Scheme;Inheritance Margin;Import Directives; Advanced options page keywords diff --git a/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.ru.xlf b/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.ru.xlf index 90a3ebb825873..ee15055b4919b 100644 --- a/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.ru.xlf +++ b/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.ru.xlf @@ -33,18 +33,21 @@ Collapse #regions on file open; Collapse Imports on file open; Collapse metadata implementations on file open; Use enhanced colors;Editor Color Scheme;Inheritance Margin;Import Directives; - Подчеркивать переназначенные переменные;Показывать встроенные подсказки;Автоматическая вставка конечных конструкций;Изменять параметры автоматического форматирования;Изменять режим структуры;Автоматическая вставка интерфейса и элементов MustOverride;Показывать или скрывать разделители строк для процедуры;Включить или отключить предложения по исправлению ошибок;Включить или отключить выделение ссылок и ключевых слов; -Регулярные выражения; -регулярные выражения; -связанные компоненты под курсором -Сообщить о недопустимых регулярных выражениях; -регулярное выражение; -регулярное выражение; + Underline reassigned variables;Display inline hints;Automatic insertion of end constructs;Change pretty listing settings;Change outlining mode;Automatic insertion of Interface and MustOverride members;Show or hide procedure line separators;Turn error correction suggestions on or off;Turn highlighting of references and keywords on or off; +Regex; +regular expressions; +related components under cursor; +Report invalid regular expressions; +regex; +regular expression; JSON; -Выделить строки JSON цветом; -Сообщить о недопустимых строках JSON; -Найти и предложить функции редактора для строк JSON; -Использовать расширенный набор цветов;Цветовая схема редактора;Поле наследования;Директивы import; +Colorize JSON strings; +Report invalid JSON strings; +Detect and offer editor features for JSON strings; +Collapse #regions on file open; +Collapse Imports on file open; +Collapse metadata implementations on file open; +Use enhanced colors;Editor Color Scheme;Inheritance Margin;Import Directives; Advanced options page keywords diff --git a/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.tr.xlf b/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.tr.xlf index d462e9c788e99..29c9a96423a8c 100644 --- a/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.tr.xlf +++ b/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.tr.xlf @@ -33,18 +33,21 @@ Collapse #regions on file open; Collapse Imports on file open; Collapse metadata implementations on file open; Use enhanced colors;Editor Color Scheme;Inheritance Margin;Import Directives; - Yeniden atanan değişkenleri altını çiz;Satır içi ipuçlarını göster;Bitiş yapılarının otomatik olarak eklenmesi;Düzgün listeleme ayarlarını değiştir;Ana hat modunu değiştir;Interface ve MustOverride üyelerinin otomatik olarak eklenmesi;Yordam satır ayraçlarını göster veya gizle;Hata düzeltme önerilerini aç veya kapat;Başvuruları ve anahtar sözcükleri vurgulamayı aç veya kapat; -Normal ifade; -normal ifadeler; -imlecin altındaki ilgili bileşenler; -Geçersiz normal ifadeleri bildir; -normal ifade; -normal ifade; + Underline reassigned variables;Display inline hints;Automatic insertion of end constructs;Change pretty listing settings;Change outlining mode;Automatic insertion of Interface and MustOverride members;Show or hide procedure line separators;Turn error correction suggestions on or off;Turn highlighting of references and keywords on or off; +Regex; +regular expressions; +related components under cursor; +Report invalid regular expressions; +regex; +regular expression; JSON; -JSON dizelerini renklendir; -Geçersiz JSON dizelerini bildir; -JSON dizeleri için düzenleyici özelliklerini algıla ve öner; -Gelişmiş renkleri kullan;Düzenleyici Renk Düzeni;Devralma Kenar Boşluğu;İçe Aktarma Yönergeleri; +Colorize JSON strings; +Report invalid JSON strings; +Detect and offer editor features for JSON strings; +Collapse #regions on file open; +Collapse Imports on file open; +Collapse metadata implementations on file open; +Use enhanced colors;Editor Color Scheme;Inheritance Margin;Import Directives; Advanced options page keywords diff --git a/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.zh-Hans.xlf b/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.zh-Hans.xlf index e7bf53a84aaa3..8224c55bbf6b6 100644 --- a/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.zh-Hans.xlf +++ b/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.zh-Hans.xlf @@ -33,18 +33,21 @@ Collapse #regions on file open; Collapse Imports on file open; Collapse metadata implementations on file open; Use enhanced colors;Editor Color Scheme;Inheritance Margin;Import Directives; - 为重新分配变量添加下划线;显示内联提示;自动插入 End 构造;更改整齐排列设置;更改大纲模式;自动插入 Interface 和 MustOverride 成员;显示或隐藏过程行分隔符;打开或关闭错误纠正建议;打开或关闭引用和关键字的突出显示; -正则表达式; -正则表达式; -游标下的相关组件; -报告无效正则表达式; -正则表达式; -正则表达式; + Underline reassigned variables;Display inline hints;Automatic insertion of end constructs;Change pretty listing settings;Change outlining mode;Automatic insertion of Interface and MustOverride members;Show or hide procedure line separators;Turn error correction suggestions on or off;Turn highlighting of references and keywords on or off; +Regex; +regular expressions; +related components under cursor; +Report invalid regular expressions; +regex; +regular expression; JSON; -对 JSON 字符串着色; -报告无效 JSON 字符串; -为 JSON 字符串检测并提供编辑器功能; -使用增强颜色;编辑器配色方案;继承边距;导入指令; +Colorize JSON strings; +Report invalid JSON strings; +Detect and offer editor features for JSON strings; +Collapse #regions on file open; +Collapse Imports on file open; +Collapse metadata implementations on file open; +Use enhanced colors;Editor Color Scheme;Inheritance Margin;Import Directives; Advanced options page keywords diff --git a/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.zh-Hant.xlf b/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.zh-Hant.xlf index 8d196454fafba..600f66b5c7518 100644 --- a/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.zh-Hant.xlf +++ b/src/VisualStudio/VisualBasic/Impl/xlf/VSPackage.zh-Hant.xlf @@ -33,18 +33,21 @@ Collapse #regions on file open; Collapse Imports on file open; Collapse metadata implementations on file open; Use enhanced colors;Editor Color Scheme;Inheritance Margin;Import Directives; - 為重新指派的變數加上底線;顯示內嵌提示;自動插入結束建構;變更美化排列設定;變更大綱模式;自動插入介面和 MustOverride 成員;顯示或隱藏程序行分隔符號;開啟或關閉錯誤校正建議;開啟或關閉參考及關鍵字的醒目提示; + Underline reassigned variables;Display inline hints;Automatic insertion of end constructs;Change pretty listing settings;Change outlining mode;Automatic insertion of Interface and MustOverride members;Show or hide procedure line separators;Turn error correction suggestions on or off;Turn highlighting of references and keywords on or off; Regex; -規則運算式; -游標下的相關元件; -回報無效的規則運算式; +regular expressions; +related components under cursor; +Report invalid regular expressions; regex; -規則運算式; +regular expression; JSON; -為 JSON 字串上色; -回報無效的 JSON 字串; -偵測並提供 JSON 字串的編輯器功能; -;使用進階色彩;編輯器色彩配置;繼承頁面邊界;匯入指示詞; +Colorize JSON strings; +Report invalid JSON strings; +Detect and offer editor features for JSON strings; +Collapse #regions on file open; +Collapse Imports on file open; +Collapse metadata implementations on file open; +Use enhanced colors;Editor Color Scheme;Inheritance Margin;Import Directives; Advanced options page keywords diff --git a/src/Workspaces/Core/Portable/CodeFixesAndRefactorings/CommonFixAllState.cs b/src/Workspaces/Core/Portable/CodeFixesAndRefactorings/CommonFixAllState.cs index 9f051c30b102e..28ea1c9e3d971 100644 --- a/src/Workspaces/Core/Portable/CodeFixesAndRefactorings/CommonFixAllState.cs +++ b/src/Workspaces/Core/Portable/CodeFixesAndRefactorings/CommonFixAllState.cs @@ -13,7 +13,7 @@ internal abstract partial class CommonFixAllState { - public int CorrelationId { get; } = LogAggregator.GetNextId(); + public int CorrelationId { get; } = CorrelationIdFactory.GetNextId(); public TFixAllProvider FixAllProvider { get; } public string? CodeActionEquivalenceKey { get; } public TProvider Provider { get; } diff --git a/src/Workspaces/Core/Portable/Log/CorrelationIdFactory.cs b/src/Workspaces/Core/Portable/Log/CorrelationIdFactory.cs new file mode 100644 index 0000000000000..702f148c1574c --- /dev/null +++ b/src/Workspaces/Core/Portable/Log/CorrelationIdFactory.cs @@ -0,0 +1,19 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +using System; +using System.Collections.Generic; +using System.Text; +using System.Threading; + +namespace Microsoft.CodeAnalysis.Internal.Log +{ + internal static class CorrelationIdFactory + { + private static int s_globalId; + + public static int GetNextId() + => Interlocked.Increment(ref s_globalId); + } +} diff --git a/src/Workspaces/Core/Portable/Log/HistogramLogAggregator.cs b/src/Workspaces/Core/Portable/Log/HistogramLogAggregator.cs index 8643d926ddc15..9f04d3098f021 100644 --- a/src/Workspaces/Core/Portable/Log/HistogramLogAggregator.cs +++ b/src/Workspaces/Core/Portable/Log/HistogramLogAggregator.cs @@ -11,7 +11,7 @@ namespace Microsoft.CodeAnalysis.Internal.Log /// /// Defines a log aggregator to create a histogram /// - internal sealed class HistogramLogAggregator : AbstractLogAggregator + internal sealed class HistogramLogAggregator : AbstractLogAggregator.HistogramCounter> { private readonly int _bucketSize; private readonly int _maxBucketValue; @@ -32,13 +32,19 @@ public HistogramLogAggregator(int bucketSize, int maxBucketValue) protected override HistogramCounter CreateCounter() => new(_bucketSize, _maxBucketValue, _bucketCount); - public void IncreaseCount(object key, decimal value) + public void IncreaseCount(TKey key, int value) { var counter = GetCounter(key); counter.IncreaseCount(value); } - public HistogramCounter? GetValue(object key) + public void LogTime(TKey key, TimeSpan timeSpan) + { + var counter = GetCounter(key); + counter.IncreaseCount((int)timeSpan.TotalMilliseconds); + } + + public HistogramCounter? GetValue(TKey key) { TryGetCounter(key, out var counter); return counter; @@ -62,7 +68,7 @@ public HistogramCounter(int bucketSize, int maxBucketValue, int bucketCount) _buckets = new int[BucketCount]; } - public void IncreaseCount(decimal value) + public void IncreaseCount(int value) { var bucket = GetBucket(value); _buckets[bucket]++; @@ -86,9 +92,9 @@ public string GetBucketsAsString() return pooledStringBuilder.ToStringAndFree(); } - private int GetBucket(decimal value) + private int GetBucket(int value) { - var bucket = (int)Math.Floor(value / BucketSize); + var bucket = value / BucketSize; if (bucket >= BucketCount) { bucket = BucketCount - 1; diff --git a/src/Workspaces/Core/Portable/Log/StatisticLogAggregator.cs b/src/Workspaces/Core/Portable/Log/StatisticLogAggregator.cs index c0dad86c05102..afe08bbbb0972 100644 --- a/src/Workspaces/Core/Portable/Log/StatisticLogAggregator.cs +++ b/src/Workspaces/Core/Portable/Log/StatisticLogAggregator.cs @@ -4,20 +4,27 @@ #nullable disable +using System; + namespace Microsoft.CodeAnalysis.Internal.Log { - internal sealed class StatisticLogAggregator : AbstractLogAggregator + internal sealed class StatisticLogAggregator : AbstractLogAggregator.StatisticCounter> { protected override StatisticCounter CreateCounter() => new(); - public void AddDataPoint(object key, int value) + public void AddDataPoint(TKey key, int value) { var counter = GetCounter(key); counter.AddDataPoint(value); } - public StatisticResult GetStaticticResult(object key) + public void AddDataPoint(TKey key, TimeSpan timeSpan) + { + AddDataPoint(key, (int)timeSpan.TotalMilliseconds); + } + + public StatisticResult GetStaticticResult(TKey key) { if (TryGetCounter(key, out var counter)) { diff --git a/src/Workspaces/Core/Portable/Log/StatisticResult.cs b/src/Workspaces/Core/Portable/Log/StatisticResult.cs new file mode 100644 index 0000000000000..0c69d2bb708f9 --- /dev/null +++ b/src/Workspaces/Core/Portable/Log/StatisticResult.cs @@ -0,0 +1,90 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +#nullable disable + +using System.Collections.Generic; +using System.Linq; +using Roslyn.Utilities; + +namespace Microsoft.CodeAnalysis.Internal.Log +{ + internal struct StatisticResult + { + public static StatisticResult FromList(List values) + { + if (values.Count == 0) + { + return default; + } + + var max = int.MinValue; + var min = int.MaxValue; + + var total = 0; + for (var i = 0; i < values.Count; i++) + { + var current = values[i]; + max = max < current ? current : max; + min = min > current ? current : min; + + total += current; + } + + var mean = total / values.Count; + var median = values[values.Count / 2]; + + var range = max - min; + var mode = values.GroupBy(i => i).OrderByDescending(g => g.Count()).FirstOrDefault().Key; + + return new StatisticResult(max, min, median, mean, range, mode, values.Count); + } + + /// + /// maximum value + /// + public readonly int Maximum; + + /// + /// minimum value + /// + public readonly int Minimum; + + /// + /// middle value of the total data set + /// + public readonly int? Median; + + /// + /// average value of the total data set + /// + public readonly int Mean; + + /// + /// most frequent value in the total data set + /// + public readonly int? Mode; + + /// + /// difference between max and min value + /// + public readonly int Range; + + /// + /// number of data points in the total data set + /// + public readonly int Count; + + public StatisticResult(int max, int min, int? median, int mean, int range, int? mode, int count) + { + this.Maximum = max; + this.Minimum = min; + this.Median = median; + this.Mean = mean; + this.Range = range; + this.Mode = mode; + this.Count = count; + } + } +} diff --git a/src/Workspaces/Core/Portable/Workspace/Solution/SolutionLogger.cs b/src/Workspaces/Core/Portable/Workspace/Solution/SolutionLogger.cs index c59b5ecfe193a..161afc1205301 100644 --- a/src/Workspaces/Core/Portable/Workspace/Solution/SolutionLogger.cs +++ b/src/Workspaces/Core/Portable/Workspace/Solution/SolutionLogger.cs @@ -10,7 +10,7 @@ namespace Microsoft.CodeAnalysis.Logging { internal static class SolutionLogger { - private static readonly LogAggregator s_logAggregator = new(); + private static readonly CountLogAggregator s_logAggregator = new(); public static void UseExistingPartialProjectState() => s_logAggregator.IncreaseCount(nameof(UseExistingPartialProjectState)); diff --git a/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/CSharp/Extensions/ContextQuery/CSharpSyntaxContext.cs b/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/CSharp/Extensions/ContextQuery/CSharpSyntaxContext.cs index dfe71b09db076..2459ec45b2b98 100644 --- a/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/CSharp/Extensions/ContextQuery/CSharpSyntaxContext.cs +++ b/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/CSharp/Extensions/ContextQuery/CSharpSyntaxContext.cs @@ -80,7 +80,7 @@ private CSharpSyntaxContext( bool isInNonUserCode, bool isInQuery, bool isInstanceContext, - bool isInTaskLikeTypeContext, + bool isTaskLikeTypeContext, bool isIsOrAsOrSwitchOrWithExpressionContext, bool isIsOrAsTypeContext, bool isLabelContext, @@ -125,7 +125,7 @@ private CSharpSyntaxContext( isGlobalStatementContext: isGlobalStatementContext, isInImportsDirective: isInImportsDirective, isInQuery: isInQuery, - isInTaskLikeTypeContext: isInTaskLikeTypeContext, + isTaskLikeTypeContext: isTaskLikeTypeContext, isNameOfContext: isNameOfContext, isNamespaceContext: isNamespaceContext, isNamespaceDeclarationNameContext: isNamespaceDeclarationNameContext, @@ -274,7 +274,7 @@ private static CSharpSyntaxContext CreateContextWorker(Document document, Semant isInNonUserCode: isInNonUserCode, isInQuery: leftToken.GetAncestor() != null, isInstanceContext: syntaxTree.IsInstanceContext(targetToken, semanticModel, cancellationToken), - isInTaskLikeTypeContext: precedingModifiers.Contains(SyntaxKind.AsyncKeyword), + isTaskLikeTypeContext: precedingModifiers.Contains(SyntaxKind.AsyncKeyword), isIsOrAsOrSwitchOrWithExpressionContext: syntaxTree.IsIsOrAsOrSwitchOrWithExpressionContext(semanticModel, position, leftToken, cancellationToken), isIsOrAsTypeContext: syntaxTree.IsIsOrAsTypeContext(position, leftToken), isLabelContext: syntaxTree.IsLabelContext(position, cancellationToken), diff --git a/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/Core/Extensions/ContextQuery/SyntaxContext.cs b/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/Core/Extensions/ContextQuery/SyntaxContext.cs index 619eb5c3ac384..7d0d46ff08275 100644 --- a/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/Core/Extensions/ContextQuery/SyntaxContext.cs +++ b/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/Core/Extensions/ContextQuery/SyntaxContext.cs @@ -37,7 +37,7 @@ internal abstract class SyntaxContext public bool IsGlobalStatementContext { get; } public bool IsInImportsDirective { get; } public bool IsInQuery { get; } - public bool IsInTaskLikeTypeContext { get; } + public bool IsTaskLikeTypeContext { get; } public bool IsNameOfContext { get; } public bool IsNamespaceContext { get; } public bool IsNamespaceDeclarationNameContext { get; } @@ -69,7 +69,7 @@ protected SyntaxContext( bool isGlobalStatementContext, bool isInImportsDirective, bool isInQuery, - bool isInTaskLikeTypeContext, + bool isTaskLikeTypeContext, bool isNameOfContext, bool isNamespaceContext, bool isNamespaceDeclarationNameContext, @@ -101,7 +101,7 @@ protected SyntaxContext( this.IsGlobalStatementContext = isGlobalStatementContext; this.IsInImportsDirective = isInImportsDirective; this.IsInQuery = isInQuery; - this.IsInTaskLikeTypeContext = isInTaskLikeTypeContext; + this.IsTaskLikeTypeContext = isTaskLikeTypeContext; this.IsNameOfContext = isNameOfContext; this.IsNamespaceContext = isNamespaceContext; this.IsNamespaceDeclarationNameContext = isNamespaceDeclarationNameContext; diff --git a/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/Core/Log/AbstractLogAggregator.cs b/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/Core/Log/AbstractLogAggregator.cs index 4a17ae05cfdd3..0d4173983a3e6 100644 --- a/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/Core/Log/AbstractLogAggregator.cs +++ b/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/Core/Log/AbstractLogAggregator.cs @@ -17,65 +17,31 @@ namespace Microsoft.CodeAnalysis.Internal.Log /// /// helper class to aggregate some numeric value log in client side /// - internal abstract class AbstractLogAggregator : IEnumerable> + internal abstract class AbstractLogAggregator : IEnumerable> { - private static int s_globalId; - - private readonly ConcurrentDictionary _map = new(concurrencyLevel: 2, capacity: 2); - private readonly Func _createCounter; + private readonly ConcurrentDictionary _map = new(concurrencyLevel: 2, capacity: 2); + private readonly Func _createCounter; protected AbstractLogAggregator() { _createCounter = _ => CreateCounter(); } - protected abstract T CreateCounter(); - - public static int GetNextId() - => Interlocked.Increment(ref s_globalId); - - public static StatisticResult GetStatistics(List values) - { - if (values.Count == 0) - { - return default; - } - - var max = int.MinValue; - var min = int.MaxValue; - - var total = 0; - for (var i = 0; i < values.Count; i++) - { - var current = values[i]; - max = max < current ? current : max; - min = min > current ? current : min; - - total += current; - } - - var mean = total / values.Count; - var median = values[values.Count / 2]; - - var range = max - min; - var mode = values.GroupBy(i => i).OrderByDescending(g => g.Count()).FirstOrDefault().Key; - - return new StatisticResult(max, min, median, mean, range, mode, values.Count); - } + protected abstract TValue CreateCounter(); public bool IsEmpty => _map.IsEmpty; - public IEnumerator> GetEnumerator() + public IEnumerator> GetEnumerator() => _map.GetEnumerator(); IEnumerator IEnumerable.GetEnumerator() => this.GetEnumerator(); [PerformanceSensitive("https://devdiv.visualstudio.com/DevDiv/_workitems/edit/1279909", AllowCaptures = false)] - protected T GetCounter(object key) + protected TValue GetCounter(TKey key) => _map.GetOrAdd(key, _createCounter); - protected bool TryGetCounter(object key, out T counter) + protected bool TryGetCounter(TKey key, out TValue counter) { if (_map.TryGetValue(key, out counter)) { @@ -85,53 +51,4 @@ protected bool TryGetCounter(object key, out T counter) return false; } } - - internal struct StatisticResult - { - /// - /// maximum value - /// - public readonly int Maximum; - - /// - /// minimum value - /// - public readonly int Minimum; - - /// - /// middle value of the total data set - /// - public readonly int? Median; - - /// - /// average value of the total data set - /// - public readonly int Mean; - - /// - /// most frequent value in the total data set - /// - public readonly int? Mode; - - /// - /// difference between max and min value - /// - public readonly int Range; - - /// - /// number of data points in the total data set - /// - public readonly int Count; - - public StatisticResult(int max, int min, int? median, int mean, int range, int? mode, int count) - { - this.Maximum = max; - this.Minimum = min; - this.Median = median; - this.Mean = mean; - this.Range = range; - this.Mode = mode; - this.Count = count; - } - } } diff --git a/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/Core/Log/LogAggregator.cs b/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/Core/Log/CountLogAggregator.cs similarity index 85% rename from src/Workspaces/SharedUtilitiesAndExtensions/Workspace/Core/Log/LogAggregator.cs rename to src/Workspaces/SharedUtilitiesAndExtensions/Workspace/Core/Log/CountLogAggregator.cs index 96aa557eaf4ff..dd948593ad580 100644 --- a/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/Core/Log/LogAggregator.cs +++ b/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/Core/Log/CountLogAggregator.cs @@ -8,30 +8,30 @@ namespace Microsoft.CodeAnalysis.Internal.Log { - internal class LogAggregator : AbstractLogAggregator + internal class CountLogAggregator : AbstractLogAggregator.Counter> { protected override Counter CreateCounter() => new(); - public void SetCount(object key, int count) + public void SetCount(TKey key, int count) { var counter = GetCounter(key); counter.SetCount(count); } - public void IncreaseCount(object key) + public void IncreaseCount(TKey key) { var counter = GetCounter(key); counter.IncreaseCount(); } - public void IncreaseCountBy(object key, int value) + public void IncreaseCountBy(TKey key, int value) { var counter = GetCounter(key); counter.IncreaseCountBy(value); } - public int GetCount(object key) + public int GetCount(TKey key) { if (TryGetCounter(key, out var counter)) { diff --git a/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/Core/WorkspaceExtensions.projitems b/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/Core/WorkspaceExtensions.projitems index e126f5c79a839..f7e95fb1757ee 100644 --- a/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/Core/WorkspaceExtensions.projitems +++ b/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/Core/WorkspaceExtensions.projitems @@ -54,7 +54,7 @@ - + diff --git a/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/VisualBasic/Extensions/ContextQuery/VisualBasicSyntaxContext.vb b/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/VisualBasic/Extensions/ContextQuery/VisualBasicSyntaxContext.vb index 5ba7f5aef5e78..cded8db9d1d81 100644 --- a/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/VisualBasic/Extensions/ContextQuery/VisualBasicSyntaxContext.vb +++ b/src/Workspaces/SharedUtilitiesAndExtensions/Workspace/VisualBasic/Extensions/ContextQuery/VisualBasicSyntaxContext.vb @@ -66,7 +66,7 @@ Namespace Microsoft.CodeAnalysis.VisualBasic.Extensions.ContextQuery isInImportsDirective As Boolean, isInLambda As Boolean, isInQuery As Boolean, - isInTaskLikeTypeContext As Boolean, + isTaskLikeTypeContext As Boolean, isNameOfContext As Boolean, isNamespaceContext As Boolean, isNamespaceDeclarationNameContext As Boolean, @@ -96,7 +96,7 @@ Namespace Microsoft.CodeAnalysis.VisualBasic.Extensions.ContextQuery isGlobalStatementContext:=isGlobalStatementContext, isInImportsDirective:=isInImportsDirective, isInQuery:=isInQuery, - isInTaskLikeTypeContext:=isInTaskLikeTypeContext, + isTaskLikeTypeContext:=isTaskLikeTypeContext, isNameOfContext:=isNameOfContext, isNamespaceContext, isNamespaceDeclarationNameContext, @@ -134,7 +134,7 @@ Namespace Microsoft.CodeAnalysis.VisualBasic.Extensions.ContextQuery Me.IsPreprocessorEndDirectiveKeywordContext = targetToken.FollowsBadEndDirective() End Sub - Private Shared Function ComputeIsInTaskLikeTypeContext(targetToken As SyntaxToken) As Boolean + Private Shared Function ComputeIsTaskLikeTypeContext(targetToken As SyntaxToken) As Boolean ' If we're after the 'as' in an async method declaration, then filter down to task-like types only. If targetToken.Kind() = SyntaxKind.AsKeyword Then Dim asClause = TryCast(targetToken.Parent, AsClauseSyntax) @@ -177,7 +177,7 @@ Namespace Microsoft.CodeAnalysis.VisualBasic.Extensions.ContextQuery isInImportsDirective:=leftToken.GetAncestor(Of ImportsStatementSyntax)() IsNot Nothing, isInLambda:=leftToken.GetAncestor(Of LambdaExpressionSyntax)() IsNot Nothing, isInQuery:=isInQuery, - isInTaskLikeTypeContext:=ComputeIsInTaskLikeTypeContext(targetToken), + isTaskLikeTypeContext:=ComputeIsTaskLikeTypeContext(targetToken), isNameOfContext:=syntaxTree.IsNameOfContext(position, cancellationToken), isNamespaceContext:=syntaxTree.IsNamespaceContext(position, targetToken, cancellationToken, semanticModel), isNamespaceDeclarationNameContext:=syntaxTree.IsNamespaceDeclarationNameContext(position, cancellationToken),