diff options
author | v-susu1 <v-susu@microsoft.com> | 2022-08-09 13:12:23 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-08-09 13:12:23 +0300 |
commit | 53df4b8a7cbc0935a02cd3c781fd84aab1b4ab26 (patch) | |
tree | 14691c2c50db6c44411da0b6fd0c4c17992d5f75 | |
parent | afdf8490202c81083e7626b94dd2db413d7b7712 (diff) |
bug 686206: F# property signature is missing 'static' keyword (#646)
* Fix bug 686206
* update
* update
* update
* clean before build
* update tests
Co-authored-by: Min Huang <huangmin@microsoft.com>
6 files changed, 17 insertions, 8 deletions
diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 08abbfb9..a43218b9 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -113,7 +113,7 @@ stages: displayName: Run Unit and Integration Tests inputs: targetType: 'inline' - script: 'make prepare all check CONFIGURATION=$(buildConfiguration)' + script: 'make prepare clean all check CONFIGURATION=$(buildConfiguration)' - task: EsrpCodeSigning@1 displayName: Sign executable and dll files diff --git a/mdoc/Mono.Documentation/Updater/Formatters/FSharpFormatter.cs b/mdoc/Mono.Documentation/Updater/Formatters/FSharpFormatter.cs index f4725a6c..61a52c4d 100644 --- a/mdoc/Mono.Documentation/Updater/Formatters/FSharpFormatter.cs +++ b/mdoc/Mono.Documentation/Updater/Formatters/FSharpFormatter.cs @@ -734,7 +734,16 @@ namespace Mono.Documentation.Updater if (isField) buf.Append("val "); else - buf.Append("member this."); + { + if (property.GetMethod?.IsStatic ?? false) + { + buf.Append("static member "); + } + else + { + buf.Append("member this."); + } + } } buf.Append(DocUtils.GetPropertyName(property, NestedTypeSeparator)); diff --git a/mdoc/Test/en.expected-attached-entities/AttachedEventsAndProperties/AquariumFilter.xml b/mdoc/Test/en.expected-attached-entities/AttachedEventsAndProperties/AquariumFilter.xml index 7570f37a..5fc93030 100644 --- a/mdoc/Test/en.expected-attached-entities/AttachedEventsAndProperties/AquariumFilter.xml +++ b/mdoc/Test/en.expected-attached-entities/AttachedEventsAndProperties/AquariumFilter.xml @@ -44,7 +44,7 @@ <MemberSignature Language="ILAsm" Value=".property class System.Windows.RoutedEvent NeedsCleaningEvent" /> <MemberSignature Language="DocId" Value="P:AttachedEventsAndProperties.AquariumFilter.NeedsCleaningEvent" /> <MemberSignature Language="VB.NET" Value="Public Shared Property NeedsCleaningEvent As RoutedEvent" /> - <MemberSignature Language="F#" Value="member this.NeedsCleaningEvent : System.Windows.RoutedEvent with get, set" Usage="AttachedEventsAndProperties.AquariumFilter.NeedsCleaningEvent" /> + <MemberSignature Language="F#" Value="static member NeedsCleaningEvent : System.Windows.RoutedEvent with get, set" Usage="AttachedEventsAndProperties.AquariumFilter.NeedsCleaningEvent" /> <MemberSignature Language="JavaScript" Usage="var routedEvent = AquariumFilter.needsCleaningEvent;
AquariumFilter.needsCleaningEvent = routedEvent;" /> <MemberSignature Language="C++ CLI" Value="public:
 static property System::Windows::RoutedEvent ^ NeedsCleaningEvent { System::Windows::RoutedEvent ^ get(); void set(System::Windows::RoutedEvent ^ value); };" /> <MemberSignature Language="C++ WINRT" Value="static System::Windows::RoutedEvent NeedsCleaningEvent();

