in src/PortingAssistant.Client.Analysis/Utils/ApiCompatiblity.cs [248:274]
private static Dictionary<string, int> SignatureToIndexPreProcess(PackageDetails packageDetails)
{
var indexDict = new Dictionary<string, int>();
if (packageDetails == null || packageDetails.Api == null)
{
return indexDict;
}
for (int i = 0; i < packageDetails.Api.Length; i++)
{
var api = packageDetails.Api[i];
var signature = api.MethodSignature.Replace("?", "");
if (!string.IsNullOrEmpty(signature) && !indexDict.ContainsKey(signature))
{
indexDict.Add(signature, i);
}
var extensionSignature = GetExtensionSignature(api);
if (!string.IsNullOrEmpty(extensionSignature) && !indexDict.ContainsKey(extensionSignature))
{
indexDict.Add(extensionSignature, i);
}
}
return indexDict;
}