1
0
mirror of https://github.com/angr/angr synced 2026-06-08 13:09:39 +00:00
Files
Kevin Phoenix 7fd4ac3bf9 docs: Auto-generate the API reference via autosummary (#6460)
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.
2026-06-04 08:32:27 -07:00
..
2023-03-08 18:06:10 -07:00
2023-03-08 18:06:10 -07:00