function __construct($iterator, $list, $comparefunc = NULL) { if (!$list instanceof LinqIterator) { $this->secondlist = LINQ::From($list); } else { $this->secondlist = $list; } parent::__construct($iterator, $comparefunc); }
function __construct($iterator, $intersectwith, $comparefunc = NULL) { parent::__construct($iterator); if (!$intersectwith instanceof LinqIterator) { $this->secondlist = LINQ::From($intersectwith); } else { $this->secondlist = $intersectwith; } $this->ismatch = $comparefunc; }
function __construct($iterator, $jointo, $keyselectouter, $keyselectjoin, $resultselect, $comparefunc = NULL) { if ($jointo instanceof LinqIterator) { $this->jointo = $jointo; } else { $this->jointo = LINQ::From($jointo); } $this->keyselectouter = $keyselectouter; $this->keyselectjoin = $keyselectjoin; $this->resultselect = $resultselect; $this->ismatch = $comparefunc; parent::__construct($iterator); }
function __construct($iterator, $jointo, $keyselectouter, $keyselectjoin, $resultselect, $comparefunc = NULL) { if ($jointo instanceof LinqIterator) { $this->jointo = $jointo; } else { $this->jointo = LINQ::From($jointo); } $this->keyselectouter = $keyselectouter; $this->keyselectjoin = $keyselectjoin; $this->resultselect = $resultselect; $this->ismatch = $comparefunc; $this->aiterator = $iterator; //we will add our real iterator when we are ready (first access) //parent::__construct(new EmptyIterator()); }