NAME

om_copy - Creates a new private object that is an exact, but independent, copy of an existing private object

SYNOPSIS

#include <xom.h>

OM_return_code om_copy( OM_private_object original, OM_workspace workspace, OM_private_object *copy);

PARAMETERS

Input

original
The original that remains accessible.

workspace
The workspace in which the copy is to be created. The original's class must be in a package associated with this workspace.

Output

copy
The new copy of the private object. This result is present if and only if the return value for OM_return_code is OM_SUCCESS.

DESCRIPTION

The om_copy() function creates a new private object (the copy) that is an exact but independent copy of an existing private object (the original). The function is recursive in that copying the original also copies its subobjects.

RETURN VALUES

OM_return_code
Indicates whether the function succeeded and, if not, why not. If the function is successful, the value of OM_return_code is set to OM_SUCCESS; if the function fails, it has one of the error values listed in this reference page.

The exact constants for OM_return_code are defined in the xom.h header file (see the xom.h(4xom) reference page).

ERRORS

OM_FUNCTION_INTERRUPTED

OM_MEMORY_INSUFFICIENT

OM_NETWORK_ERROR

OM_NO_SUCH_CLASS

OM_NO_SUCH_OBJECT

OM_NO_SUCH_WORKSPACE

OM_NOT_PRIVATE

OM_PERMANENT_ERROR

OM_POINTER_INVALID

OM_SYSTEM_ERROR

OM_TEMPORARY_ERROR

OM_TOO_MANY_VALUES

© 1990-1996, Transarc Corporation