Expand description
§AsciiDoc parser for Rust
This is an effort to write a semantic parser for the AsciiDoc language in the Rust language.
The project is in its infancy as of March 2025 and in no way ready to use.
You’re welcome to follow along and contribute with the understanding that I may or may not drive this project a mature (1.0) release.
§Known limitations
- Parsing UTF-16 content is not supported. (UTF-16 documents must be re-encoded to UTF-8 prior to parsing with this crate.) I have no plans to support UTF-16 content.
§Licenses
The asciidoc-parser
crate is distributed under the terms of both the MIT license and the Apache License (Version 2.0).
See LICENSE-APACHE and LICENSE-MIT.
Note that some components and dependent crates may be licensed under different terms; please check the license terms for each crate and component for details.
§License for AsciiDoc language materials
IMPORTANT: This repository contains a snapshot of the AsciiDoc language description which comes with its own license terms. It is not the purpose of this repository to supplant or replace that description; these documents are here as part of tooling to ensure that this crate follows the language description as closely as possible. Please consult AsciiDoc Language @ Eclipse GitLab for the official language description.
The following applies to content in the asg
and spec
folders:
The AsciiDoc Language and the accompanying materials are made available under the terms of the Eclipse Public License v 2.0 (EPL-2.0). See LICENSE to find the full license text.
The following applies to content in the docs
folder:
The user documentation for the AsciiDoc Language, located in the docs/ folder, is made available under the terms of a Creative Commons Attribution 4.0 International License (CC-BY-4.0).
Re-exports§
Modules§
- attributes
- Element attributes are a powerful means of controlling the built-in settings of individual block and inline elements in the AsciiDoc syntax. They can also be used to add supplemental information, such as citation metadata and fallback content, to certain elements.
- blocks
- Block elements form the main structure of an AsciiDoc document, starting with the document itself.
- document
- Describes the top-level document structure.
- parser
- The
Parser
struct and its related structs allow a caller to configure how AsciiDoc parsing occurs and then to initiate the parsing process. - strings
- String types that facilitate parsing.
Structs§
- Span
- Represents a subset of the overall UTF-8 input stream.
Enums§
- Content
- Describes the annotated content of a
Span
after any relevant substitutions have been performed.
Traits§
- HasSpan
- Any syntactic element can describe its location within the source material using this trait.