protected override IProjectContent LoadProjectContent(string itemInclude, string itemFileName) { if (File.Exists(itemFileName)) { return(ParserService.DefaultProjectContentRegistry.GetProjectContentForReference(itemInclude, itemFileName)); } MonoAssemblyName assemblyName = MonoGlobalAssemblyCache.FindAssemblyName(itemInclude); if (assemblyName != null && assemblyName.FileName != null) { return(CecilReader.LoadAssembly(assemblyName.FileName, this)); } else { if (MonoToolLocationHelper.IsMonoInstalled) { HostCallback.ShowAssemblyLoadError(itemFileName, itemInclude, "Could not find assembly in Mono's GAC."); } else { HostCallback.ShowAssemblyLoadError(itemFileName, itemInclude, "Could not find assembly in Mono's GAC - Mono is not installed."); } return(null); } }
protected override IList <DomAssemblyName> GetCacheContent() { List <DomAssemblyName> list = new List <DomAssemblyName>(); foreach (MonoAssemblyName assemblyName in MonoGlobalAssemblyCache.GetAssemblyNames()) { list.Add(new DomAssemblyName(assemblyName.FullName)); } return(list); }
string GetAssemblyLocation(string name) { MonoAssemblyName assemblyName = MonoGlobalAssemblyCache.FindAssemblyName(name); if (assemblyName != null) { return(assemblyName.FileName); } return(String.Empty); }