diff options
author | Jeff Chen <59190910+JeffInChrist@users.noreply.github.com> | 2021-04-30 22:26:32 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-04-30 22:26:32 +0300 |
commit | 511dafa67f2ba31119c313aa28ce6c01d40d13af (patch) | |
tree | 5334e31948a42d56c1bba0a0dd3a3cfdddb0f6c1 /mdoc | |
parent | b9158aa6bc4e958bbd243a0d4fbf109788c90e87 (diff) |
Fixed the return type of auto event revoker (#553)
https://dev.azure.com/ceapex/Engineering/_workitems/edit/100018
Co-authored-by: anmeng10101 <33647870+anmeng10101@users.noreply.github.com>
Diffstat (limited to 'mdoc')
7 files changed, 16 insertions, 15 deletions
diff --git a/mdoc/Mono.Documentation/Updater/Formatters/CppFormatters/CppWinRtFullMemberFormatter.cs b/mdoc/Mono.Documentation/Updater/Formatters/CppFormatters/CppWinRtFullMemberFormatter.cs index 646e802d..35795bc2 100644 --- a/mdoc/Mono.Documentation/Updater/Formatters/CppFormatters/CppWinRtFullMemberFormatter.cs +++ b/mdoc/Mono.Documentation/Updater/Formatters/CppFormatters/CppWinRtFullMemberFormatter.cs @@ -186,6 +186,7 @@ namespace Mono.Documentation.Updater.Formatters.CppFormatters protected override string GetEventDeclaration(EventDefinition e) { string apiName = e.Name, typeName = GetTypeNameWithOptions(e.EventType, AppendHatOnReturn); + var rtnAutoEventRevoker = e.DeclaringType.Name + NestedTypeSeparator + apiName; StringBuilder buf = new StringBuilder(); //if (AppendVisibility(buf, e.AddMethod).Length == 0) @@ -194,7 +195,7 @@ namespace Mono.Documentation.Updater.Formatters.CppFormatters buf.AppendLine().AppendLine("// Revoke with event_token"); buf.AppendLine($"void {apiName}(event_token const* cookie) const;"); buf.AppendLine().AppendLine("// Revoke with event_revoker"); - buf.Append($"{apiName}_revoker {apiName}(auto_revoke_t, {typeName} const& handler) const;"); + buf.Append($"{rtnAutoEventRevoker}_revoker {apiName}(auto_revoke_t, {typeName} const& handler) const;"); return buf.ToString().Replace("\r\n", "\n"); } diff --git a/mdoc/Test/en.expected-cppwinrt2/Mono.DocTest.Generic/GenericBase`1.xml b/mdoc/Test/en.expected-cppwinrt2/Mono.DocTest.Generic/GenericBase`1.xml index 53452ce4..47dd2f26 100644 --- a/mdoc/Test/en.expected-cppwinrt2/Mono.DocTest.Generic/GenericBase`1.xml +++ b/mdoc/Test/en.expected-cppwinrt2/Mono.DocTest.Generic/GenericBase`1.xml @@ -85,7 +85,7 @@ <Member MemberName="ItemChanged"> <MemberSignature Language="C#" Value="public event Action<Mono.DocTest.Generic.MyList<U>,Mono.DocTest.Generic.MyList<U>.Helper<U,U>> ItemChanged;" /> <MemberSignature Language="ILAsm" Value=".event class System.Action`2<class Mono.DocTest.Generic.MyList`1<!U>, class Mono.DocTest.Generic.MyList`1/Helper`2<!U, !U, !U>> ItemChanged" /> - <MemberSignature Language="C++ WINRT" Value="// Register
event_token ItemChanged(Action<Mono::DocTest::Generic::MyList<U>, Mono::DocTest::Generic::MyList<U>::Helper<U, U> const&> const& handler) const;

// Revoke with event_token
void ItemChanged(event_token const* cookie) const;

// Revoke with event_revoker
ItemChanged_revoker ItemChanged(auto_revoke_t, Action<Mono::DocTest::Generic::MyList<U>, Mono::DocTest::Generic::MyList<U>::Helper<U, U> const&> const& handler) const;" /> + <MemberSignature Language="C++ WINRT" Value="// Register
event_token ItemChanged(Action<Mono::DocTest::Generic::MyList<U>, Mono::DocTest::Generic::MyList<U>::Helper<U, U> const&> const& handler) const;

// Revoke with event_token
void ItemChanged(event_token const* cookie) const;

// Revoke with event_revoker
GenericBase`1::ItemChanged_revoker ItemChanged(auto_revoke_t, Action<Mono::DocTest::Generic::MyList<U>, Mono::DocTest::Generic::MyList<U>::Helper<U, U> const&> const& handler) const;" /> <MemberType>Event</MemberType> <AssemblyInfo> <AssemblyVersion>0.0.0.0</AssemblyVersion> @@ -101,7 +101,7 @@ <Member MemberName="MyEvent"> <MemberSignature Language="C#" Value="public event EventHandler<Mono.DocTest.Generic.GenericBase<U>.FooEventArgs> MyEvent;" /> <MemberSignature Language="ILAsm" Value=".event class System.EventHandler`1<class Mono.DocTest.Generic.GenericBase`1/FooEventArgs<!U>> MyEvent" /> - <MemberSignature Language="C++ WINRT" Value="// Register
event_token MyEvent(EventHandler<Mono::DocTest::Generic::GenericBase<U>::FooEventArgs> const& handler) const;

// Revoke with event_token
void MyEvent(event_token const* cookie) const;

// Revoke with event_revoker
MyEvent_revoker MyEvent(auto_revoke_t, EventHandler<Mono::DocTest::Generic::GenericBase<U>::FooEventArgs> const& handler) const;" /> + <MemberSignature Language="C++ WINRT" Value="// Register
event_token MyEvent(EventHandler<Mono::DocTest::Generic::GenericBase<U>::FooEventArgs> const& handler) const;

// Revoke with event_token
void MyEvent(event_token const* cookie) const;

// Revoke with event_revoker
GenericBase`1::MyEvent_revoker MyEvent(auto_revoke_t, EventHandler<Mono::DocTest::Generic::GenericBase<U>::FooEventArgs> const& handler) const;" /> <MemberType>Event</MemberType> <AssemblyInfo> <AssemblyVersion>0.0.0.0</AssemblyVersion> diff --git a/mdoc/Test/en.expected-cppwinrt2/Mono.DocTest/Widget.xml b/mdoc/Test/en.expected-cppwinrt2/Mono.DocTest/Widget.xml index c0e5766b..0bb9e49d 100644 --- a/mdoc/Test/en.expected-cppwinrt2/Mono.DocTest/Widget.xml +++ b/mdoc/Test/en.expected-cppwinrt2/Mono.DocTest/Widget.xml @@ -69,7 +69,7 @@ <Member MemberName="AnEvent"> <MemberSignature Language="C#" Value="public event Mono.DocTest.Widget.Del AnEvent;" /> <MemberSignature Language="ILAsm" Value=".event class Mono.DocTest.Widget/Del AnEvent" /> - <MemberSignature Language="C++ WINRT" Value="// Register
event_token AnEvent(Mono::DocTest::Widget::Del const& handler) const;

// Revoke with event_token
void AnEvent(event_token const* cookie) const;

// Revoke with event_revoker
AnEvent_revoker AnEvent(auto_revoke_t, Mono::DocTest::Widget::Del const& handler) const;" /> + <MemberSignature Language="C++ WINRT" Value="// Register
event_token AnEvent(Mono::DocTest::Widget::Del const& handler) const;

// Revoke with event_token
void AnEvent(event_token const* cookie) const;

// Revoke with event_revoker
Widget::AnEvent_revoker AnEvent(auto_revoke_t, Mono::DocTest::Widget::Del const& handler) const;" /> <MemberType>Event</MemberType> <AssemblyInfo> <AssemblyVersion>0.0.0.0</AssemblyVersion> @@ -99,7 +99,7 @@ <Member MemberName="AnotherEvent"> <MemberSignature Language="C#" Value="protected event Mono.DocTest.Widget.Del AnotherEvent;" /> <MemberSignature Language="ILAsm" Value=".event class Mono.DocTest.Widget/Del AnotherEvent" /> - <MemberSignature Language="C++ WINRT" Value="// Register
event_token AnotherEvent(Mono::DocTest::Widget::Del const& handler) const;

// Revoke with event_token
void AnotherEvent(event_token const* cookie) const;

// Revoke with event_revoker
AnotherEvent_revoker AnotherEvent(auto_revoke_t, Mono::DocTest::Widget::Del const& handler) const;" /> + <MemberSignature Language="C++ WINRT" Value="// Register
event_token AnotherEvent(Mono::DocTest::Widget::Del const& handler) const;

// Revoke with event_token
void AnotherEvent(event_token const* cookie) const;

// Revoke with event_revoker
Widget::AnotherEvent_revoker AnotherEvent(auto_revoke_t, Mono::DocTest::Widget::Del const& handler) const;" /> <MemberType>Event</MemberType> <AssemblyInfo> <AssemblyVersion>0.0.0.0</AssemblyVersion> @@ -306,7 +306,7 @@ <Member MemberName="DynamicE1"> <MemberSignature Language="C#" Value="public event Func<dynamic> DynamicE1;" /> <MemberSignature Language="ILAsm" Value=".event class System.Func`1<object> DynamicE1" /> - <MemberSignature Language="C++ WINRT" Value="// Register
event_token DynamicE1(Func<winrt::Windows::Foundation::IInspectable> const& handler) const;

// Revoke with event_token
void DynamicE1(event_token const* cookie) const;

// Revoke with event_revoker
DynamicE1_revoker DynamicE1(auto_revoke_t, Func<winrt::Windows::Foundation::IInspectable> const& handler) const;" /> + <MemberSignature Language="C++ WINRT" Value="// Register
event_token DynamicE1(Func<winrt::Windows::Foundation::IInspectable> const& handler) const;

// Revoke with event_token
void DynamicE1(event_token const* cookie) const;

// Revoke with event_revoker
Widget::DynamicE1_revoker DynamicE1(auto_revoke_t, Func<winrt::Windows::Foundation::IInspectable> const& handler) const;" /> <MemberType>Event</MemberType> <AssemblyInfo> <AssemblyVersion>0.0.0.0</AssemblyVersion> @@ -328,7 +328,7 @@ <Member MemberName="DynamicE2"> <MemberSignature Language="C#" Value="public event Func<dynamic> DynamicE2;" /> <MemberSignature Language="ILAsm" Value=".event class System.Func`1<object> DynamicE2" /> - <MemberSignature Language="C++ WINRT" Value="// Register
event_token DynamicE2(Func<winrt::Windows::Foundation::IInspectable> const& handler) const;

// Revoke with event_token
void DynamicE2(event_token const* cookie) const;

// Revoke with event_revoker
DynamicE2_revoker DynamicE2(auto_revoke_t, Func<winrt::Windows::Foundation::IInspectable> const& handler) const;" /> + <MemberSignature Language="C++ WINRT" Value="// Register
event_token DynamicE2(Func<winrt::Windows::Foundation::IInspectable> const& handler) const;

// Revoke with event_token
void DynamicE2(event_token const* cookie) const;

// Revoke with event_revoker
Widget::DynamicE2_revoker DynamicE2(auto_revoke_t, Func<winrt::Windows::Foundation::IInspectable> const& handler) const;" /> <MemberType>Event</MemberType> <AssemblyInfo> <AssemblyVersion>0.0.0.0</AssemblyVersion> diff --git a/mdoc/Test/en.expected/Mono.DocTest.Generic/GenericBase`1.xml b/mdoc/Test/en.expected/Mono.DocTest.Generic/GenericBase`1.xml index 00b21131..31a89773 100644 --- a/mdoc/Test/en.expected/Mono.DocTest.Generic/GenericBase`1.xml +++ b/mdoc/Test/en.expected/Mono.DocTest.Generic/GenericBase`1.xml @@ -107,7 +107,7 @@ <MemberSignature Language="VB.NET" Value="Public Custom Event ItemChanged As Action(Of MyList(Of U), MyList(Of U).Helper(Of U, U)) " /> <MemberSignature Language="F#" Value="member this.ItemChanged : Action<Mono.DocTest.Generic.MyList<'U>, Mono.DocTest.Generic.MyList<'U>.Helper<'U, 'U>> " Usage="member this.ItemChanged : System.Action<Mono.DocTest.Generic.MyList<'U>, Mono.DocTest.Generic.MyList<'U>.Helper<'U, 'U>> " /> <MemberSignature Language="C++ CLI" Value="public:
 event Action<Mono::DocTest::Generic::MyList<U> ^, Mono::DocTest::Generic::MyList<U>::Helper<U, U> ^> ^ ItemChanged;" /> - <MemberSignature Language="C++ WINRT" Value="// Register
event_token ItemChanged(Action<Mono::DocTest::Generic::MyList<U>, Mono::DocTest::Generic::MyList<U>::Helper<U, U> const&> const& handler) const;

// Revoke with event_token
void ItemChanged(event_token const* cookie) const;

// Revoke with event_revoker
ItemChanged_revoker ItemChanged(auto_revoke_t, Action<Mono::DocTest::Generic::MyList<U>, Mono::DocTest::Generic::MyList<U>::Helper<U, U> const&> const& handler) const;" /> + <MemberSignature Language="C++ WINRT" Value="// Register
event_token ItemChanged(Action<Mono::DocTest::Generic::MyList<U>, Mono::DocTest::Generic::MyList<U>::Helper<U, U> const&> const& handler) const;

// Revoke with event_token
void ItemChanged(event_token const* cookie) const;

// Revoke with event_revoker
GenericBase`1::ItemChanged_revoker ItemChanged(auto_revoke_t, Action<Mono::DocTest::Generic::MyList<U>, Mono::DocTest::Generic::MyList<U>::Helper<U, U> const&> const& handler) const;" /> <MemberType>Event</MemberType> <AssemblyInfo> <AssemblyVersion>0.0.0.0</AssemblyVersion> @@ -127,7 +127,7 @@ <MemberSignature Language="VB.NET" Value="Public Custom Event MyEvent As EventHandler(Of GenericBase(Of U).FooEventArgs) " /> <MemberSignature Language="F#" Value="member this.MyEvent : EventHandler<Mono.DocTest.Generic.GenericBase<'U>.FooEventArgs> " Usage="member this.MyEvent : System.EventHandler<Mono.DocTest.Generic.GenericBase<'U>.FooEventArgs> " /> <MemberSignature Language="C++ CLI" Value="public:
 event EventHandler<Mono::DocTest::Generic::GenericBase<U>::FooEventArgs ^> ^ MyEvent;" /> - <MemberSignature Language="C++ WINRT" Value="// Register
event_token MyEvent(EventHandler<Mono::DocTest::Generic::GenericBase<U>::FooEventArgs> const& handler) const;

// Revoke with event_token
void MyEvent(event_token const* cookie) const;

// Revoke with event_revoker
MyEvent_revoker MyEvent(auto_revoke_t, EventHandler<Mono::DocTest::Generic::GenericBase<U>::FooEventArgs> const& handler) const;" /> + <MemberSignature Language="C++ WINRT" Value="// Register
event_token MyEvent(EventHandler<Mono::DocTest::Generic::GenericBase<U>::FooEventArgs> const& handler) const;

// Revoke with event_token
void MyEvent(event_token const* cookie) const;

// Revoke with event_revoker
GenericBase`1::MyEvent_revoker MyEvent(auto_revoke_t, EventHandler<Mono::DocTest::Generic::GenericBase<U>::FooEventArgs> const& handler) const;" /> <MemberType>Event</MemberType> <AssemblyInfo> <AssemblyVersion>0.0.0.0</AssemblyVersion> diff --git a/mdoc/Test/en.expected/Mono.DocTest/Widget.xml b/mdoc/Test/en.expected/Mono.DocTest/Widget.xml index 54c82c81..4a2d0cc6 100644 --- a/mdoc/Test/en.expected/Mono.DocTest/Widget.xml +++ b/mdoc/Test/en.expected/Mono.DocTest/Widget.xml @@ -95,7 +95,7 @@ <MemberSignature Language="JavaScript" Usage="function onAnEvent(eventArgs) { /* Your code */ }
widget.addEventListener("anevent", onAnEvent);
widget.removeEventListener("anevent", onAnEvent);
- or -
widget.onanevent = onAnEvent;" /> <MemberSignature Language="C++ CLI" Value="public:
 event Mono::DocTest::Widget::Del ^ AnEvent;" /> <MemberSignature Language="C++ CX" Value="public:
 event Mono::DocTest::Widget::Del ^ AnEvent;" /> - <MemberSignature Language="C++ WINRT" Value="// Register
event_token AnEvent(Mono::DocTest::Widget::Del const& handler) const;

// Revoke with event_token
void AnEvent(event_token const* cookie) const;

// Revoke with event_revoker
AnEvent_revoker AnEvent(auto_revoke_t, Mono::DocTest::Widget::Del const& handler) const;" /> + <MemberSignature Language="C++ WINRT" Value="// Register
event_token AnEvent(Mono::DocTest::Widget::Del const& handler) const;

// Revoke with event_token
void AnEvent(event_token const* cookie) const;

// Revoke with event_revoker
Widget::AnEvent_revoker AnEvent(auto_revoke_t, Mono::DocTest::Widget::Del const& handler) const;" /> <MemberType>Event</MemberType> <AssemblyInfo> <AssemblyVersion>0.0.0.0</AssemblyVersion> @@ -133,7 +133,7 @@ <MemberSignature Language="F#" Value="member this.AnotherEvent : Mono.DocTest.Widget.Del " Usage="member this.AnotherEvent : Mono.DocTest.Widget.Del " /> <MemberSignature Language="C++ CLI" Value="protected:
 event Mono::DocTest::Widget::Del ^ AnotherEvent;" /> <MemberSignature Language="C++ CX" Value="protected:
 event Mono::DocTest::Widget::Del ^ AnotherEvent;" /> - <MemberSignature Language="C++ WINRT" Value="// Register
event_token AnotherEvent(Mono::DocTest::Widget::Del const& handler) const;

// Revoke with event_token
void AnotherEvent(event_token const* cookie) const;

// Revoke with event_revoker
AnotherEvent_revoker AnotherEvent(auto_revoke_t, Mono::DocTest::Widget::Del const& handler) const;" /> + <MemberSignature Language="C++ WINRT" Value="// Register
event_token AnotherEvent(Mono::DocTest::Widget::Del const& handler) const;

// Revoke with event_token
void AnotherEvent(event_token const* cookie) const;

// Revoke with event_revoker
Widget::AnotherEvent_revoker AnotherEvent(auto_revoke_t, Mono::DocTest::Widget::Del const& handler) const;" /> <MemberType>Event</MemberType> <AssemblyInfo> <AssemblyVersion>0.0.0.0</AssemblyVersion> @@ -391,7 +391,7 @@ <MemberSignature Language="F#" Value="member this.DynamicE1 : Func<obj> " Usage="member this.DynamicE1 : System.Func<System.obj> " /> <MemberSignature Language="JavaScript" Usage="function onDynamicE1(eventArgs) { /* Your code */ }
widget.addEventListener("dynamice1", onDynamicE1);
widget.removeEventListener("dynamice1", onDynamicE1);
- or -
widget.ondynamice1 = onDynamicE1;" /> <MemberSignature Language="C++ CLI" Value="public:
 event Func<System::Object ^> ^ DynamicE1;" /> - <MemberSignature Language="C++ WINRT" Value="// Register
event_token DynamicE1(Func<winrt::Windows::Foundation::IInspectable> const& handler) const;

// Revoke with event_token
void DynamicE1(event_token const* cookie) const;

// Revoke with event_revoker
DynamicE1_revoker DynamicE1(auto_revoke_t, Func<winrt::Windows::Foundation::IInspectable> const& handler) const;" /> + <MemberSignature Language="C++ WINRT" Value="// Register
event_token DynamicE1(Func<winrt::Windows::Foundation::IInspectable> const& handler) const;

// Revoke with event_token
void DynamicE1(event_token const* cookie) const;

// Revoke with event_revoker
Widget::DynamicE1_revoker DynamicE1(auto_revoke_t, Func<winrt::Windows::Foundation::IInspectable> const& handler) const;" /> <MemberType>Event</MemberType> <AssemblyInfo> <AssemblyVersion>0.0.0.0</AssemblyVersion> @@ -419,7 +419,7 @@ <MemberSignature Language="F#" Value="member this.DynamicE2 : Func<obj> " Usage="member this.DynamicE2 : System.Func<System.obj> " /> <MemberSignature Language="JavaScript" Usage="function onDynamicE2(eventArgs) { /* Your code */ }
widget.addEventListener("dynamice2", onDynamicE2);
widget.removeEventListener("dynamice2", onDynamicE2);
- or -
widget.ondynamice2 = onDynamicE2;" /> <MemberSignature Language="C++ CLI" Value="public:
 event Func<System::Object ^> ^ DynamicE2;" /> - <MemberSignature Language="C++ WINRT" Value="// Register
event_token DynamicE2(Func<winrt::Windows::Foundation::IInspectable> const& handler) const;

// Revoke with event_token
void DynamicE2(event_token const* cookie) const;

// Revoke with event_revoker
DynamicE2_revoker DynamicE2(auto_revoke_t, Func<winrt::Windows::Foundation::IInspectable> const& handler) const;" /> + <MemberSignature Language="C++ WINRT" Value="// Register
event_token DynamicE2(Func<winrt::Windows::Foundation::IInspectable> const& handler) const;

// Revoke with event_token
void DynamicE2(event_token const* cookie) const;

// Revoke with event_revoker
Widget::DynamicE2_revoker DynamicE2(auto_revoke_t, Func<winrt::Windows::Foundation::IInspectable> const& handler) const;" /> <MemberType>Event</MemberType> <AssemblyInfo> <AssemblyVersion>0.0.0.0</AssemblyVersion> diff --git a/mdoc/Test/ex.expected-cppwinrtuwp/UwpTestWinRtComponentCpp/Class1.xml b/mdoc/Test/ex.expected-cppwinrtuwp/UwpTestWinRtComponentCpp/Class1.xml index 387025c8..63823405 100644 --- a/mdoc/Test/ex.expected-cppwinrtuwp/UwpTestWinRtComponentCpp/Class1.xml +++ b/mdoc/Test/ex.expected-cppwinrtuwp/UwpTestWinRtComponentCpp/Class1.xml @@ -123,7 +123,7 @@ <Member MemberName="primeFoundEvent"> <MemberSignature Language="C#" Value="public event UwpTestWinRtComponentCpp.PrimeFoundHandler primeFoundEvent;" /> <MemberSignature Language="ILAsm" Value=".event class UwpTestWinRtComponentCpp.PrimeFoundHandler primeFoundEvent" /> - <MemberSignature Language="C++ WINRT" Value="// Register
event_token primeFoundEvent(UwpTestWinRtComponentCpp::PrimeFoundHandler const& handler) const;

// Revoke with event_token
void primeFoundEvent(event_token const* cookie) const;

// Revoke with event_revoker
primeFoundEvent_revoker primeFoundEvent(auto_revoke_t, UwpTestWinRtComponentCpp::PrimeFoundHandler const& handler) const;" /> + <MemberSignature Language="C++ WINRT" Value="// Register
event_token primeFoundEvent(UwpTestWinRtComponentCpp::PrimeFoundHandler const& handler) const;

// Revoke with event_token
void primeFoundEvent(event_token const* cookie) const;

// Revoke with event_revoker
Class1::primeFoundEvent_revoker primeFoundEvent(auto_revoke_t, UwpTestWinRtComponentCpp::PrimeFoundHandler const& handler) const;" /> <MemberType>Event</MemberType> <AssemblyInfo> <AssemblyVersion>255.255.255.255</AssemblyVersion> diff --git a/mdoc/mdoc.Test/CppWinRtMembersTests.cs b/mdoc/mdoc.Test/CppWinRtMembersTests.cs index 918efc32..cd0f34a1 100644 --- a/mdoc/mdoc.Test/CppWinRtMembersTests.cs +++ b/mdoc/mdoc.Test/CppWinRtMembersTests.cs @@ -107,7 +107,7 @@ event_token primeFoundEvent(UwpTestWinRtComponentCpp::PrimeFoundHandler const& h void primeFoundEvent(event_token const* cookie) const; // Revoke with event_revoker -primeFoundEvent_revoker primeFoundEvent(auto_revoke_t, UwpTestWinRtComponentCpp::PrimeFoundHandler const& handler) const;"; +Class1::primeFoundEvent_revoker primeFoundEvent(auto_revoke_t, UwpTestWinRtComponentCpp::PrimeFoundHandler const& handler) const;"; TestEventSignature(CppCxTestLibName, "UwpTestWinRtComponentCpp.Class1", "primeFoundEvent", expectedSig); } |