It's not fully automatic. We meticulously added all that
information for each method as the value for the -description
parameter. help.lasso parses the string, then formats it to
look pretty. The output is nice, but the labor involved and
potential for mistakes is not so much. Also it is not in a
single searchable file (like a PDF) and it lacks a search
feature (excluding in-browser searching, of course).
Thus we've been looking at better ways of documenting the Knop
API for Lasso 9. Our goals are:
* Write source code once and parse the source for API documentation.
* Read a method's signature and return its parameters, traits,
and other elements into a structure that can be easily parsed.
* Avoid use of -description, if possible.
* Use a simple markup language (like .rst) that can be parsed
easily and output to HTML, RTF, plain text, or PDF.
* Generate a searchable index.
We're only at the concept stage. We do not know of any specific
Lasso types or methods that could be used to facilitate
production of a domain for Sphinx. However we know that
something is possible because the error stack in Lasso 9 returns
a lot of great information, like "possible candidates were".
How do we get those tasty morsels of Lasso 9 introspective
goodness without throwing an error?