Package de.bsvrz.pua.prot.functions
Class Exp
- java.lang.Object
-
- de.bsvrz.pua.prot.functions.Exp
-
- All Implemented Interfaces:
ExpressionInterface
public class Exp extends java.lang.Object implements ExpressionInterface
Exponentialfunktion (exp(x) = e^x) Verwendet die von Java zur Verfügung gestellte Math.exp() Methode. Da immer double Werten gerechnet wird, kann 'long' Genauigkeit nicht garantiert werden.
-
-
Constructor Summary
Constructors Constructor Description Exp()
-
Method Summary
Modifier and Type Method Description ExpressionResultevaluate(java.util.List<ExpressionTree> expressionList, java.util.Hashtable<RealElement,BaseDataSet> realElements, java.util.Hashtable<TempAttributeDescription,TempAttribut> tempElements, int pseudoObjectIndex)Berechnet das Ergebnis der Funktionjava.lang.StringgetFunctionName()Liefert den Namen der Funktion.ExpressionResult.ResultTypegetResultType(java.util.List<ExpressionTree> expressionList, antlr.collections.AST ast)Ermittelt den Ergebnistyp.
-
-
-
Method Detail
-
evaluate
public ExpressionResult evaluate(java.util.List<ExpressionTree> expressionList, java.util.Hashtable<RealElement,BaseDataSet> realElements, java.util.Hashtable<TempAttributeDescription,TempAttribut> tempElements, int pseudoObjectIndex)
Description copied from interface:ExpressionInterfaceBerechnet das Ergebnis der Funktion- Specified by:
evaluatein interfaceExpressionInterface- 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
public ExpressionResult.ResultType getResultType(java.util.List<ExpressionTree> expressionList, antlr.collections.AST ast) throws SemanticErrorException
Description copied from interface:ExpressionInterfaceErmittelt den Ergebnistyp.- Specified by:
getResultTypein interfaceExpressionInterface- 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
public java.lang.String getFunctionName()
Description copied from interface:ExpressionInterfaceLiefert 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.- Specified by:
getFunctionNamein interfaceExpressionInterface- Returns:
- Name der Funktion
-
-