Call
Call(access expression, function), Call(function)
Parameters: an access expression, name of a function
Stack | Position | Description |
---|---|---|
Stack(In) | Top | one object |
Top 1 | Parameter n | |
top 2 | Parameter n-1 | |
. . . | . . . | |
Top-n | Parameter 1 | |
Stack(Out) | Return value |
A vector is passed as follows as a parameter:
Stack | Position | Description |
---|---|---|
Stack(In) | Top | one object |
Top 1 | Parameter n | |
. . . | ||
] | ||
Element m | ||
Element m-1 | ||
. . . | ||
element 1 | ||
[ | ||
. . . |
and similarly a vector appears as a return value:
Stack | Position | Description |
---|---|---|
Stack(In) | Top | one object |
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 | [ |
The member function specified in the first or second parameter is called. If only one parameter is specified, it is a method of the object lying on the stack top. With the access expression, which can be specified in the first parameter, another object is reached - starting from the object on the stack top - whose function is called. Calling parameters must first be placed on the stack in the order of the parameter list*) of the function. If the function returns a value, this value will be on the stack afterwards.
InstantView® only knows the functions entered in the Method Dictionary.
*) i.e. the first parameter is brought on the stack first, the last parameter is on the stack top. Thus the call of a function Foo(p1, p2, ..., pn) in the InstantView® code looks like this
p1 p2 ... pn /* = Parameter */ object /* = the object */ Call(Foo)
Note: Functions can also be called within an access expression.
However, it is not possible to call up an MA function via Call.