Class AdditiveExpression
java.lang.Object
gw.internal.gosu.parser.ParsedElement
gw.internal.gosu.parser.Expression
gw.internal.gosu.parser.expressions.ArithmeticExpression
gw.internal.gosu.parser.expressions.AdditiveExpression
- All Implemented Interfaces:
IAdditiveExpression, IArithmeticExpression, IOverridableOperation, IExpression, IHasType, IParsedElement
Represents an additive expression in the Gosu grammar:
additive-expression <multiplicative-expression> <additive-expression> + <multiplicative-expression> <additive-expression> - <multiplicative-expression>
- See Also:
-
Field Summary
Fields inherited from class ArithmeticExpression
_lhs, _rhsFields inherited from class Expression
_typeFields inherited from class ParsedElement
_tokens, UNDEF_FILE, UNDEF_FUNCTION, UNDEF_MODULEFields inherited from interface IExpression
EMPTY_ARRAY -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionevaluate()Evaluates this additive expression.static Objectevaluate(IType type, Object lhsValue, Object rhsValue, IType lhsType, IType rhsType, boolean bAdditive, boolean bNullSafe, boolean bNumericType) static Objectevaluate(IType type, Object lhsValue, Object rhsValue, IType lhsType, IType rhsType, boolean bAdditive, boolean bNullSafe, boolean bNumericType, Object ctx, int startLhs, int endLhs, int startRhs, int endRhs) booleanReturns whether or not the operation is addition or substraction.booleanMethods inherited from class ArithmeticExpression
getLHS, getOperator, getOverride, getRHS, isCompileTimeConstant, isNullSafe, isUnchecked, setLHS, setOperator, setOverride, setRHS, toStringMethods inherited from class Expression
evaluate, getContextType, getReturnType, getType, getTypeImpl, setTypeMethods inherited from class ParsedElement
addExceptionsFrom, addParseException, addParseException, addParseException, addParseExceptions, addParseIssues, addParseWarning, addParseWarning, addParseWarnings, addToken, adjustColumn, adjustLineNum, assignTokens, clearParseExceptions, clearParseTreeInformation, clearParseWarnings, compactParseTree, findAncestorParsedElementByType, findDeclaringStatement, findLineNumberOfDeclaration, findRootParsedElement, getAnnotations, getColumn, getContainedParsedElementsByType, getContainedParsedElementsByTypes, getContainedParsedElementsByTypesWithIgnoreSet, getEnclosingFeatureInfo, getFunctionName, getGosuClass, getGosuProgram, getImmediateParseIssue, getImmediateParseIssues, getLineNum, getLocation, getModule, getParent, getParseExceptions, getParseIssues, getParseWarnings, getQualifyingEnclosingTypeInfo, getTokens, hasImmediateParseIssue, hasImmediateParseWarning, hasImmediateParseWarnings, hasParseException, hasParseExceptions, hasParseIssue, hasParseIssues, hasParseWarning, hasParseWarnings, initEmptyParseTree, initLocation, isSuppressed, isSuppressed, isSynthetic, makeDoubleValue, makeFloatValue, makeInteger, makeLong, removeParseException, removeParseWarning, removeParseWarningRecursively, setGosuProgram, setLineNum, setLocation, setParent, setSynthetic, shouldClearParseInfo, visitMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface IArithmeticExpression
getLHS, getOperator, getRHSMethods inherited from interface IExpression
evaluate, getContextType, isNullSafe, isUncheckedMethods inherited from interface IOverridableOperation
getOverride, setOverrideMethods inherited from interface IParsedElement
addExceptionsFrom, addParseException, addParseException, addParseWarning, addParseWarning, clearParseExceptions, clearParseTreeInformation, clearParseWarnings, findAncestorParsedElementByType, findDeclaringStatement, findRootParsedElement, getColumn, getContainedParsedElementsByType, getContainedParsedElementsByTypes, getContainedParsedElementsByTypesWithIgnoreSet, getFunctionName, getGosuClass, getGosuProgram, getImmediateParseIssue, getImmediateParseIssues, getLineNum, getLocation, getModule, getParent, getParseExceptions, getParseIssues, getParseWarnings, getReturnType, getTokens, hasImmediateParseIssue, hasImmediateParseWarnings, hasParseException, hasParseExceptions, hasParseIssue, hasParseIssues, hasParseWarning, hasParseWarnings, isCompileTimeConstant, isSuppressed, isSynthetic, setLocation, setParent, visit
-
Constructor Details
-
AdditiveExpression
public AdditiveExpression()
-
-
Method Details
-
isAdditive
public boolean isAdditive()Returns whether or not the operation is addition or substraction.- Specified by:
isAdditivein interfaceIAdditiveExpression- Returns:
- True if operation is addition.
-
isAssignment
public boolean isAssignment() -
evaluate
Evaluates this additive expression. Either performs numeric addition/subtraction or String concatination.- Specified by:
evaluatein interfaceIExpression- Overrides:
evaluatein classExpression
-
evaluate
-
evaluate
-