edu.mit.ai.psg.jeva
Class JNELiteralExpression

java.lang.Object
  |
  +--edu.mit.ai.psg.jeva.SimpleNode
        |
        +--edu.mit.ai.psg.jeva.JevaNode
              |
              +--edu.mit.ai.psg.jeva.ExpressionNode
                    |
                    +--edu.mit.ai.psg.jeva.JNELiteralExpression

public class JNELiteralExpression
extends ExpressionNode

Jeva parse node for literal expressions (1, 3.14, "Hi", etc.)

Author:
CarlManning, caroma@ai.mit.edu
Copyright (c) 1997, 1998 Massachusetts Institute of Technology

Fields inherited from class edu.mit.ai.psg.jeva.SimpleNode
children, id, parent
 
Method Summary
 boolean computeIsConstant(IEnv env)
           
 IClass computeType(IEnv env)
           
 Object eval(IEnv env)
          This should never be called.
 Object jjtAccept(IJevaVisitor visitor, Object data)
           
 void setValue(Object val, IClass literalType)
           
 
Methods inherited from class edu.mit.ai.psg.jeva.ExpressionNode
getType, getType, getValue, isConstant
 
Methods inherited from class edu.mit.ai.psg.jeva.JevaNode
checkInsertionPoint, find2ndTokenBeforeEndBody, findChildIndex, findPrecedingToken, findTokenBeforeChild, findTokenBeforeChild, findTokenBeforeEnd, getBeginToken, getEndToken, insertChildTokens, insertNewChildAfter, insertNewChildAt, insertNewChildBefore, jnGetChild, jnGetParent, print, print, printToken, printToString, printToString, removeChild, removeChildTokens, replaceChild, replaceChild, setBeginToken, setEndToken, updateEndTokens, updateEndTokensPriorChild, updateEndTokensPriorNode, updateEndTokensPriorNode
 
Methods inherited from class edu.mit.ai.psg.jeva.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

jjtAccept

public Object jjtAccept(IJevaVisitor visitor,
                        Object data)
Overrides:
jjtAccept in class JevaNode

setValue

public void setValue(Object val,
                     IClass literalType)

computeType

public IClass computeType(IEnv env)
Overrides:
computeType in class ExpressionNode

computeIsConstant

public boolean computeIsConstant(IEnv env)
Overrides:
computeIsConstant in class ExpressionNode

eval

public Object eval(IEnv env)
This should never be called. EvalMethods.eval calls getValue, which calls eval only if it isn't a constant already computed. Literals are computed at parse time, so they are always computed.
Overrides:
eval in class ExpressionNode

Copyright (c) 1996-1999
Massachusetts Institute of Technology

Feedback: jeva-bugs@ai.mit.edu