Pinq\ITraversable::getIteratorScheme PHP Method

getIteratorScheme() public method

Returns the underlying iterator scheme used by the implementation.
public getIteratorScheme ( ) : Pinq\Iterators\IIteratorScheme
return Pinq\Iterators\IIteratorScheme
    public function getIteratorScheme();

Usage Example

Example #1
0
 /**
  * @dataProvider theImplementations
  */
 public function testThatMaintainsCorrectSameIteratorScheme(\Pinq\ITraversable $traversable, array $data)
 {
     $originalScheme = $traversable->getIteratorScheme();
     $queriedTraversable = $traversable->where(function () {
         throw new \Exception('This should never be executed');
     })->append([])->difference([])->except([])->groupBy(function () {
         return 1;
     })->groupJoin([])->on(function () {
         return true;
     })->to(function () {
         return 1;
     })->indexBy(function () {
         return 1;
     })->intersect([])->join([])->on(function () {
         return true;
     })->to(function () {
         return 1;
     })->keys()->orderBy(function () {
         return 1;
     }, \Pinq\Direction::ASCENDING)->thenByDescending(function () {
         return 1;
     })->reindex()->select(function () {
         return 1;
     })->selectMany(function () {
         return [];
     })->skip(1)->take(5)->union([])->where(function () {
         return true;
     })->whereIn([]);
     //Well that was fun
     $this->assertSame($originalScheme, $queriedTraversable->getIteratorScheme());
 }
All Usage Examples Of Pinq\ITraversable::getIteratorScheme