|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--antlr.BaseAST | +--antlr.CommonAST | +--junc.ast.JUnCASTNode | +--junc.ast.ExpressionNode | +--junc.ast.MethodExpNode
Field Summary | |
java.util.Vector |
args
The list of arguments. |
junc.ast.MethodDeclarationNode |
callee
A ref to the AST node of the called method. |
junc.ast.MethodDeclarationNode |
caller
A ref to the AST node of the method where the call takes place. |
junc.symtab.Symbol |
className
The type name to which the invoked method belongs. |
junc.ast.ExpressionNode |
left
This should always be a FieldExpNode. |
Fields inherited from class junc.ast.ExpressionNode |
falseList, leftValue, statementExpression, trueList, type |
Fields inherited from class antlr.BaseAST |
down, right |
Constructor Summary | |
MethodExpNode(junc.ast.ExpressionNode left,
java.util.Vector args,
junc.ast.MethodDeclarationNode caller)
|
Method Summary | |
void |
translate(org.apache.bcel.generic.ClassGen classGen,
org.apache.bcel.generic.MethodGen methodGen)
Describe translate method here. |
org.apache.bcel.generic.BranchHandle |
translateSynthesized(org.apache.bcel.generic.ClassGen classGen,
org.apache.bcel.generic.MethodGen methodGen)
First translate the expression and then synthesize it. |
junc.types.JUnCBaseType |
typeCheck(junc.symtab.SymbolTable symbolTable)
Describe typeCheck method here. |
Methods inherited from class junc.ast.ExpressionNode |
addFalseList, addTrueList, appendToFalseList, appendToTrueList, backPatch, desynthesize, evaluate, evaluateExp, leftValue, lookupPrimop, superExp, synthesize, thisExp, thisOrSuperExp, type, typeExp, variableExp |
Methods inherited from class junc.ast.JUnCASTNode |
getColumnNumber, getLineNumber, setColumnNumber, setLineNumber |
Methods inherited from class antlr.CommonAST |
getText, getType, initialize, initialize, initialize, setText, setType |
Methods inherited from class antlr.BaseAST |
addChild, decode, encode, equals, equalsList, equalsListPartial, equalsTree, equalsTreePartial, findAll, findAllPartial, getFirstChild, getNextSibling, removeChildren, setFirstChild, setNextSibling, setVerboseStringConversion, toString, toStringList, toStringTree, xmlSerialize, xmlSerializeNode, xmlSerializeRootClose, xmlSerializeRootOpen |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
public java.util.Vector args
public junc.ast.ExpressionNode left
public junc.symtab.Symbol className
public junc.ast.MethodDeclarationNode caller
public junc.ast.MethodDeclarationNode callee
Constructor Detail |
public MethodExpNode(junc.ast.ExpressionNode left, java.util.Vector args, junc.ast.MethodDeclarationNode caller)
Method Detail |
public junc.types.JUnCBaseType typeCheck(junc.symtab.SymbolTable symbolTable) throws TypeCheckError
ExpressionNode
typeCheck
method here.
typeCheck
in class ExpressionNode
symbolTable
- a SymbolTable
value
JUnCBaseType
value
TypeCheckError
- if an error occurspublic org.apache.bcel.generic.BranchHandle translateSynthesized(org.apache.bcel.generic.ClassGen classGen, org.apache.bcel.generic.MethodGen methodGen)
ExpressionNode
translateSynthesized
in class ExpressionNode
classGen
- a ClassGen
valuemethodGen
- a MethodGen
value
BranchHandle
valuepublic void translate(org.apache.bcel.generic.ClassGen classGen, org.apache.bcel.generic.MethodGen methodGen)
ExpressionNode
translate
method here.
translate
in class ExpressionNode
classGen
- a ClassGen
valuemethodGen
- a MethodGen
value
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |