void operator []=(K key, V value)

Associates the key with the given value.

If the key was already in the map, its associated value is changed. Otherwise the key-value pair is added to the map.


void operator []=(K key, V value) {
  if (key == null) throw new ArgumentError(key);
  // Splay on the key to move the last node on the search path for
  // the key to the root of the tree.
  int comp = _splay(key);
  if (comp == 0) {
    _root.value = value;
  _addNewRoot(new _SplayTreeMapNode(key, value), comp);