manpagez: man pages & more
man xpc_array_set_uuid(3)
Home | html | info | man

xpc_array_create(3)      BSD Library Functions Manual      xpc_array_create(3)


NAME

     xpc_array_create -- creation and management of XPC arrays


SYNOPSIS

     #include <xpc/xpc.h>

     xpc_object_t
     xpc_array_create(const xpc_object_t *objects, size_t count);

     void
     xpc_array_set_value(xpc_object_t array, size_t index,
         xpc_object_t value);

     void
     xpc_array_append_value(xpc_object_t array, xpc_object_t value);

     xpc_object_t
     xpc_array_get_value(xpc_object_t array, size_t index);

     size_t
     xpc_array_get_count(xpc_object_t array);

     bool
     xpc_array_apply(xpc_object_t array, xpc_array_applier_t applier);

     void
     xpc_array_set_bool(xpc_object_t array, size_t index, bool value);

     void
     xpc_array_set_int64(xpc_object_t array, size_t index, int64_t value);

     void
     xpc_array_set_uint64(xpc_object_t array, size_t index, uint64_t value);

     void
     xpc_array_set_double(xpc_object_t array, size_t index, double value);

     void
     xpc_array_set_date(xpc_object_t array, size_t index, int64_t value);

     void
     xpc_array_set_data(xpc_object_t array, size_t index, const void *bytes,
         size_t length);

     void
     xpc_array_set_string(xpc_object_t array, size_t index,
         const char *value);

     void
     xpc_array_set_uuid(xpc_object_t array, size_t index, const uuid_t value);

     void
     xpc_array_set_fd(xpc_object_t array, size_t index, int value);

     void
     xpc_array_set_connection(xpc_object_t array, size_t index,
         xpc_connection_t value);

     bool
     xpc_array_get_bool(xpc_object_t array, size_t index);

     int64_t
     xpc_array_get_int64(xpc_object_t array, size_t index);

     uint64_t
     xpc_array_get_uint64(xpc_object_t array, size_t index);

     double
     xpc_array_get_double(xpc_object_t array, size_t index);

     int64_t
     xpc_array_get_date(xpc_object_t array, size_t index);

     const void *
     xpc_array_get_data(xpc_object_t array, size_t index, size_t *length);

     const uint8_t *
     xpc_array_get_uuid(xpc_object_t array, size_t index);

     const char *
     xpc_array_get_string(xpc_object_t array, size_t index);

     int
     xpc_array_dup_fd(xpc_object_t array, size_t index);


ARRAYS

     XPC arrays are collections of XPC objects ordered by index. The index is
     zero-based. XPC arrays are contiguous, and values must exist at all
     indexes between zero and the greatest index of the array. A hole in the
     array can be simulated by using a null object as returned by
     xpc_null_create(3).


CREATION

     The xpc_array_create() function returns a newly created array. The caller
     may optionally provide objects, a C array of XPC object references, to
     initialize the array. The count is used to specify the size of the C
     array.  If objects is NULL, then count must be zero. If count specifies
     more elements than are actually present in values or if values is NULL
     and count is non-zero, the behavior is undefined.


GETTING AND SETTING VALUES

     The xpc_array_append_value() function may be used to append a value to
     the end of an array.  This operation increases the count of the values in
     the array by one.

     The value of a specific index in the array may be set using the
     xpc_array_set_value() function.  The value must be non-NULL, and the
     index must already exist (i.e. less than the count provided at creation
     or extended through previous append operations).

     The value at a specific index of an array may be retrieved using the
     xpc_array_get_value() function.  The result of getting a non-existing
     index (i.e. one that was not specified at creation or through a previous
     append operation) in undefined.


PRIMITIVE GET AND SET FUNCTIONS

     Various functions exist for retrieving primitive C and operating system
     types directly from an array without the need for an intermediate boxed
     object. See xpc_object(3) for more information.

     The special XPC_ARRAY_APPEND constant may be used to append a value to
     the end of the array instead of operating on a specific index.


ITERATION

     The xpc_array_apply() function may be used to iterate the index and value
     pairs of an array using an applier callback block. The callback block is
     invoked for each pair and must return a bool indicating whether the iter-
     ation should continue (true if it should continue, false if it should
     not).  The xpc_array_apply() function will return true if the applier
     block was called and returned true for all pairs, or false if it was not
     (i.e. the applier returned false during the iteration, which may have
     caused iteration to stop early).


SEE ALSO

     xpc_object(3), xpc_objects(3), xpc_dictionary_create(3)

Darwin                           1 July, 2011                           Darwin

Mac OS X 10.13.1 - Generated Wed Nov 8 19:14:08 CST 2017
© manpagez.com 2000-2024
Individual documents may contain additional copyright information.