|  | 
| #define | MDATA_TRACE_LVL   0 | 
|  | 
| #define | MDATA_TABLE_KEY_SZ_MAX   8 | 
|  | 
| #define | MDATA_VECTOR_FLAG_IS_LOCKED   0x02 | 
|  | 
| #define | MDATA_STRPOOL_FLAG_IS_LOCKED   0x01 | 
|  | 
| #define | MDATA_STRPOOL_FLAG_DEDUPE   0x02 | 
|  | 
| #define | mdata_debug_printf(fmt, ...) | 
|  | 
| #define | mdata_strpool_sz(sp)   ((sp)->str_sz_max) | 
|  | 
| #define | mdata_strpool_is_locked(sp) | 
|  | 
| #define | mdata_strpool_lock(sp) | 
|  | 
| #define | mdata_strpool_unlock(sp) | 
|  | 
| #define | mdata_strpool_get(sp,  idx)      ((idx >= 1 && idx < (sp)->str_sz) ? &((sp)->str_p[idx]) : NULL) | 
|  | 
| #define | mdata_strpool_get_sz(sp,  idx) | 
|  | 
| #define | mdata_strpool_padding(str_sz)      (sizeof( size_t ) - ((str_sz + 1 /* NULL */) % sizeof( size_t ))) | 
|  | 
| #define | mdata_vector_get(v,  idx,  type)      ((type*)mdata_vector_get_void( v, idx )) | 
|  | 
| #define | mdata_vector_get_last(v,  type) | 
|  | 
| #define | mdata_vector_remove_last(v) | 
|  | 
| #define | mdata_vector_set_ct_step(v,  step)      (v)->ct_step = step; | 
|  | 
| #define | mdata_vector_is_locked(v) | 
|  | 
| #define | mdata_vector_insert_sort(v,  i,  t,  field) | 
|  | 
| #define | mdata_vector_sort(v,  t,  field) | 
|  | 
| #define | _mdata_vector_item_ptr(v,  idx)      (&((v)->data_bytes[((idx) * ((v)->item_sz))])) | 
|  | 
| #define | mdata_vector_set_flag(v,  flag)   (v)->flags |= (flag) | 
|  | 
| #define | mdata_vector_get_flag(v,  flag)   ((flag) == ((v)->flags & (flag))) | 
|  | 
| #define | mdata_table_is_locked(t)      (mdata_vector_is_locked( &((t)->data_cols[0]) )) | 
|  | 
| #define | mdata_table_get(t,  key,  type)      ((type*)mdata_table_get_void( t, key )) | 
|  | 
| #define | mdata_table_hash_get(t,  hash,  sz,  type)      ((type*)mdata_table_hash_get_void( t, hash, sz )) | 
|  | 
| #define | mdata_table_ct(t)   ((t)->data_cols[0].ct) | 
|  | 
| #define | mdata_table_sz(t) | 
|  | 
| #define | mdata_retval(idx)   (0 > idx ? ((idx) * -1) : MERROR_OK) | 
|  | 
|  | 
| MERROR_RETVAL | mdata_strpool_check_idx (struct MDATA_STRPOOL *sp, mdata_strpool_idx_t idx) | 
|  | Verify if the given mdata_strpool_idx_t is valid in the given strpool. 
 | 
|  | 
| mdata_strpool_idx_t | mdata_strpool_find (struct MDATA_STRPOOL *sp, const char *str, size_t str_sz) | 
|  | 
| MAUG_MHANDLE | mdata_strpool_extract (struct MDATA_STRPOOL *sp, mdata_strpool_idx_t idx) | 
|  | Return a dynamically-allocated memory handle containing the contents of the string at the given index. 
 | 
|  | 
| mdata_strpool_idx_t | mdata_strpool_append (struct MDATA_STRPOOL *sp, const char *str, size_t str_sz, uint8_t flags) | 
|  | 
| MERROR_RETVAL | mdata_strpool_remove (struct MDATA_STRPOOL *sp, mdata_strpool_idx_t idx) | 
|  | 
| MERROR_RETVAL | mdata_strpool_alloc (struct MDATA_STRPOOL *sp, size_t alloc_sz) | 
|  | 
| void | mdata_strpool_free (struct MDATA_STRPOOL *sp) | 
|  | 
| ssize_t | mdata_vector_insert (struct MDATA_VECTOR *v, const void *item, ssize_t idx, size_t item_sz) | 
|  | 
| MERROR_RETVAL | mdata_vector_copy (struct MDATA_VECTOR *v_dest, struct MDATA_VECTOR *v_src) | 
|  | 
| MERROR_RETVAL | mdata_vector_alloc (struct MDATA_VECTOR *v, size_t item_sz, size_t item_ct_init) | 
|  | 
| void | mdata_vector_free (struct MDATA_VECTOR *v) | 
|  | 
| uint32_t | mdata_hash (const char *token, size_t token_sz) | 
|  | 
| MERROR_RETVAL | mdata_table_lock (struct MDATA_TABLE *t) | 
|  | 
| MERROR_RETVAL | mdata_table_unlock (struct MDATA_TABLE *t) | 
|  | 
| MERROR_RETVAL | mdata_table_iter (struct MDATA_TABLE *t, mdata_table_iter_t cb, void *cb_data, size_t cb_data_sz) | 
|  | 
| MERROR_RETVAL | mdata_table_set (struct MDATA_TABLE *t, const char *key, void *value, size_t value_sz) | 
|  | 
| MERROR_RETVAL | mdata_table_unset (struct MDATA_TABLE *t, const char *key) | 
|  | 
| void * | mdata_table_get_void (const struct MDATA_TABLE *t, const char *key) | 
|  | 
| void * | mdata_table_hash_get_void (struct MDATA_TABLE *t, uint32_t key_hash, size_t key_sz) | 
|  | 
| void | mdata_table_free (struct MDATA_TABLE *t) | 
|  |