Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

API Doc Generation #185

Open
dan-fritchman opened this issue Sep 7, 2023 · 0 comments
Open

API Doc Generation #185

dan-fritchman opened this issue Sep 7, 2023 · 0 comments

Comments

@dan-fritchman
Copy link
Owner

Hdl21 isn't especially "API heavy"; unlike, say, numpy, it doesn't have 5000 public functions with 15 arguments each. Accordingly we've never used automatic doc-generation. The docs instead have a more narrative tone, focusing on how to think about the various types, and use them in typical ways and contexts.

Nonetheless there have become swathes of Hdl21 that this would particularly benefit from such auto-docs, including:

  • The Primitive library, both the elements and their parameters
  • All the SimAttrs, their fields, etc
  • Similar lists of modifiers for Signal, Param, etc
  • Package-level functions, e.g. netlist, to_proto

Priorities for a good generator:

  1. Write as little as possible (above & beyond the existing source code).
  • Certainly do not write that god forgiven ReST.
  • Use all our bazillion type-hints, at least to the extent possible(?)
  1. No external site, hosting, or dedicated HTML.
  • Just produce Markdown; GitHub et al can host and render it great.
  1. Actually... work on Hdl21?
  • We do lots of behind-the-scenes magic which will not necessarily be easily comprehended in every case.
  • This will in some cases conflict with goal (1).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant