| 4647 | } |
| 4648 | |
| 4649 | private void appendFromLeft(Node<K, V> node, K keyObj, V value) { |
| 4650 | if (node.left_idx == 0) { |
| 4651 | int new_right = node.right_idx + 1; |
| 4652 | System.arraycopy(node.keys, 0, node.keys, 1, new_right); |
| 4653 | System.arraycopy(node.values, 0, node.values, 1, new_right); |
| 4654 | node.right_idx = new_right; |
| 4655 | } else { |
| 4656 | node.left_idx--; |
| 4657 | } |
| 4658 | node.size++; |
| 4659 | node.keys[node.left_idx] = keyObj; |
| 4660 | node.values[node.left_idx] = value; |
| 4661 | } |
| 4662 | |
| 4663 | private void attachToLeft(Node<K, V> node, Node<K, V> newNode) { |
| 4664 | newNode.parent = node; |