update MethodDeclarationBinding.java

This commit is contained in:
hengyunabc 2020-04-25 14:12:59 +08:00
parent 9ff2ce4a50
commit 10575cf172

View File

@ -5,11 +5,10 @@ import com.alibaba.arthas.deps.org.objectweb.asm.tree.InsnList;
import com.taobao.arthas.bytekit.asm.MethodProcessor;
import com.taobao.arthas.bytekit.utils.AsmOpUtils;
import com.taobao.arthas.bytekit.utils.AsmUtils;
/**
* 提供一个完整的 method 的string包含类名并不是desc用户可以自己提取descs method的定义前面是 public
* /static 这些关键字是有限的几个后面是 throws 的异常信息
* TODO 提供一个完整的 method 的string包含类名并不是desc用户可以自己提取descs method的定义前面是 public
* /static 这些关键字是有限的几个后面是 throws 的异常信息 或者做一下取巧比如把 classname | methoname | desc 之类连起一个String
*
* @author hengyunabc
*
@ -19,14 +18,13 @@ public class MethodDeclarationBinding extends Binding {
@Override
public void pushOntoStack(InsnList instructions, BindingContext bindingContext) {
MethodProcessor methodProcessor = bindingContext.getMethodProcessor();
AsmOpUtils.ldc(instructions, AsmUtils.methodDeclaration(Type.getObjectType(methodProcessor.getOwner()),
methodProcessor.getMethodNode()));
// AsmOpUtils.ldc(instructions, AsmUtils.methodDeclaration(Type.getObjectType(methodProcessor.getOwner()),
// methodProcessor.getMethodNode()));
AsmOpUtils.ldc(instructions, methodProcessor.getMethodNode().desc);
}
@Override
public Type getType(BindingContext bindingContext) {
return Type.getType(String.class);
}
}