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 which may be a regular or lightweight object or the name of an object. If is a clone or a lightweight object, 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 returns the original load_name of the object created by the virtual compiler. 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() 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)