|  |  | @ -101,7 +101,7 @@ class Vector extends Object implements \IteratorAggregate, \ArrayAccess, \Counta | 
			
		
	
		
		
			
				
					
					|  |  |  | 	 * Returns the item at the specified index. |  |  |  | 	 * Returns the item at the specified index. | 
			
		
	
		
		
			
				
					
					|  |  |  | 	 * @param integer $index the index of the item |  |  |  | 	 * @param integer $index the index of the item | 
			
		
	
		
		
			
				
					
					|  |  |  | 	 * @return mixed the item at the index |  |  |  | 	 * @return mixed the item at the index | 
			
		
	
		
		
			
				
					
					|  |  |  | 	 * @throws InvalidCallException if the index is out of range |  |  |  | 	 * @throws InvalidParamException if the index is out of range | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  | 	 */ |  |  |  | 	 */ | 
			
		
	
		
		
			
				
					
					|  |  |  | 	public function itemAt($index) |  |  |  | 	public function itemAt($index) | 
			
		
	
		
		
			
				
					
					|  |  |  | 	{ |  |  |  | 	{ | 
			
		
	
	
		
		
			
				
					|  |  | @ -110,7 +110,7 @@ class Vector extends Object implements \IteratorAggregate, \ArrayAccess, \Counta | 
			
		
	
		
		
			
				
					
					|  |  |  | 		} elseif ($index >= 0 && $index < $this->_c) { // in case the value is null |  |  |  | 		} elseif ($index >= 0 && $index < $this->_c) { // in case the value is null | 
			
		
	
		
		
			
				
					
					|  |  |  | 			return $this->_d[$index]; |  |  |  | 			return $this->_d[$index]; | 
			
		
	
		
		
			
				
					
					|  |  |  | 		} else { |  |  |  | 		} else { | 
			
		
	
		
		
			
				
					
					|  |  |  | 			throw new InvalidCallException('Index out of range: ' . $index); |  |  |  | 			throw new InvalidParamException('Index out of range: ' . $index); | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  | 		} |  |  |  | 		} | 
			
		
	
		
		
			
				
					
					|  |  |  | 	} |  |  |  | 	} | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
	
		
		
			
				
					|  |  | @ -132,7 +132,7 @@ class Vector extends Object implements \IteratorAggregate, \ArrayAccess, \Counta | 
			
		
	
		
		
			
				
					
					|  |  |  | 	 * one step towards the end. |  |  |  | 	 * one step towards the end. | 
			
		
	
		
		
			
				
					
					|  |  |  | 	 * @param integer $index the specified position. |  |  |  | 	 * @param integer $index the specified position. | 
			
		
	
		
		
			
				
					
					|  |  |  | 	 * @param mixed $item new item to be inserted into the vector |  |  |  | 	 * @param mixed $item new item to be inserted into the vector | 
			
		
	
		
		
			
				
					
					|  |  |  | 	 * @throws InvalidCallException if the index specified is out of range, or the vector is read-only. |  |  |  | 	 * @throws InvalidParamException if the index specified is out of range, or the vector is read-only. | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  | 	 */ |  |  |  | 	 */ | 
			
		
	
		
		
			
				
					
					|  |  |  | 	public function insertAt($index, $item) |  |  |  | 	public function insertAt($index, $item) | 
			
		
	
		
		
			
				
					
					|  |  |  | 	{ |  |  |  | 	{ | 
			
		
	
	
		
		
			
				
					|  |  | @ -142,7 +142,7 @@ class Vector extends Object implements \IteratorAggregate, \ArrayAccess, \Counta | 
			
		
	
		
		
			
				
					
					|  |  |  | 			array_splice($this->_d, $index, 0, array($item)); |  |  |  | 			array_splice($this->_d, $index, 0, array($item)); | 
			
		
	
		
		
			
				
					
					|  |  |  | 			$this->_c++; |  |  |  | 			$this->_c++; | 
			
		
	
		
		
			
				
					
					|  |  |  | 		} else { |  |  |  | 		} else { | 
			
		
	
		
		
			
				
					
					|  |  |  | 			throw new InvalidCallException('Index out of range: ' . $index); |  |  |  | 			throw new InvalidParamException('Index out of range: ' . $index); | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  | 		} |  |  |  | 		} | 
			
		
	
		
		
			
				
					
					|  |  |  | 	} |  |  |  | 	} | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
	
		
		
			
				
					|  |  | @ -169,7 +169,7 @@ class Vector extends Object implements \IteratorAggregate, \ArrayAccess, \Counta | 
			
		
	
		
		
			
				
					
					|  |  |  | 	 * Removes an item at the specified position. |  |  |  | 	 * Removes an item at the specified position. | 
			
		
	
		
		
			
				
					
					|  |  |  | 	 * @param integer $index the index of the item to be removed. |  |  |  | 	 * @param integer $index the index of the item to be removed. | 
			
		
	
		
		
			
				
					
					|  |  |  | 	 * @return mixed the removed item. |  |  |  | 	 * @return mixed the removed item. | 
			
		
	
		
		
			
				
					
					|  |  |  | 	 * @throws InvalidCallException if the index is out of range, or the vector is read only. |  |  |  | 	 * @throws InvalidParamException if the index is out of range, or the vector is read only. | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  | 	 */ |  |  |  | 	 */ | 
			
		
	
		
		
			
				
					
					|  |  |  | 	public function removeAt($index) |  |  |  | 	public function removeAt($index) | 
			
		
	
		
		
			
				
					
					|  |  |  | 	{ |  |  |  | 	{ | 
			
		
	
	
		
		
			
				
					|  |  | @ -183,7 +183,7 @@ class Vector extends Object implements \IteratorAggregate, \ArrayAccess, \Counta | 
			
		
	
		
		
			
				
					
					|  |  |  | 				return $item; |  |  |  | 				return $item; | 
			
		
	
		
		
			
				
					
					|  |  |  | 			} |  |  |  | 			} | 
			
		
	
		
		
			
				
					
					|  |  |  | 		} else { |  |  |  | 		} else { | 
			
		
	
		
		
			
				
					
					|  |  |  | 			throw new InvalidCallException('Index out of range: ' . $index); |  |  |  | 			throw new InvalidParamException('Index out of range: ' . $index); | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  | 		} |  |  |  | 		} | 
			
		
	
		
		
			
				
					
					|  |  |  | 	} |  |  |  | 	} | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
	
		
		
			
				
					|  |  | @ -242,7 +242,7 @@ class Vector extends Object implements \IteratorAggregate, \ArrayAccess, \Counta | 
			
		
	
		
		
			
				
					
					|  |  |  | 	 * Copies iterable data into the vector. |  |  |  | 	 * Copies iterable data into the vector. | 
			
		
	
		
		
			
				
					
					|  |  |  | 	 * Note, existing data in the vector will be cleared first. |  |  |  | 	 * Note, existing data in the vector will be cleared first. | 
			
		
	
		
		
			
				
					
					|  |  |  | 	 * @param mixed $data the data to be copied from, must be an array or an object implementing `Traversable` |  |  |  | 	 * @param mixed $data the data to be copied from, must be an array or an object implementing `Traversable` | 
			
		
	
		
		
			
				
					
					|  |  |  | 	 * @throws InvalidCallException if data is neither an array nor an object implementing `Traversable`. |  |  |  | 	 * @throws InvalidParamException if data is neither an array nor an object implementing `Traversable`. | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  | 	 */ |  |  |  | 	 */ | 
			
		
	
		
		
			
				
					
					|  |  |  | 	public function copyFrom($data) |  |  |  | 	public function copyFrom($data) | 
			
		
	
		
		
			
				
					
					|  |  |  | 	{ |  |  |  | 	{ | 
			
		
	
	
		
		
			
				
					|  |  | @ -257,7 +257,7 @@ class Vector extends Object implements \IteratorAggregate, \ArrayAccess, \Counta | 
			
		
	
		
		
			
				
					
					|  |  |  | 				$this->add($item); |  |  |  | 				$this->add($item); | 
			
		
	
		
		
			
				
					
					|  |  |  | 			} |  |  |  | 			} | 
			
		
	
		
		
			
				
					
					|  |  |  | 		} else { |  |  |  | 		} else { | 
			
		
	
		
		
			
				
					
					|  |  |  | 			throw new InvalidCallException('Data must be either an array or an object implementing Traversable.'); |  |  |  | 			throw new InvalidParamException('Data must be either an array or an object implementing Traversable.'); | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  | 		} |  |  |  | 		} | 
			
		
	
		
		
			
				
					
					|  |  |  | 	} |  |  |  | 	} | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
	
		
		
			
				
					|  |  | @ -265,7 +265,7 @@ class Vector extends Object implements \IteratorAggregate, \ArrayAccess, \Counta | 
			
		
	
		
		
			
				
					
					|  |  |  | 	 * Merges iterable data into the vector. |  |  |  | 	 * Merges iterable data into the vector. | 
			
		
	
		
		
			
				
					
					|  |  |  | 	 * New items will be appended to the end of the existing items. |  |  |  | 	 * New items will be appended to the end of the existing items. | 
			
		
	
		
		
			
				
					
					|  |  |  | 	 * @param array|\Traversable $data the data to be merged with. It must be an array or object implementing Traversable |  |  |  | 	 * @param array|\Traversable $data the data to be merged with. It must be an array or object implementing Traversable | 
			
		
	
		
		
			
				
					
					|  |  |  | 	 * @throws InvalidCallException if data is neither an array nor an object implementing `Traversable`. |  |  |  | 	 * @throws InvalidParamException if data is neither an array nor an object implementing `Traversable`. | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  | 	 */ |  |  |  | 	 */ | 
			
		
	
		
		
			
				
					
					|  |  |  | 	public function mergeWith($data) |  |  |  | 	public function mergeWith($data) | 
			
		
	
		
		
			
				
					
					|  |  |  | 	{ |  |  |  | 	{ | 
			
		
	
	
		
		
			
				
					|  |  | @ -277,7 +277,7 @@ class Vector extends Object implements \IteratorAggregate, \ArrayAccess, \Counta | 
			
		
	
		
		
			
				
					
					|  |  |  | 				$this->add($item); |  |  |  | 				$this->add($item); | 
			
		
	
		
		
			
				
					
					|  |  |  | 			} |  |  |  | 			} | 
			
		
	
		
		
			
				
					
					|  |  |  | 		} else { |  |  |  | 		} else { | 
			
		
	
		
		
			
				
					
					|  |  |  | 			throw new InvalidCallException('The data to be merged with must be an array or an object implementing Traversable.'); |  |  |  | 			throw new InvalidParamException('The data to be merged with must be an array or an object implementing Traversable.'); | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  | 		} |  |  |  | 		} | 
			
		
	
		
		
			
				
					
					|  |  |  | 	} |  |  |  | 	} | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
	
		
		
			
				
					|  |  | 
 |