public void Add(string dir) { if (!libdirs.Contains(dir)) { libdirs.Add(dir); } }
public bool Load(string path) { if (path.StartsWith("./") || path.StartsWith(".\\")) { path = path.Substring(2); } if (!loaded.Contains(path)) { try { PELoader pe = new PELoader(path); long time = Debug.Clock; metaData.Add(MetaData.loadMetaData(path, pe, false, false)); // Debug.Report("inhaling " + path, Debug.Clock - time); loaded.Add(path); } catch { return(false); } } // Add top-level namespaces to global namespace foreach (MetaData m in metaData) { foreach (MetaDataTypeDefinition d in m.TypeDefs) { if (d.Namespace != "") { GetNameSpace(d.Namespace); } } } return(true); }
public SymbolList Lookup(string name, stringList namespaces) { SymbolList symbols = new SymbolList(); foreach (MetaData m in metaData) { foreach (MetaDataTypeDefinition d in m.TypeDefs) { if (name == d.Name && (d.Namespace == "" || namespaces.Contains(d.Namespace))) { symbols.Add(GetSymbol(d, m.Name)); } } } return(symbols); }
public SymbolList Lookup(string name, stringList namespaces) { SymbolList symbols = new SymbolList(); foreach (Assembly a in assemblies) { foreach (System.Type t in a.GetTypes()) { if (name == GetName(t) && (t.Namespace == "" || t.Namespace == null || namespaces.Contains(t.Namespace))) { symbols.Add(GetSymbol(t)); } } } return(symbols); }