public Iterator<File> iterator() {
        return new FileFinderIterator(baseDir, yieldFilter, branchFilter,
                fileFilter, dirFilter, maxDepth);
    }
Creates an Iterator that can be used to iterate through the results of the search. Note: This
actually works iterative, i.e. the recursion happens as you fetch files from the iterator.
The result is not fetched into a huge list.

@return An {@link Iterator<File>} that retrieves the results bit by bit.
@see Iterable#iterator()
inlong-agent/agent-common/src/main/java/org/apache/inlong/agent/utils/file/FileFinder.java