def add_filtered_folder(self, path, regex, depth=None, source_type=DefaultSourceType):
        """
        Add a folder source to scan recursively, with a regex filter on directories.

        :param regex: regex string to filter folders by.
        :param depth: if provided will be depth limit. 0 = first level only.
        :param source_type: what to return; files only, folders only, or both.
        """
        self.add_source(FilteredFolderSource(path, regex, depth, **source_type))
        return self
Add a folder source to scan recursively, with a regex filter on directories.

        :param regex: regex string to filter folders by.
        :param depth: if provided will be depth limit. 0 = first level only.
        :param source_type: what to return; files only, folders only, or both.