class_docstr: Thread-safe kevent descriptor collection.
class_docstr_tok: ["Thread-safe","kevent","descriptor","collection","."]
docstr: Adds a descriptor to the collection.
  
  :param descriptor:
      An instance of :class:`KeventDescriptor` to be added.
docstr_tok: ["Adds","a","descriptor","to","the","collection",".",":","param","descriptor",":","An","instance","of",":","class",":","`","KeventDescriptor","`","to","be","added","."]
code: def _add_descriptor(self, descriptor):
      """
      Adds a descriptor to the collection.
  
      :param descriptor:
          An instance of :class:`KeventDescriptor` to be added.
      """
      self._descriptors.add(descriptor)
      self._kevents.append(descriptor.kevent)
      self._descriptor_for_path[descriptor.path] = descriptor
      self._descriptor_for_fd[descriptor.fd] = descriptor
  
imports: from __future__ import with_statement
  from wandb_watchdog.utils import platform
  import threading
  import errno
  import sys
  import stat
  import os
  from wandb_watchdog.observers.api import BaseObserver, EventEmitter, DEFAULT_OBSERVER_TIMEOUT, DEFAULT_EMITTER_TIMEOUT
  from wandb_watchdog.utils.dirsnapshot import DirectorySnapshot
  from wandb_watchdog.events import DirMovedEvent, DirDeletedEvent, DirCreatedEvent, DirModifiedEvent, FileMovedEvent, FileDeletedEvent, FileCreatedEvent, FileModifiedEvent, EVENT_TYPE_MOVED, EVENT_TYPE_DELETED, EVENT_TYPE_CREATED
label_desc: Use image node_id 12 for calling the KeventDescriptorSet obj's underlying member method code with example usage: obj._add_descriptor(descriptor) without return types