public function removeWhere(callable $predicate) { $elementsToRemove = $this->scheme->createOrderedMap($this->scheme->filterIterator($this->elements, $predicate)); $this->removeRange($elementsToRemove); }