class HydratingIteratorIterator in Zircon Profile 8.0
Same name in this branch
- 8.0 vendor/zendframework/zend-hydrator/src/Iterator/HydratingIteratorIterator.php \Zend\Hydrator\Iterator\HydratingIteratorIterator
- 8.0 vendor/zendframework/zend-stdlib/src/Hydrator/Iterator/HydratingIteratorIterator.php \Zend\Stdlib\Hydrator\Iterator\HydratingIteratorIterator
Same name and namespace in other branches
- 8 vendor/zendframework/zend-hydrator/src/Iterator/HydratingIteratorIterator.php \Zend\Hydrator\Iterator\HydratingIteratorIterator
Hierarchy
- class \Zend\Hydrator\Iterator\HydratingIteratorIterator extends \IteratorIterator implements HydratingIteratorInterface
Expanded class hierarchy of HydratingIteratorIterator
1 file declares its use of HydratingIteratorIterator
- HydratingIteratorIterator.php in vendor/
zendframework/ zend-stdlib/ src/ Hydrator/ Iterator/ HydratingIteratorIterator.php
File
- vendor/
zendframework/ zend-hydrator/ src/ Iterator/ HydratingIteratorIterator.php, line 17
Namespace
Zend\Hydrator\IteratorView source
class HydratingIteratorIterator extends IteratorIterator implements HydratingIteratorInterface {
/**
* @var HydratorInterface
*/
protected $hydrator;
/**
* @var object
*/
protected $prototype;
/**
* @param HydratorInterface $hydrator
* @param Iterator $data
* @param string|object $prototype Object or class name to use for prototype.
*/
public function __construct(HydratorInterface $hydrator, Iterator $data, $prototype) {
$this
->setHydrator($hydrator);
$this
->setPrototype($prototype);
parent::__construct($data);
}
/**
* @inheritdoc
*/
public function setPrototype($prototype) {
if (is_object($prototype)) {
$this->prototype = $prototype;
return;
}
if (!class_exists($prototype)) {
throw new InvalidArgumentException(sprintf('Method %s was passed an invalid class name: %s', __METHOD__, $prototype));
}
$this->prototype = new $prototype();
}
/**
* @inheritdoc
*/
public function setHydrator(HydratorInterface $hydrator) {
$this->hydrator = $hydrator;
}
/**
* @return object Returns hydrated clone of $prototype
*/
public function current() {
$currentValue = parent::current();
$object = clone $this->prototype;
$this->hydrator
->hydrate($currentValue, $object);
return $object;
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
HydratingIteratorIterator:: |
protected | property | 1 | |
HydratingIteratorIterator:: |
protected | property | 1 | |
HydratingIteratorIterator:: |
public | function | ||
HydratingIteratorIterator:: |
public | function |
@inheritdoc Overrides HydratingIteratorInterface:: |
|
HydratingIteratorIterator:: |
public | function |
@inheritdoc Overrides HydratingIteratorInterface:: |
|
HydratingIteratorIterator:: |
public | function | 1 |