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.LeastSigTerminal
private static final Statement.LeastSigTerminal
static final Object
Fields 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 List
static ITerminalStatement
getLeastSignificant
(ITerminalStatement... termStmts) final ITerminalStatement
getLeastSignificantTerminalStatement
(boolean[] bAbsolute) Indicates whether or not control flow is terminal at this statement.protected abstract ITerminalStatement
getLeastSignificantTerminalStatement_internal
(boolean[] bAbsolute) boolean
boolean
isNoOp()
void
setParent
(IParsedElement rootElement) abstract String
toString()
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, 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.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:IStatement
Execute this statement.- Specified by:
execute
in interfaceIStatement
-
execute
Description copied from interface:IStatement
Execute this statement.- Specified by:
execute
in interfaceIStatement
-
toString
Subclasses should return a String representing the parsed statement. -
isNoOp
public boolean isNoOp() -
getReturnType
- Specified by:
getReturnType
in interfaceIParsedElement
-
getExcludedReturnTypeElements
-
hasContent
public boolean hasContent()- Specified by:
hasContent
in interfaceIStatement
-
setParent
- Specified by:
setParent
in interfaceIParsedElement
- Overrides:
setParent
in classParsedElement
-
getLeastSignificantTerminalStatement
Description copied from interface:IStatement
Indicates whether or not control flow is terminal at this statement.- Specified by:
getLeastSignificantTerminalStatement
in interfaceIStatement
-
getLeastSignificantTerminalStatement_internal
protected abstract ITerminalStatement getLeastSignificantTerminalStatement_internal(boolean[] bAbsolute) -
getLeastSignificant
-