[Main page] [Overview]     /driver /hook /move_object

SYNOPSIS
#include <sys/driver_hooks.h>

set_driver_hook(H_MOVE_OBJECT0, value)
set_driver_hook(H_MOVE_OBJECT1, value)

<value> being:

void <closure>(object item, object dest)

DESCRIPTION
Mandatory hooks to implement the efun void move_object().
Hook setting must be an unbound lambda closure.

Upon call, the hook has to perform the move itself (by using
set_environment()) and all depending actions (like the calls to
init() to add actions).

The difference lies in the binding of the set hook prior to
the call: the H_MOVE_OBJECT0 closure is bound to the current
object, the H_MOVE_OBJECT1 to 'item'.
If both hooks are set, H_MOVE_OBJECT0 is ignored.

HISTORY

SEE ALSO
move_object(E), set_environment(E), hooks(C)