4 个版本

0.1.3 2022年4月10日
0.1.2 2022年4月5日
0.1.1 2022年3月22日
0.1.0 2022年3月19日

#177 in 解析工具

GPL-3.0-or-later

34KB
395

ripeg

增量Packrat解析表达式语法Rust实现

Crates.io docs maintained

ripeg Continuous Integration Coverage Status codecov

downloads GitHub contributors commits

License: GPL v3+ Minimum rustc version dependency status

issues closed pr prc

本项目旨在将https://github.com/zyedidia/gpeg/移植到Rust,该项目本身受到了http://www.inf.puc-rio.br/~roberto/lpeg/的启发。关于增量PEG的相关研究论文有https://zyedidia.github.io/notes/yedidia_thesis.pdfhttps://zyedidia.github.io/preprints/gpeg_sle21.pdf

贡献

欢迎提交Pull Request,我希望这个项目不要是一个孤立的个人项目。请阅读贡献指南

行为准则

请遵循rust-lang的行为准则。如果我能避免任何形式的审查,我会很高兴,因为我有更多的事情要做,谢谢!

当前状态

已将部分代码移植,但您还不能使用这个crate。

路线图 && 更新日志

  • 20220319 0.1.0 : ripeg crate已发布,因此已保留名称。
  • 20220322 0.1.1 : 发布带CI的版本,配置了代码覆盖率,并使用cargo-nextest。
  • 20220405 0.1.2 :
    • 发布带有已移植的charset模块。
    • 使用cargo test代替nextest,因为nextest尚不支持文档测试。
    • 在github actions中注释掉criterion基准测试,因为CI环境中的结果是无用的。
    • 更新tarpaulin到0.20.0,并修复测试覆盖率。
    • 请注意,charset方法的原型可能会更改。
  • 20220410 0.1.3 :
    • 发布带有已移植的isa模块。
    • 更新基准测试
    • 请注意,isa可能会在0.1.6版本发布之前发生变化。
  • 202????? 0.1.4 : 发布带有已移植的input模块。
  • 202????? 0.1.5 : 发布带有已移植的pattern模块。
  • 202????? 0.1.6 : 发布带有已移植的memo模块。
  • 202????? 0.1.6 : 发布带有已移植的vm模块。
  • 202????? 0.1.7..n: 移植其他模块。
  • 202????? 0.2.0 : 第一个可用的版本。
  • 202????? 0.x.y : 优化
  • 202????? 1.0.0 : 稳定发布。

依赖项

~1MB
~23K SLoC