/**
  * ( excerpt from
  * http://docs.hhvm.com/manual/en/recursivecachingiterator.construct.php )
  *
  * Constructs a new RecursiveCachingIterator, which consists of a passed
  * in iterator. Warning: This function is currently not documented; only
  * its argument list is available.
  *
  * @iterator   mixed   The iterator being used.
  * @flags      mixed   The flags. Use CALL_TOSTRING to call
  *                     RecursiveCachingIterator::__toString() for every
  *                     element (the default), and/or CATCH_GET_CHILD to
  *                     catch exceptions when trying to get children.
  *
  * @return     mixed   The RecursiveCachingIterator.
  */
 function __construct(\Iterator $iterator, $flags = RecursiveCachingIterator::CALL_TOSTRING)
 {
     if (!$iterator instanceof RecursiveIterator) {
         throw new InvalidArgumentException(__CLASS__ . "::__construct() expects parameter 1 to be RecursiveIterator, " . gettype($iterator) . " given");
     }
     parent::__construct($iterator, $flags);
 }
Beispiel #2
0
 public function __construct($iterator)
 {
     if (is_array($iterator) || $iterator instanceof stdClass) {
         parent::__construct(new ArrayIterator($iterator), 0);
     } elseif ($iterator instanceof IteratorAggregate) {
         parent::__construct($iterator->getIterator(), 0);
     } elseif ($iterator instanceof Iterator) {
         parent::__construct($iterator, 0);
     } else {
         throw new InvalidArgumentException("Invalid argument passed to foreach resp. " . __CLASS__ . "; array or Iterator expected, " . (is_object($iterator) ? get_class($iterator) : gettype($iterator)) . " given.");
     }
 }
 public function __construct($iterator)
 {
     if (is_array($iterator) || $iterator instanceof stdClass) {
         parent::__construct(new ArrayIterator($iterator), 0);
     } elseif ($iterator instanceof IteratorAggregate) {
         parent::__construct($iterator->getIterator(), 0);
     } elseif ($iterator instanceof Iterator) {
         parent::__construct($iterator, 0);
     } else {
         throw new InvalidArgumentException("Argument passed to " . __METHOD__ . " must be an array or interface Iterator provider, " . (is_object($iterator) ? get_class($iterator) : gettype($iterator)) . " given.");
     }
 }
 public function __construct($iterator)
 {
     if (is_array($iterator) || $iterator instanceof \stdClass) {
         $iterator = new \ArrayIterator($iterator);
     } elseif ($iterator instanceof \Traversable) {
         if ($iterator instanceof \IteratorAggregate) {
             $iterator = $iterator->getIterator();
         } elseif (!$iterator instanceof \Iterator) {
             $iterator = new \IteratorIterator($iterator);
         }
     } else {
         throw new \InvalidArgumentException(sprintf('Invalid argument passed to foreach; array or Traversable expected, %s given.', is_object($iterator) ? get_class($iterator) : gettype($iterator)));
     }
     parent::__construct($iterator, 0);
 }
 public function __construct($iterator)
 {
     if (is_array($iterator) || $iterator instanceof \stdClass) {
         $iterator = new \ArrayIterator($iterator);
     } elseif ($iterator instanceof \Traversable) {
         if ($iterator instanceof \IteratorAggregate) {
             $iterator = $iterator->getIterator();
         } elseif (!$iterator instanceof \Iterator) {
             $iterator = new \IteratorIterator($iterator);
         }
     } else {
         throw new Nette\InvalidArgumentException("Invalid argument passed to foreach resp. " . __CLASS__ . "; array or Traversable expected, " . (is_object($iterator) ? get_class($iterator) : gettype($iterator)) . " given.");
     }
     parent::__construct($iterator, 0);
 }
 public function __construct(\Iterator $iterator, LinterInterface $linter)
 {
     parent::__construct($iterator);
     $this->linter = $linter;
 }
 function __construct(Iterator $it, $flags = 0)
 {
     parent::__construct($it, $flags);
 }
 public function __construct($startNodes, $getChildrenCallback)
 {
     parent::__construct(IterUtil::asIterator($startNodes));
     $this->getChildrenCallback = $getChildrenCallback;
 }
 function __construct(RecursiveIterator $it, $flags = self::CALL_TOSTRING)
 {
     parent::__construct($it, $flags);
 }