From 745ba748f1be457b8d164fe334a146803de2cae9 Mon Sep 17 00:00:00 2001 From: Rishab Doshi Date: Mon, 21 Jan 2019 10:43:43 -0800 Subject: [PATCH] Update MethodVisitor to include method return type --- .../gr/gousiosg/javacg/stat/MethodVisitor.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/main/java/gr/gousiosg/javacg/stat/MethodVisitor.java b/src/main/java/gr/gousiosg/javacg/stat/MethodVisitor.java index 21100420..b4c55ca2 100644 --- a/src/main/java/gr/gousiosg/javacg/stat/MethodVisitor.java +++ b/src/main/java/gr/gousiosg/javacg/stat/MethodVisitor.java @@ -53,8 +53,8 @@ public MethodVisitor(MethodGen m, JavaClass jc) { visitedClass = jc; mg = m; cp = mg.getConstantPool(); - format = "M:" + visitedClass.getClassName() + ":" + mg.getName() + "(" + argumentList(mg.getArgumentTypes()) + ")" - + " " + "(%s)%s:%s(%s)"; + format = "M:" + visitedClass.getClassName() + ":" + mg.getName() + "(" + argumentList(mg.getArgumentTypes()) + ")" + mg.getReturnType().toString() + + " " + "(%s)%s:%s(%s)%s"; } private String argumentList(Type[] arguments) { @@ -91,27 +91,27 @@ private boolean visitInstruction(Instruction i) { @Override public void visitINVOKEVIRTUAL(INVOKEVIRTUAL i) { - methodCalls.add(String.format(format,"M",i.getReferenceType(cp),i.getMethodName(cp),argumentList(i.getArgumentTypes(cp)))); + methodCalls.add(String.format(format,"M",i.getReferenceType(cp),i.getMethodName(cp),argumentList(i.getArgumentTypes(cp)),i.getReturnType(cp))); } @Override public void visitINVOKEINTERFACE(INVOKEINTERFACE i) { - methodCalls.add(String.format(format,"I",i.getReferenceType(cp),i.getMethodName(cp),argumentList(i.getArgumentTypes(cp)))); + methodCalls.add(String.format(format,"I",i.getReferenceType(cp),i.getMethodName(cp),argumentList(i.getArgumentTypes(cp)),i.getReturnType(cp))); } @Override public void visitINVOKESPECIAL(INVOKESPECIAL i) { - methodCalls.add(String.format(format,"O",i.getReferenceType(cp),i.getMethodName(cp),argumentList(i.getArgumentTypes(cp)))); + methodCalls.add(String.format(format,"O",i.getReferenceType(cp),i.getMethodName(cp),argumentList(i.getArgumentTypes(cp)),i.getReturnType(cp))); } @Override public void visitINVOKESTATIC(INVOKESTATIC i) { - methodCalls.add(String.format(format,"S",i.getReferenceType(cp),i.getMethodName(cp),argumentList(i.getArgumentTypes(cp)))); + methodCalls.add(String.format(format,"S",i.getReferenceType(cp),i.getMethodName(cp),argumentList(i.getArgumentTypes(cp)),i.getReturnType(cp))); } @Override public void visitINVOKEDYNAMIC(INVOKEDYNAMIC i) { methodCalls.add(String.format(format,"D",i.getType(cp),i.getMethodName(cp), - argumentList(i.getArgumentTypes(cp)))); + argumentList(i.getArgumentTypes(cp)),i.getReturnType(cp))); } }