@@ -49,8 +49,15 @@ public interface IProgramElement extends Serializable { | |||
public String getDeclaringType(); // TODO: remove (Emacs uses it) | |||
public String getPackageName(); | |||
public void setReturnType(String returnType); | |||
public String getReturnType(); | |||
/** | |||
* @param method return types or field types | |||
*/ | |||
public void setCorrespondingType(String returnType); | |||
/** | |||
* This correponds to both method return types and field types. | |||
*/ | |||
public String getCorrespondingType(); | |||
public String toSignatureString(); | |||
@@ -71,6 +78,11 @@ public interface IProgramElement extends Serializable { | |||
public String toString(); | |||
/** | |||
* @return the javadoc comment for this program element, null if not available | |||
*/ | |||
public String getFormalComment(); | |||
/** | |||
* Includes information about the origin of the node. | |||
*/ |
@@ -33,7 +33,7 @@ public class ProgramElement implements IProgramElement { | |||
protected List children = new ArrayList(); | |||
protected IMessage message = null; | |||
protected ISourceLocation sourceLocation = null; | |||
private List modifiers = new ArrayList(); | |||
private List relations = new ArrayList(); | |||
@@ -281,11 +281,11 @@ public class ProgramElement implements IProgramElement { | |||
this.kind = kind; | |||
} | |||
public void setReturnType(String returnType) { | |||
public void setCorrespondingType(String returnType) { | |||
this.returnType = returnType; | |||
} | |||
public String getReturnType() { | |||
public String getCorrespondingType() { | |||
return returnType; | |||
} | |||
@@ -38,7 +38,7 @@ public class AsmElementFormatter { | |||
node.setKind(IProgramElement.Kind.ADVICE); | |||
if (ad.kind == AdviceKind.Around) { | |||
node.setReturnType(ad.returnType.toString()); //returnTypeToString(0)); | |||
node.setCorrespondingType(ad.returnType.toString()); //returnTypeToString(0)); | |||
} | |||
String details = ""; | |||
@@ -131,7 +131,7 @@ public class AsmElementFormatter { | |||
node.setKind(IProgramElement.Kind.ERROR); | |||
} | |||
node.setName(name); | |||
node.setReturnType(itd.returnType.toString()); | |||
node.setCorrespondingType(itd.returnType.toString()); | |||
if (node.getKind() != IProgramElement.Kind.INTER_TYPE_FIELD) { | |||
setParameters(methodDeclaration, node); | |||
} |
@@ -276,6 +276,7 @@ public class AsmHierarchyBuilder extends ASTVisitor { | |||
formatter.genLabelAndKind(methodDeclaration, peNode); | |||
genBytecodeInfo(methodDeclaration, peNode); | |||
peNode.setModifiers(methodDeclaration.modifiers); | |||
peNode.setCorrespondingType(methodDeclaration.returnType.toString()); | |||
// TODO: add return type test | |||
if (peNode.getKind().equals(IProgramElement.Kind.METHOD)) { | |||
@@ -285,6 +286,7 @@ public class AsmHierarchyBuilder extends ASTVisitor { | |||
((IProgramElement)stack.peek()).setRunnable(true); | |||
} | |||
} | |||
stack.push(peNode); | |||
return true; | |||
} | |||
@@ -351,7 +353,10 @@ public class AsmHierarchyBuilder extends ASTVisitor { | |||
makeLocation(fieldDeclaration), | |||
fieldDeclaration.modifiers, | |||
"", | |||
new ArrayList()); | |||
new ArrayList()); | |||
peNode.setCorrespondingType(fieldDeclaration.type.toString()); | |||
((IProgramElement)stack.peek()).addChild(peNode); | |||
stack.push(peNode); | |||
return true; |