| maug
    Quick and dirty C mini-augmentation library. | 

| Data Structures | |
| struct | MDATA_TABLE_KEY | 
| struct | MDATA_TABLE | 
| Macros | |
| #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) | 
| Typedefs | |
| typedef MERROR_RETVAL(* | mdata_table_iter_t) (const struct MDATA_TABLE_KEY *key, void *data, size_t data_sz, void *cb_data, size_t cb_data_sz, size_t idx) | 
| Functions | |
| 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) | 
| #define mdata_table_sz | ( | t | ) |