HH\Vector::skipWhile

Returns a Vector containing the values of the current Vector starting after and including the first value that produces true when passed to the specified callback.

Description

public function skipWhile(
  (function(Tv):bool) $fn,
): Vector<Tv>

Returns a Vector containing the values of the current Vector starting after and including the first value that produces true when passed to the specified callback.

The returned Vector will always be a proper subset of the current Vector.

Parameters

  • (function(Tv):bool) $fn - The callback used to determine the starting element for the returned Vector.

Return Values

  • Vector<Tv> - A Vector that is a proper subset of the current Vector starting after the callback returns true.

Examples

This example shows how skipWhile can be used to create a new Vector by skipping elements at the beginning of an existing Vector:

<?hh

namespace Hack\UserDocumentation\API\Examples\Vector\SkipWhile;

$v = Vector {0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144};

// Skip values until we reach one over 10
$v2 = $v->skipWhile($x ==> $x <= 10);
var_dump($v2);
Output
object(HH\Vector)#3 (6) {
  [0]=>
  int(13)
  [1]=>
  int(21)
  [2]=>
  int(34)
  [3]=>
  int(55)
  [4]=>
  int(89)
  [5]=>
  int(144)
}