code: def _disappeared(self, fd, path, **params):
          
          log = self._getparam('log', self._discard, **params)
  
          log.debug("Path %r removed or renamed, handling removal", path)
          self._close(fd)
          if self._mode == WF_POLLING and fd in self._poll_stat:
              del self._poll_stat[fd]
          if self._mode == WF_INOTIFYX and path in self._inx_inode:
              del self._inx_inode[path]
          del self.fds_open[fd]
          del self.paths_open[path]
          if self.paths[path]:
              try:
                  if self._add_file(path, **params):
                      log.debug("Path %r immediately reappeared, pending transition skipped", path)
                      return
              except Exception as e:
                  log.debug("Path %r reappearance check failed -- %s", path, e)
              log.debug("Path %r marked as pending", path)
              self.paths_pending[path] = True
          else:
              del self.paths[path]
              raise Exception("Path %r has been removed or renamed" % path)
docs: Called when an open path is no longer acessible.  This will either
          move the path to pending (if the 'missing' param is set for the
          file), or fire an exception.