Class 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.String getLaufVariable()
      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.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.
      boolean isGueltig​(SkriptKontext kontext)
      ermittelt, ob die betreffende Bedingung gültig ist.
      void reset()
      setzt die intern gespeicherten Informationen einer Iterationsbedingung zurück.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • 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 Menge
        menge - der Ausdruck für die Beschreibung der Menge
    • Method Detail

      • getNachfolger

        public java.util.List<de.bsvrz.sys.funclib.bitctrl.interpreter.Ausdruck> getNachfolger()
        .
        Specified by:
        getNachfolger in interface de.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)
        In den folgenden Schritten wird jeweils nur der Iterator vorwärts bewegt.
        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:
        interpret in interface de.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)
      • 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:
        reset in interface IterationsBedingung
        See Also:
        IterationsBedingung.reset()