Call
Call(zugriffsAusdruck, function), Call(function)
Parameter: ein Zugriffsausdruck, Name einer Funktion
Stack | Position | Beschreibung |
---|---|---|
Stack(In) | Top | ein Objekt |
Top-1 | Parameter n | |
Top-2 | Parameter n-1 | |
. . . | . . . | |
Top-n | Parameter 1 | |
Stack(Out) | Rückgabewert |
Ein Vektor wird als wie folgt als Parameter übergeben:
Stack | Position | Beschreibung |
---|---|---|
Stack(In) | Top | ein Objekt |
Top-1 | Parameter n | |
. . . | ||
] | ||
Element m | ||
Element m-1 | ||
. . . | ||
Element 1 | ||
[ | ||
. . . |
und ähnlich erscheint ein Vektor als Rückgabewert:
Stack | Position | Beschreibung |
---|---|---|
Stack(In) | Top | ein Objekt |
Top-1 | Parameter n | |
Top-2 | Parameter n-1 | |
. . . | . . . | |
Top-n | Parameter 1 | |
Stack(Out) | Top | ] |
Top-1 | Element 1 | |
Top-2 | Element 2 | |
. . . | ||
Top-n | Element n | |
Top-n-1 | [ |
Die im ersten oder zweiten Parameter angegebene Memberfunktion wird aufgerufen. Ist nur ein Parameter angegeben, so handelt es sich um eine Methode des auf dem Stack-Top liegenden Objekts. Mit dem Zugriffsausdruck, der im ersten Parameter angegeben werden kann, wird - ausgehend vom Objekt auf dem Stack-Top - ein weiteres Objekt erreicht, dessen Funktion aufgerufen wird. Aufrufparameter müssen vorher in der Reihenfolge der Parameterliste*) der Funktion auf den Stack gebracht werden. Gibt die Funktion einen Wert zurück, so liegt dieser hinterher auf dem Stack.
InstantView® kennt nur die im Method Dictionary eingetragenen Funktionen.
*) d.h. der erste Parameter wird zuerst auf den Stack gebracht, der letzte Parameter liegt auf dem Stack-Top. Damit sieht der Aufruf einer Funktion Foo(p1, p2, ..., pn) im InstantView®-Code wie folgt aus:
p1 p2 ... pn /* = Parameter */ object /* = the object */ Call(Foo)
Hinweis: Funktionen können auch innerhalb eines Zugriffsausdrucks aufgerufen werden.
Es ist jedoch nicht möglich, mittels Call eine MA-Funktion aufzurufen.