我正在与 INRIA Spoon 合作。
我有一些动态方法调用,如下所示:
a.doSomething();
我可以使用实例的方法获得对变量的访问。 我的任务是生成代码以存储到文件中。为此,我需要 的类型和源位置(类名、行等),以便生成类似或类似的代码。agetTarget()CtInvocationaalogger.logSerializable(a, "My.Class:21")logger.logDoubleArrayList(a, "My.otherClass:23)"
到目前为止一切顺利,我设法通过获取实例getTarget方法的结果来做到这一点。CtInvocation但是,当调用的目标是 equalthis时,例如:
doSomething(); // equivalent to -> this.doSomething();
getTarget返回null。_
我怎样才能获得一个给定的目标this 变量访问CtInvocation?