|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectde.bsvrz.pua.prot.util.ExpressionTree
de.bsvrz.pua.prot.util.ExpressionLeaf
public class ExpressionLeaf
Repräsentiert ein Blatt in einem ExpressionTree
Ein Blatt enthält entweder eine
Zeichenkette, Bool, Attribute, Zahlen oder eine Funktion mit Ausdruck
Nested Class Summary | |
---|---|
static class |
ExpressionLeaf.LeafType
Typ, der in diesem Blatt gespeichert wird. |
Nested classes/interfaces inherited from class de.bsvrz.pua.prot.util.ExpressionTree |
---|
ExpressionTree.Operation |
Field Summary |
---|
Fields inherited from class de.bsvrz.pua.prot.util.ExpressionTree |
---|
left, operation, right |
Constructor Summary | |
---|---|
ExpressionLeaf(AttributeDescription a)
Legt ein Blatt an, das ein Attribut speichert |
|
ExpressionLeaf(java.lang.Boolean b)
Legt ein Blatt mit einem booleschen Wert an. |
|
ExpressionLeaf(java.lang.Double n)
Legt ein Blatt an, das eine Fließkommazahl speichert |
|
ExpressionLeaf(java.lang.Long n)
Legt ein Blatt an, das eine Ganzzahl speichert |
|
ExpressionLeaf(java.lang.String s)
Legt ein Blatt an, das einen String speichert |
|
ExpressionLeaf(java.lang.String functionName,
java.util.List<ExpressionTree> expressionList)
Legt ein Blatt an, das eine Funktion beinhaltet |
Method Summary | |
---|---|
boolean |
containsAttribute()
Überprüft ob der Ausdruck ein Attribut enthält. |
static ExpressionLeaf |
createDoubleLeaf(AST ast,
java.lang.String number)
Erzeugt ein Blatt das die Fließkommazahl 'number' speichert |
static ExpressionLeaf |
createLongLeaf(AST ast,
java.lang.String number)
Erzeugt ein Blatt das die ganzzahl 'number' speichert |
boolean |
equals(java.lang.Object other)
|
ExpressionResult |
evaluate(java.util.Hashtable<RealElement,BaseDataSet> realElements,
java.util.Hashtable<TempAttributeDescription,TempAttribut> tempElements)
Gibt den Ausdruck zurück, der in diesem Blatt abgelegt ist Ist es ein Attribut, wird der Wert aus der übergebenen Hashtable gesucht. |
protected void |
getAttributeOrder(java.util.ArrayList<AttributeDescription> list,
java.util.HashSet<AttributeDescription> visited)
Liefert alle Attribute auf die der Baum zugreift. |
java.util.List<AttributeDescription> |
getAttributes()
Liefert alle Attribute, auf die der Baum zugreift, zurück. |
java.lang.Boolean |
getBool()
|
java.util.HashSet<TempAttributeDescription> |
getDirectTempAttributes()
Liefert ein Set mit den temporären Attributen, die dieser Ausdruck direkt verwendet. |
java.lang.Double |
getDouble()
|
java.util.List<ExpressionTree> |
getExpressionList()
|
ExpressionInterface |
getExpressionObject()
|
RealAttributeDescription |
getFirstRealAttribute()
Liefert das erste Reale Attribut, das im Ausdruck verwendet wird. |
TempAttributeDescription |
getFirstTempAttribute()
Liefert das erste temporäre Attribut, das im Ausdruck verwendet wird. |
java.lang.Long |
getLong()
|
java.util.HashSet<RealAttributeDescription> |
getRealAttributes()
Liefert alle realen Attribute die im Ausdruck verwendet werden. |
java.lang.String |
getString()
|
ExpressionLeaf.LeafType |
getType()
|
java.lang.String |
toString()
|
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public ExpressionLeaf(java.lang.Boolean b)
b
- Wert des Blattespublic ExpressionLeaf(java.lang.String s)
s
- Stringpublic ExpressionLeaf(AttributeDescription a)
a
- Attributpublic ExpressionLeaf(java.lang.Double n)
n
- Doublepublic ExpressionLeaf(java.lang.Long n)
n
- Ganzzahlpublic ExpressionLeaf(java.lang.String functionName, java.util.List<ExpressionTree> expressionList) throws CriticalParserException
functionName
- Name der Klasse, die die Funktion repräsentiertexpressionList
- Operanden der Funktion (Jedes Listenelement entspricht einem Operanden)
CriticalParserException
- Zur Funktion passende KLasse existiert nicht.Method Detail |
---|
public java.util.List<AttributeDescription> getAttributes()
ExpressionTree
getAttributes
in class ExpressionTree
protected void getAttributeOrder(java.util.ArrayList<AttributeDescription> list, java.util.HashSet<AttributeDescription> visited)
ExpressionTree
getAttributeOrder
in class ExpressionTree
list
- liste der Elementevisited
- Elemente die bereits in der Liste eingetragen wurden.ExpressionTree.getAttributeOrder(ArrayList, HashSet)
public ExpressionResult evaluate(java.util.Hashtable<RealElement,BaseDataSet> realElements, java.util.Hashtable<TempAttributeDescription,TempAttribut> tempElements)
ExpressionResult.getType()
den Wert ExpressionResult.ResultType.NONE
. Falls der Typ des Verwendeten realen
Attributs nicht unterstützt wird (z.B. ReferenceAttributeType
) ist result.type = error;
evaluate
in class ExpressionTree
realElements
- Mapping der realen Elemente zu den ihnen zugeordeten Werten.tempElements
- Mapping der temporären Attribute zu den ihnen zugeordneten Werten.
public static ExpressionLeaf createLongLeaf(AST ast, java.lang.String number) throws SemanticErrorException
ast
- Knoten, der die Zahl enthält (wird nur für die Zeilenangabe in der Fehlermeldung benötigt)number
- Ganz- oder Fliesskommazahl
SemanticErrorException
- Falls 'number' eine ungültige Zahl istpublic static ExpressionLeaf createDoubleLeaf(AST ast, java.lang.String number) throws SemanticErrorException
ast
- Knoten, der die Zahl enthält (wird nur für die Zeilenangabe in der Fehlermeldung benötigt)number
- Ganz- oder Fliesskommazahl
SemanticErrorException
- Falls 'number' eine ungültige Zahl istpublic java.lang.String toString()
toString
in class ExpressionTree
Object.toString()
public RealAttributeDescription getFirstRealAttribute()
ExpressionTree
getFirstRealAttribute
in class ExpressionTree
ExpressionTree.getFirstRealAttribute()
public TempAttributeDescription getFirstTempAttribute()
ExpressionTree
getFirstTempAttribute
in class ExpressionTree
ExpressionTree.getFirstTempAttribute()
public java.util.HashSet<TempAttributeDescription> getDirectTempAttributes()
ExpressionTree
getDirectTempAttributes
in class ExpressionTree
ExpressionTree.getDirectTempAttributes()
public java.util.HashSet<RealAttributeDescription> getRealAttributes()
ExpressionTree
getRealAttributes
in class ExpressionTree
ExpressionTree.getRealAttributes()
public boolean equals(java.lang.Object other)
equals
in class ExpressionTree
Object.equals(java.lang.Object)
public boolean containsAttribute()
ExpressionTree
containsAttribute
in class ExpressionTree
true
falls der Ausdruck ein Attribut enthält.false
sonst.ExpressionTree.containsAttribute()
public ExpressionLeaf.LeafType getType()
public java.lang.Boolean getBool()
public java.lang.Double getDouble()
public java.lang.Long getLong()
public java.lang.String getString()
public java.util.List<ExpressionTree> getExpressionList()
getExpressionObject()
public ExpressionInterface getExpressionObject()
getExpressionList()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |