Imported Upstream version 5.20.0.180

Former-commit-id: ff953ca879339fe1e1211f7220f563e1342e66cb
This commit is contained in:
Xamarin Public Jenkins (auto-signing)
2019-02-04 20:11:37 +00:00
parent 0e2d47d1c8
commit 0510252385
3360 changed files with 83827 additions and 39243 deletions

View File

@@ -222,7 +222,7 @@ namespace Mono.Cecil.Rocks {
void WriteItemName (string name)
{
id.Append (name.Replace ('.', '#'));
id.Append (name.Replace ('.', '#').Replace('<', '{').Replace('>', '}'));
}
public override string ToString ()

View File

@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\..\Mono.Cecil.Tests.props" />
<PropertyGroup>
<ProjectGuid>{C6CFD7E1-B855-44DC-B4CE-9CD72984AF52}</ProjectGuid>
<RootNamespace>Mono.Cecil.Rocks.Tests</RootNamespace>
@@ -25,6 +26,5 @@
<ItemGroup>
<None Include="Resources\**\*" />
</ItemGroup>
<Import Project="..\..\Mono.Cecil.Tests.props" />
<Import Project="$(MSBuildCSharpTargets)" />
<Import Project="$(MSBuildCSharpTargets)" Condition="!$(NetStandard)" />
</Project>

View File

@@ -8,10 +8,11 @@ using Mono.Cecil.Rocks;
namespace N
{
/// <summary>
/// ID string generated is "T:N.X".
/// </summary>
public class X
public class X : IX<KVP<string, int>>
{
/// <summary>
/// ID string generated is "M:N.X.#ctor".
@@ -102,7 +103,19 @@ namespace N
public static void Linq (IEnumerable<string> enumerable, Func<string> selector)
{
}
/// <summary>
/// ID string generated is "M:N.X.N#IX{N#KVP{System#String,System#Int32}}#IXA(N.KVP{System.String,System.Int32})"
/// </summary>
void IX<KVP<string, int>>.IXA (KVP<string, int> k) { }
}
public interface IX<K>
{
void IXA (K k);
}
public class KVP<K, T> { }
}
namespace Mono.Cecil.Tests {
@@ -251,6 +264,15 @@ namespace Mono.Cecil.Tests {
AssertDocumentID ("M:N.X.Linq(System.Collections.Generic.IEnumerable{System.String},System.Func{System.String})", method);
}
[Test]
public void EII ()
{
var type = GetTestType ();
var method = type.Methods.Where (m => m.Name.Contains("IXA")).First ();
AssertDocumentID ("M:N.X.N#IX{N#KVP{System#String,System#Int32}}#IXA(N.KVP{System.String,System.Int32})", method);
}
TypeDefinition GetTestType ()
{
return typeof (N.X).ToDefinition ();