|
libamxc
1.10.3
C Generic Data Containers
|
Ambiorix variant API header file. More...
#include <inttypes.h>#include <stdio.h>#include <stdlib.h>#include <amxc/amxc_htable.h>#include <amxc/amxc_llist.h>#include <amxc/amxc_string.h>#include <amxc/amxc_timestamp.h>#include <amxc/amxc_common.h>Go to the source code of this file.
Data Structures | |
| struct | _amxc_var |
| The variant struct definition. More... | |
Macros | |
| #define | AMXC_VAR_ID_INVALID UINT32_MAX |
| Invalid variant type id. More... | |
| #define | AMXC_VAR_ID_NULL 0 |
| Null variant type id (aka void) More... | |
| #define | AMXC_VAR_ID_CSTRING 1 |
| C-string variant id (aka char *), null terminated string. More... | |
| #define | AMXC_VAR_ID_INT8 2 |
| Signed 8 bit integer variant id. More... | |
| #define | AMXC_VAR_ID_INT16 3 |
| Signed 16 bit integer variant id. More... | |
| #define | AMXC_VAR_ID_INT32 4 |
| Signed 32 bit integer variant id. More... | |
| #define | AMXC_VAR_ID_INT64 5 |
| Signed 64 bit integer variant id. More... | |
| #define | AMXC_VAR_ID_UINT8 6 |
| Unsigned 8 bit integer variant id. More... | |
| #define | AMXC_VAR_ID_UINT16 7 |
| Unsigned 16 bit integer variant id. More... | |
| #define | AMXC_VAR_ID_UINT32 8 |
| Unsigned 32 bit integer variant id. More... | |
| #define | AMXC_VAR_ID_UINT64 9 |
| Unsigned 64 bit integer variant id. More... | |
| #define | AMXC_VAR_ID_FLOAT 10 |
| Float variant id. More... | |
| #define | AMXC_VAR_ID_DOUBLE 11 |
| Double variant id. More... | |
| #define | AMXC_VAR_ID_BOOL 12 |
| Boolean variant id. More... | |
| #define | AMXC_VAR_ID_LIST 13 |
| Ambiorix Linked List variant id. More... | |
| #define | AMXC_VAR_ID_HTABLE 14 |
| Ambiorix Hash Table variant id. More... | |
| #define | AMXC_VAR_ID_FD 15 |
| File descriptor variant id. More... | |
| #define | AMXC_VAR_ID_TIMESTAMP 16 |
| Ambiorix timestamp variant id. More... | |
| #define | AMXC_VAR_ID_CSV_STRING 17 |
| Comma Separated Values string variant id. More... | |
| #define | AMXC_VAR_ID_SSV_STRING 18 |
| Space Separated Values string variant id. More... | |
| #define | AMXC_VAR_ID_ANY 19 |
| Special variant id, typically used in cast or conversion functions. More... | |
| #define | AMXC_VAR_ID_CUSTOM_BASE 20 |
| Base variant id for custom variants. More... | |
| #define | AMXC_VAR_ID_MAX UINT32_MAX |
| Same as AMXC_VAR_ID_INVALID. More... | |
| #define | AMXC_VAR_NAME_NULL "null" |
| Provides a name for variant id AMXC_VAR_ID_NULL. More... | |
| #define | AMXC_VAR_NAME_CSTRING "cstring_t" |
| Provides a name for variant id AMXC_VAR_ID_CSTRING. More... | |
| #define | AMXC_VAR_NAME_INT8 "int8_t" |
| Provides a name for variant id AMXC_VAR_ID_INT8. More... | |
| #define | AMXC_VAR_NAME_INT16 "int16_t" |
| Provides a name for variant id AMXC_VAR_ID_INT16. More... | |
| #define | AMXC_VAR_NAME_INT32 "int32_t" |
| Provides a name for variant id AMXC_VAR_ID_INT32. More... | |
| #define | AMXC_VAR_NAME_INT64 "int64_t" |
| Provides a name for variant id AMXC_VAR_ID_INT64. More... | |
| #define | AMXC_VAR_NAME_UINT8 "uint8_t" |
| Provides a name for variant id AMXC_VAR_ID_UINT8. More... | |
| #define | AMXC_VAR_NAME_UINT16 "uint16_t" |
| Provides a name for variant id AMXC_VAR_ID_UINT16. More... | |
| #define | AMXC_VAR_NAME_UINT32 "uint32_t" |
| Provides a name for variant id AMXC_VAR_ID_UINT32. More... | |
| #define | AMXC_VAR_NAME_UINT64 "uint64_t" |
| Provides a name for variant id AMXC_VAR_ID_UINT64. More... | |
| #define | AMXC_VAR_NAME_FLOAT "float" |
| Provides a name for variant id AMXC_VAR_ID_FLOAT. More... | |
| #define | AMXC_VAR_NAME_DOUBLE "double" |
| Provides a name for variant id AMXC_VAR_ID_DOUBLE. More... | |
| #define | AMXC_VAR_NAME_BOOL "bool" |
| Provides a name for variant id AMXC_VAR_ID_BOOL. More... | |
| #define | AMXC_VAR_NAME_LIST "amxc_llist_t" |
| Provides a name for variant id AMXC_VAR_ID_LIST. More... | |
| #define | AMXC_VAR_NAME_HTABLE "amxc_htable_t" |
| Provides a name for variant id AMXC_VAR_ID_HTABLE. More... | |
| #define | AMXC_VAR_NAME_FD "fd_t" |
| Provides a name for variant id AMXC_VAR_ID_FD. More... | |
| #define | AMXC_VAR_NAME_TIMESTAMP "amxc_ts_t" |
| Provides a name for variant id AMXC_VAR_ID_TIMESTAMP. More... | |
| #define | AMXC_VAR_NAME_CSV_STRING "csv_string_t" |
| Provides a name for variant id AMXC_VAR_ID_CSV_STRING. More... | |
| #define | AMXC_VAR_NAME_SSV_STRING "ssv_string_t" |
| Provides a name for variant id AMXC_VAR_ID_SSV_STRING. More... | |
| #define | AMXC_VAR_FLAG_DEFAULT 0x00 |
| The default flag, do not copy, use variant as is. More... | |
| #define | AMXC_VAR_FLAG_COPY 0x01 |
| Copy the variant, creates a new variant, leaves the source variant untouched. More... | |
| #define | AMXC_VAR_FLAG_UPDATE 0x02 |
| Replaces the value of the variant, leaves the source variant untouched. More... | |
| #define | AMXC_VAR_FLAG_NO_INDEX 0x04 |
| Only search by key and not by index. This flag can be used with amxc_var_get_path function. More... | |
| #define | AMXC_VAR_FLAG_AUTO_ADD 0x08 |
| Add none existing variants to composite variants. This flag can be used with amxc_var_set_path and amxc_var_set_pathf functions. More... | |
| #define | GET_ARG(a, n) amxc_var_get_key(a, n, AMXC_VAR_FLAG_DEFAULT) |
| Convenience macro for getting variant out of a composite variant by key. More... | |
| #define | GET_BOOL(a, n) amxc_var_dyncast(bool, n == NULL ? a : GET_ARG(a, n)) |
| Convenience macro for getting a bool out of a composite variant by key. More... | |
| #define | GET_CHAR(a, n) amxc_var_constcast(cstring_t, n == NULL ? a : GET_ARG(a, n)) |
| Convenience macro for getting a char* out of a composite variant by key. More... | |
| #define | GET_UINT32(a, n) amxc_var_dyncast(uint32_t, n == NULL ? a : GET_ARG(a, n)) |
| Convenience macro for getting a uint32_t out of a composite variant by key. More... | |
| #define | GET_INT32(a, n) amxc_var_dyncast(int32_t, n == NULL ? a : GET_ARG(a, n)) |
| Convenience macro for getting a int32_t out of a composite variant by key. More... | |
| #define | GETI_ARG(a, i) amxc_var_get_index(a, i, AMXC_VAR_FLAG_DEFAULT) |
| Convenience macro for getting variant out of a composite variant by index. More... | |
| #define | GETI_BOOL(a, i) amxc_var_dyncast(bool, GETI_ARG(a, i)) |
| Convenience macro for getting a bool out of a composite variant by index. More... | |
| #define | GETI_CHAR(a, i) amxc_var_constcast(cstring_t, GETI_ARG(a, i)) |
| Convenience macro for getting a char* out of a composite variant by index. More... | |
| #define | GETI_UINT32(a, i) amxc_var_dyncast(uint32_t, GETI_ARG(a, i)) |
| Convenience macro for getting a uint32_t out of a composite variant by index. More... | |
| #define | GETI_INT32(a, i) amxc_var_dyncast(int32_t, GETI_ARG(a, i)) |
| Convenience macro for getting a int32_t out of a composite variant by index. More... | |
| #define | GETP_ARG(a, p) amxc_var_get_path(a, p, AMXC_VAR_FLAG_DEFAULT) |
| Convenience macro for getting variant out of a composite variant by path. More... | |
| #define | GETP_BOOL(a, p) amxc_var_dyncast(bool, p == NULL ? a : GETP_ARG(a, p)) |
| Convenience macro for getting a bool out of a composite variant by path. More... | |
| #define | GETP_CHAR(a, p) amxc_var_constcast(cstring_t, p == NULL ? a : GETP_ARG(a, p)) |
| Convenience macro for getting a string out of a composite variant by path. More... | |
| #define | GETP_UINT32(a, p) amxc_var_dyncast(uint32_t, p == NULL ? a : GETP_ARG(a, p)) |
| Convenience macro for getting a uint32 out of a composite variant by path. More... | |
| #define | GETP_INT32(a, p) amxc_var_dyncast(int32_t, p == NULL ? a : GETP_ARG(a, p)) |
| Convenience macro for getting a int32 out of a composite variant by path. More... | |
| #define | cstring_t char* |
| Convenience macro. More... | |
| #define | csv_string_t char* |
| Convenience macro. More... | |
| #define | ssv_string_t char* |
| Convenience macro. More... | |
| #define | fd_t int |
| Convenience macro. More... | |
| #define | amxc_var_set(type, var, data) amxc_var_set_ ## type(var, data) |
| Convenience macro for setting a value in a variant. More... | |
| #define | amxc_var_add(type, var, data) amxc_var_add_new_ ## type(var, data) |
| Convenience macro for adding a variant to composite variant type. More... | |
| #define | amxc_var_add_key(type, var, key, data) amxc_var_add_new_key_ ## type(var, key, data) |
| Convenience macro for adding a variant to composite variant type. More... | |
| #define | amxc_var_dyncast(type, var) amxc_var_get_ ## type(var) |
| Dynamic cast a variant to a certain type. More... | |
| #define | amxc_var_constcast(type, var) amxc_var_get_const_ ## type(var) |
| Takes the content from a variant. More... | |
| #define | amxc_var_take(type, var) amxc_var_take_ ## type(var) |
| Takes the content from a variant. More... | |
| #define | amxc_var_push(type, var, val) amxc_var_push_ ## type(var, val) |
| Pushes a value into the variant. More... | |
| #define | amxc_var_from_htable_it(ht_it) ((amxc_var_t*) (((char*) ht_it) - offsetof(amxc_var_t, hit))) |
| Get the variant pointer from an amxc htable iterator. More... | |
| #define | amxc_var_from_llist_it(ll_it) ((amxc_var_t*) (((char*) ll_it) - offsetof(amxc_var_t, lit))) |
| Get the variant pointer from an amxc linked list iterator. More... | |
| #define | amxc_var_for_each(var, var_list) |
| When the variant is a htable or list variant, iterates over the variants in the htable or list. More... | |
| #define | amxc_var_for_each_reverse(var, var_list) |
| When the variant is a htable or list variant, iterates over the variants in reverse order. More... | |
Typedefs | |
| typedef struct _amxc_var | amxc_var_t |
| The variant struct definition. More... | |
Functions | |
| int | amxc_var_new (amxc_var_t **var) |
| Allocates a variant and initializes it to the null variant type. More... | |
| void | amxc_var_delete (amxc_var_t **var) |
| Frees the previously allocated variant. More... | |
| int | amxc_var_init (amxc_var_t *const var) |
| Initializes a variant. More... | |
| void | amxc_var_clean (amxc_var_t *const var) |
| Clean-up and reset variant. More... | |
| int | amxc_var_set_type (amxc_var_t *const var, const uint32_t type) |
| Change the variant data type. More... | |
| int | amxc_var_copy (amxc_var_t *const dest, const amxc_var_t *const src) |
| Copy the type and data from one variant (source) in another variant (destination). More... | |
| int | amxc_var_move (amxc_var_t *const dest, amxc_var_t *const src) |
| Moves the type and data from one variant (source) in another variant (destination). More... | |
| int | amxc_var_convert (amxc_var_t *const dest, const amxc_var_t *src, const uint32_t type_id) |
| Converts one variant (source) to another variant(destination) using the specified variant type id. More... | |
| int | amxc_var_cast (amxc_var_t *const var, const uint32_t type_id) |
| Casts the variant to another variant type id. More... | |
| int | amxc_var_compare (const amxc_var_t *const var1, const amxc_var_t *const var2, int *const result) |
| Compares two variants. More... | |
| AMXC_INLINE void | amxc_var_take_it (amxc_var_t *const var) |
| Removes the variant for a llist and/or a htable. More... | |
| amxc_var_t * | amxc_var_get_key (const amxc_var_t *const var, const char *const key, const int flags) |
| Get a reference to a part of composed variant using a key. More... | |
| int | amxc_var_set_key (amxc_var_t *const var, const char *const key, amxc_var_t *data, const int flags) |
| Sets a part of composed variant using a key. More... | |
| AMXC_INLINE amxc_var_t * | amxc_var_take_key (amxc_var_t *const var, const char *const key) |
| Get a reference to a part of composed variant using a key and removes it from the composed variant. More... | |
| amxc_var_t * | amxc_var_get_index (const amxc_var_t *const var, const int64_t index, const int flags) |
| Get a reference to a part of composed variant using an index. More... | |
| int | amxc_var_set_index (amxc_var_t *const var, const int64_t index, amxc_var_t *data, const int flags) |
| Set a part of composed variant using an index. More... | |
| AMXC_INLINE amxc_var_t * | amxc_var_take_index (amxc_var_t *const var, const int64_t index) |
| Get a reference to a part of composed variant using an index and removes it from the composed variant. More... | |
| amxc_var_t * | amxc_var_add_new_key (amxc_var_t *const var, const char *key) |
| Adds a new variant with a key to a composite variant. More... | |
| amxc_var_t * | amxc_var_add_new (amxc_var_t *const var) |
| Adds a new variant to a composite variant. More... | |
| amxc_var_t * | amxc_var_get_path (const amxc_var_t *const var, const char *const path, const int flags) |
| Retrieves the variant at the given path of a composite variant. More... | |
| amxc_var_t * | amxc_var_get_pathf (const amxc_var_t *const var, const int flags, const char *const fmt,...) __attribute__((format(printf |
| Retrieves the variant at the given path of a composite variant. More... | |
| amxc_var_t int | amxc_var_set_path (amxc_var_t *const var, const char *const path, amxc_var_t *data, const int flags) |
| Sets the variant at the given path of a composite variant. More... | |
| int | amxc_var_set_pathf (amxc_var_t *const var, amxc_var_t *data, const int flags, const char *const fmt,...) __attribute__((format(printf |
| Sets the variant at the given path of a composite variant. More... | |
| int amxc_var_t * | amxc_var_get_first (const amxc_var_t *const var) |
| Gets the first variant in a htable or list variant. More... | |
| amxc_var_t * | amxc_var_get_last (const amxc_var_t *const var) |
| Gets the last variant in a htable or list variant. More... | |
| amxc_var_t * | amxc_var_get_next (const amxc_var_t *const var) |
| Gets the next variant. More... | |
| amxc_var_t * | amxc_var_get_previous (const amxc_var_t *const var) |
| Gets the previous variant. More... | |
| amxc_var_t * | amxc_var_get_parent (const amxc_var_t *const var) |
| Gets the containing variant. More... | |
| const char * | amxc_var_key (const amxc_var_t *const var) |
| Gets the key, with which the variant is stored in a htable variant. More... | |
| uint32_t | amxc_var_type_of (const amxc_var_t *const var) |
| Gets the variant type id of a variant. More... | |
| const char * | amxc_var_type_name_of (const amxc_var_t *const var) |
| Gets the variant type name of a variant. More... | |
| AMXC_INLINE bool | amxc_var_is_null (const amxc_var_t *const var) |
| Checks if the given variant is of the "null" type. More... | |
| void | variant_list_it_free (amxc_llist_it_t *it) |
| Helper functions, can be used as delete function for linked lists. More... | |
| void | variant_htable_it_free (const char *key, amxc_htable_it_t *it) |
| Helper functions, can be used as delete function for htable. More... | |
| int | amxc_var_dump (const amxc_var_t *const var, int fd) |
| Dumps the content of the variant in a human readable manner. More... | |
| int | amxc_var_dump_stream (const amxc_var_t *const var, FILE *stream) |
| Dumps the content of the variant in a human readable manner. More... | |
| int | amxc_var_log (const amxc_var_t *const var) |
| Logs the content of the variant in a human readable manner to syslog. More... | |
| int | amxc_var_set_bool (amxc_var_t *const var, bool boolean) |
| Setter helper function. More... | |
| int | amxc_var_set_int8_t (amxc_var_t *const var, int8_t val) |
| Setter helper function. More... | |
| int | amxc_var_set_uint8_t (amxc_var_t *const var, uint8_t val) |
| Setter helper function. More... | |
| int | amxc_var_set_int16_t (amxc_var_t *const var, int16_t val) |
| Setter helper function. More... | |
| int | amxc_var_set_uint16_t (amxc_var_t *const var, uint16_t val) |
| Setter helper function. More... | |
| int | amxc_var_set_int32_t (amxc_var_t *const var, int32_t val) |
| Setter helper function. More... | |
| int | amxc_var_set_uint32_t (amxc_var_t *const var, uint32_t val) |
| Setter helper function. More... | |
| int | amxc_var_set_int64_t (amxc_var_t *const var, int64_t val) |
| Setter helper function. More... | |
| int | amxc_var_set_uint64_t (amxc_var_t *const var, uint64_t val) |
| Setter helper function. More... | |
| int | amxc_var_set_cstring_t (amxc_var_t *const var, const char *const val) |
| Setter helper function. More... | |
| int | amxc_var_set_csv_string_t (amxc_var_t *const var, const char *const val) |
| Setter helper function. More... | |
| int | amxc_var_set_ssv_string_t (amxc_var_t *const var, const char *const val) |
| Setter helper function. More... | |
| int | amxc_var_set_double (amxc_var_t *var, double val) |
| Setter helper function. More... | |
| int | amxc_var_set_fd_t (amxc_var_t *var, int val) |
| Setter helper function. More... | |
| int | amxc_var_set_amxc_ts_t (amxc_var_t *var, amxc_ts_t *val) |
| Setter helper function. More... | |
| bool | amxc_var_get_bool (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| int8_t | amxc_var_get_int8_t (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| uint8_t | amxc_var_get_uint8_t (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| int16_t | amxc_var_get_int16_t (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| uint16_t | amxc_var_get_uint16_t (const amxc_var_t *var) |
| Conversion helper function. More... | |
| int32_t | amxc_var_get_int32_t (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| uint32_t | amxc_var_get_uint32_t (const amxc_var_t *var) |
| Conversion helper function. More... | |
| int64_t | amxc_var_get_int64_t (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| uint64_t | amxc_var_get_uint64_t (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| char * | amxc_var_get_cstring_t (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| amxc_htable_t * | amxc_var_get_amxc_htable_t (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| amxc_llist_t * | amxc_var_get_amxc_llist_t (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| double | amxc_var_get_double (const amxc_var_t *var) |
| Conversion helper function. More... | |
| int | amxc_var_get_fd_t (const amxc_var_t *var) |
| Conversion helper function. More... | |
| amxc_ts_t * | amxc_var_get_amxc_ts_t (const amxc_var_t *var) |
| Conversion helper function. More... | |
| AMXC_INLINE char * | amxc_var_get_csv_string_t (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| AMXC_INLINE char * | amxc_var_get_ssv_string_t (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| const char * | amxc_var_get_const_cstring_t (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| const amxc_htable_t * | amxc_var_get_const_amxc_htable_t (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| const amxc_llist_t * | amxc_var_get_const_amxc_llist_t (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| bool | amxc_var_get_const_bool (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| int8_t | amxc_var_get_const_int8_t (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| int16_t | amxc_var_get_const_int16_t (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| int32_t | amxc_var_get_const_int32_t (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| int64_t | amxc_var_get_const_int64_t (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| uint8_t | amxc_var_get_const_uint8_t (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| uint16_t | amxc_var_get_const_uint16_t (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| uint32_t | amxc_var_get_const_uint32_t (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| uint64_t | amxc_var_get_const_uint64_t (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| double | amxc_var_get_const_double (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| int | amxc_var_get_const_fd_t (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| const amxc_ts_t * | amxc_var_get_const_amxc_ts_t (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| AMXC_INLINE const char * | amxc_var_get_const_csv_string_t (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| AMXC_INLINE const char * | amxc_var_get_const_ssv_string_t (const amxc_var_t *const var) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_bool (amxc_var_t *const var, bool boolean) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_int8_t (amxc_var_t *const var, int8_t val) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_uint8_t (amxc_var_t *const var, uint8_t val) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_int16_t (amxc_var_t *const var, int16_t val) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_uint16_t (amxc_var_t *const var, uint16_t val) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_int32_t (amxc_var_t *const var, int32_t val) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_uint32_t (amxc_var_t *const var, uint32_t val) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_int64_t (amxc_var_t *const var, int64_t val) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_uint64_t (amxc_var_t *const var, uint64_t val) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_cstring_t (amxc_var_t *const var, const char *const val) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_csv_string_t (amxc_var_t *const var, const char *const val) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_ssv_string_t (amxc_var_t *const var, const char *const val) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_double (amxc_var_t *const var, double val) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_fd_t (amxc_var_t *const var, int val) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_amxc_ts_t (amxc_var_t *const var, amxc_ts_t *ts) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_amxc_llist_t (amxc_var_t *const var, const amxc_llist_t *list) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_amxc_htable_t (amxc_var_t *const var, const amxc_htable_t *htable) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_key_bool (amxc_var_t *const var, const char *key, bool boolean) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_key_int8_t (amxc_var_t *const var, const char *key, int8_t val) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_key_uint8_t (amxc_var_t *const var, const char *key, uint8_t val) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_key_int16_t (amxc_var_t *const var, const char *key, int16_t val) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_key_uint16_t (amxc_var_t *const var, const char *key, uint16_t val) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_key_int32_t (amxc_var_t *const var, const char *key, int32_t val) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_key_uint32_t (amxc_var_t *const var, const char *key, uint32_t val) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_key_int64_t (amxc_var_t *const var, const char *key, int64_t val) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_key_uint64_t (amxc_var_t *const var, const char *key, uint64_t val) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_key_cstring_t (amxc_var_t *const var, const char *key, const char *const val) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_key_csv_string_t (amxc_var_t *const var, const char *key, const char *const val) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_key_ssv_string_t (amxc_var_t *const var, const char *key, const char *const val) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_key_double (amxc_var_t *const var, const char *key, double val) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_key_fd_t (amxc_var_t *const var, const char *key, int val) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_key_amxc_ts_t (amxc_var_t *const var, const char *key, amxc_ts_t *ts) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_key_amxc_llist_t (amxc_var_t *const var, const char *key, const amxc_llist_t *list) |
| Conversion helper function. More... | |
| amxc_var_t * | amxc_var_add_new_key_amxc_htable_t (amxc_var_t *const var, const char *key, const amxc_htable_t *htable) |
| Conversion helper function. More... | |
| char * | amxc_var_take_cstring_t (amxc_var_t *const var) |
| Takes a value from a variant. More... | |
| amxc_string_t * | amxc_var_take_amxc_string_t (amxc_var_t *const var) |
| Takes a value from a variant. More... | |
| AMXC_INLINE char * | amxc_var_take_csv_string_t (amxc_var_t *const var) |
| Takes a value from a variant. More... | |
| AMXC_INLINE char * | amxc_var_take_ssv_string_t (amxc_var_t *const var) |
| Takes a value from a variant. More... | |
| int | amxc_var_push_cstring_t (amxc_var_t *const var, char *val) |
| Pushes a value in a variant. More... | |
| int | amxc_var_push_csv_string_t (amxc_var_t *const var, char *val) |
| Pushes a value in a variant. More... | |
| int | amxc_var_push_ssv_string_t (amxc_var_t *const var, char *val) |
| Pushes a value in a variant. More... | |
| int | amxc_var_push_amxc_string_t (amxc_var_t *const var, amxc_string_t *val) |
| Pushes a value in a variant. More... | |
Ambiorix variant API header file.
Definition in file amxc_variant.h.
| #define amxc_var_from_htable_it | ( | ht_it | ) | ((amxc_var_t*) (((char*) ht_it) - offsetof(amxc_var_t, hit))) |
Get the variant pointer from an amxc htable iterator.
The htable iterator given, must be an amxc htable iterator of a variant.
Gives the pointer to the variant.
Definition at line 790 of file amxc_variant.h.
| #define amxc_var_from_llist_it | ( | ll_it | ) | ((amxc_var_t*) (((char*) ll_it) - offsetof(amxc_var_t, lit))) |
Get the variant pointer from an amxc linked list iterator.
The linked list iterator given, must be a linked list iterator of a variant.
Definition at line 799 of file amxc_variant.h.
| #define cstring_t char* |
Convenience macro.
Definition at line 584 of file amxc_variant.h.
| #define csv_string_t char* |
Convenience macro.
Definition at line 589 of file amxc_variant.h.
| #define fd_t int |
Convenience macro.
Definition at line 600 of file amxc_variant.h.
| #define ssv_string_t char* |
Convenience macro.
Definition at line 594 of file amxc_variant.h.