8 个版本
0.1.7 | 2024年3月25日 |
---|---|
0.1.6 | 2024年1月31日 |
0.1.1 | 2023年12月18日 |
#56 在 解析器工具
每月 343 次下载
47KB
1.5K SLoC
Tuckey
Tuckey 是基于 tuck5 的基本架构的演变,作为更传统的词法分析器-解析器生成器(移除标签和迭代处理,以更接近传统的模式匹配)。
您应通过 meta
系统与 Tuckey 交互 - 您提供字符串,Tuckey 将从中构建一组规则,这些规则用于将一些字符处理成令牌。所以
| Text |
Rule Text => Ruleset => | \/ |
| Tokens |
例如,要处理不带前导零的正整数,您可以使用以下规则
nonzero = 1..9
digit = 0..9
posInt = nonzero:first & digit*
该规则将字符串 120
转换为以下令牌
{
first:
"1",
{
"2",
"3",
"4",
}
}
从那里,可以使用 token.get_first_child("first").unwrap()
访问包含第一个数字的令牌。
TODO:添加元语法指南
依赖关系
~0.4–0.8MB
~20K SLoC