docs: def filter(self, base_collection):
          '''Yields subset of base_collection/generator based on filters.'''
          for item in base_collection:
              excluded = []
              for (name, exclude) in self._filters:
                  if exclude(item):
                      excluded.append(name)
              if excluded:
                  filter_value = "; ".join(excluded)
              else:
                  filter_value = None
              yield item, filter_value