Package de.bsvrz.pua.prot.functions
Interface ExpressionInterface
-
-
Method Summary
Modifier and Type Method Description ExpressionResult
evaluate(java.util.List<ExpressionTree> expressionList, java.util.Hashtable<RealElement,BaseDataSet> realElements, java.util.Hashtable<TempAttributeDescription,TempAttribut> tempElements, int pseudoObjectIndex)
Berechnet das Ergebnis der Funktiondefault java.lang.String
getFunctionName()
Liefert den Namen der Funktion.ExpressionResult.ResultType
getResultType(java.util.List<ExpressionTree> expressionList, antlr.collections.AST ast)
Ermittelt den Ergebnistyp.
-
-
-
Method Detail
-
evaluate
ExpressionResult evaluate(java.util.List<ExpressionTree> expressionList, java.util.Hashtable<RealElement,BaseDataSet> realElements, java.util.Hashtable<TempAttributeDescription,TempAttribut> tempElements, int pseudoObjectIndex)
Berechnet das Ergebnis der Funktion- Parameters:
expressionList
- Liste mit den EingabeparameternrealElements
- Mapping der realen Elemente zu den ihnen zugeordeten Werten.tempElements
- Mapping der temporären Attribute zu den ihnen zugeordneten Werten.pseudoObjectIndex
- PseudoObjectIndex- Returns:
- Ergebnis
-
getResultType
ExpressionResult.ResultType getResultType(java.util.List<ExpressionTree> expressionList, antlr.collections.AST ast) throws SemanticErrorException
Ermittelt den Ergebnistyp.- Parameters:
expressionList
- Liste mit den Eingabeparameternast
- Abstrakter Syntaxbaum des Parsers mit Informationen wie Zeilennummern für Fehlerausgaben- Returns:
- `BOOL`, falls genau ein Argument angegeben wurde; ansonsten `ResultType.ERROR`
- Throws:
SemanticErrorException
- Exception
-
getFunctionName
default java.lang.String getFunctionName()
Liefert den Namen der Funktion. Die Methode sollte von einer Implementierung überschrieben werden und den im Skript verwendeten Namen der Funktion zurückliefern. Die Default-Implementierung liefert den Namen der Klasse, die die Funktion implementiert.- Returns:
- Name der Funktion
-
-