| PROP_ARRAY(3) | Library Functions Manual | PROP_ARRAY(3) |
prop_array,
prop_array_create,
prop_array_create_with_capacity,
prop_array_copy,
prop_array_copy_mutable,
prop_array_capacity,
prop_array_count,
prop_array_ensure_capacity,
prop_array_iterator,
prop_array_make_immutable,
prop_array_mutable,
prop_array_get,
prop_array_set,
prop_array_add,
prop_array_remove,
prop_array_externalize,
prop_array_internalize,
prop_array_externalize_to_file,
prop_array_internalize_from_file,
prop_array_equals — array
property collection object
Property Container Object Library (libprop, -lprop)
#include
<prop/proplib.h>
prop_array_t
prop_array_create(void);
prop_array_t
prop_array_create_with_capacity(unsigned
int capacity);
prop_array_t
prop_array_copy(prop_array_t
array);
prop_array_t
prop_array_copy_mutable(prop_array_t
array);
unsigned int
prop_array_capacity(prop_array_t
array);
unsigned int
prop_array_count(prop_array_t
array);
bool
prop_array_ensure_capacity(prop_array_t
array, unsigned int
capacity);
prop_object_iterator_t
prop_array_iterator(prop_array_t
array);
void
prop_array_make_immutable(prop_array_t
array);
bool
prop_array_mutable(prop_array_t
array);
prop_object_t
prop_array_get(prop_array_t
array, unsigned int
index);
bool
prop_array_set(prop_array_t
array, unsigned int
index, prop_object_t
obj);
bool
prop_array_add(prop_array_t
array, prop_object_t
obj);
void
prop_array_remove(prop_array_t
array, unsigned int
index);
char *
prop_array_externalize(prop_array_t
array);
prop_array_t
prop_array_internalize(const
char *data);
bool
prop_array_externalize_to_file(prop_array_t
array, const char
*path);
prop_array_t
prop_array_internalize_from_file(const
char *path);
bool
prop_array_equals(prop_array_t
array1, prop_array_t
array2);
The prop_array family of functions operate
on the array property collection object type. An array is an ordered set; an
iterated array will return objects in the same order with which they were
stored.
prop_array_create(void)NULL on failure.prop_array_create_with_capacity(unsigned
int capacity)NULL on failure.prop_array_copy(prop_array_t
array)NULL on
failure.prop_array_copy_mutable(prop_array_t
array)prop_array_copy(), except the resulting array
is always mutable.prop_array_capacity(prop_array_t
array)prop_array_count(prop_array_t
array)prop_array_ensure_capacity(prop_array_t
array, unsigned int capacity)true if the capacity of the array
is greater or equal to capacity or if expansion of
the array's capacity was successful and false
otherwise.prop_array_iterator(prop_array_t
array)NULL on failure.prop_array_make_immutable(prop_array_t
array)prop_array_mutable(prop_array_t
array)true if the array is mutable.prop_array_get(prop_array_t
array, unsigned int index)NULL on failure.prop_array_set(prop_array_t
array, unsigned int index,
prop_object_t obj)true if storing the object was successful and
false otherwise.prop_array_add(prop_array_t
array, prop_object_t obj)true
if storing the object was successful and false
otherwise.
During expansion, array's capacity is augmented by the
EXPAND_STEP constant, as defined in
libprop/prop_array.c file, e.g.
#define EXPAND_STEP 16prop_array_remove(prop_array_t
array, unsigned int index)prop_array_externalize(prop_array_t
array)prop_object_externalize()
provided for backwards compatibility.prop_array_internalize(const
char *data)prop_object_internalize()
provided for backwards compatbility. In order to preserve previous
behavior, prop_array_internalize() will fail if
the resulting object is not an array.prop_array_externalize_to_file(prop_array_t
array, const char *path)prop_object_externalize_to_file()
provided for backwards compatibility.prop_array_internalize_from_file(const
char *path)prop_object_internalize_from_file()
provided for backwards compatibility.prop_array_equals(prop_array_t
array1, prop_array_t array2)true if the two arrays are equivalent. If
at least one of the supplied objects isn't an array,
false is returned. Note: Objects contained in the
array are compared by value, not by reference.prop_array_util(3), prop_bool(3), prop_data(3), prop_dictionary(3), prop_number(3), prop_object(3), prop_string(3), proplib(3)
The proplib(3) property container object library first appeared in NetBSD 4.0.
| April 20, 2025 | NetBSD 11.0 |