Zesstra | 715ec20 | 2025-07-09 22:18:31 +0200 | [diff] [blame^] | 1 | SYNOPSIS |
| 2 | unknown call_direct_strict(object|string ob, string func, ...) |
| 3 | unknown call_direct_strict(object*|string* ob, string func, ...) |
| 4 | |
| 5 | DESCRIPTION |
| 6 | Similar to call_other(). Call a member function <fun> in another |
| 7 | object <ob> if the function is defined and publicly accessible. |
| 8 | Any of the optional extra arguments are passed to the function. |
| 9 | Result is the value returned from the called function. |
| 10 | |
| 11 | This efun is a twin to call_strict(), with the difference |
| 12 | being that call_direct_strict() never calls a default method. |
| 13 | |
| 14 | Thus if ob::fun does not define a publicly accessible function, |
| 15 | the efun will raise a runtime error. |
| 16 | |
| 17 | ob can also be an object_name. If a string is passed for ob |
| 18 | and an object with that name can't be found or loaded, an |
| 19 | error occurs. |
| 20 | |
| 21 | Additionally the efun accepts an array of objects as <ob>: the |
| 22 | function is called with the same arguments in all the given objects. |
| 23 | The single results are collected in an array and yield the final |
| 24 | result. Array elements can be objects or the names of existing |
| 25 | objects. If a call to any of the objects failes, the efun will |
| 26 | raise a runtime error. |
| 27 | |
| 28 | HISTORY |
| 29 | Introduced in LDMud 3.6.2. |
| 30 | |
| 31 | SEE ALSO |
| 32 | call_other(E), call_resolved(E), call_direct(E), call_strict(E), |
| 33 | call_direct_resolved(E), create(A), pragma(LPC), extern_call(E), |
| 34 | function_exists(E), functions(LPC), map_objects(E) |