2 releases
0.1.1 | Oct 13, 2024 |
---|---|
0.1.0 | Oct 13, 2024 |
#1587 in Parser implementations
Used in mf2_printer
115KB
3.5K
SLoC
mf2_parser
The mf2_parser
crate provides a parser for the Message Format 2 syntax. It can
parse any sequence of Unicode scalar values (valid UTF-8) into an AST
representing the Message Format 2 syntax. The parser has very strong error
recovery, so it can parse even very broken or incomplete input (like is common
in editors).
Use the mf2_printer
crate to pretty-print the AST back into the human-readable
MessageFormat 2 syntax.
Usage
Add this to your Cargo.toml
:
[dependencies]
mf2_parser = "0.1"
Then you can parse a string like this:
use mf2_parser::parse;
let (ast, diagnostics, source_text_info) = parse("Hello, {$name}!");
if !diagnostics.is_empty() {
panic!("Failed to parse message: {:?}", diagnostics);
}
println!("AST: {:?}", ast);
License
This project is licensed under GPL-3.0-or-later.