function repeatWhile (callable $fn)
  {
    $this->setIterator ($it = new LoopIterator ($this->getIterator ()));
    $it->test ($fn);
    return $this;
  }
function repeatWhile (callable $fn)
  {
    $this->setIterator ($it = new LoopIterator ($this->getIterator ()));
    $it->test ($fn);
    return $this;
  }
function repeatWhile ( callable $ fn ) { $ this -> setIterator ( $ it = new LoopIterator ( $ this -> getIterator ( ) ) ) ; $ it -> test ( $ fn ) ; return $ this ; }
Repeats the iteration until the callback returns `false`.

<p>**Note:** the resulting iteration may have duplicate keys. Use {@see reindex()} to normalize them.

@param callable $fn A callback that receives the current iteration value and key, and returns a boolean.
@return $this
Repeats the iteration until the callback returns false .