List<Module> (Module module) { if (PsiUtil.isIdeaProject(module.getProject())) { Set<Module> dependents = new HashSet<>(); ModuleUtilCore.collectModulesDependsOn(module, dependents); return new ArrayList<>(dependents); } final Module[] modules = ModuleManager.getInstance(module.getProject()).getModules(); final List<Module> candidates = new ArrayList<>(modules.length); final Set<Module> deps = new HashSet<>(modules.length); for (Module m : modules) { if (get(m) == getInstance()) { deps.clear(); PluginBuildUtil.getDependencies(m, deps); if (deps.contains(module) && getPluginXml(m) != null) { candidates.add(m); } } } return candidates; }