CONCEPT
lfuns
DESCRIPTION
A lfun is a LPC function within an object which is public and can
be called by other objects. In OO terms, lfuns are "methods"
which you can send "messages" to.
Calling lfuns is done by using the efun call_other(), which
takes as arguments the object in which the lfun is to be called,
the name of the lfun to be called in the object, and additional
and optional arguments.
An example looks like this:
call_other(drink, "QueryShort");
This call may also be written as
drink->QueryShort();
This means call_other(object, "function", args...) can also be
written as object->function(args...). The second form is
preferred as it is easier to read.
call_other() will return 0, if the function does not exist
or is not accessible. As an alternative there is call_strict()
which will result in an error in such a case. The call is
similar:
call_strict(drink, "QueryShort")
And can be written as
drink.QueryShort();
Some lfuns have a special meaning for the LPC driver, because
they are applied by the interpreter instead from an LPC object.
To distinguish those, they are called ``applied lfuns''.
SEE ALSO
efuns(LPC), efun(E), applied(A), master(M), call_other(E)
|