| SYNOPSIS |
| string load_name() |
| string load_name(object obj) |
| string load_name(lwobject obj) |
| string load_name(string obj) |
| |
| DESCRIPTION |
| Return the load name for the object <obj> which may be a regular |
| or lightweight object or the name of an object. |
| |
| If <obj> is a clone or a lightweight object, return the |
| load_name() of <obj>'s blueprint. |
| If <obj> is a blueprint, return the filename from which the |
| blueprint was compiled. |
| |
| If <obj> is given by name but not/no longer existing, the |
| function synthesizes the load name as it should be and returns |
| that. If the given name is illegal, the function returns 0. |
| |
| As a special case, if <ob> is 0, the function returns 0. |
| |
| For virtual objects this efun returns the original load_name of the |
| object created by the virtual compiler. |
| |
| If <obj> is omitted, the name for the current object is returned. |
| |
| In contrast to the object_name(), the load name can not be changed |
| by with rename_object() or a VC. However, if an object uses |
| replace_program() the load name no longer reflects the actual |
| behaviour of an object. |
| |
| The returned name starts with a '/', unless the driver is running |
| in COMPAT mode. |
| |
| EXAMPLES |
| object o; |
| o = clone_object("/std/thing"); |
| write(load_name(o)); --> writes "/std/thing" in !compat mode |
| and "std/thing" in compat mode |
| write(load_name("/std/thing")); --> same as above |
| write(load_name("/std/thing#4n5")); --> writes 0 |
| |
| HISTORY |
| Introduced in LDMud 3.2.6. |
| Strings are accepted as arguments since 3.2.8. |
| 0 is accepted as argument since 3.2.9. |
| |
| SEE ALSO |
| clone_object(E), clonep(E), object_name(E), load_object(E), |
| replace_program(E), program_name(E), present_clone(E) |