在同一编译器阶段中,多个AST转换的执行顺序是什么?

时间:2013-02-06 06:28:39

标签: groovy

我已经应用了一个AST转换,它将每个方法包装在try...catch中。我想确保在其他AST转换后执行此AST转换。

如果我在同一编译器阶段对同一个类应用多个AST转换,那么执行顺序或优先级是多少?

1 个答案:

答案 0 :(得分:3)

未指定在同一阶段运行的转换的执行顺序。保证一个变换一个接一个地运行的唯一安全方法是在稍后阶段应用它。

有可能排序至少在某种程度上是确定性的(你必须检查编译器源代码),但我不认为这是一个强有力的保证(即它可能在Groovy版本之间改变)