Пример #1
0
 /**
  * Removes from the underlying collection the last
  * element returned by this iterator (optional operation).
  * This method can be called only once per call to next().
  * The behavior of an iterator is unspecified if the underlying
  * collection is modified while the iteration is in progress in any
  * way other than by calling this method.
  * @return boolean
  */
 public function remove()
 {
     if ($this->canRemove) {
         $removed = $this->set->remove($this->array[$this->index--]);
         $this->array = $this->set->toArray();
         $this->canRemove = false;
     } else {
         throw new IllegalStateException();
     }
 }