Add KEY_OPLIST & VALUE_OPLIST operators

This commit is contained in:
Patrick Pelissier committed 2018-10-28 10:38:41 +01:00
1 parent 70179bb1d7
commit 08d2af22db
3 files changed
+8 -3

No files matched your search

+2
View File
@@ -86,6 +86,8 @@
GET_KEY(M_C(name, _get)), \
/*GET_SET_KEY(M_C(name, _get_at))*/, \
ERASE_KEY(M_C(name, _erase)), \
KEY_OPLIST(key_oplist), \
VALUE_OPLIST(value_oplist), \
M_IF_METHOD_BOTH(GET_STR, key_oplist, value_oplist)(GET_STR(M_C(name, _get_str)),), \
M_IF_METHOD_BOTH(PARSE_STR, key_oplist, value_oplist)(PARSE_STR(M_C(name, _parse_str)),), \
M_IF_METHOD_BOTH(OUT_STR, key_oplist, value_oplist)(OUT_STR(M_C(name, _out_str)),), \
+4
View File
@@ -1786,6 +1786,8 @@ m_core_hash (const void *str, size_t length)
#define M_CLEAN_CLEAN(a) ,a,
#define M_KEY_TYPE_KEY_TYPE(a) ,a,
#define M_VALUE_TYPE_VALUE_TYPE(a) ,a,
#define M_KEY_OPLIST_KEY_OPLIST(a) ,a,
#define M_VALUE_OPLIST_VALUE_OPLIST(a) ,a,
#define M_GET_KEY_GET_KEY(a) ,a,
#define M_SET_KEY_SET_KEY(a) ,a,
#define M_GET_SET_KEY_GET_SET_KEY(a) ,a,
@@ -1859,6 +1861,8 @@ m_core_hash (const void *str, size_t length)
#define M_GET_CLEAN(...) M_GET_METHOD(CLEAN, M_NO_DEFAULT, __VA_ARGS__)
#define M_GET_KEY_TYPE(...) M_GET_METHOD(KEY_TYPE, M_NO_DEFAULT, __VA_ARGS__)
#define M_GET_VALUE_TYPE(...) M_GET_METHOD(VALUE_TYPE, M_NO_DEFAULT, __VA_ARGS__)
#define M_GET_KEY_OPLIST(...) M_GET_METHOD(KEY_OPLIST, M_NO_DEFAULT, __VA_ARGS__)
#define M_GET_VALUE_OPLIST(...) M_GET_METHOD(VALUE_OPLIST, M_NO_DEFAULT, __VA_ARGS__)
#define M_GET_GET_KEY(...) M_GET_METHOD(GET_KEY, M_NO_DEFAULT, __VA_ARGS__)
#define M_GET_SET_KEY(...) M_GET_METHOD(SET_KEY, M_NO_DEFAULT, __VA_ARGS__)
#define M_GET_GET_SET_KEY(...) M_GET_METHOD(GET_SET_KEY, M_NO_DEFAULT, __VA_ARGS__)
+2 -3
View File
@@ -809,14 +809,13 @@
,GET_KEY(M_C(name, _get)) \
,GET_SET_KEY(M_C(name, _get_at)) \
,ERASE_KEY(M_C(name, _erase)) \
,OPLIST(PAIR_OPLIST(key_oplist, value_oplist)) \
,KEY_OPLIST(key_oplist) \
,VALUE_OPLIST(value_oplist) \
,M_IF_METHOD_BOTH(GET_STR, key_oplist, value_oplist)(GET_STR(M_C(name, _get_str)),) \
,M_IF_METHOD_BOTH(PARSE_STR, key_oplist, value_oplist)(PARSE_STR(M_C(name, _parse_str)),) \
,M_IF_METHOD_BOTH(OUT_STR, key_oplist, value_oplist)(OUT_STR(M_C(name, _out_str)),) \
,M_IF_METHOD_BOTH(IN_STR, key_oplist, value_oplist)(IN_STR(M_C(name, _in_str)),) \
,M_IF_METHOD(EQUAL, value_oplist)(EQUAL(M_C(name, _equal_p)),) \
,KEY_OPLIST(key_oplist) \
,VALUE_OPLIST(value_oplist) \
,M_IF_METHOD(NEW, oplist)(NEW(M_GET_NEW key_oplist),) \
,M_IF_METHOD(REALLOC, oplist)(REALLOC(M_GET_REALLOC key_oplist),) \
,M_IF_METHOD(DEL, oplist)(DEL(M_GET_DEL key_oplist),) \