blob: 204a1f94ea653acdb1175eb5c5d7f04f1e8acc44 [file] [log] [blame]
SYNOPSIS
#include <sys/driver_hooks.h>
set_driver_hook(H_CREATE_OB, value)
<value> being:
void <name> ( void )
int <closure> ( void )
int <closure> (object obj_to_init)
DESCRIPTION
Optional hooks to initialize an explicitly loaded
object/blueprint after creation. Hook setting can be unbound
lambda closures or the name of the function (static or public) to
call in the object.
If the hook is a closure expecting an argument, it is bound
to the current object and called with the created object as
argument. If the hook is a closure without arguments, it is bound to
the object to be initalized and called.
If the result of the closure call is a non-zero number, it is used
as the interval to wait before the first reset(), else the default
interval computed from TIME_TO_RESET is used.
If the hook is defined as the name of an lfun in the object,
it is called in the object with no argument and any result
is ignored.
HISTORY
LDMud 3.2.10 allowed static functions to be given by name.
LDMud 3.6.5 removed the argument given for the lfun call.
SEE ALSO
hooks(C), create_super(H), create_clone(H), create_lwobject(H)