om_remove(3xom) — Subroutines
Name
om_remove - Removes and discards values of an attribute of a private object
Synopsis
#include <xom.h> OM_return_code om_remove(
OM_private_object subject,
OM_type type,
OM_value_position initial_value,
OM_value_position limiting_value);
Parameters
Input
subjectThe subject that remains accessible. The subject’s class is unaffected.
typeIdentifies the type of the attribute, some of whose values are removed. The type is not OM_CLASS.
initial_valueThe position within the attribute of the first value removed. If it is OM_ALL_VALUES, or exceeds the number of values present in the attribute, the parameter is taken to be equal to that number.
limiting_value
The position within the attribute one beyond that of the last value removed. If this parameter is not greater than the initial_value parameter, no values are removed. If it is OM_ALL_VALUES, or exceeds the number of values present in an attribute, the parameter is taken to be equal to that number.
Description
The om_remove() function removes and discards particular values of an attribute of a private object, the subject. If no values remain, the attribute itself is also removed. If the value is a subobject, the value is first removed and then om_delete() is applied to it, thus destroying the object.
Return Values
The following describes a partial list of messages (or errors) that might be returned. Refer to the OSF DCE Problem Determination Guide for complete descriptions of all error messages.
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.
Errors
The following describes a partial list of errors that might be returned. Refer to the OSF DCE Problem Determination Guide for complete descriptions of all error messages.
•OM_FUNCTION_DECLINED
•OM_FUNCTION_INTERRUPTED
•OM_MEMORY_INSUFFICIENT
•OM_NETWORK_ERROR
•OM_NO_SUCH_OBJECT
•OM_NO_SUCH_TYPE
•OM_NOT_PRIVATE
•OM_PERMANENT_ERROR
•OM_POINTER_INVALID
•OM_SYSTEM_ERROR
•OM_TEMPORARY_ERROR