Lade...
 

Syntax - Action List

Syntax - Action List

Die Dynamik eines Windowobjekts (oder Moduls) wird durch Aktionslisten beschrieben:

ActionList ::=
[ ActionBody ]
ActionBody ::= ActionBody ActionElem | ActionElem
ActionElem ::= Action | Definition
Action ::= Event: Statements
Event ::= SYSTEM-EVENT
Statements ::= Statements SingleStmt | Statements, SingleStmt | SingleStmt
Definition ::= VariableDefinition | StatementDefinition |
StatementDeclaration | MessageDeclaration

Beispiel einer Aktionsliste

Event
InstantView® kennt prädefinierten Events, die vom System gesendet werden. Diese Messages müssen (bzw. dürfen) nicht mit Msg() deklariert werden.

Message
siehe Anweisung Message

SingleStmt
Anweisungen werden - bis auf wenige Ausnahmen - mit einem Identifikator bezeichnet, auf den eine Liste von einem oder zwei Parametern folgen kann:

    Statement(parameter1, parameter2)

Für den Fall, dass der erste Parameter entfällt, der zweite jedoch angegeben werden soll, gilt die Schreibweise:

    Statement(, parameter)

Bei den meisten Anweisungen kann statt eines konstanten Parameters der Bezeichner STACK angegeben werden. Der Parameter soll variabel sein und wird vom Stack-Top genommen (d.h. vor allen Werten, welche die Anweisung selbst vom Stack benötigt).
Wird auf dem Stack ein Vektor übergeben, werden alle die Anweisungen, für die das sinnvoll ist, iterativ über alle Elemente des Vektors ausgeführt.

Einige parameterlose Anweisungen werden durch Sonderzeichen dargestellt (z.B. +, -, * und / für die entsprechenden arithmetischen Operationen).

In Anlehnung an die C-Syntax werden Blöcke in geschweiften Klammern { und } geschrieben.
Außer bei den Anweisungen zur Strukturierung (if, ifnot, else, do, while, loop, break, quit, und cancel) beginnen die Anweisungsnamen immer mit einem Großbuchstaben. Wenn sich der Operand einer Anweisung auf ein Member eines Objekts bezieht, gilt die Syntax für eines Zugriffsausdrucks.

Eine große und wichtige Anweisungsgruppe bezieht sich auf ein Windowobjekt (Zielobjekt), das mit den Parametern (Parentwindow, Childobjekt) eindeutig definiert wird.

VariablenDefinition
siehe Anweisung Variable

StatementDefinition
siehe Anweisung Define

StatementDeklaration
siehe Anweisung Declare

MessageDeklaration
siehe Anweisung Message

Zwischen zwei InstantView®-Anweisungen kann ein Komma stehen:

    Stmt1,  Stmt2   // ist semantisch äquivalent zu
    Stmt1 Stmt2