SYNOPSIS
        int    save_object (string name)
        string save_object ()             (PRELIMINARY)

DESCRIPTION
        Encode the saveable variables of the current object into a string.

        In the first form, the string is written to the file <name>.
        A suffix ".c" will be stripped from the name, the suffix ".o"
        may be added by the master object during the check in
        valid_read(). Result is 0 if the save file could be created,
        and non-zero on a non-fatal error (file could not be written,
        or current object is destructed).

        In the second form the string is returned directly. If the
        object is destructed, the result is 0.

        A variable is considered 'saveable' if it is not declared
        as 'nosave' or 'static'.

        Only lfuns bound to the current object can be saved.

HISTORY
        Since LDMud 3.2.8, save_object() returns a success value.
        The direct encoding into a string was added in LDMud 3.2.8, but
        may be moved into a different efun in future.
        LDMud 3.2.9 added the saving of non-lambda closures, symbols,
        and quoted arrays, using a new savefile format version.

SEE ALSO
        restore_object(E), save_value(E)
