SYNOPSIS
mixed funcall(closure cl, mixed arg ...)
DESCRIPTION
Evaluates the closure. The extra args will be passed as args
to the closure. If cl is not a closure, it will simply be
returned.
EXAMPLES
mixed eval(object ob, string func, mixed *args)
{
return funcall(#'call_other, ob, func, args);
}
This will result in calling
ob->func(args).
In combination with the '...' operator, the functionality
of apply() can be implemented:
mixed eval(object ob, string func, mixed *args)
{
return funcall(#'call_other, ob, func, args...);
}
will result in calling
ob->func(args[0],args[1],...,args[sizeof(args)-1]).
HISTORY
Introduced in 3.2@70.
Returning a non-closure as it is even when args are given was
introduced with 3.2.1.
SEE ALSO
apply(E), quote(E)
|