class_docstr: A descriptor that provides a slot.
  
  This is useful for types that can't have slots via __slots__,
  e.g. tuple subclasses.
code: def _ensure___del__(
      self, cls, slotnames
  ):  # See the comment in __init__().
      try:
          old___del__ = cls.__del__
      except AttributeError:
          old___del__ = lambda s: None
      else:
          if getattr(old___del__, "_slotted", False):
              return
  
      def __del__(_self):
          for name in slotnames:
              delattr(_self, name)
          old___del__(_self)
  
      __del__._slotted = True
      cls.__del__ = __del__
  
file_path: cpython/Tools/c-analyzer/c_common/clsutil.py
label_desc: Use image node_id 6 for calling the Slot obj's underlying member method code with example usage: obj._ensure___del__(cls, slotnames) without return types