getTrueIterator() public méthode

All keys types will remain unaltered.
public getTrueIterator ( ) : Traversable
Résultat Traversable
Exemple #1
0
 public function visitValues(Requests\Values $request)
 {
     switch ($request->getValuesType()) {
         case Requests\Values::AS_SELF:
             return $this->traversable;
         case Requests\Values::AS_ARRAY:
             return $this->traversable->asArray();
         case Requests\Values::AS_ARRAY_COMPATIBLE_ITERATOR:
             return $this->traversable->getIterator();
         case Requests\Values::AS_TRUE_ITERATOR:
             return $this->traversable->getTrueIterator();
         case Requests\Values::AS_TRAVERSABLE:
             return $this->traversable->asTraversable();
         case Requests\Values::AS_COLLECTION:
             return $this->traversable->asCollection();
     }
 }
Exemple #2
0
 protected final function assertMatches(\Pinq\ITraversable $traversable, array $array, $message = '')
 {
     $firstIterationArray = [];
     foreach ($traversable as $key => $value) {
         $firstIterationArray[$key] = $value;
     }
     $secondIterationArray = [];
     foreach ($traversable as $key => $value) {
         $secondIterationArray[$key] = $value;
     }
     //Ignore keys as may be incompatible with foreach
     $trueIteratorArray = [];
     foreach ($traversable->getTrueIterator() as $value) {
         $trueIteratorArray[] = $value;
     }
     $explicitArray = $traversable->asArray();
     $this->assertSame($array, $firstIterationArray, $message);
     $this->assertSame($array, $secondIterationArray, $message);
     $this->assertSame($array, $explicitArray, $message);
     $this->assertSame(array_values($array), $trueIteratorArray, $message);
 }