edu.mit.ai.psg.jevaES
Class JNEAdditiveExpression

java.lang.Object
  |
  +--edu.mit.ai.psg.jevaES.SimpleNode
        |
        +--edu.mit.ai.psg.jevaES.JevaNode
              |
              +--edu.mit.ai.psg.jevaES.ExpressionNode
                    |
                    +--edu.mit.ai.psg.jevaES.LeftAssociativeOperatorExpression
                          |
                          +--edu.mit.ai.psg.jevaES.JNEAdditiveExpression

public class JNEAdditiveExpression
extends LeftAssociativeOperatorExpression
implements JevaESParserConstants

Jeva parse Node for binary + - Expressions [JavaLangSpec 1.0 sec 15.17 Additive Operators].


Fields inherited from class edu.mit.ai.psg.jevaES.SimpleNode
children, id, parent
 
Fields inherited from interface edu.mit.ai.psg.jevaES.JevaESParserConstants
_DEFAULT, ABSTRACT, ANDASSIGN, ASSIGN, BANG, BIT_AND, BIT_OR, BOOLEAN, BREAK, BYTE, CASE, CATCH, CHAR, CHARACTER_LITERAL, CLASS, COLON, COMMA, CONST, CONTINUE, DECIMAL_LITERAL, DECR, DEFAULT, DIGIT, DO, DOT, DOUBLE, ELSE, EOF, EQ, EXPONENT, EXTENDS, FALSE, FINAL, FINALLY, FLOAT, FLOATING_POINT_LITERAL, FOR, FORMAL_COMMENT, GE, GOTO, GT, HEX_LITERAL, HOOK, IDENTIFIER, IF, IMPLEMENTS, IMPORT, INCR, INSTANCEOF, INT, INTEGER_LITERAL, INTERFACE, LBRACE, LBRACKET, LE, LETTER, LONG, LPAREN, LSHIFT, LSHIFTASSIGN, LT, MINUS, MINUSASSIGN, MULTI_LINE_COMMENT, NATIVE, NE, NEW, NULL, OCTAL_LITERAL, ORASSIGN, PACKAGE, PLUS, PLUSASSIGN, PRIVATE, PROTECTED, PUBLIC, RBRACE, RBRACKET, REM, REMASSIGN, RETURN, RPAREN, RSIGNEDSHIFT, RSIGNEDSHIFTASSIGN, RUNSIGNEDSHIFT, RUNSIGNEDSHIFTASSIGN, SC_AND, SC_OR, SEMICOLON, SHORT, SINGLE_LINE_COMMENT, SLASH, SLASHASSIGN, STAR, STARASSIGN, STATIC, STRING_LITERAL, SUPER, SWITCH, SYNCHRONIZED, THIS, THROW, THROWS, TILDE, tokenImage, TRANSIENT, TRUE, TRY, VOID, VOLATILE, WHILE, WHITE_SPACE, XOR, XORASSIGN
 
Method Summary
 Object binaryCombine(Token operator, Object accumResult, Object nextResult)
          binaryCombine -- combine two values, implemented in subclasses
 Class binaryCombineTypes(Token operator, Class accumType, Class nextType)
          binaryCombineTypes -- Class of result of combining two types; implemented in subclasses
 
Methods inherited from class edu.mit.ai.psg.jevaES.LeftAssociativeOperatorExpression
computeIsConstant, computeType, eval
 
Methods inherited from class edu.mit.ai.psg.jevaES.ExpressionNode
getType, getValue, isConstant
 
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

binaryCombineTypes

public Class binaryCombineTypes(Token operator,
                                Class accumType,
                                Class nextType)
Description copied from class: LeftAssociativeOperatorExpression
binaryCombineTypes -- Class of result of combining two types; implemented in subclasses
Overrides:
binaryCombineTypes in class LeftAssociativeOperatorExpression
Tags copied from class: LeftAssociativeOperatorExpression
Parameters:
operator - is the Token between expressions (e.g., +,-,*,/,...)
accumResult - is result of accumulating the expressions to the left of the operator.
nextResult - is result of evaluating the next expression to the right of the operator.
Returns:
Class of result of the combining accumResult and nextResult with operator.
Throws:
IllegalArgumentException - if types not acceptable

binaryCombine

public Object binaryCombine(Token operator,
                            Object accumResult,
                            Object nextResult)
                     throws ThrowException
Description copied from class: LeftAssociativeOperatorExpression
binaryCombine -- combine two values, implemented in subclasses
Overrides:
binaryCombine in class LeftAssociativeOperatorExpression
Tags copied from class: LeftAssociativeOperatorExpression
Parameters:
operator - is the Token between expressions (e.g., +,-,*,/,...)
accumResult - is result of accumulating the expressions to the left of the operator.
nextResult - is result of evaluating the next expression to the right of the operator.
Returns:
result of the combining accumResult and nextResult with operator
Throws:
ThrowException - if expression completes abruptly with exception

Copyright (c) 1996-1999
Massachusetts Institute of Technology

Feedback: jeva-feedback@ai.mit.edu