SYNOPSIS string load_name() string load_name(object obj) string load_name(string obj) DESCRIPTION Return the load name for the object which may be given directly or by its name. If is a clone, return the load_name() of 's blueprint. If is a blueprint, return the filename from which the blueprint was compiled. If 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 is 0, the function returns 0. For virtual objects this efun of course returns the virtual filename. If 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(). 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. EXAMPLE 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)