code: Collection<UmlDiagram> collectDiagrams() throws IOException {
          if (diagramExtensions.isEmpty()) return Collections.emptySet();
          try {
              Files.walkFileTree(imagesDirectory.orElse(basedir).toPath(), this);
              return unmodifiableCollection(collected.get());
          } finally {
              collected.remove();
          }
      }
docs: Collects all generated diagram files by walking the specified path.
  
  @return The collected diagrams
  @throws IOException In case there were I/O errors walking the path