private function setCollectionIntoIndex($index, CollectionInterface $collection)
 {
     $this->validateIndex($index);
     $firstPiece = array_slice($this->values, 0, $index);
     $secondPiece = array_slice($this->values, $index);
     $this->clear();
     $this->values = array_merge($firstPiece, $collection->getAll(), $secondPiece);
     return true;
 }
Example #2
0
 public function setAll($index, CollectionInterface $collection)
 {
     $this->validateValueType($collection->getValueType());
     $uniqueCollection = $collection->getDifference($this);
     return $this->setCollectionIntoIndex($index, $uniqueCollection);
 }
 public function getDifference(CollectionInterface $collection)
 {
     $this->validateValueType($collection->getValueType());
     $diffCollection = clone $this;
     $diffCollection->removeAny($collection);
     return $diffCollection;
 }
Example #4
0
 public function setAll($index, CollectionInterface $collection)
 {
     $this->validateValueType($collection->getValueType());
     return $this->setCollectionIntoIndex($index, $collection);
 }