Add back contract support for multimap / multiset
This commit is contained in:
1 parent
8d3b0cc94b
commit
791f586c7e
1 file changed
+3
-4
+3
-4
@@ -172,8 +172,7 @@
|
|||||||
)
|
)
|
||||||
|
|
||||||
/* Internal contract of a B+TREE node */
|
/* Internal contract of a B+TREE node */
|
||||||
//#ifdef NDEBUG // TODO
|
#ifdef NDEBUG
|
||||||
#if 1
|
|
||||||
# define BPTREEI_NODE_CONTRACT(N, isMulti, key_oplist, node, root) do { } while (0)
|
# define BPTREEI_NODE_CONTRACT(N, isMulti, key_oplist, node, root) do { } while (0)
|
||||||
#else
|
#else
|
||||||
# define BPTREEI_NODE_CONTRACT(N, isMulti, key_oplist, node, root) do { \
|
# define BPTREEI_NODE_CONTRACT(N, isMulti, key_oplist, node, root) do { \
|
||||||
@@ -191,11 +190,11 @@
|
|||||||
assert (c2 <= num2 && num2 <= N); \
|
assert (c2 <= num2 && num2 <= N); \
|
||||||
} \
|
} \
|
||||||
for(int i2 = 1; i2 < num2 ; i2++) { \
|
for(int i2 = 1; i2 < num2 ; i2++) { \
|
||||||
assert (M_CALL_CMP(key_oplist, (node)->key[i2-1], (node)->key[i2]) < 0); \
|
assert (M_CALL_CMP(key_oplist, (node)->key[i2-1], (node)->key[i2]) M_IF(isMulti)(<=, <) 0); \
|
||||||
} \
|
} \
|
||||||
if ((node)->next != NULL) { \
|
if ((node)->next != NULL) { \
|
||||||
assert (num2 >= 1); \
|
assert (num2 >= 1); \
|
||||||
assert (M_CALL_CMP(key_oplist, (node)->key[num2-1], (node)->next->key[0]) < 0); \
|
assert (M_CALL_CMP(key_oplist, (node)->key[num2-1], (node)->next->key[0]) M_IF(isMulti)(<=, <) 0); \
|
||||||
} \
|
} \
|
||||||
} while (0)
|
} while (0)
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
Reference in new issue
Block a user