public function __construct(Providers\IQueryProvider $provider, Queries\ISourceInfo $sourceInfo, O\TraversalExpression $queryExpression = null, IIteratorScheme $scheme = null) { parent::__construct($provider); $this->sourceInfo = $sourceInfo; $this->expression = $queryExpression ?: O\Expression::value($this); $this->scheme = $scheme ?: Iterators\SchemeProvider::getDefault(); }
protected function buildIteratorScheme() { return Iterators\SchemeProvider::getDefault(); }
public function __construct($elements = [], IIteratorScheme $scheme = null, Traversable $source = null) { $this->scheme = $scheme ?: Iterators\SchemeProvider::getDefault(); $this->source = $source; $this->elements = $this->scheme->toIterator($elements); }