| 1469 | |
| 1470 | template <typename P> |
| 1471 | inline void btree_node<P>::remove_value(const int i, allocator_type *alloc) { |
| 1472 | if (!leaf() && count() > i + 1) { |
| 1473 | assert(child(i + 1)->count() == 0); |
| 1474 | for (size_type j = i + 1; j < count(); ++j) { |
| 1475 | set_child(j, child(j + 1)); |
| 1476 | } |
| 1477 | clear_child(count()); |
| 1478 | } |
| 1479 | |
| 1480 | remove_values_ignore_children(i, /*to_erase=*/1, alloc); |
| 1481 | } |
| 1482 | |
| 1483 | template <typename P> |
| 1484 | inline void btree_node<P>::remove_values_ignore_children( |