【发布时间】:2012-09-25 02:47:58
【问题描述】:
我正在寻找 Typescript 语法。 不是解析器-词法分析器,而只是正式的语法描述。 我想实现 ts 它的代码折叠和基本静态代码分析,作为 GNOME 的一个简单 linux IDE 的插件。
【问题讨论】:
-
为什么不能只使用编译器本身来构建 AST?毕竟是开源的……
标签: bnf typescript
我正在寻找 Typescript 语法。 不是解析器-词法分析器,而只是正式的语法描述。 我想实现 ts 它的代码折叠和基本静态代码分析,作为 GNOME 的一个简单 linux IDE 的插件。
【问题讨论】:
标签: bnf typescript
一种 ANTLR4 语法,但不可否认“不完全……符合 TypeScript 标准”(现有编程语言的官方语法太少了,这很痛苦):
【讨论】:
由于 typescript 是 Ecmascript 5 (http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf/) 的严格超集,您可以使用语法定义扩展任何 ecmascript bnf来自 Typescript 规范。
起点可以是:http://www.antlr3.org/grammar/1153976512034/ecmascriptA3.g
【讨论】:
也许您可以在源代码中找到参考,例如compiler/tokens.js
【讨论】: