public static string GetCommentIdForType(Type type) { StringBuilder stringBuilder = new StringBuilder("T:"); XmlCommentsIdHelper.AppendFullTypeName(type, stringBuilder, false); return(stringBuilder.ToString()); }
public static string GetCommentIdForProperty(PropertyInfo propertyInfo) { StringBuilder stringBuilder = new StringBuilder("P:"); XmlCommentsIdHelper.AppendFullTypeName(propertyInfo.DeclaringType, stringBuilder, false); stringBuilder.Append("."); XmlCommentsIdHelper.AppendPropertyName(propertyInfo, stringBuilder); return(stringBuilder.ToString()); }
public static string GetCommentIdForMethod(MethodInfo methodInfo) { StringBuilder stringBuilder = new StringBuilder("M:"); XmlCommentsIdHelper.AppendFullTypeName(methodInfo.DeclaringType, stringBuilder, false); stringBuilder.Append("."); XmlCommentsIdHelper.AppendMethodName(methodInfo, stringBuilder); return(stringBuilder.ToString()); }
private static void AppendMethodName(MethodInfo methodInfo, StringBuilder builder) { builder.Append(methodInfo.Name); ParameterInfo[] parameters = methodInfo.GetParameters(); if (parameters.Length == 0) { return; } builder.Append("("); ParameterInfo[] array = parameters; for (int i = 0; i < array.Length; i++) { ParameterInfo parameterInfo = array[i]; XmlCommentsIdHelper.AppendFullTypeName(parameterInfo.ParameterType, builder, true); builder.Append(","); } builder.Replace(",", ")", builder.Length - 1, 1); }
public static void ExpandGenericArgsIfAny(Type type, StringBuilder builder) { if (type.IsGenericType) { StringBuilder stringBuilder = new StringBuilder("{"); Type[] genericArguments = type.GetGenericArguments(); Type[] array = genericArguments; for (int i = 0; i < array.Length; i++) { Type type2 = array[i]; XmlCommentsIdHelper.AppendFullTypeName(type2, stringBuilder, true); stringBuilder.Append(","); } stringBuilder.Replace(",", "}", stringBuilder.Length - 1, 1); builder.Replace(string.Format("`{0}", genericArguments.Length), stringBuilder.ToString()); return; } if (type.IsArray) { XmlCommentsIdHelper.ExpandGenericArgsIfAny(type.GetElementType(), builder); } }