summaryrefslogtreecommitdiff
path: root/shape.c
diff options
context:
space:
mode:
authorPeter Zhu <[email protected]>2023-12-01 09:56:32 -0500
committerPeter Zhu <[email protected]>2023-12-01 09:56:32 -0500
commit43ef0da0fb308c937dd0261d5204bd72e8b6867a ()
tree0e3ca9ab52f53e9530a8d96433f17804565a1207 /shape.c
parent64c4bbb86cf5c2a7710bef4d481c6a05f780c632 (diff)
Add assertions for shape cache grandchild nodes
-rw-r--r--shape.c8
1 files changed, 8 insertions, 0 deletions
@@ -180,7 +180,9 @@ redblack_balance(char color, ID key, rb_shape_t * value, redblack_node_t * left,
RUBY_ASSERT(new_right_key > new_key);
RUBY_ASSERT(new_left_left == LEAF || new_left_left->key < new_left_key);
RUBY_ASSERT(new_left_right == LEAF || new_left_right->key > new_left_key);
RUBY_ASSERT(new_right_left == LEAF || new_right_left->key < new_right_key);
RUBY_ASSERT(new_right_right == LEAF || new_right_right->key > new_right_key);
}
else if (redblack_red_p(left) && redblack_red_p(redblack_right(left))) {
@@ -202,7 +204,9 @@ redblack_balance(char color, ID key, rb_shape_t * value, redblack_node_t * left,
RUBY_ASSERT(new_right_key > new_key);
RUBY_ASSERT(new_left_left == LEAF || new_left_left->key < new_left_key);
RUBY_ASSERT(new_left_right == LEAF || new_left_right->key > new_left_key);
RUBY_ASSERT(new_right_left == LEAF || new_right_left->key < new_right_key);
RUBY_ASSERT(new_right_right == LEAF || new_right_right->key > new_right_key);
}
else if (redblack_red_p(right) && redblack_red_p(redblack_left(right))) {
@@ -224,7 +228,9 @@ redblack_balance(char color, ID key, rb_shape_t * value, redblack_node_t * left,
RUBY_ASSERT(new_right_key > new_key);
RUBY_ASSERT(new_left_left == LEAF || new_left_left->key < new_left_key);
RUBY_ASSERT(new_left_right == LEAF || new_left_right->key > new_left_key);
RUBY_ASSERT(new_right_left == LEAF || new_right_left->key < new_right_key);
RUBY_ASSERT(new_right_right == LEAF || new_right_right->key > new_right_key);
}
else if (redblack_red_p(right) && redblack_red_p(redblack_right(right))) {
@@ -246,7 +252,9 @@ redblack_balance(char color, ID key, rb_shape_t * value, redblack_node_t * left,
RUBY_ASSERT(new_right_key > new_key);
RUBY_ASSERT(new_left_left == LEAF || new_left_left->key < new_left_key);
RUBY_ASSERT(new_left_right == LEAF || new_left_right->key > new_left_key);
RUBY_ASSERT(new_right_left == LEAF || new_right_left->key < new_right_key);
RUBY_ASSERT(new_right_right == LEAF || new_right_right->key > new_right_key);
}
else {