在V8,懒惰编译问题中获得完整的AST

时间:2013-11-21 13:57:21

标签: javascript compiler-construction static-analysis v8 abstract-syntax-tree

我想获得一个javascript代码的完整AST(抽象语法树),我决定使用V8的解析器。在尝试使用V8之后,我意识到V8不会解析未执行的函数(死代码)。我的假设是V8只在它即将被执行时触发函数的解析。我认为它称之为懒惰编译

有没有办法从V8中获得完整的AST,即使是那些没有机会被执行的功能?是否有任何标志设置可以强制V8生成完整的AST?

1 个答案:

答案 0 :(得分:1)

我会反对这个想法 - 请参阅我的reply以查看V8用户列表中的类似问题。除了我指出的那些之外,延迟解析是另一个问题,尽管V8有一些旋钮可以让某些函数急切地解析,但是通常可以让它工作起来并不是一件容易的事。