class_docstr: A configurable that only allows one instance.
  
  This class is for classes that should only have one instance of itself
  or *any* subclass. To create and retrieve such a class use the
  :meth:`SingletonConfigurable.instance` method.
docstr: unset _instance for this class and singleton parents.
code: def clear_instance(cls) -> None:
      """unset _instance for this class and singleton parents."""
      if not cls.initialized():
          return
      for subclass in cls._walk_mro():
          if isinstance(subclass._instance, cls):
              # only clear instances that are instances
              # of the calling class
              subclass._instance = None
  
imports: from __future__ import annotations
  import logging
  import typing
  from copy import deepcopy
  from textwrap import dedent
  from traitlets.traitlets import Any, Container, Dict, HasTraits, Instance, TraitType, default, observe, observe_compat, validate
  from traitlets.utils import warnings
  from traitlets.utils.bunch import Bunch
  from traitlets.utils.text import indent, wrap_paragraphs
  from .loader import Config, DeferredConfig, LazyConfigValue, _is_section_key
label_desc: Use image node_id 2 for calling the SingletonConfigurable obj's underlying member method code with example usage: obj.clear_instance(cls) without return types