/// <summary> /// Parses an assembly name /// </summary> /// <param name="asmFullName">Full assembly name</param> /// <param name="gpContext">Generic parameter context</param> /// <returns>A new <see cref="AssemblyRef"/> instance or <c>null</c> if parsing failed</returns> public static AssemblyRef ParseAssemblyRef(string asmFullName, GenericParamContext gpContext) { try { using (var parser = new ReflectionTypeNameParser(null, asmFullName, null, gpContext)) return(parser.ReadAssemblyRef()); } catch { return(null); } }
/// <summary> /// Constructor /// </summary> /// <param name="asmFullName">An assembly name</param> public AssemblyNameInfo(string asmFullName) : this(ReflectionTypeNameParser.ParseAssemblyRef(asmFullName)) { }
/// <summary> /// Parses a Reflection type name and creates a <see cref="ITypeDefOrRef"/> /// </summary> /// <param name="ownerModule">Module that will own the returned <see cref="ITypeDefOrRef"/> or <c>null</c></param> /// <param name="typeFullName">Full name of type</param> /// <param name="typeNameParserHelper">Helper class</param> /// <param name="gpContext">Generic parameter context</param> /// <returns>A new <see cref="ITypeDefOrRef"/> instance</returns> /// <exception cref="TypeNameParserException">If parsing failed</exception> public static ITypeDefOrRef ParseReflectionThrow(ModuleDef ownerModule, string typeFullName, IAssemblyRefFinder typeNameParserHelper, GenericParamContext gpContext) { using (var parser = new ReflectionTypeNameParser(ownerModule, typeFullName, typeNameParserHelper, gpContext)) return(parser.Parse()); }