blob: 0a1e023262f9decb67052e6fa81cc99eaa24710a [file] [log] [blame]
SYNOPSIS
#include <sys/driver_hooks.h>
set_driver_hook(H_CREATE_LWOBJECT, value)
<value> being:
void <name> (...)
void <closure> ()
void <closure> (lwobject obj_to_init, ...)
DESCRIPTION
Optional hooks to initialize a lightweight object after creation.
Hook setting can be any closure, or the name of the function
(static or public) to call in the object.
If the hook is an unbound lambda closure expecting arguments,
it is bound to the current object and called with the created
object as the first argument and any further arguments from the
new_lwobject() call. If the hook is an unbound lambda closure
without arguments, it is bound to the object to be initalized and
called. If the hook is any other type of closure, it is called
with the created object as the first argument and any further
arguments from the new_lwobject() call.
If the hook is defined as the name of an lfun in the lightweight
object, it is called in the new lwobject with any further arguments
from the new_lwobject() call.
HISTORY
LDMud 3.6.5 introduced lightweight objects.
SEE ALSO
hooks(C), create_lwobject_copy(H), create_lwobject_restore(H),
create_ob(H), create_super(H), create_clone(H)