Class AnweisungsBlock

  • All Implemented Interfaces:
    Anweisung, de.bsvrz.sys.funclib.bitctrl.interpreter.Ausdruck
    Direct Known Subclasses:
    BedingterAnweisungsBlock

    public class AnweisungsBlock
    extends AbstractAnweisung
    Ein Block von Anweisungen in einem Uda-Skript.
    EIn Anweisungsblock setzt sich aus einer Liste von Anweisungen zusammen, die nacheinander ausgeführt werden. Ein Skript besteht im wesentlichen selbst aus einem Anweisungsblock. Anweisungsblöcke können aber auch Bestandteile von anderen strukturierten Anweisungen sein.
    • Constructor Summary

      Constructors 
      Constructor Description
      AnweisungsBlock​(int zeile, java.lang.String skript)
      Konstruktor.
    • Method Summary

      Modifier and Type Method Description
      void addAnweisung​(de.bsvrz.sys.funclib.bitctrl.interpreter.Ausdruck anweisung)
      fügt dem Anweisungsblock eine Anweisung hinzu.
      Die Funktion wird vom Interpreter beim Übersetzen des vom Parser gelieferten AST in den Interpreterbaum aufgerufen.
      protected void addAnweisungen​(java.util.Collection<Anweisung> anweisungen)
      fügt der Anweisungsliste die übergebene Liste von Anweisungen hinzu.
      void beenden()
      beendet die Ausführung des Anweisungsblock nach dem Ende der Ausführung der aktuellen Anweisung.
      java.util.List<de.bsvrz.sys.funclib.bitctrl.interpreter.Ausdruck> getNachfolger()
      .
      java.lang.Object interpret​(de.bsvrz.sys.funclib.bitctrl.interpreter.Kontext kontext)
      Auswertung der Anweisungen des Anweisungsblockes.
      Die Funktion führt nacheinander alle Anweisungen die in dem Block enthalten sind aus.
      protected void setRunning​(boolean status)
      setzt den Status für die Ausführung der nachfolgenden Anweisungen.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • AnweisungsBlock

        public AnweisungsBlock​(int zeile,
                               java.lang.String skript)
        Konstruktor.
        Parameters:
        zeile - die Nummer der Zeile, in der der Anweisungsblock im Quelltext definiert ist
        skript - der Name des Skripts
    • Method Detail

      • addAnweisung

        public void addAnweisung​(de.bsvrz.sys.funclib.bitctrl.interpreter.Ausdruck anweisung)
        fügt dem Anweisungsblock eine Anweisung hinzu.
        Die Funktion wird vom Interpreter beim Übersetzen des vom Parser gelieferten AST in den Interpreterbaum aufgerufen.
        Parameters:
        anweisung - die einzufügende Anweisung
      • addAnweisungen

        protected void addAnweisungen​(java.util.Collection<Anweisung> anweisungen)
        fügt der Anweisungsliste die übergebene Liste von Anweisungen hinzu.
        Parameters:
        anweisungen - eine Liste von Anweisungen
      • beenden

        public void beenden()
        beendet die Ausführung des Anweisungsblock nach dem Ende der Ausführung der aktuellen Anweisung.
      • getNachfolger

        public java.util.List<de.bsvrz.sys.funclib.bitctrl.interpreter.Ausdruck> getNachfolger()
        .
        See Also:
        Ausdruck.getNachfolger()
      • interpret

        public java.lang.Object interpret​(de.bsvrz.sys.funclib.bitctrl.interpreter.Kontext kontext)
        Auswertung der Anweisungen des Anweisungsblockes.
        Die Funktion führt nacheinander alle Anweisungen die in dem Block enthalten sind aus. Das Ergebnis der Auswertung ist das Ergebnis der zuletzt ausgeführten Anweisungen. Das ist in der Regel eine Rückgabeanweisung.
        Tritt bei der Ausführung des Anweisungsblocks ein Fehler auf, der nicht innerhalb der betroffenen Anweisung abgefangen werden konnte, wird der aufgetretene Fehler als Ausnahme geworfen.
        Wird von den ausgeführten Anweisungen kein Ergebnis ermittelt, liefert die Funktion den Wert "undefiniert".
        See Also:
        Ausdruck.interpret(de.bsvrz.sys.funclib.bitctrl.interpreter.Kontext)
      • setRunning

        protected void setRunning​(boolean status)
        setzt den Status für die Ausführung der nachfolgenden Anweisungen.
        Parameters:
        status - der Status