code: def _collect_all_files(self, files=None):
          
          if files is None:
              files = self._root_elements
          collected = set()
          for entry in files:
              collected.add(entry)
              collected.update(self._collect_all_files(entry.children))
          return collected
docs: Collect all FSEntrys into a set, including all descendants.
  
          :param list files: List of :class:`FSEntry` to traverse.
          :returns: Set of FSEntry