NAME
prop_dictionary_util,
prop_dictionary_get_dict,
prop_dictionary_get_bool,
prop_dictionary_set_bool,
prop_dictionary_get_int8,
prop_dictionary_get_uint8,
prop_dictionary_set_int8,
prop_dictionary_set_uint8,
prop_dictionary_get_int16,
prop_dictionary_get_uint16,
prop_dictionary_set_int16,
prop_dictionary_set_uint16,
prop_dictionary_get_int32,
prop_dictionary_get_uint32,
prop_dictionary_set_int32,
prop_dictionary_set_uint32,
prop_dictionary_get_int64,
prop_dictionary_get_uint64,
prop_dictionary_set_int64,
prop_dictionary_set_uint64,
prop_dictionary_get_cstring,
prop_dictionary_set_cstring,
prop_dictionary_get_cstring_nocopy,
prop_dictionary_set_cstring_nocopy,
prop_dictionary_set_and_rel —
dictionary property collection object utility
functions
LIBRARY
Property Container Object Library (libprop, -lprop)
SYNOPSIS
#include <prop/proplib.h>
bool
prop_dictionary_get_dict(
prop_dictionary_t
dict,
const char
*key,
prop_dictionary_t
*dictp);
bool
prop_dictionary_get_bool(
prop_dictionary_t
dict,
const char
*key,
bool *valp);
bool
prop_dictionary_set_bool(
prop_dictionary_t
dict,
const char
*key,
bool val);
bool
prop_dictionary_get_int8(
prop_dictionary_t
dict,
const char
*key,
int8_t *valp);
bool
prop_dictionary_get_uint8(
prop_dictionary_t
dict,
const char
*key,
uint8_t *valp);
bool
prop_dictionary_set_int8(
prop_dictionary_t
dict,
const char
*key,
int8_t val);
bool
prop_dictionary_set_uint8(
prop_dictionary_t
dict,
const char
*key,
uint8_t val);
bool
prop_dictionary_get_int16(
prop_dictionary_t
dict,
const char
*key,
int16_t *valp);
bool
prop_dictionary_get_uint16(
prop_dictionary_t
dict,
const char
*key,
uint16_t
*valp);
bool
prop_dictionary_set_int16(
prop_dictionary_t
dict,
const char
*key,
int16_t val);
bool
prop_dictionary_set_uint16(
prop_dictionary_t
dict,
const char
*key,
uint16_t val);
bool
prop_dictionary_get_int32(
prop_dictionary_t
dict,
const char
*key,
int32_t *valp);
bool
prop_dictionary_get_uint32(
prop_dictionary_t
dict,
const char
*key,
uint32_t
*valp);
bool
prop_dictionary_set_int32(
prop_dictionary_t
dict,
const char
*key,
int32_t val);
bool
prop_dictionary_set_uint32(
prop_dictionary_t
dict,
const char
*key,
uint32_t val);
bool
prop_dictionary_get_int64(
prop_dictionary_t
dict,
const char
*key,
int64_t *valp);
bool
prop_dictionary_get_uint64(
prop_dictionary_t
dict,
const char
*key,
uint64_t
*valp);
bool
prop_dictionary_set_int64(
prop_dictionary_t
dict,
const char
*key,
int64_t val);
bool
prop_dictionary_set_uint64(
prop_dictionary_t
dict,
const char
*key,
uint64_t val);
bool
prop_dictionary_get_cstring(
prop_dictionary_t
dict,
const char
*key,
char **strp);
bool
prop_dictionary_set_cstring(
prop_dictionary_t
dict,
const char
*key,
const char
*str);
bool
prop_dictionary_get_cstring_nocopy(
prop_dictionary_t
dict,
const char
*key,
const char
**strp);
bool
prop_dictionary_set_cstring_nocopy(
prop_dictionary_t
dict,
const char
*key,
const char
*strp);
bool
prop_dictionary_set_and_rel(
prop_dictionary_t
dict,
const char
*key,
prop_object_t
obj);
DESCRIPTION
The
prop_dictionary_util() family of functions are provided to
make getting and setting values in dictionaries more convenient in some
applications.
The getters check the type of the returned object and, in some cases, also
ensure that the returned value is within the range implied by the getter's
value type.
The setters handle object creation and release for the caller.
The
prop_dictionary_get_cstring() function returns dynamically
allocated memory. See
prop_string(3) for more
information.
The
prop_dictionary_get_cstring_nocopy() and
prop_dictionary_set_cstring_nocopy() functions do not copy
the string that is set or returned. See
prop_string(3) for more
information.
The
prop_dictionary_set_and_rel() function adds the object to
the dictionary and releases it. The object is also released on failure.
RETURN VALUES
The
prop_dictionary_util() getter functions return
true
if the object exists in the dictionary and the
value is in-range, or
false
otherwise.
The
prop_dictionary_util() setter functions return
true
if creating the object and storing it in the
dictionary is successful, or
false
otherwise.
SEE ALSO
prop_bool(3),
prop_dictionary(3),
prop_number(3),
proplib(3)
HISTORY
The
proplib(3) property container
object library first appeared in
NetBSD 4.0.