HH\Set::skipWhile

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

Description

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

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

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

Parameters

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

Return Values

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

Examples

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

<?hh

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

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

// Skip values until we reach one over 10
$s2 = $s->skipWhile($x ==> $x <= 10);
var_dump($s2);
Output
object(HH\Set)#3 (6) {
  int(13)
  int(21)
  int(34)
  int(55)
  int(89)
  int(144)
}