| Did you know ... | Search Documentation: |
| Send methods |
Bugs: Its implementation must be in the C-language, which makes it impossible for the application programmer to create new code classes.
service, execution happens in service mode,
hiding it from the XPCE and Prolog debuggers. This mechanism is used by
the Visual Hierarchy and Inspector tools to hide change-tracking from
the debugger.procedure type code
object (returning success or failure). The method at this level invokes code<-execute
if the code object is an
instance of a subclass of class function
and returns success if the function executes successfully. This makes
functions available as procedures too.
->execute
on itself. Example:
new(@m, message(@pce, write_ln, @arg1, @arg2)), send(@m, forward, hello, world).
will print
hello world
code->forward
pushes a variable-binding frame, thus limiting the scope of
local assignments to var
objects (see class assign
and var->assign.
->forward_vector <-forward->execute’s
the
code object. The scope
of the assignments is limited to the execution of the code
object. Suppose @client is defined as a global var
object reflecting a notion of current client. The following
example executes the code
object while binding @client to the value of the Prolog
variable Client:
send(Code, forward_vars, assign(@client, Client)).
This interface should be considered experimental and equivalent to
the following (recall that code->forward
limits the scope of local assignments to var
objects):
send(and(assign(@client, Client), Code), forward)
code ->forward_vector: any ..., vector, [int]
Bind @arg1
... from the concatenation of the leading arguments and the vector with
the first [int] elements skipped and then invokes code->execute.
See object->send_vector
->forward ->send_vector