获取dart源代码的AST

时间:2014-11-09 01:02:59

标签: dart interpreter

我正在考虑用飞镖写一个飞镖翻译器。

由于dart to javascript编译器是用dart编写的,是否可以使用它从dart源代码中获取AST?

我该怎么做?这种方法可以在浏览器中使用吗?

1 个答案:

答案 0 :(得分:2)

是的,这大致是try.dartlang.org所做的。我粗略地说,因为它没有解释它,它在浏览器中运行整个dart2js编译器。

所以你可以这样做,得到AST并解释它。您也可以使用Analyzer包来获取AST。分析器的表示形式往往比dart2js内部表示更稳定,并且更容易依赖,因为您可以依赖于包而不是SDK的内部。 https://pub.dartlang.org/packages/analyzer