Skip to main content

Crate merve

Crate merve 

Source
Expand description

§Merve

Merve is a fast CommonJS export lexer written in C++. This crate provides safe Rust bindings via the C API.

§Usage

use merve::parse_commonjs;

let source = "exports.foo = 1; exports.bar = 2;";
let analysis = parse_commonjs(source).expect("parse failed");

assert_eq!(analysis.exports_count(), 2);
for export in analysis.exports() {
    println!("{} (line {})", export.name, export.line);
}

§no-std

This crate supports no_std environments. Disable default features:

merve = { version = "0.1", default-features = false }

Structs§

Analysis
A parsed CommonJS analysis result.
ErrorLocation
1-based error position.
Export
A single export entry: a name and its source line number.
ExportIter
Iterator over exports or re-exports.
LocatedLexerError
Lexer error with optional source location.

Enums§

LexerError
Error codes returned by the merve lexer.

Functions§

parse_commonjs
Parse CommonJS source code and extract export information.
version
Get the merve library version string (e.g. "1.0.1").
version_components
Get the merve library version as (major, minor, revision).