@log_calls
  def from_str(self, changelist_str):
    self.add_paths = []
    self.rm_paths = []
    self.mod_paths = []
    for line in changelist_str.splitlines():
      (status, path) = line.split("\t")
      if status == Changelist.Status.ADDED:
        self.add_paths.append(path)
      elif status == Changelist.Status.REMOVED:
        self.rm_paths.append(path)
      elif status == Changelist.Status.MODIFIED:
        self.mod_paths.append(path)
      else:
        raise InvalidArgument("invalid status: %s" % status)
dataset/ETHPy150Open bloomreach/zinc/zinc.py/Changelist.from_str/original