function last_keyx()

in src/c/select.php [278:298]


function last_keyx<Tk, Tv>(
  KeyedTraversable<Tk, Tv> $traversable,
)[]: Tk {
  if ($traversable is KeyedContainer<_, _>) {
    $last_key = _Private\Native\last_key($traversable);
    invariant(
      $last_key is nonnull,
      '%s: Expected at least one element.',
      __FUNCTION__,
    );
    return $last_key;
  }
  $key = null;
  $did_iterate = false;
  foreach ($traversable as $key => $_) {
    $did_iterate = true;
  }
  invariant($did_iterate, '%s: Expected at least one element.', __FUNCTION__);
  /* HH_FIXME[4110] invariant above implies this is Tk */
  return $key;
}