Package gw.internal.gosu.parser
Class Statement
java.lang.Object
gw.internal.gosu.parser.ParsedElement
gw.internal.gosu.parser.Statement
- All Implemented Interfaces:
IParsedElement,IStatement
- Direct Known Subclasses:
ArrayAssignmentStatement,AssertStatement,AssignmentStatement,BeanMethodCallStatement,BlockInvocationStatement,CatchClause,ClassFileStatement,ClasspathStatement,ClassStatement,EvalStatement,ExpressionStatement,FunctionStatement,IfStatement,InitializerAssignment,LoopStatement,MapAssignmentStatement,MemberAssignmentStatement,MethodCallStatement,NamespaceStatement,NewStatement,NoOpStatement,NotAStatement,PropertyStatement,StatementList,SwitchStatement,SyntheticMemberAccessStatement,TerminalStatement,TryCatchFinallyStatement,TypeLoaderStatement,UsesStatement,UsesStatementList,UsingStatement,VarStatement
The root class for all Statements represented in a parse tree. As specified
in the Gosu grammar.
- See Also:
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate Statement.LeastSigTerminalprivate static final Statement.LeastSigTerminalstatic final ObjectFields inherited from class gw.internal.gosu.parser.ParsedElement
_tokens, UNDEF_FILE, UNDEF_FUNCTION, UNDEF_MODULE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionexecute()Execute this statement.execute(IExternalSymbolMap externalSymbols) Execute this statement.protected Liststatic ITerminalStatementgetLeastSignificant(ITerminalStatement... termStmts) final ITerminalStatementgetLeastSignificantTerminalStatement(boolean[] bAbsolute) Indicates whether or not control flow is terminal at this statement.protected abstract ITerminalStatementgetLeastSignificantTerminalStatement_internal(boolean[] bAbsolute) booleanbooleanisNoOp()voidsetParent(IParsedElement rootElement) abstract StringtoString()Subclasses should return a String representing the parsed statement.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, 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, getTokens, hasImmediateParseIssue, hasImmediateParseWarnings, hasParseException, hasParseExceptions, hasParseIssue, hasParseIssues, hasParseWarning, hasParseWarnings, isCompileTimeConstant, isSuppressed, isSynthetic, setLocation, visit
-
Field Details
-
EMPTY_LST
-
VOID_RETURN_VALUE
-
_cachedLeastSigTerm
-
-
Constructor Details
-
Statement
public Statement()
-
-
Method Details
-
execute
Description copied from interface:IStatementExecute this statement.- Specified by:
executein interfaceIStatement
-
execute
Description copied from interface:IStatementExecute this statement.- Specified by:
executein interfaceIStatement
-
toString
Subclasses should return a String representing the parsed statement. -
isNoOp
public boolean isNoOp() -
getReturnType
- Specified by:
getReturnTypein interfaceIParsedElement
-
getExcludedReturnTypeElements
-
hasContent
public boolean hasContent()- Specified by:
hasContentin interfaceIStatement
-
setParent
- Specified by:
setParentin interfaceIParsedElement- Overrides:
setParentin classParsedElement
-
getLeastSignificantTerminalStatement
Description copied from interface:IStatementIndicates whether or not control flow is terminal at this statement.- Specified by:
getLeastSignificantTerminalStatementin interfaceIStatement
-
getLeastSignificantTerminalStatement_internal
protected abstract ITerminalStatement getLeastSignificantTerminalStatement_internal(boolean[] bAbsolute) -
getLeastSignificant
-