package atd
Module Atd_docSource
Support for <doc text="..."> annotations:
type foo = Bar of int <doc text="This type represents foo values.">
This allows code generators to inject the documentation into the generated code.
<doc> nodes that appear in the following positions should be taken into account by code generators that care about documentation:
- after the type name on the left-hand side of a type definition
- after the type expression on the right-hand side of a type definition (but not after any type expression)
- after record field names
- after variant names
Formats:
Currently only one format called "text" is supported:
- Blank lines separate paragraphs.
\{\{ \}\}can be used to enclose inline verbatim text.\{\{\{ \}\}\}can be used to enclose verbatim text where whitespace is preserved.- The backslash character is used to escape special character sequences. In regular paragraph mode the special sequences are
\,\{\{and\{\{\{. In inline verbatim text, special sequences are\and\}\}. In verbatim text, special sequences are\and\}\}\}.
Character encoding: UTF-8 is strongly recommended, if not plain ASCII.
`Text is regular text. `Code is text that was enclosed within \{\{ \}\} and should be rendered using the same fixed-width font used in all verbatim text.
`Paragraph is a regular paragraph. `Pre is preformatted text that was enclosed within \{\{\{ \}\}\} and should be rendered using a fixed-width font preserving all space and newline characters.
Parse the contents of a doc.text annotation.
Get and parse doc data from annotations.