replace_node
Description:
[ Version ( since = "2.68" ) ]
public unowned TreeNode<K,V> replace_node (owned K key, owned V value)
public unowned TreeNode<K,V> replace_node (owned K key, owned V value)
Inserts a new key and value into a Tree similar to insert_node.
The difference is that if the key already exists in the Tree, it gets replaced by the new
key. If you supplied a value_destroy_func
when creating the Tree, the old
value is freed using that function. If you supplied a key_destroy_func
when creating the
Tree, the old key is freed using that function.
The tree is automatically 'balanced' as new key/value pairs are added, so that the distance from the root to every leaf is as small as possible.
Parameters:
this |
a Tree |
key |
the key to insert |
value |
the value corresponding to the key |
Returns:
the inserted (or set) node or null if insertion would overflow the tree node counter. |