# finemark-ast
AST types for the [FineMark](https://github.com/FineMark/finemark) structured document language.
[](https://crates.io/crates/finemark-ast)
[](https://github.com/FineMark/finemark/blob/main/LICENSE-APACHE)
## Element types
The central `Element` enum covers all nodes produced by the FineMark parser:
| Text | `Text`, `Escape`, `Error`, `Comment` |
| AT commands | `Heading`, `BlockQuote`, `Link`, `HLine`, `Table`, `TableRow`, `TableColumn` |
| Inline styles | `Bold`, `Italic`, `Strikethrough`, `Underline`, `Superscript`, `Subscript` |
| Inline content | `InlineCode`, `TeX` |
| Structure | `List`, `CodeBlock`, `SoftBreak`, `HardBreak`, `ParagraphBreak` |
Every element carries a `Span { start, end }` of byte offsets into the original source.
## Features
| *(default)* | All element types; spans are included in the struct fields |
| `include-locations` | Enables `Serialize` impls that include span fields in JSON output |
## License
Licensed under either of [Apache-2.0](https://www.apache.org/licenses/LICENSE-2.0)
or [MIT](https://opensource.org/licenses/MIT) at your option.