Class AssignmentStatement
java.lang.Object
gw.internal.gosu.parser.ParsedElement
gw.internal.gosu.parser.Statement
gw.internal.gosu.parser.statements.AssignmentStatement
- All Implemented Interfaces:
IParsedElement,IStatement,IAssignmentStatement
Represents an assignment statement in the Gosu grammar:
assignment-statement <identifier> = <expression>
- See Also:
-
Field Summary
FieldsFields inherited from class gw.internal.gosu.parser.Statement
VOID_RETURN_VALUEFields inherited from class gw.internal.gosu.parser.ParsedElement
_tokens, UNDEF_FILE, UNDEF_FUNCTION, UNDEF_MODULE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionexecute()Execute the expression.protected ITerminalStatementgetLeastSignificantTerminalStatement_internal(boolean[] bAbsolute) private voidIf the identifier was initialized without a type specification and a null value, the identifier's type becomes that of it's first assignment.voidsetExpression(Expression expression) voidsetIdentifier(Identifier identifier) toString()Subclasses should return a String representing the parsed statement.Methods inherited from class gw.internal.gosu.parser.Statement
execute, getExcludedReturnTypeElements, getLeastSignificant, getLeastSignificantTerminalStatement, getReturnType, hasContent, isNoOp, setParentMethods 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, isCompileTimeConstant, isSuppressed, isSuppressed, isSynthetic, makeDoubleValue, makeFloatValue, makeInteger, makeLong, removeParseException, removeParseWarning, removeParseWarningRecursively, setGosuProgram, setLineNum, setLocation, setSynthetic, shouldClearParseInfo, visitMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods 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, visitMethods inherited from interface gw.lang.parser.IStatement
execute, getLeastSignificantTerminalStatement, hasContent
-
Field Details
-
_identifier
-
_expression
-
-
Constructor Details
-
AssignmentStatement
public AssignmentStatement()
-
-
Method Details
-
getIdentifier
- Specified by:
getIdentifierin interfaceIAssignmentStatement- Returns:
- The left-hand-side identifier of the expression.
-
setIdentifier
- Parameters:
identifier- The left-hand-side identifier of the expression.
-
getExpression
- Specified by:
getExpressionin interfaceIAssignmentStatement- Returns:
- The right-hand-side expression of the assignment.
-
setExpression
- Parameters:
expression- The right-hand-side expression of the assignment.
-
execute
Execute the expression. Evaluates the RHS and assigns the resulting value to the symbol referenced by the LHS identifier.- Specified by:
executein interfaceIStatement- Overrides:
executein classStatement
-
getLeastSignificantTerminalStatement_internal
- Specified by:
getLeastSignificantTerminalStatement_internalin classStatement
-
toString
Description copied from class:StatementSubclasses should return a String representing the parsed statement. -
resetIdentifierType
private void resetIdentifierType()If the identifier was initialized without a type specification and a null value, the identifier's type becomes that of it's first assignment. TODO cgross: I don't think this is necessary any more. Remove it.
-