1个不稳定版本

0.1.1 2022年5月22日

#4 in #yul


用于 2 个crate(通过 yul

MIT 协议

37KB
817

Yul解析器

解析Yul编程语言。请参阅yul规范

解析器使用Logos进行词法分析,使用Rowan进行解析。词法(也称为词法分析器)在[token.rs][./src/tokens.rs]中定义,语法(也称为语法)在[syntax.rs][./src/syntax.rs]中定义。

架构基于rust-analyzer的架构。事实上,rowan是rust-analyzer项目的一部分。我建议阅读他们的write-up以了解rowan。另一个很好的介绍是Luna Razzaghipour的教程

具体来说,架构是为了无损解析和良好的错误恢复。这意味着即使源文件有错误,也可以从解析树完美地重建原始源文件。注释、空格和解析错误都明确包含在解析树中。

依赖关系

~4MB
~46K SLoC