3个版本
0.1.2 | 2024年7月7日 |
---|---|
0.1.1 | 2024年7月7日 |
0.1.0 | 2024年7月7日 |
#73 in 解析器工具
每月323次下载
55KB
1K SLoC
无名的PEG解析器
这是https://bford.info/pub/lang/peg.pdf的实现
我主要是出于学术好奇心而实现的,它没有任何形式的优化。
示例文件夹中包含两个示例,一个用于成功,一个用于失败。
解析器会将日志记录到debug!和error!或日志模块。如果您想查看一些日志,请包含您的日志实现并启用适当的日志级别。示例包括env_logger,可以通过设置环境变量"RUST_LOG=debug"来启用日志。
用法
let parser = PEG::from_grammar(start_rule, grammar_string)?;
let result = parser.parse(input_string);
欢迎提交PR :) 我很可能会继续对其进行修改,甚至可能对其进行适当的优化。
YT: https://www.youtube.com/watch?v=awtHSLEIFxA
可以作为crate找到: https://docs.rs/nameless-peg-parser/latest/nameless_peg_parser/index.html
依赖项
~87KB