Class IfStatement
- java.lang.Object
-
- gw.internal.gosu.parser.ParsedElement
-
- gw.internal.gosu.parser.Statement
-
- gw.internal.gosu.parser.statements.IfStatement
-
- All Implemented Interfaces:
IParsedElement,IStatement,IIfStatement
public final class IfStatement extends Statement implements IIfStatement
Represents an if-statement as specified in the Gosu grammar:if-statement if ( <expression> ) <statement> [ else <statement> ] [ unless ( <expression> ) ]
- See Also:
IGosuParser
-
-
Field Summary
Fields Modifier and Type Field Description protected Statement_elseStatementprotected Expression_expressionprotected Statement_statement-
Fields inherited from class gw.internal.gosu.parser.Statement
VOID_RETURN_VALUE
-
Fields inherited from class gw.internal.gosu.parser.ParsedElement
_tokens, UNDEF_FILE, UNDEF_FUNCTION, UNDEF_MODULE
-
-
Constructor Summary
Constructors Constructor Description IfStatement()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Objectexecute()StatementgetElseStatement()ExpressiongetExpression()protected ITerminalStatementgetLeastSignificantTerminalStatement_internal(boolean[] bAbsolute)StatementgetStatement()booleanhasElseStatement()voidsetElseStatement(Statement elseStatement)voidsetExpression(Expression expression)voidsetStatement(Statement statement)StringtoString()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, setParent
-
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, getReturnType, getTokens, hasImmediateParseIssue, hasImmediateParseWarnings, hasParseException, hasParseExceptions, hasParseIssue, hasParseIssues, hasParseWarning, hasParseWarnings, isCompileTimeConstant, isSuppressed, isSynthetic, setLocation, setParent, visit
-
Methods inherited from interface gw.lang.parser.IStatement
execute, getLeastSignificantTerminalStatement, hasContent
-
-
-
-
Field Detail
-
_expression
protected Expression _expression
-
_statement
protected Statement _statement
-
_elseStatement
protected Statement _elseStatement
-
-
Method Detail
-
getExpression
public Expression getExpression()
- Specified by:
getExpressionin interfaceIIfStatement- Returns:
- The conditional expression.
-
setExpression
public void setExpression(Expression expression)
- Parameters:
expression- The conditional expression.
-
getStatement
public Statement getStatement()
- Specified by:
getStatementin interfaceIIfStatement- Returns:
- The statement to execute if the conditional expression evaluates to true.
-
setStatement
public void setStatement(Statement statement)
- Parameters:
statement- The statement to execute if the conditional expression evaluates to true.
-
getElseStatement
public Statement getElseStatement()
- Specified by:
getElseStatementin interfaceIIfStatement- Returns:
- The else statement to execute if the conditional expression evaluates to false.
-
hasElseStatement
public boolean hasElseStatement()
- Specified by:
hasElseStatementin interfaceIIfStatement- Returns:
- true if this if statement has an else statement.
-
setElseStatement
public void setElseStatement(Statement elseStatement)
- Parameters:
elseStatement- The else statement to execute if the conditional expression evaluates to false.
-
execute
public Object execute()
- Specified by:
executein interfaceIStatement- Overrides:
executein classStatement
-
getLeastSignificantTerminalStatement_internal
protected ITerminalStatement getLeastSignificantTerminalStatement_internal(boolean[] bAbsolute)
- Specified by:
getLeastSignificantTerminalStatement_internalin classStatement
-
-