HH\Set::retain
Alters the current Set
so that it only contains the values that meet a
supplied condition on each value
public function retain(
(function(Tv): bool) $callback,
): Set<Tv>;
This method is like filter()
, but mutates the current Set
too in
addition to returning the current Set
.
Future changes made to the current Set
ARE reflected in the returned
Set
, and vice-versa.
Parameters
(function(Tv): bool) $callback
- The callback containing the condition to apply to the currentSet
values.
Returns
Set<Tv>
- Returns itself.
Examples
$s = Set {'red', 'green', 'blue', 'yellow'};
// Only keep values beginning with 'r' or 'b'
$s->retain($color ==> $color[0] === 'r' || $color[0] === 'b');
var_dump($s);
object(HH\Set)#1 (2) {
string(3) "red"
string(4) "blue"
}