firstKeyAfter method

K? firstKeyAfter(
  1. K key
)

Get the first key in the map that is strictly larger than key. Returns null if such a key was not found.

Implementation

K? firstKeyAfter(K key) {
  if (key == null) throw ArgumentError(key);
  if (_root == null) return null;
  int comp = _splay(key);
  if (comp > 0) return _root!.key;
  _SplayTreeMapNode<K, V>? node = _root!._right;
  if (node == null) return null;
  var nodeLeft = node._left;
  while (nodeLeft != null) {
    node = nodeLeft;
    nodeLeft = node._left;
  }
  return node!.key;
}