class_docstr: A Domain is meant to be a group of "object" description directives for
  objects of a similar nature, and corresponding roles to create references to
  them.  Examples would be Python modules, classes, functions etc., elements
  of a templating language, Sphinx roles and directives, etc.
  
  Each domain has a separate storage for information about existing objects
  and how to reference them in `self.data`, which must be a dictionary.  It
  also must implement several functions that expose the object information in
  a uniform way to parts of Sphinx that allow the user to reference or search
  for objects in a domain-agnostic way.
  
  About `self.data`: since all object and cross-referencing information is
  stored on a BuildEnvironment instance, the `domain.data` object is also
  stored in the `env.domaindata` dict under the key `domain.name`.  Before the
  build process starts, every active domain is instantiated and given the
  environment object; the `domaindata` dict must then either be nonexistent or
  a dictionary whose 'version' key is equal to the domain class'
  :attr:`data_version` attribute.  Otherwise, `OSError` is raised and the
  pickled environment is discarded.
class_docstr_tok: ["A","Domain","is","meant","to","be","a","group","of","``","object","''","description","directives","for","objects","of","a","similar","nature",",","and","corresponding","roles","to","create","references","to","them",".","Examples","would","be","Python","modules",",","classes",",","functions","etc.",",","elements","of","a","templating","language",",","Sphinx","roles","and","directives",",","etc",".","Each","domain","has","a","separate","storage","for","information","about","existing","objects","and","how","to","reference","them","in","`","self.data","`",",","which","must","be","a","dictionary",".","It","also","must","implement","several","functions","that","expose","the","object","information","in","a","uniform","way","to","parts","of","Sphinx","that","allow","the","user","to","reference","or","search","for","objects","in","a","domain-agnostic","way",".","About","`","self.data","`",":","since","all","object","and","cross-referencing","information","is","stored","on","a","BuildEnvironment","instance",",","the","`","domain.data","`","object","is","also","stored","in","the","`","env.domaindata","`","dict","under","the","key","`","domain.name","`",".","Before","the","build","process","starts",",","every","active","domain","is","instantiated","and","given","the","environment","object",";","the","`","domaindata","`","dict","must","then","either","be","nonexistent","or","a","dictionary","whose","'version","'","key","is","equal","to","the","domain","class'",":","attr",":","`","data_version","`","attribute",".","Otherwise",",","`","OSError","`","is","raised","and","the","pickled","environment","is","discarded","."]
docstr: Return an iterable of "object descriptions".
  
  Object descriptions are tuples with six items:
  
  ``name``
    Fully qualified name.
  
  ``dispname``
    Name to display when searching/linking.
  
  ``type``
    Object type, a key in ``self.object_types``.
  
  ``docname``
    The document where it is to be found.
  
  ``anchor``
    The anchor name for the object.
  
  ``priority``
    How "important" the object is (determines placement in search
    results). One of:
  
    ``1``
      Default priority (placed before full-text matches).
    ``0``
      Object is important (placed before default-priority objects).
    ``2``
      Object is unimportant (placed after full-text matches).
    ``-1``
      Object should not show up in search at all.
docstr_tok: ["Return","an","iterable","of","``","object","descriptions","''",".","Object","descriptions","are","tuples","with","six","items",":","``","name","``","Fully","qualified","name",".","``","dispname","``","Name","to","display","when","searching\/linking",".","``","type","``","Object","type",",","a","key","in","``","self.object_types","``",".","``","docname","``","The","document","where","it","is","to","be","found",".","``","anchor","``","The","anchor","name","for","the","object",".","``","priority","``","How","``","important","''","the","object","is","(","determines","placement","in","search","results",")",".","One","of",":","``","1","``","Default","priority","(","placed","before","full-text","matches",")",".","``","0","``","Object","is","important","(","placed","before","default-priority","objects",")",".","``","2","``","Object","is","unimportant","(","placed","after","full-text","matches",")",".","``","-1","``","Object","should","not","show","up","in","search","at","all","."]
code: def get_objects(
      self,
  ) -> Iterable[tuple[str, str, str, str, str, int]]:
      """Return an iterable of "object descriptions".
  
      Object descriptions are tuples with six items:
  
      ``name``
        Fully qualified name.
  
      ``dispname``
        Name to display when searching/linking.
  
      ``type``
        Object type, a key in ``self.object_types``.
  
      ``docname``
        The document where it is to be found.
  
      ``anchor``
        The anchor name for the object.
  
      ``priority``
        How "important" the object is (determines placement in search
        results). One of:
  
        ``1``
          Default priority (placed before full-text matches).
        ``0``
          Object is important (placed before default-priority objects).
        ``2``
          Object is unimportant (placed after full-text matches).
        ``-1``
          Object should not show up in search at all.
      """
      return []
  
imports: from __future__ import annotations
  import copy
  from abc import ABC, abstractmethod
  from typing import TYPE_CHECKING, Any, Callable, NamedTuple, Optional, cast
  from docutils.nodes import Element, Node, system_message
  from sphinx.errors import SphinxError
  from sphinx.locale import _
label_desc: Use image node_id 13 for calling the Domain obj's underlying member method code with example usage: obj.get_objects() and returns: list