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
public abstract class Statement extends ParsedElement implements IStatement
The root class for all Statements represented in a parse tree. As specified in the Gosu grammar.- See Also:
IGosuParser
-
-
Field Summary
Fields Modifier and Type Field Description static ObjectVOID_RETURN_VALUE-
Fields inherited from class gw.internal.gosu.parser.ParsedElement
_tokens, UNDEF_FILE, UNDEF_FUNCTION, UNDEF_MODULE
-
-
Constructor Summary
Constructors Constructor Description Statement()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description Objectexecute()Objectexecute(IExternalSymbolMap externalSymbols)protected ListgetExcludedReturnTypeElements()static ITerminalStatementgetLeastSignificant(ITerminalStatement... termStmts)ITerminalStatementgetLeastSignificantTerminalStatement(boolean[] bAbsolute)protected abstract ITerminalStatementgetLeastSignificantTerminalStatement_internal(boolean[] bAbsolute)ITypegetReturnType()booleanhasContent()booleanisNoOp()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, 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 Detail
-
VOID_RETURN_VALUE
public static final Object VOID_RETURN_VALUE
-
-
Method Detail
-
execute
public Object execute()
- Specified by:
executein interfaceIStatement
-
execute
public Object execute(IExternalSymbolMap externalSymbols)
- Specified by:
executein interfaceIStatement
-
toString
public abstract String toString()
Subclasses should return a String representing the parsed statement.
-
isNoOp
public boolean isNoOp()
-
getReturnType
public IType getReturnType()
- Specified by:
getReturnTypein interfaceIParsedElement
-
getExcludedReturnTypeElements
protected List getExcludedReturnTypeElements()
-
hasContent
public boolean hasContent()
- Specified by:
hasContentin interfaceIStatement
-
setParent
public void setParent(IParsedElement rootElement)
- Specified by:
setParentin interfaceIParsedElement- Overrides:
setParentin classParsedElement
-
getLeastSignificantTerminalStatement
public final ITerminalStatement getLeastSignificantTerminalStatement(boolean[] bAbsolute)
- Specified by:
getLeastSignificantTerminalStatementin interfaceIStatement
-
getLeastSignificantTerminalStatement_internal
protected abstract ITerminalStatement getLeastSignificantTerminalStatement_internal(boolean[] bAbsolute)
-
getLeastSignificant
public static ITerminalStatement getLeastSignificant(ITerminalStatement... termStmts)
-
-