edu.mit.ai.psg.jevaES
Class JNSExpressionStatementList

java.lang.Object
  |
  +--edu.mit.ai.psg.jevaES.SimpleNode
        |
        +--edu.mit.ai.psg.jevaES.JevaNode
              |
              +--edu.mit.ai.psg.jevaES.JNSExpressionStatementList

public class JNSExpressionStatementList
extends JevaNode
implements IStatementNode

Jeva parse Node for lists of expression statements, used in for statements' initialize and update clauses.


Fields inherited from class edu.mit.ai.psg.jevaES.SimpleNode
children, id, parent
 
Method Summary
 IEnv eval(IEnv env)
          Evaluate this verified Statement (don't call this directly, use EvalMethods.eval).
 IEnv verifyTypes(IEnv env)
          Verify types within this statement (don't call this directly, use EvalMethods.verifyTypes).
 
Methods inherited from class edu.mit.ai.psg.jevaES.JevaNode
getBeginToken, getEndToken, notVerified, print, print, printToken, printToString, printToString, setBeginToken, setEndToken, shouldNotHappen, shouldNotHappen, shouldNotHappen
 
Methods inherited from class edu.mit.ai.psg.jevaES.SimpleNode
dump, jjtAddChild, jjtClose, jjtGetChild, jjtGetNumChildren, jjtGetParent, jjtOpen, jjtSetParent, toString, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Method Detail

verifyTypes

public IEnv verifyTypes(IEnv env)
                 throws VerifyingException
Description copied from interface: IStatementNode
Verify types within this statement (don't call this directly, use EvalMethods.verifyTypes). Also builds env without evaluating anything with side effects, for the purpose of verifying types of later statements. May be used by preprocessors which must find the type of an expression in order to assign it to a new variable.
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 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)

Copyright (c) 1996-1999
Massachusetts Institute of Technology

Feedback: jeva-feedback@ai.mit.edu