文件名称:cfg:用于在 Rust 中操作上下文无关文法的库
文件大小:59KB
文件格式:ZIP
更新时间:2024-06-19 18:48:08
Rust
配置文件 • 用于操作上下文无关文法的 Rust 库。 。 分析和修改语法 到目前为止实现了以下功能: 循环检测和消除, 无用的规则检测和消除, 语法二值化, 二值化文法的归零规则消除, FIRST 和 FOLLOW 集计算, 最小距离计算, 未使用的符号删除。 构建语法 cfg包括一个简化语法构造的接口。 生成符号 生成符号的最简单方法是使用sym方法。 库不知道开始符号。 let mut grammar: Cfg = Cfg :: new (); let (start, expr, identifier, number, plus, multiply, power, l_paren, r_paren, digit) = grammar. sym (); 构建语法规则 规则有一个 LHS 符号和零个或多个 RHS 符号。 grammar. rule (st
【文件预览】:
cfg-master
----.gitignore(133B)
----src()
--------grammar.rs(6KB)
--------symbol()
--------prediction()
--------analysis()
--------sequence()
--------rule()
--------remap.rs(5KB)
--------precedence.rs(7KB)
--------earley()
--------classification()
--------generate()
--------binarized.rs(14KB)
--------history.rs(5KB)
--------lib.rs(1KB)
----.travis.yml(836B)
----Cargo.toml(489B)
----LICENSE-MIT(1KB)
----README.md(3KB)
----tests()
--------test_minimum_distance.rs(2KB)
--------test_precedence.rs(3KB)
--------test_binarize.rs(2KB)
--------test_cycles.rs(2KB)
--------test_sequence.rs(2KB)
--------support()
--------test_remap.rs(3KB)
--------test_first_sets.rs(2KB)
--------test_last_sets.rs(2KB)
--------test_classification.rs(3KB)
----LICENSE-APACHE(11KB)