private function processElements($elements) { $requestedElements = NULL; if (FALSE === is_array($elements) || FALSE === $elements instanceof \Iterator) { throw new InvalidElementContainerException(); } if (TRUE === is_array($elements) || TRUE === $elements instanceof \Countable) { $requestedElements = count($elements); } if (NULL !== $requestedElements && $requestedElements > $this->size->value()) { throw new OffsetToLargeException($this->size->value(), $requestedElements); } foreach ($elements as $element) { $this->processSingleElement($element); } }