Class MengenIterationsBedingung
- java.lang.Object
-
- de.bsvrz.ibv.uda.interpreter.anweisung.iteration.MengenIterationsBedingung
-
- All Implemented Interfaces:
IterationsBedingung,de.bsvrz.sys.funclib.bitctrl.interpreter.Ausdruck
public class MengenIterationsBedingung extends java.lang.Object implements IterationsBedingung
Iterationsbedingung für die Iteration über eine Menge.
Die Bedingung wird für Iterationen verwendet, in denen jedes Objekt aus einer übergebenen Menge bewertet wird.
-
-
Constructor Summary
Constructors Constructor Description MengenIterationsBedingung(Variable variable, de.bsvrz.sys.funclib.bitctrl.interpreter.Ausdruck menge)Konstruktor.
-
Method Summary
Modifier and Type Method Description java.lang.StringgetLaufVariable()liefert den Namen der Laufvariable, die in der Bedingung verwendet wird oder null, wenn keine solche existiert.java.util.List<de.bsvrz.sys.funclib.bitctrl.interpreter.Ausdruck>getNachfolger().de.bsvrz.sys.funclib.bitctrl.interpreter.logik.LogischerWertinterpret(de.bsvrz.sys.funclib.bitctrl.interpreter.Kontext kontext).
Die Funktion wertet im ersten Schritt den Ausdruck für die Beschreibung der Menge aus.booleanisGueltig(SkriptKontext kontext)ermittelt, ob die betreffende Bedingung gültig ist.voidreset()setzt die intern gespeicherten Informationen einer Iterationsbedingung zurück.
-
-
-
Constructor Detail
-
MengenIterationsBedingung
public MengenIterationsBedingung(Variable variable, de.bsvrz.sys.funclib.bitctrl.interpreter.Ausdruck menge)
Konstruktor.- Parameters:
variable- die Variable für den Zugriff auf die Elemente der Mengemenge- der Ausdruck für die Beschreibung der Menge
-
-
Method Detail
-
getLaufVariable
public java.lang.String getLaufVariable()
liefert den Namen der Laufvariable, die in der Bedingung verwendet wird oder null, wenn keine solche existiert..- Specified by:
getLaufVariablein interfaceIterationsBedingung- Returns:
- den Namen ode null
- See Also:
IterationsBedingung.getLaufVariable()
-
getNachfolger
public java.util.List<de.bsvrz.sys.funclib.bitctrl.interpreter.Ausdruck> getNachfolger()
.- Specified by:
getNachfolgerin interfacede.bsvrz.sys.funclib.bitctrl.interpreter.Ausdruck- See Also:
Ausdruck.getNachfolger()
-
interpret
public de.bsvrz.sys.funclib.bitctrl.interpreter.logik.LogischerWert interpret(de.bsvrz.sys.funclib.bitctrl.interpreter.Kontext kontext)
.
Die Funktion wertet im ersten Schritt den Ausdruck für die Beschreibung der Menge aus. Die Auswertung des Ausdrucks muss einen Container liefern für den ein Iterator gebildet wird. Gültige Containerobjekte sind:- Felder
- Listen
- Schlüsselmengen
- Mengenobjekte (ObjectSet aus der Abfrag der Datenverteilerkonfiguration)
Das Objekt auf das der Iterator zeigt wird jeweils an die definierte Variable übergeben. Die Funktion liefert solange den Wert "wahr" bis der Iterator nicht mehr auf ein gültiges Element plaziert ist.- Specified by:
interpretin interfacede.bsvrz.sys.funclib.bitctrl.interpreter.Ausdruck- Parameters:
kontext- der Kontext, in dem der Ausdruck ausgewertet wird- Returns:
- einen
LogischerWert, der den Wert der Bedingung darstellt - See Also:
Ausdruck.interpret(de.bsvrz.sys.funclib.bitctrl.interpreter.Kontext)
-
isGueltig
public boolean isGueltig(SkriptKontext kontext)
ermittelt, ob die betreffende Bedingung gültig ist..- Specified by:
isGueltigin interfaceIterationsBedingung- Parameters:
kontext- der Kontext für die üÜberprüfung der Gültigkeit- Returns:
- die Gültigkeit der Bedingung
- See Also:
IterationsBedingung.isGueltig(de.bsvrz.ibv.uda.interpreter.daten.SkriptKontext)
-
reset
public void reset()
setzt die intern gespeicherten Informationen einer Iterationsbedingung zurück..
Der Iterator für das Durchlaufen der Menge wird entfernt.- Specified by:
resetin interfaceIterationsBedingung- See Also:
IterationsBedingung.reset()
-
-