public default Iterable<GFile> files(GFile dir, Predicate<GFile> fileFilter)
			throws UncheckedIOException {
		return () -> new GFileSystemIterator(Objects.requireNonNullElse(dir, getRootDir()),
			fileFilter);
	}
Gets an {@link Iterable} over this {@link GFileSystem}'s {@link GFile files}.

@param dir The {@link GFile directory} to start iterating at in this {@link GFileSystem}. If
  {@code null}, iteration will start at the root of the {@link GFileSystem}.
@param fileFilter A filter to apply to the {@link GFile files} iterated over
@throws UncheckedIOException if {@code dir} is not a directory
@return An {@link Iterable} over this {@link GFileSystem}'s {@link GFile files}.
Ghidra/Features/Base/src/main/java/ghidra/formats/gfilesystem/GFileSystem.java