void (@Nullable final Consumer<? super JpsModule> moduleConsumer, @Nullable final Consumer<? super JpsLibrary> libraryConsumer) { processDependencies(dependencyElement -> { if (moduleConsumer != null) { if (myRecursively && dependencyElement instanceof JpsModuleSourceDependency) { moduleConsumer.consume(dependencyElement.getContainingModule()); } else if ((!myRecursively || !shouldProcessDependenciesRecursively()) && dependencyElement instanceof JpsModuleDependency) { JpsModule module = ((JpsModuleDependency)dependencyElement).getModule(); if (module != null) { moduleConsumer.consume(module); } } } if (libraryConsumer != null && dependencyElement instanceof JpsLibraryDependency) { JpsLibrary library = ((JpsLibraryDependency)dependencyElement).getLibrary(); if (library != null) { libraryConsumer.consume(library); } } return true; }); }