Replace GET_INIT_MOVE by DO_INIT_MOVE

(Can't use oplist in default case).
This commit is contained in:
Patrick Pelissier committed 2017-05-08 00:27:50 +02:00
1 parent 1d1900d544
commit b207a2c03d
1 file changed
+10 -12
+10 -12
View File
@@ -699,13 +699,12 @@ typedef enum {
size_t p = M_GET_HASH key_oplist (data[i].key) & mask; \
if (p != i) { \
if (oor_equal_p(data[p].key, DICTI_OA_EMPTY) || oor_equal_p(data[p].key, DICTI_OA_DELETED)) { \
/* TODO: If INIT_MOVE doesn't exist? */ \
M_GET_INIT_MOVE key_oplist (data[p].key, data[i].key); \
M_GET_INIT_MOVE value_oplist (data[p].value, data[i].value); \
M_DO_INIT_MOVE(key_oplist, data[p].key, data[i].key); \
M_DO_INIT_MOVE(value_oplist, data[p].value, data[i].value); \
} else { \
M_C3(dict_pair_,name,_t) *ptr = M_C3(array_dicti_,name,_push_raw) (tmp); \
M_GET_INIT_MOVE key_oplist (ptr->key, data[i].key); \
M_GET_INIT_MOVE value_oplist (ptr->value, data[i].value); \
M_DO_INIT_MOVE(key_oplist, ptr->key, data[i].key); \
M_DO_INIT_MOVE(value_oplist, ptr->value, data[i].value); \
} \
oor_set(data[i].key, DICTI_OA_EMPTY); \
} \
@@ -810,13 +809,12 @@ typedef enum {
size_t p = M_GET_HASH key_oplist (data[i].key) & mask; \
if (p != i) { \
if (oor_equal_p(data[p].key, DICTI_OA_EMPTY) || oor_equal_p(data[p].key, DICTI_OA_DELETED)) { \
/* TODO: If INIT_MOVE doesn't exist? */ \
M_GET_INIT_MOVE key_oplist (data[p].key, data[i].key); \
M_GET_INIT_MOVE value_oplist (data[p].value, data[i].value); \
M_DO_INIT_MOVE(key_oplist, data[p].key, data[i].key); \
M_DO_INIT_MOVE(value_oplist, data[p].value, data[i].value); \
} else { \
M_C3(dict_pair_,name,_t) *ptr = M_C3(array_dicti_,name,_push_raw) (tmp); \
M_GET_INIT_MOVE key_oplist (ptr->key, data[i].key); \
M_GET_INIT_MOVE value_oplist (ptr->value, data[i].value); \
M_DO_INIT_MOVE(key_oplist, ptr->key, data[i].key); \
M_DO_INIT_MOVE(value_oplist, ptr->value, data[i].value); \
} \
oor_set(data[i].key, DICTI_OA_EMPTY); \
} \
@@ -834,8 +832,8 @@ typedef enum {
assert (s <= h->mask); \
} while (!oor_equal_p(data[p].key, DICTI_OA_EMPTY) ); \
} \
M_GET_INIT_MOVE key_oplist (data[p].key, data[i].key); \
M_GET_INIT_MOVE value_oplist (data[p].value, data[i].value); \
M_DO_INIT_MOVE(key_oplist, data[p].key, data[i].key); \
M_DO_INIT_MOVE(value_oplist, data[p].value, data[i].value); \
} \
} \
/* Pass 3: scan moved entries and move them back */ \