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 gw.internal.gosu.parser.expressions.ArithmeticExpression
_lhs, _rhs
Fields inherited from class gw.internal.gosu.parser.Expression
_type
Fields inherited from class gw.internal.gosu.parser.ParsedElement
_tokens, UNDEF_FILE, UNDEF_FUNCTION, UNDEF_MODULE
Fields inherited from interface gw.lang.parser.IExpression
EMPTY_ARRAY
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionevaluate()
Evaluates this additive expression.static Object
evaluate
(IType type, Object lhsValue, Object rhsValue, IType lhsType, IType rhsType, boolean bAdditive, boolean bNullSafe, boolean bNumericType) static Object
evaluate
(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) boolean
Returns whether or not the operation is addition or substraction.boolean
Methods inherited from class gw.internal.gosu.parser.expressions.ArithmeticExpression
getLHS, getOperator, getOverride, getRHS, isCompileTimeConstant, isNullSafe, isUnchecked, setLHS, setOperator, setOverride, setRHS, toString
Methods inherited from class gw.internal.gosu.parser.Expression
evaluate, getContextType, getReturnType, getType, getTypeImpl, setType
Methods inherited from class gw.internal.gosu.parser.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, visit
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface gw.lang.parser.expressions.IArithmeticExpression
getLHS, getOperator, getRHS
Methods inherited from interface gw.lang.parser.IExpression
evaluate, getContextType, isNullSafe, isUnchecked
Methods inherited from interface gw.lang.parser.expressions.IOverridableOperation
getOverride, setOverride
Methods inherited from interface gw.lang.parser.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:
isAdditive
in 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:
evaluate
in interfaceIExpression
- Overrides:
evaluate
in classExpression
-
evaluate
-
evaluate
-