![]() |
1
9
我认为访问AST的最好方法是使用编译器插件。你应该读一本书 soft introduction diving in deep . |
![]() |
2
4
一些现有的解析器:
|
![]() |
3
2
但是,您可以调用编译器本身——毕竟它只是一个jar文件。特别是Scala 2.8,有很多钩子可供其他程序使用——这是Miles Sabin的工作,他正是这样做的,这样Scala的Eclipse插件就可以以这种方式利用编译器。
|
|
4
2
如果您想生成一段代码的AST。您可以使用scala反射:
上述代码将生成一个AST:
参考: http://docs.scala-lang.org/overviews/reflection/symbols-trees-types.html |
![]() |
6
0
|
![]() |
Wickoo · Scala变量解析:类与局部变量 3 月前 |
![]() |
Jake · 如何回滚臭鼬事务以进行集成测试?(缺少隐式原点) 5 月前 |
![]() |
Readren · 如何定义标量。标量3中元组的ValueOf? 1 年前 |
![]() |
Leif Andersen · “=>”在scala泛型中是什么意思? 1 年前 |