pub enum NodeValue {
Show 32 variants
Document,
FrontMatter(String),
BlockQuote,
List(NodeList),
Item(NodeList),
DescriptionList,
DescriptionItem(NodeDescriptionItem),
DescriptionTerm,
DescriptionDetails,
CodeBlock(NodeCodeBlock),
HtmlBlock(NodeHtmlBlock),
Paragraph,
Heading(NodeHeading),
ThematicBreak,
FootnoteDefinition(NodeFootnoteDefinition),
Table(NodeTable),
TableRow(bool),
TableCell,
Text(String),
TaskItem(Option<char>),
SoftBreak,
LineBreak,
Code(NodeCode),
HtmlInline(String),
Emph,
Strong,
Strikethrough,
Superscript,
Link(NodeLink),
Image(NodeLink),
FootnoteReference(NodeFootnoteReference),
MultilineBlockQuote(NodeMultilineBlockQuote),
}
Expand description
The core AST node enum.
Variants§
Document
The root of every CommonMark document. Contains blocks.
FrontMatter(String)
Non-Markdown front matter. Treated as an opaque blob.
BlockQuote
Block. A block quote. Contains other blocks.
> A block quote.
List(NodeList)
Block. A list. Contains list items.
* An unordered list
* Another item
1. An ordered list
2. Another item
Item(NodeList)
Block. A list item. Contains other blocks.
DescriptionList
Block. A description list, enabled with ext_description_lists
option. Contains
description items.
It is required to put a blank line between terms and details.
Term 1
: Details 1
Term 2
: Details 2
DescriptionItem(NodeDescriptionItem)
Block*. An item of a description list. Contains a term and one details block.
DescriptionTerm
Block. Term of an item in a definition list.
DescriptionDetails
Block. Details of an item in a definition list.
CodeBlock(NodeCodeBlock)
Block. A code block; may be fenced or indented. Contains raw text which is not parsed as Markdown, although is HTML escaped.
HtmlBlock(NodeHtmlBlock)
Block. A HTML block. Contains raw text which is neither parsed as Markdown nor HTML escaped.
Paragraph
Block. A paragraph. Contains inlines.
Heading(NodeHeading)
Block. A heading; may be an ATX heading or a setext heading. Contains inlines.
ThematicBreak
Block. A thematic break. Has no children.
FootnoteDefinition(NodeFootnoteDefinition)
Block. A footnote definition. The String
is the footnote’s name.
Contains other blocks.
Table(NodeTable)
Block. A table per the GFM spec. Contains table rows.
TableRow(bool)
Block. A table row. The bool
represents whether the row is the header row or not.
Contains table cells.
TableCell
Block. A table cell. Contains inlines.
Text(String)
Inline. Textual content. All text
in a document will be contained in a Text
node.
TaskItem(Option<char>)
Inline. Task list item. The value is the symbol that was used in the brackets to mark a task item as checked, or None if the item is unchecked.
SoftBreak
Inline. A soft line break. If
the hardbreaks
option is set in Options
during formatting, it will be formatted
as a LineBreak
.
LineBreak
Inline. A hard line break.
Code(NodeCode)
Inline. A code span.
HtmlInline(String)
Inline. Raw HTML contained inline.
Emph
Inline. Emphasised text.
Strong
Inline. Strong text.
Strikethrough
Inline. Strikethrough text per the GFM spec.
Superscript
Inline. Superscript. Enabled with ext_superscript
option.
Link(NodeLink)
Inline. A link to some URL, with possible title.
Image(NodeLink)
Inline. An image.
FootnoteReference(NodeFootnoteReference)
Inline. A footnote reference.
MultilineBlockQuote(NodeMultilineBlockQuote)
Block. A multiline block quote. Spans multiple lines and contains other blocks.
>>>
A paragraph.
- item one
- item two
>>>