文件名称:lex-bnf:通用递归下降解析器和评估器
文件大小:63KB
文件格式:ZIP
更新时间:2024-05-18 21:16:59
javascript npm parser-generator analyzer lexical-analysis
Lex-BNF 这是通用的递归下降解析器和评估器。 使用此模块,您可以: 定义语法规则,例如编程语言,表达式或结构化语句。 解析根据规则编写的代码。 评估解析结果。 注意:不推荐使用v0.3.3中导出的类BNF ,并且可以将其用作Language.BNF 。 创建Language定义 通过使用类BNF表示法的对象及其评估器功能,将解析器定义为Language类的实例。 这些可以立即动态运行。 Language构造函数采用一个语法规则数组。 若要创建语法规则,请使用Language.syntax()函数。 Language.syntax()参数: 语法规则的名称。 规则数组,是术语数组。 规则名称末尾的字符“ *”(作为术语的元素)是“重复说明符”,表示该规则是可重复的。 请参阅中additive-expression的规则声明部分以使用该功能。 评估器功能(
【文件预览】:
lex-bnf-master
----.gitignore(42B)
----README.md(3KB)
----jsdoc.json(657B)
----test()
--------syntax-rule.test.js(1KB)
--------language.test.js(19KB)
--------token.test.js(593B)
--------lex-element.test.js(5KB)
----LICENSE(1KB)
----package.json(1KB)
----index.js(129B)
----.eslintignore(40B)
----.travis.yml(81B)
----sample()
--------calc.js(4KB)
--------_parse-sql-ish.js(9KB)
--------eval-expr.js(407B)
----lib()
--------_lex-analyzer.js(5KB)
--------syntax-rule.js(2KB)
--------language.js(15KB)
--------_bnf-result.js(8KB)
--------lex-element.js(2KB)
--------_bnf.js(7KB)
--------lex-role.js(488B)
--------term.js(4KB)
--------token.js(2KB)
----.eslintrc.js(427B)
----package-lock.json(136KB)