Read the doctree for a file from the pickle and return it.
(self, docname: str)
| 648 | # --------- RESOLVING REFERENCES AND TOCTREES ------------------------------ |
| 649 | |
| 650 | def get_doctree(self, docname: str) -> nodes.document: |
| 651 | """Read the doctree for a file from the pickle and return it.""" |
| 652 | try: |
| 653 | serialised = self._pickled_doctree_cache[docname] |
| 654 | except KeyError: |
| 655 | filename = self.doctreedir / f'{docname}.doctree' |
| 656 | with open(filename, 'rb') as f: |
| 657 | serialised = self._pickled_doctree_cache[docname] = f.read() |
| 658 | |
| 659 | doctree = pickle.loads(serialised) |
| 660 | doctree.settings.env = self |
| 661 | doctree.reporter = LoggingReporter(str(self.doc2path(docname))) |
| 662 | return doctree |
| 663 | |
| 664 | @functools.cached_property |
| 665 | def master_doctree(self) -> nodes.document: |