mirror of
https://github.com/angr/angr
synced 2026-08-17 12:23:11 -04:00
Replace the hand-maintained ``api.rst`` listing with a single ``.. autosummary:: :recursive:`` entry point, and add an autosummary template under ``_templates/autosummary/module.rst`` that recursively emits a page per submodule. The output directory ``docs/api/`` is gitignored. The template uses ``.. rubric:: Submodules`` instead of a section heading so the autogenerated pages don't all register a duplicate "Submodules" autosectionlabel. Adjustments to ``conf.py`` to make the auto-generated pages readable: - ``autodoc_class_signature = "separated"`` so the class declaration line does not duplicate the ``__init__`` parameter list. - ``skip_inherited_undocumented`` (autodoc-skip-member): when a subclass overrides a method without its own docstring, do not document the override on the subclass page; the parent's "Bases:" link already points readers to the canonical entry. Avoids duplicating the parent's full docstring on every subclass. - ``_patch_directive_header_for_reexports`` (monkey-patch of ``_directive_header_lines``): for re-exported symbols (e.g. ``angr.SimState`` re-exporting ``angr.sim_state.SimState``), inject ``:no-index:`` so the entry still renders on the parent page but the canonical defining-module page is the unambiguous cross-reference target. |
||
|---|---|---|
| .. | ||
| _templates/autosummary | ||
| advanced-topics | ||
| analyses | ||
| appendix | ||
| core-concepts | ||
| extending-angr | ||
| getting-started | ||
| api.rst | ||
| conf.py | ||
| examples.rst | ||
| faq.rst | ||
| index.rst | ||
| make.bat | ||
| Makefile | ||
| quickstart.rst | ||