static void NeedsCleaningEvent(System::Windows::RoutedEvent value);" /> diff --git a/mdoc/Test/en.expected-attached-entities/AttachedEventsAndProperties/AttachedPropertyExample.xml b/mdoc/Test/en.expected-attached-entities/AttachedEventsAndProperties/AttachedPropertyExample.xml index 684fa0f4..3c1812b9 100644 --- a/mdoc/Test/en.expected-attached-entities/AttachedEventsAndProperties/AttachedPropertyExample.xml +++ b/mdoc/Test/en.expected-attached-entities/AttachedEventsAndProperties/AttachedPropertyExample.xml @@ -170,7 +170,7 @@ <MemberSignature Language="ILAsm" Value=".property bool IsDuplicated" /> <MemberSignature Language="DocId" Value="P:AttachedEventsAndProperties.AttachedPropertyExample.IsDuplicated" /> <MemberSignature Language="VB.NET" Value="Public Shared Property IsDuplicated As Boolean" /> - <MemberSignature Language="F#" Value="member this.IsDuplicated : bool with get, set" Usage="AttachedEventsAndProperties.AttachedPropertyExample.IsDuplicated" /> + <MemberSignature Language="F#" Value="static member IsDuplicated : bool with get, set" Usage="AttachedEventsAndProperties.AttachedPropertyExample.IsDuplicated" /> <MemberSignature Language="JavaScript" Usage="var boolean = AttachedPropertyExample.isDuplicated;
AttachedPropertyExample.isDuplicated = boolean;" /> <MemberSignature Language="C++ CLI" Value="public:
 static property bool IsDuplicated { bool get(); void set(bool value); };" /> <MemberSignature Language="C++ CX" Value="public:
 static property bool IsDuplicated { bool get(); void set(bool value); };" /> diff --git a/mdoc/Test/en.expected-fsharp/DiscriminatedUnions+SizeUnion.xml b/mdoc/Test/en.expected-fsharp/DiscriminatedUnions+SizeUnion.xml index 07fe5914..7632f6ca 100644 --- a/mdoc/Test/en.expected-fsharp/DiscriminatedUnions+SizeUnion.xml +++ b/mdoc/Test/en.expected-fsharp/DiscriminatedUnions+SizeUnion.xml @@ -317,7 +317,7 @@ <Member MemberName="Large"> <MemberSignature Language="C#" Value="public static DiscriminatedUnions.SizeUnion Large { get; }" /> <MemberSignature Language="ILAsm" Value=".property DiscriminatedUnions/SizeUnion Large" /> - <MemberSignature Language="F#" Value="member this.Large : DiscriminatedUnions.SizeUnion" Usage="DiscriminatedUnions.SizeUnion.Large" /> + <MemberSignature Language="F#" Value="static member Large : DiscriminatedUnions.SizeUnion" Usage="DiscriminatedUnions.SizeUnion.Large" /> <MemberType>Property</MemberType> <AssemblyInfo> <AssemblyVersion>1.0.0.0</AssemblyVersion> @@ -348,7 +348,7 @@ <Member MemberName="Medium"> <MemberSignature Language="C#" Value="public static DiscriminatedUnions.SizeUnion Medium { get; }" /> <MemberSignature Language="ILAsm" Value=".property DiscriminatedUnions/SizeUnion Medium" /> - <MemberSignature Language="F#" Value="member this.Medium : DiscriminatedUnions.SizeUnion" Usage="DiscriminatedUnions.SizeUnion.Medium" /> + <MemberSignature Language="F#" Value="static member Medium : DiscriminatedUnions.SizeUnion" Usage="DiscriminatedUnions.SizeUnion.Medium" /> <MemberType>Property</MemberType> <AssemblyInfo> <AssemblyVersion>1.0.0.0</AssemblyVersion> @@ -379,7 +379,7 @@ <Member MemberName="Small"> <MemberSignature Language="C#" Value="public static DiscriminatedUnions.SizeUnion Small { get; }" /> <MemberSignature Language="ILAsm" Value=".property DiscriminatedUnions/SizeUnion Small" /> - <MemberSignature Language="F#" Value="member this.Small : DiscriminatedUnions.SizeUnion" Usage="DiscriminatedUnions.SizeUnion.Small" /> + <MemberSignature Language="F#" Value="static member Small : DiscriminatedUnions.SizeUnion" Usage="DiscriminatedUnions.SizeUnion.Small" /> <MemberType>Property</MemberType> <AssemblyInfo> <AssemblyVersion>1.0.0.0</AssemblyVersion> diff --git a/mdoc/mdoc.Test/FSharp/FSharpFormatterTests.cs b/mdoc/mdoc.Test/FSharp/FSharpFormatterTests.cs index d86abfdc..e484eabe 100644 --- a/mdoc/mdoc.Test/FSharp/FSharpFormatterTests.cs +++ b/mdoc/mdoc.Test/FSharp/FSharpFormatterTests.cs @@ -135,7 +135,7 @@ namespace mdoc.Test public void TypeSignature_Union_5() => TestPropertySignature( typeof(DiscriminatedUnions.SizeUnion), - "member this.Small : DiscriminatedUnions.SizeUnion", + "static member Small : DiscriminatedUnions.SizeUnion", nameof(DiscriminatedUnions.SizeUnion.Small)); [Test] |