Expand description
The shared document AST.
Document is the canonical representation both sides parse into and
render out of. This module is pure data; each format’s parser and renderer
live in its own module (crate::markdown, crate::confluence). The
Markdown↔AST↔Confluence contract is documented in docs/MAPPING.md.
Structs§
- Document
- Macro
- A Confluence
<ac:structured-macro>. The same representation covers the built-in macros (code, info, note, warning, tip, panel, expand, toc, status) and any unknown macro, which is preserved rather than dropped. - Table
- A GFM/Confluence table.
headis the header row;rowsare body rows; each cell is a sequence of inlines.alignis per column (lossy toward Confluence, which has no standard per-column alignment). - Task
Enums§
- Alignment
- Block
- Image
Source - The source of an
Inline::Image: an external URL (ri:url) or a Confluence attachment (ri:attachment). - Inline
- Link
Target - The destination of a
Inline::Link. External links carry a URL; the others are Confluence resource references (ri:page/ri:attachment/ anchor) that round-trip through Markdown as aconfluence://URI. - Macro
Body - The body of a
Macro: empty (toc/status), raw text (code, via CDATA), or nested storage markup (admonitions, panel, expand).