我可以从 Rascal 调用 Java 函数吗?我想编写 RASCAL 分析器,但想通过调用 java 函数来访问 CFG 节点。这在流氓中是否可能。简而言之,我可以包装现有的 java 应用程序并从 RASCAL 调用它吗
问问题
354 次
1 回答
4
当然。它的工作原理如下。
- 将 Eclipse 中的 Rascal 项目也视为 Java 项目。
- 添加源代码和库并编译这些东西。
- 了解 pdb.values API(特别是
IValueFactory
) - 在流氓写这样的东西:
@javaClass{com.mypackage.MyClass} java int myFunction(str arg);
- 然后在Java中:
包 com.mypackage; 公共类 MyClass { 私有最终 IValueFactor vf; 公共MyClass(IValueFactory vf){ 这个.vf = vf; } IValue myFunction(IString x) { 返回 vf.integer(-1); } }
于 2013-10-31T11:36:23.957 回答