HH\ImmVector::slice
Returns a subset of the current ImmVector
starting from a given key up
to, but not including, the element at the provided length from the
starting key
public function slice(
int $start,
int $len,
): ImmVector<Tv>;
$start
is 0-based. $len
is 1-based. So slice(0,
2)
would return the
elements at key 0 and 1.
The returned ImmVector
will always be a subset (but not necessarily a
proper subset) of the current ImmVector
. If $start
is greater than or
equal to the length of the current Vector
, the returned Vector
will
contain no elements. If $start
+ $len
is greater than or equal to the
length of the current Vector
, the returned Vector
will contain the
elements from $start
to the end of the current Vector
.
If either $start
or $len
is negative, an exception is thrown.
Parameters
int $start
- The starting key of the currentImmVector
at which to begin the returnedImmVector
.int $len
- The length of the returnedImmVector
.
Returns
ImmVector<Tv>
- AnImmVector
that is a subset of the currentImmVector
starting at$start
up to but not including the element$start + $len
.
Examples
See [Vector::slice
](</hack/reference/class/Vector/slice/#examples>) for usage examples.