Skip to main content

Crate surf_parse

Crate surf_parse 

Source
Expand description

surf-parse — parser for the SurfDoc format.

SurfDoc is a markdown superset with typed block directives, embedded data, and presentation hints. This crate provides the foundational parser that turns .surf (or .md) source text into a structured SurfDoc tree.

§Quick start

let result = surf_parse::parse("# Hello\n\n::callout[type=info]\nHi!\n::\n");
assert!(result.diagnostics.is_empty());
assert_eq!(result.doc.blocks.len(), 2);

Re-exports§

pub use parse::parse;
pub use render_html::PageConfig;
pub use render_html::SiteConfig;
pub use render_html::PageEntry;
pub use render_html::extract_site;
pub use render_html::render_site_page;
pub use error::*;
pub use types::*;

Modules§

attrs
blocks
Per-block-type content parsers (Pass 2 resolution).
error
inline
Inline extension scanner.
parse
render_html
HTML fragment renderer.
render_md
Markdown degradation renderer.
render_term
ANSI terminal renderer.
types
validate
Schema validation for SurfDoc documents.