#语法 #PEG #组合器 #解析器 #解析器生成器

oak_runtime

由橡树生成的解析器依赖于这个库。请查阅橡树包以获取更多信息。

22个版本

使用旧Rust 2015

0.6.0 2021年1月12日
0.5.5 2017年3月20日
0.4.3 2017年1月26日
0.4.2 2016年12月24日
0.3.6 2015年11月12日

#271 in 解析器工具


用于 橡树

Apache-2.0

24KB
615

橡树

ptal on Travis CI

在Rust的nightly通道上编译。使用rustup管理编译器通道。您可以下载并设置与rustup override add 2021-01-06相同的编译器版本。

请参阅橡树手册

特性

  • 易于安装:PEG语法描述作为Rust过程宏。
  • 用户友好:大多数类型都是自动从解析表达式推断出来的。
  • 安全:良好的形式性分析保证终止。
  • 模块化:外部解析规则可以在任何时候调用。
  • 快速:为每个规则生成识别器和解析器函数。

构建本地文档

您可能需要从仓库构建手册或代码文档,因为您需要它与特定版本的橡树同步,或者简单地用于离线使用。以下是如何操作!

构建手册

您需要mdbook实用工具。

cargo install mdbook

安装后,进入oak/doc并执行mdbook build -o。手册在名为book的本地文件夹中生成,并直接在您的浏览器中打开。

构建代码文档

作为橡树的用户,您会对运行时文档感兴趣。

cd oak/runtime
cargo doc

文档在oak/runtime/target/doc中可用。

要在项目根目录中构建橡树的内部文档,您可以键入此命令

cd oak
rustdoc --document-private-items --output=target/dev-doc src/liboak/lib.rs

文档将位于oak/target/dev-doc中。这对于在橡树上工作很有用:)


lib.rs:

这是橡树运行时的文档。橡树是解析表达式语法的解析器生成器,请首先阅读手册

此库被 Oak 生成的代码使用,对于任何需要与生成的代码交互的 Oak 用户来说也是必要的。PEG 组合器返回一个 ParseState,请查阅 into_resultunwrap_data 方法,它们是获取有用信息的良好起点。

依赖项

~280KB