Expand description
C ABI exports for embedding merman in non-Rust hosts.
This crate is the only place where the public FFI boundary owns unsafe code. The core parser/render crates and shared binding facade remain safe Rust APIs.
Structs§
- Merman
Buffer - Merman
Engine - Merman
Engine Result - Merman
Host Text Measure Request - Merman
Host Text Measure Result - Merman
Result
Constants§
- MERMAN_
ABI_ VERSION - MERMAN_
TEXT_ DIRECTION_ AUTO - MERMAN_
TEXT_ DIRECTION_ LTR - MERMAN_
TEXT_ DIRECTION_ RTL - MERMAN_
TEXT_ WHITE_ SPACE_ BREAK_ SPACES - MERMAN_
TEXT_ WHITE_ SPACE_ NORMAL - MERMAN_
TEXT_ WHITE_ SPACE_ NOWRAP - MERMAN_
TEXT_ WHITE_ SPACE_ PRE_ WRAP - MERMAN_
WRAP_ MODE_ HTML_ LIKE - MERMAN_
WRAP_ MODE_ SVG_ LIKE - MERMAN_
WRAP_ MODE_ SVG_ LIKE_ SINGLE_ RUN
Functions§
- merman_
abi_ version - Return the C ABI protocol version implemented by this library.
- merman_
analyze_ ⚠document_ facts_ json - Analyze a host document to syntax/facts JSON bytes.
- merman_
analyze_ ⚠document_ json - Analyze a host document to diagnostics JSON bytes.
- merman_
analyze_ ⚠json - Analyze Mermaid source to diagnostics JSON bytes.
- merman_
ascii_ capabilities_ json - Return ASCII rendering capability metadata as a JSON array.
- merman_
buffer_ ⚠free - Free a buffer returned by this crate.
- merman_
buffer_ struct_ size - Return the Rust-side size of
MermanBuffer. - merman_
diagram_ family_ capabilities_ json - Return diagram family parser/render capability metadata as a JSON array.
- merman_
engine_ ⚠analyze_ document_ facts_ json - Analyze a host document to syntax/facts JSON bytes using a reusable engine.
- merman_
engine_ ⚠analyze_ document_ json - Analyze a host document to diagnostics JSON bytes using a reusable engine.
- merman_
engine_ ⚠analyze_ json - Analyze Mermaid source to diagnostics JSON bytes using a reusable engine.
- merman_
engine_ ⚠free - Free an engine returned by
merman_engine_new. - merman_
engine_ ⚠layout_ json - Layout Mermaid source to layout JSON bytes using a reusable engine.
- merman_
engine_ ⚠new - Create a reusable engine for repeated calls with the same options.
- merman_
engine_ ⚠parse_ json - Parse Mermaid source to semantic JSON bytes using a reusable engine.
- merman_
engine_ ⚠render_ ascii - Render Mermaid source to Unicode ASCII-art text using a reusable engine.
- merman_
engine_ ⚠render_ svg - Render Mermaid source to SVG bytes using a reusable engine.
- merman_
engine_ result_ struct_ size - Return the Rust-side size of
MermanEngineResult. - merman_
engine_ ⚠set_ text_ measure_ callback - Install a host-provided text measurer on a reusable engine.
- merman_
engine_ ⚠validate_ json - Validate Mermaid source using a reusable engine.
- merman_
host_ text_ measure_ request_ struct_ size - Return the Rust-side size of
MermanHostTextMeasureRequest. - merman_
host_ text_ measure_ result_ struct_ size - Return the Rust-side size of
MermanHostTextMeasureResult. - merman_
layout_ ⚠json - Layout Mermaid source to layout JSON bytes.
- merman_
lint_ rule_ catalog_ json - Return lint rule catalog metadata as a versioned JSON response object.
- merman_
package_ version - Return the
merman-fficrate package version as a static C string. - merman_
parse_ ⚠json - Parse Mermaid source to semantic JSON bytes.
- merman_
render_ ⚠ascii - Render Mermaid source to Unicode ASCII-art text.
- merman_
render_ ⚠svg - Render Mermaid source to SVG bytes.
- merman_
result_ struct_ size - Return the Rust-side size of
MermanResult. - merman_
supported_ diagrams_ json - Return supported diagram type metadata as a JSON string array.
- merman_
supported_ host_ theme_ presets_ json - Return supported host/editor theme preset metadata as a JSON string array.
- merman_
supported_ themes_ json - Return supported theme metadata as a JSON string array.
- merman_
validate_ ⚠json - Validate Mermaid source and return a JSON validation payload.