docs: def add_from_datastream(self, source_ds):
          '''Add information from another datastream. Verifies if the datastream
          added is correct and copy the relevant fields if necessary.'''
          if source_ds.name != self.name:
              raise DataStreamError("Data from a different stream 'f{source_ds.name}' cannot be add to this stream")
          if self._data_runs is None:
              raise DataStreamError("Cannot add data to a resident datastream.")
  
          if self.cluster_count < source_ds.cluster_count:
              self.cluster_count = source_ds.cluster_count
          if self.size == 0 and source_ds.size:
              self.size = source_ds.size
              self.alloc_size = source_ds.alloc_size
          if source_ds._data_runs:
              self._data_runs += source_ds._data_runs
              self._data_runs_sorted = False