public static TypeReference ParseType(ModuleDefinition module, string fullname) { if (string.IsNullOrEmpty(fullname)) { return(null); } TypeParser typeParser = new TypeParser(fullname); return(TypeParser.GetTypeReference(module, typeParser.ParseType(true))); }
private static TypeReference TryCreateGenericInstanceType(TypeReference type, TypeParser.Type type_info) { TypeParser.Type[] generic_arguments = type_info.generic_arguments; if (generic_arguments.IsNullOrEmpty <TypeParser.Type>()) { return(type); } GenericInstanceType genericInstanceType = new GenericInstanceType(type); Collection <TypeReference> genericArguments = genericInstanceType.GenericArguments; for (int i = 0; i < generic_arguments.Length; i++) { genericArguments.Add(TypeParser.GetTypeReference(type.Module, generic_arguments[i])); } return(genericInstanceType); }