edu.mit.ai.psg.jevaES
Class JNSReturnStatement
java.lang.Object
|
+--edu.mit.ai.psg.jevaES.SimpleNode
|
+--edu.mit.ai.psg.jevaES.JevaNode
|
+--edu.mit.ai.psg.jevaES.JNSReturnStatement
- public class JNSReturnStatement
- extends JevaNode
- implements IStatementNode
Jeva parse Node for return Statements.
| Methods inherited from class edu.mit.ai.psg.jevaES.JevaNode |
getBeginToken,
getEndToken,
notVerified,
print,
print,
printToken,
printToString,
printToString,
setBeginToken,
setEndToken,
shouldNotHappen,
shouldNotHappen,
shouldNotHappen |
getExpression
public IExpressionNode getExpression()
verifyTypes
public IEnv verifyTypes(IEnv env)
throws VerifyingException
- Checks expr assignable to env.lookupReturnType()
[JavaLangSpec1.0 sec 14.15]
- Specified by:
- verifyTypes in interface IStatementNode
- Tags copied from interface: IStatementNode
- Parameters:
env - environment of names bindings.- Returns:
- env or possibly extended env
- Throws:
- VerifyingException - if statement is illegal
- See Also:
EvalMethods.verifyTypes(IStatementNode, IEnv)
eval
public IEnv eval(IEnv env)
throws ReturnException,
ThrowException
- Description copied from interface: IStatementNode
- Evaluate this verified Statement (don't call this directly,
use
EvalMethods.eval).
- Specified by:
- eval in interface IStatementNode
- Tags copied from interface: IStatementNode
- Parameters:
env - environment of names bindings.- Returns:
- env or possibly extended env
- Throws:
- AbruptCompletionException - if abruptly completed with
return, throw, break, or continue.
- See Also:
EvalMethods.eval(IStatementNode, IEnv)