有没有形式化的(最好是BNF)TypeScript JS语言语法(或仅TypeScript子集)?

16
我正在寻找TypeScript语法。不是解析器词法分析器,而只是正式的语法描述。我想将实现TS代码折叠和基本静态代码分析作为插件添加到一个简单的GNOME Linux IDE中。

2
为什么不能直接使用编译器本身来构建AST呢?毕竟它是开源的... - Fyodor Soikin
4个回答

7
正式语法请参见TypeScript语言参考附录A,该版本为1.8,可在此处找到:这里这里(当前版本)。

1
实际上,在 TypeScript 存储库的一个 票证 中,开发人员之间就这个问题进行了一场有趣的辩论。结论是放弃规范,因为他们没有资源来保持其最新状态。 - Klesun

3
由于TypeScript是ECMAScript 5的严格超集(http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf/),因此您可以使用来自TypeScript规范的语法定义扩展任何ECMAScript bnf。
可以从以下链接开始:http://www.antlr3.org/grammar/1153976512034/ecmascriptA3.g。请注意,HTML标签将保留,但不会进行解释。

1

0

1
他正在寻找类似于 http://coffeescript.org/documentation/docs/grammar.html 的语法定义。 - tillda
1
它有助于找出使用了哪些标记以及它们是如何定义的,但这只是词法分析器的一部分。我需要一组规则,用某种形式的正式符号来创建解析器,并能够从给定的 TypeScript 文本构建 AST。 - Andrey Belyak
Chrome警告该链接:“该网站包含有害程序” - Clashsoft

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接