Environment Collector API
*************************

class sphinx.environment.collectors.EnvironmentCollector

   An EnvironmentCollector is a specific data collector from each
   document.

   It gathers data and stores "BuildEnvironment" as a database.
   Examples of specific data would be images, download files, section
   titles, metadatas, index entries and toctrees, etc.

   clear_doc(app: Sphinx, env: BuildEnvironment, docname: str) -> None

      Remove specified data of a document.

      This method is called on the removal of the document.

   get_outdated_docs(app: Sphinx, env: BuildEnvironment, added: set[str], changed: set[str], removed: set[str]) -> list[str]

      Return a list of docnames to re-read.

      This methods is called before reading the documents.

   get_updated_docs(app: Sphinx, env: BuildEnvironment) -> list[str]

      Return a list of docnames to re-read.

      This methods is called after reading the whole of documents
      (experimental).

   merge_other(app: Sphinx, env: BuildEnvironment, docnames: set[str], other: BuildEnvironment) -> None

      Merge in specified data regarding docnames from a different
      *BuildEnvironment* object which coming from a subprocess in
      parallel builds.

   process_doc(app: Sphinx, doctree: nodes.document) -> None

      Process a document and gather specific data from it.

      This method is called after the document is read.
