MutableVector
Represents a write-enabled (mutable) sequence of values, indexed by integers (i.e., a vector)
Guides
Interface Synopsis
interface MutableVector implements ConstVector<Tv>, HH\Collection<Tv>, IndexAccess<int, Tv> {...}
Public Methods
->concat<Tu super Tv>(Traversable<Tu> $traversable): MutableVector<Tu>
Returns aMutableVector
that is the concatenation of the values of the currentMutableVector
and the values of the providedTraversable
->filter((function(Tv): bool) $fn): MutableVector<Tv>
Returns aMutableVector
containing the values of the currentMutableVector
that meet a supplied condition->filterWithKey((function(int, Tv): bool) $fn): MutableVector<Tv>
Returns aMutableVector
containing the values of the currentMutableVector
that meet a supplied condition applied to its keys and values->firstKey(): ?int
Returns the first key in the currentMutableVector
->firstValue(): ?Tv
Returns the first value in the currentMutableVector
->keys(): MutableVector<int>
Returns aMutableVector
containing the keys of the currentMutableVector
->lastKey(): ?int
Returns the last key in the currentMutableVector
->lastValue(): ?Tv
Returns the last value in the currentMutableVector
->linearSearch(mixed $search_value): int
Returns the index of the first element that matches the search value->map<Tu>((function(Tv): Tu) $fn): MutableVector<Tu>
Returns aMutableVector
containing the values after an operation has been applied to each value in the currentMutableVector
->mapWithKey<Tu>((function(int, Tv): Tu) $fn): MutableVector<Tu>
Returns aMutableVector
containing the values after an operation has been applied to each key and value in the currentMutableVector
->skip(int $n): MutableVector<Tv>
Returns aMutableVector
containing the values after then
-th element of the currentMutableVector
->skipWhile((function(Tv): bool) $fn): MutableVector<Tv>
Returns aMutableVector
containing the values of the currentMutableVector
starting after and including the first value that producestrue
when passed to the specified callback->slice(int $start, int $len): MutableVector<Tv>
Returns a subset of the currentMutableVector
starting from a given key up to, but not including, the element at the provided length from the starting key->take(int $n): MutableVector<Tv>
Returns aMutableVector
containing the firstn
values of the currentMutableVector
->takeWhile((function(Tv): bool) $fn): MutableVector<Tv>
Returns aMutableVector
containing the values of the currentMutableVector
up to but not including the first value that producesfalse
when passed to the specified callback->toDArray(): darray<int, Tv>
->toVArray(): varray<Tv>
->values(): MutableVector<Tv>
Returns aMutableVector
containing the values of the currentMutableVector
->zip<Tu>(Traversable<Tu> $traversable): MutableVector<Pair<Tv, Tu>>
Returns aMutableVector
where each element is aPair
that combines the element of the currentMutableVector
and the providedTraversable
Public Methods (ConstCollection
)
-
->count(): int
Get the number of items in the collection -
->isEmpty(): bool
Is the collection empty? -
->items(): HH\Iterable<Te>
Get access to the items in the collection
Public Methods (IPureStringishObject
)
Public Methods (ConstIndexAccess
)
->at(Tk $k): Tv
Returns the value at the specified key in the current collection->containsKey(mixed $k): bool
Determines if the specified key is in the current collection->get(Tk $k): ?Tv
Returns the value at the specified key in the current collection
Public Methods (HH\KeyedIterable
)
->getIterator(): KeyedIterator<Tk, Tv>
Returns an iterator that points to beginning of the currentKeyedIterable
->lazy(): KeyedIterable<Tk, Tv>
Returns a lazy, access elements only when needed view of the currentKeyedIterable
->toImmMap(): ImmMap<Tk, Tv>
Returns an immutable map (ImmMap
) based on the keys and values of the currentKeyedIterable
->toKeysArray(): varray
Returns anarray
with the keys from the currentKeyedIterable
Public Methods (HH\Iterable
)
->toImmSet(): ImmSet<Tv>
Returns an immutable set (ImmSet
) converted from the currentIterable
->toImmVector(): ImmVector<Tv>
Returns an immutable vector (ImmVector
) converted from the currentIterable
->toValuesArray(): varray<Tv>
Returns anarray
with the values from the currentIterable
Public Methods (HH\Collection
)
->clear()
Removes all items from the collection
Public Methods (OutputCollection
)
->add(Te $e): this
Add a value to the collection and return the collection itself->addAll(?Traversable<Te> $traversable): this
For every element in the providedTraversable
, append a value into the current collection
Public Methods (IndexAccess
)
->removeKey(Tk $k): this
Removes the specified key (and associated value) from the current collection->set(Tk $k, Tv $v): this
Stores a value into the current collection with the specified key, overwriting the previous value associated with the key->setAll(?KeyedTraversable<Tk, Tv> $traversable): this
For every element in the providedTraversable
, stores a value into the current collection associated with each key, overwriting the previous value associated with the key