PROP_OBJECT(3)

NAME
prop_object, prop_object_retain, prop_object_release, prop_object_type, prop_object_equals, prop_object_iterator_next, prop_object_iterator_reset, prop_object_iterator_release - general property container object functions

LIBRARY
libprop

SYNOPSIS
#include <prop/proplib.h>
void
prop_object_retain(prop_object_t obj);
void
prop_object_release(prop_object_t obj);
prop_type_t
prop_object_type(prop_object_t obj);
bool
prop_object_equals(prop_object_t obj1, prop_object_t obj2);
prop_object_t
prop_object_iterator_next(prop_object_iterator_t iter);
void
prop_object_iterator_reset(prop_object_iterator_t iter);
void
prop_object_iterator_release(prop_object_iterator_t iter);

DESCRIPTION
The prop_object family of functions operate on all property container object types.

prop_object_retain(prop_object_t obj)
    Increment the reference count on an object.

prop_object_release(prop_object_t obj)
    Decrement the reference count on an object. If the last reference is dropped, the object is freed.

prop_object_type(prop_object_t obj)
    Determine the type of the object. Objects are one of the following types:

    PROP_TYPE_BOOL
        Boolean value (prop_bool_t)
    PROP_TYPE_NUMBER
        Number (prop_number_t)
    PROP_TYPE_STRING
        String (prop_string_t)
    PROP_TYPE_DATA
        Opaque data (prop_data_t)
    PROP_TYPE_ARRAY
        Array (prop_array_t)
    PROP_TYPE_DICTIONARY
        Dictionary (prop_dictionary_t)
    PROP_TYPE_DICT_KEYSYM
        Dictionary key symbol (prop_dictionary_keysym_t)

    If obj is NULL, then PROP_TYPE_UNKNOWN is returned.

prop_object_equals(prop_object_t obj1, prop_object_t obj2)
    Returns true if the two objects are of the same type and are equivalent.

prop_object_iterator_next(prop_object_iterator_t iter)
    Return the next object in the collection (array or dictionary) being iterated by the iterator iter. If there are no more objects in the collection, NULL is returned.

prop_object_iterator_reset(prop_object_iterator_t iter)
    Reset the iterator to the first object in the collection being iterated by the iterator iter.

prop_object_iterator_release(prop_object_iterator_t iter)
    Release the iterator iter.

SEE ALSO
prop_array(3), prop_bool(3), prop_data(3), prop_dictionary(3), prop_number(3), prop_string(3), proplib(3)

HISTORY
The proplib(3) property container object library first appeared in NetBSD 4.0.