private static string GetMemberSignature(string classSignature, string memberSignature) { if (memberSignature == null || classSignature == null) { return(memberSignature); } if (memberSignature.StartsWith(classSignature + ".")) { memberSignature = memberSignature.Substring(classSignature.Length + 1); } // collapse generic method signatures if (classSignature.Contains("<")) { var className = classSignature.Substring(0, classSignature.IndexOf("<")); var methodPrefixes = GenericMethods.GetOrDefault(className); if (methodPrefixes != null) { foreach (var prefix in methodPrefixes) { if (memberSignature.StartsWith(prefix + "(")) { memberSignature = prefix + "(...)"; break; } } } } return(memberSignature); }