Package org.qdl_lang.variables
Class StemVariableNode
- java.lang.Object
- 
- org.qdl_lang.variables.StemVariableNode
 
- 
- All Implemented Interfaces:
- Serializable,- ExpressionInterface,- HasResultInterface,- Statement
 
 public class StemVariableNode extends Object implements ExpressionInterface This is used in parsing. It holds the result of a direct creation of a stem or listCreated by Jeff Gaynor 
 on 9/28/20 at 10:57 AM- See Also:
- Serialized Form
 
- 
- 
Field Summary- 
Fields inherited from interface org.qdl_lang.statements.ExpressionInterfaceALL_INDICES_NODE, ALT_IF_NODE, ASSIGNMENT_NODE, AXIS_RESTRICTION_NODE, CLOSED_SLICE_NODE, COMPARISON_DYAD_NODE, CONSTANT_NODE, DYAD_NODE, DYADIC_FUNCTION_REFERENCE_NODE, EXPRESSION_STEM_NODE, EXPRESSION_STEM2_NODE, FUNCTION_REFERENCE_NODE, LAMBDA_DEFINITION_NODE, LIST_NODE, MODULE_NODE, MONAD_NODE, NILAD_NODE, OPEN_SLICE_NODE, PARENTHESIZED_NODE, PARSE_EXPRESSION_BLOCK_NODE, PARSE_STATEMENT_BLOCK_NODE, POLYAD_NODE, QDL_NULL_NODE, SELECT_NODE, SET_NODE, STEM_ENTRY_NODE, STEM_EXTRACTION_NODE, STEM_NODE, UNKNOWN_NODE, VARIABLE_NODE
 
- 
 - 
Constructor SummaryConstructors Constructor Description StemVariableNode()
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description QDLValueevaluate(State state)StringgetAlias()intgetNodeType()QDL is not strongly typed but Java is, so each node type should have a unique integer and conditionals should use that, not the instanceof operator.QDLValuegetResult()intgetResultType()List<String>getSourceCode()ArrayList<StemEntryNode>getStatements()TokenPositiongetTokenPosition()StringgetVariableReference()booleanhasAlias()booleanhasTokenPosition()booleanisEvaluated()ExpressionInterfacemakeCopy()voidsetAlias(String alias)voidsetEvaluated(boolean evaluated)voidsetResult(Object object)Convenience method.This should turn the object into a properQDLValueas needed.voidsetResult(QDLValue object)voidsetSourceCode(List<String> sourceCode)voidsetStatements(ArrayList<StemEntryNode> statements)voidsetTokenPosition(TokenPosition tokenPosition)Set the location of this token from the parser.voidsetVariableReference(String variableReference)
 
- 
- 
- 
Method Detail- 
setTokenPositionpublic void setTokenPosition(TokenPosition tokenPosition) Description copied from interface:StatementSet the location of this token from the parser. This is used for error notifications later.- Specified by:
- setTokenPositionin interface- Statement
 
 - 
getTokenPositionpublic TokenPosition getTokenPosition() - Specified by:
- getTokenPositionin interface- Statement
 
 - 
hasTokenPositionpublic boolean hasTokenPosition() - Specified by:
- hasTokenPositionin interface- Statement
 
 - 
hasAliaspublic boolean hasAlias() - Specified by:
- hasAliasin interface- ExpressionInterface
 
 - 
getAliaspublic String getAlias() - Specified by:
- getAliasin interface- ExpressionInterface
 
 - 
setAliaspublic void setAlias(String alias) - Specified by:
- setAliasin interface- ExpressionInterface
 
 - 
getVariableReferencepublic String getVariableReference() 
 - 
setVariableReferencepublic void setVariableReference(String variableReference) 
 - 
getStatementspublic ArrayList<StemEntryNode> getStatements() 
 - 
setStatementspublic void setStatements(ArrayList<StemEntryNode> statements) 
 - 
getResultpublic QDLValue getResult() - Specified by:
- getResultin interface- HasResultInterface
 
 - 
setResultpublic void setResult(QDLValue object) - Specified by:
- setResultin interface- HasResultInterface
 
 - 
setResultpublic void setResult(Object object) Description copied from interface:HasResultInterfaceConvenience method.This should turn the object into a properQDLValueas needed.- Specified by:
- setResultin interface- HasResultInterface
 
 - 
getResultTypepublic int getResultType() - Specified by:
- getResultTypein interface- HasResultInterface
 
 - 
isEvaluatedpublic boolean isEvaluated() - Specified by:
- isEvaluatedin interface- HasResultInterface
 
 - 
setEvaluatedpublic void setEvaluated(boolean evaluated) - Specified by:
- setEvaluatedin interface- HasResultInterface
 
 - 
getSourceCodepublic List<String> getSourceCode() - Specified by:
- getSourceCodein interface- Statement
 
 - 
setSourceCodepublic void setSourceCode(List<String> sourceCode) - Specified by:
- setSourceCodein interface- Statement
 
 - 
makeCopypublic ExpressionInterface makeCopy() - Specified by:
- makeCopyin interface- ExpressionInterface
 
 - 
getNodeTypepublic int getNodeType() Description copied from interface:ExpressionInterfaceQDL is not strongly typed but Java is, so each node type should have a unique integer and conditionals should use that, not the instanceof operator. This allows for efficient programming with switch statements rather than a bevy of conditionals (potentially each of which gets done even if the correct case has been handled).- Specified by:
- getNodeTypein interface- ExpressionInterface
- Returns:
 
 
- 
 
-