MCPcopy
hub / github.com/sphinx-doc/sphinx / apply_post_transforms

Method apply_post_transforms

sphinx/environment/__init__.py:759–776  ·  view source on GitHub ↗

Apply all post-transforms.

(self, doctree: nodes.document, docname: str)

Source from the content-addressed store, hash-verified

757 self.apply_post_transforms(doctree, fromdocname)
758
759 def apply_post_transforms(self, doctree: nodes.document, docname: str) -> None:
760 """Apply all post-transforms."""
761 backup = self.current_document
762 new = deepcopy(backup)
763 new.docname = docname
764 try:
765 # set env.current_document.docname during applying post-transforms
766 self.current_document = new
767
768 transformer = SphinxTransformer(doctree)
769 transformer.set_environment(self)
770 transformer.add_transforms(self._registry.get_post_transforms())
771 transformer.apply_transforms()
772 finally:
773 self.current_document = backup
774
775 # allow custom references to be resolved
776 self.events.emit('doctree-resolved', doctree, docname)
777
778 def collect_relations(self) -> dict[str, list[str | None]]:
779 traversed: set[str] = set()

Callers 4

resolve_referencesMethod · 0.95
test_sectioningFunction · 0.80

Calls 5

set_environmentMethod · 0.95
apply_transformsMethod · 0.95
SphinxTransformerClass · 0.90
get_post_transformsMethod · 0.80
emitMethod · 0.45

Tested by 2

test_sectioningFunction · 0.64