Caribay:基于LPeg(Label)的具有半自动错误恢复功能的PEG解析器生成器

时间:2024-03-02 11:42:03
【文件属性】:

文件名称:Caribay:基于LPeg(Label)的具有半自动错误恢复功能的PEG解析器生成器

文件大小:98KB

文件格式:ZIP

更新时间:2024-03-02 11:42:03

parser-generator gsoc-2020 Lua

卡里贝 使用LPeg(Label)构建的PEG(解析表达式语法)解析器生成器。 生成的解析器捕获通用的AST(抽象语法树)。 Caribay使解析语法符号,注释,标识符和关键字更加容易。 目录 安装 您可以使用安装 : luarocks install caribay 用法 您需要导入该模块src.generator: local generator = require " caribay.generator " 然后调用gen函数,将PEG作为参数传递以生成LPegLabel解析器: local src = [[ assign <- ID '=' number fragment number <- FLOAT / INT INT <- %d+ FLOAT <- %d+ '.' %d+ ]] local match = generator. gen


【文件预览】:
Caribay-master
----src()
--------generator.lua(22KB)
--------Set.lua(1KB)
--------parser.lua(6KB)
--------annotator.lua(18KB)
--------Symbol.lua(621B)
----LICENSE(1KB)
----test()
--------annotator.test.lua(42KB)
--------run.sh(134B)
--------expected()
--------lua5.1-tests()
--------generator.test.lua(51KB)
--------parser.test.lua(43KB)
--------assertions.lua(2KB)
----rockspecs()
--------caribay-3.2-1.rockspec(903B)
--------caribay-2.2-1.rockspec(887B)
--------caribay-2.0.1-1.rockspec(889B)
--------caribay-3.2.2-1.rockspec(907B)
--------caribay-1.0.0-1.rockspec(769B)
--------caribay-3.0-1.rockspec(887B)
--------caribay-2.0-1.rockspec(817B)
--------caribay-2.1-1.rockspec(887B)
--------caribay-3.2.1-1.rockspec(907B)
--------caribay-1.1-1.rockspec(765B)
--------caribay-3.1-1.rockspec(887B)
----README.md(17KB)
----.gitignore(324B)

网友评论