getdns_dict(3)

NAME
getdns_dict, getdns_dict_create, getdns_dict_create_with_extended_memory_functions, getdns_dict_create_with_memory_functions, getdns_dict_destroy -- getdns dict create and destroy routines

LIBRARY
DNS Resolver library (libgetdns, -lgetdns)

SYNOPSIS
#include <getdns.h>

getdns_dict *
getdns_dict_create ()

getdns_dict *
getdns_dict_create_with_extended_memory_functions
    (void *userarg,
    void *(*malloc)(void *userarg, size_t sz),
    void *(*realloc)(void *userarg, void *buf, size_t sz),
    void (*free)(void *userarg, void *buf)

    getdns_dict *
    getdns_dict_create_with_memory_functions
        (void *(*malloc)(size_t sz),
        void *(*realloc)(void *buf, size_t sz),
        void (*free)(void *buf)

        void
        getdns_dict_destroy (getdns_dict *this_dict)

DESCRIPTION

The getdns_dict type is used to manage name/value pairs in which the names are strings and the data types of the values are heterogeneous and include
    getdns_bindata
    getdns_dict
    getdns_list
    uint32_t

The destroy function performs a "deep" destroy, freeing storage for all of the members of the dictionary before destroying the dictionary. There are a number of helper functions that provide access to the dictionary object, see their respective man pages.

userarg pass this argument to the user specified memory management functions for operations on lists created using extended memory functions

this_dict the dictionary to destroy

RETURN VALUES

Upon successful completion the getdns_dict_create function returns a valid (empty) dictionary structure that should be freed via a call to getdns_dict_destroy. If a parameter in invalid or in the event of some error getdns_dict_create returns NULL.

EXAMPLES

TBD

SEE ALSO
libgetdns(3), getdns_dict_get(3), getdns_dict_set(3), getdns_list(3), getdns_pretty_print_dict(3).