Uses of Interface
org.qdl_lang.statements.ExpressionInterface
-
Packages that use ExpressionInterface Package Description org.qdl_lang.evaluate Evaluators evaluate the built-in functions for QDL as well as perform the usual algebraic operations.org.qdl_lang.expressions Expressions are objects that take zero or more arguments and return a result.org.qdl_lang.functions Function handling and processing.org.qdl_lang.parsing Classes that support parsing and the parser itself.org.qdl_lang.statements The two basic syntactic units of QDL are expressions (which return results) and statements which are the other control structures, such as conditionals, loops, etc.org.qdl_lang.variables Variables in QDL and classes that support them. -
-
Uses of ExpressionInterface in org.qdl_lang.evaluate
Methods in org.qdl_lang.evaluate that return types with arguments of type ExpressionInterface Modifier and Type Method Description protected ArrayList<ExpressionInterface>
AbstractEvaluator. toConstants(ArrayList<Object> objects)
Takes a list of Java objects and converts them to QDL constants to be used as arguments to functions.Methods in org.qdl_lang.evaluate with parameters of type ExpressionInterface Modifier and Type Method Description protected Object
ListEvaluator. checkCopyNode(ExpressionInterface expr, State state, boolean doInsert)
protected boolean
SystemEvaluator. checkDefined(ExpressionInterface exp, State state)
static void
AbstractEvaluator. checkNull(Object arg, ExpressionInterface swri)
If a function gets an argument which should not be a Java null, then this will try to track down the variable reference.static void
AbstractEvaluator. checkNull(Object arg1, ExpressionInterface swri, State state)
Check for Java nulls and logs any errorsprotected FunctionReferenceNodeInterface
AbstractEvaluator. getFunctionReferenceNode(State state, ExpressionInterface arg0)
FunctionReferenceNodeInterface
AbstractEvaluator. getFunctionReferenceNode(State state, ExpressionInterface arg0, boolean pushNewState)
This will take a node that is either a function reference,FunctionDefinitionStatement
or perhaps aLambdaDefinitionNode
and determine the rightFunctionReferenceNode
, updating the state (including adding local state as needed for the duration of the evaluation).protected QDLStem
AbstractEvaluator. getOrCreateStem(ExpressionInterface node, State state, String informativeMessage)
This will take anExpressionImpl
that should contain a stem, check the reference and it the stem does not exist, create and put it in the symbol table.boolean
AbstractEvaluator. isFunctionRef(ExpressionInterface arg0)
Checks if the argument is some form of a function reference. -
Uses of ExpressionInterface in org.qdl_lang.expressions
Subinterfaces of ExpressionInterface in org.qdl_lang.expressions Modifier and Type Interface Description interface
ExpressionNode
This class mostly manages the structure of expressions (so arguments are the children) and evaluating them is delegating the result to theOpEvaluator
class.Classes in org.qdl_lang.expressions that implement ExpressionInterface Modifier and Type Class Description class
AllIndices
Marker class to show all the indices are to be used.class
AltIfExpressionNode
Created by Jeff Gaynor
on 5/27/21 at 5:13 PMclass
ANode2
Very much improved way to handle assignments.class
ClosedSliceNode
Created by Jeff Gaynor
on 6/1/21 at 9:25 AMclass
ComparisonDyad
Dyad that compares the arguments, such as with comparisons, regex matching and types of equality.class
ConstantNode
Created by Jeff Gaynor
on 1/13/20 at 4:08 PMclass
Dyad
Created by Jeff Gaynor
on 1/13/20 at 3:47 PMclass
ESN2
After a parser change to treat the dot as an operator, this was introduced.class
ExpressionImpl
Created by Jeff Gaynor
on 1/13/20 at 3:15 PMclass
ExpressionStemNode
Models a stem.class
ModuleExpression
Models a single module expression of the form A#expression where A is the alias giving the instance of the current module and expression is a general expression to be evaluated against the state of the module.class
Monad
A post or prefix operator, such a logical not or ++.class
Nilad
This would be an operator that takes no arguments.class
OpenSliceNode
Created by Jeff Gaynor
on 6/1/21 at 8:38 AMclass
ParenthesizedExpression
Created by Jeff Gaynor
on 6/13/21 at 3:44 PMclass
Polyad
For multiple arguments.class
SelectExpressionNode
An expression for switches.class
StemExtractionNode
This will allow for creating a subset (copy of portion) of a stem.class
VariableNode
Created by Jeff Gaynor
on 1/13/20 at 4:28 PMFields in org.qdl_lang.expressions declared as ExpressionInterface Modifier and Type Field Description ExpressionInterface
IndexArg. swri
Fields in org.qdl_lang.expressions with type parameters of type ExpressionInterface Modifier and Type Field Description protected ArrayList<ExpressionInterface>
ExpressionImpl. arguments
Methods in org.qdl_lang.expressions that return types with arguments of type ExpressionInterface Modifier and Type Method Description ArrayList<ExpressionInterface>
AltIfExpressionNode. getArguments()
ArrayList<ExpressionInterface>
ExpressionImpl. getArguments()
ArrayList<ExpressionInterface>
ExpressionNode. getArguments()
ArrayList<ExpressionInterface>
ExpressionStemNode. getArguments()
ArrayList<ExpressionInterface>
ParenthesizedExpression. getArguments()
ArrayList<ExpressionInterface>
SelectExpressionNode. getArguments()
Methods in org.qdl_lang.expressions with parameters of type ExpressionInterface Modifier and Type Method Description void
Polyad. addArgument(ExpressionInterface expr)
protected Object
ExpressionStemNode. doLeftSVCase(ExpressionInterface leftArg, List<ExpressionInterface> indices, State state)
Case that the left hand argument is a stem variable.protected Object
ExpressionStemNode. doLeftSVCase(ExpressionInterface leftArg, ExpressionInterface rightArg, State state)
void
Monad. setArgument(ExpressionInterface node)
void
SelectExpressionNode. setCASE(ExpressionInterface x)
void
SelectExpressionNode. setDEFAULT(ExpressionInterface x)
void
AltIfExpressionNode. setELSE(ExpressionInterface x)
void
ModuleExpression. setExpression(ExpressionInterface expressionInterface)
void
ParenthesizedExpression. setExpression(ExpressionInterface expression)
void
AltIfExpressionNode. setIF(ExpressionInterface x)
void
ANode2. setLeftArg(ExpressionInterface leftArg)
void
ESN2. setLeftArg(ExpressionInterface swri)
void
ExpressionStemNode. setLeftArg(ExpressionInterface swri)
void
StemExtractionNode. setLeftArg(ExpressionInterface swri)
void
Dyad. setLeftArgument(ExpressionInterface node)
void
ANode2. setRightArg(ExpressionInterface rightArg)
void
ESN2. setRightArg(ExpressionInterface swri)
void
ExpressionStemNode. setRightArg(ExpressionInterface swri)
void
StemExtractionNode. setRightArg(ExpressionInterface swri)
void
Dyad. setRightArgument(ExpressionInterface node)
void
SelectExpressionNode. setSWITCH(ExpressionInterface x)
void
AltIfExpressionNode. setTHEN(ExpressionInterface x)
Method parameters in org.qdl_lang.expressions with type arguments of type ExpressionInterface Modifier and Type Method Description protected Object
ExpressionStemNode. doLeftSVCase(ExpressionInterface leftArg, List<ExpressionInterface> indices, State state)
Case that the left hand argument is a stem variable.void
ExpressionImpl. setArguments(ArrayList<ExpressionInterface> arguments)
void
ExpressionNode. setArguments(ArrayList<ExpressionInterface> arguments)
void
ExpressionStemNode. setArguments(ArrayList<ExpressionInterface> arguments)
void
ParenthesizedExpression. setArguments(ArrayList<ExpressionInterface> arguments)
Constructors in org.qdl_lang.expressions with parameters of type ExpressionInterface Constructor Description IndexArg(ExpressionInterface swri, boolean strictOrder)
Constructor parameters in org.qdl_lang.expressions with type arguments of type ExpressionInterface Constructor Description ArgList(Collection<? extends ExpressionInterface> c)
-
Uses of ExpressionInterface in org.qdl_lang.functions
Classes in org.qdl_lang.functions that implement ExpressionInterface Modifier and Type Class Description class
DyadicFunctionReferenceNode
Created by Jeff Gaynor
on 6/10/24 at 12:43 PMclass
FunctionReferenceNode
Just a pointer to the collection of functions for a given name.class
LambdaDefinitionNode
To treat defined lambda expressions they must beedu.uiuc.ncsa.qdl.expressions.ExpressionNode
s This wraps aFunctionDefinitionStatement
, which cannot be replaced.Methods in org.qdl_lang.functions that return ExpressionInterface Modifier and Type Method Description ExpressionInterface
DyadicFunctionReferenceNode. makeCopy()
ExpressionInterface
FunctionReferenceNode. makeCopy()
ExpressionInterface
LambdaDefinitionNode. makeCopy()
-
Uses of ExpressionInterface in org.qdl_lang.parsing
Classes in org.qdl_lang.parsing that implement ExpressionInterface Modifier and Type Class Description class
ParseExpressionBlockNode
Created by Jeff Gaynor
on 6/1/21 at 6:43 AMclass
ParseStatementBlock
Top level for various block statements in the parser.Methods in org.qdl_lang.parsing that return ExpressionInterface Modifier and Type Method Description ExpressionInterface
ParseExpressionBlockNode. makeCopy()
ExpressionInterface
ParseStatementBlock. makeCopy()
-
Uses of ExpressionInterface in org.qdl_lang.statements
Methods in org.qdl_lang.statements that return ExpressionInterface Modifier and Type Method Description ExpressionInterface
AssertStatement. getConditional()
ExpressionInterface
AssertStatement. getMesssge()
ExpressionInterface
ExpressionInterface. makeCopy()
Methods in org.qdl_lang.statements with parameters of type ExpressionInterface Modifier and Type Method Description void
AssertStatement. setConditional(ExpressionInterface conditional)
void
AssertStatement. setMesssge(ExpressionInterface messsge)
-
Uses of ExpressionInterface in org.qdl_lang.variables
Classes in org.qdl_lang.variables that implement ExpressionInterface Modifier and Type Class Description class
QDLNull
This represents when the user explicitly sets a variable to null.class
QDLSetNode
Created by Jeff Gaynor
on 4/6/22 at 4:06 PMclass
StemEntryNode
Models an entry for a stem variable (that is not a list element).class
StemListNode
Created by Jeff Gaynor
on 9/28/20 at 1:28 PMclass
StemVariableNode
This is used in parsing.Methods in org.qdl_lang.variables that return ExpressionInterface Modifier and Type Method Description ExpressionInterface
StemEntryNode. getKey()
ExpressionInterface
QDLSetNode. makeCopy()
ExpressionInterface
StemEntryNode. makeCopy()
ExpressionInterface
StemListNode. makeCopy()
ExpressionInterface
StemVariableNode. makeCopy()
Methods in org.qdl_lang.variables that return types with arguments of type ExpressionInterface Modifier and Type Method Description ArrayList<ExpressionInterface>
QDLSetNode. getStatements()
ArrayList<ExpressionInterface>
StemListNode. getStatements()
Methods in org.qdl_lang.variables with parameters of type ExpressionInterface Modifier and Type Method Description void
StemEntryNode. setKey(ExpressionInterface key)
void
StemEntryNode. setValue(ExpressionInterface value)
Method parameters in org.qdl_lang.variables with type arguments of type ExpressionInterface Modifier and Type Method Description void
QDLSetNode. setStatements(ArrayList<ExpressionInterface> statements)
void
StemListNode. setStatements(ArrayList<ExpressionInterface> statements)
-