static List<TypeDeclaration> goThroughLibraries(List<TypeDeclaration> foundTypes, Set<String> visitedLibraries, List<Library> libraries) { for (Library library : libraries) { if (visitedLibraries.contains(library.name())) { continue; } else { visitedLibraries.add(library.name()); } goThroughLibraries(foundTypes, visitedLibraries, library.uses()); foundTypes.addAll(library.types()); } return foundTypes; }
private void goThroughLibraries(Set<String> visitedLibraries, List<Library> libraries, GFinderListener listener) { for (Library library : libraries) { if (visitedLibraries.contains(library.name())) { continue; } else { visitedLibraries.add(library.name()); } goThroughLibraries(visitedLibraries, library.uses(), listener); for (TypeDeclaration typeDeclaration : library.types()) { V10GType type = createTypeFromLibraryPart(typeDeclaration); listener.newTypeDeclaration(type); } } }
private void goThroughLibraries(Set<String> visitedLibraries, List<Library> libraries, GFinderListener listener) { for (Library library : libraries) { if (visitedLibraries.contains(library.name())) { continue; } else { visitedLibraries.add(library.name()); } goThroughLibraries(visitedLibraries, library.uses(), listener); for (TypeDeclaration typeDeclaration : library.types()) { V10GType type = registry.fetchType(typeDeclaration); listener.newTypeDeclaration(type); } } } }