Package org.qdl_lang.statements
Interface Statement
-
- All Superinterfaces:
Serializable
- All Known Subinterfaces:
ExpressionInterface
,ExpressionNode
- All Known Implementing Classes:
AllIndices
,AltIfExpressionNode
,ANode2
,AssertStatement
,BlockStatement
,ClosedSliceNode
,ComparisonDyad
,ConditionalStatement
,ConstantNode
,Dyad
,DyadicFunctionReferenceNode
,ESN2
,ExpressionImpl
,ExpressionStemNode
,FunctionDefinitionStatement
,FunctionReferenceNode
,LambdaDefinitionNode
,LocalBlockStatement
,ModuleExpression
,ModuleStatement
,Monad
,Nilad
,OpenSliceNode
,ParenthesizedExpression
,ParseExpressionBlockNode
,ParseStatementBlock
,Polyad
,QDLNull
,QDLSetNode
,SelectExpressionNode
,StemEntryNode
,StemExtractionNode
,StemListNode
,StemVariableNode
,SwitchStatement
,TryCatch
,VariableNode
,WhileLoop
public interface Statement extends Serializable
Top-level interface for all statements and expressions. Note that in QDL a statement has no result and an expression does. However, due to historical reasons, everything in the implementation is a "statement". So in reality, statements (such as if[]then[]) implement this but expressions implementExpressionInterface
. This mostly has parser-related generic stuff in it. It, like the source code, token position in parsing etc.Created by Jeff Gaynor
on 1/14/20 at 9:11 AM
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Object
evaluate(State state)
List<String>
getSourceCode()
TokenPosition
getTokenPosition()
boolean
hasTokenPosition()
void
setSourceCode(List<String> sourceCode)
void
setTokenPosition(TokenPosition tokenPosition)
Set the location of this token from the parser.
-
-
-
Method Detail
-
setTokenPosition
void setTokenPosition(TokenPosition tokenPosition)
Set the location of this token from the parser. This is used for error notifications later.- Parameters:
tokenPosition
-
-
getTokenPosition
TokenPosition getTokenPosition()
-
hasTokenPosition
boolean hasTokenPosition()
-
-