code: def _ExtractPathSpecsFromFile(self, file_entry):
      
      produced_main_path_spec = False
      for data_stream in file_entry.data_streams:
        # Make a copy so we don't make the changes on a path specification
        # directly. Otherwise already produced path specifications can be
        # altered in the process.
        path_spec = copy.deepcopy(file_entry.path_spec)
        if data_stream.name:
          setattr(path_spec, 'data_stream', data_stream.name)
        yield path_spec
  
        if not data_stream.name:
          produced_main_path_spec = True
  
      if not produced_main_path_spec:
        yield file_entry.path_spec
docs: Extracts path specification from a file.
  
      Args:
        file_entry (dfvfs.FileEntry): file entry that refers to the file.
  
      Yields:
        dfvfs.PathSpec: path specification of a file entry found in the file.