internal void ImportChildren(IPythonModule interpreterModule) { BuiltinModule builtinModule = null; foreach (var child in interpreterModule.GetChildrenModules()) { builtinModule = builtinModule ?? GetBuiltinModule(interpreterModule); var fullname = builtinModule.Name + "." + child; if (!_modules.TryGetValue(fullname, out var modRef) || modRef?.Module == null) { if (builtinModule.TryGetMember(child, out var value) && value is IModule module) { SetModule(fullname, module); _analyzer?.DoDelayedSpecialization(fullname); } } } }
internal void ImportChildren(IPythonModule interpreterModule) { BuiltinModule module = null; foreach (var child in interpreterModule.GetChildrenModules()) { module = module ?? GetBuiltinModule(interpreterModule); ModuleReference modRef; var fullname = module.Name + "." + child; if (!_modules.TryGetValue(fullname, out modRef) || modRef == null || modRef.Module == null) { IAnalysisSet value; if (module.TryGetMember(child, out value)) { var mod = value as IModule; if (mod != null) { _modules[fullname] = new ModuleReference(mod); } } } } }