/** * See IIteratorSorter. * * @param \TRex\Iterator\Iterator\SortType $type * @param callable|int $option * @return self */ public function sort(SortType $type = null, $option = SORT_NATURAL) { if (!$type) { $type = new SortType(SortType::ASSOCIATIVE_SORT_TYPE); } $sort = $type->getValue(is_callable($option)); $values = $this->getIterator()->toArray(); $sort($values, $option); return new $this($values); }
/** * Tests getValue for a callback. */ public function testGetValueForCallback() { $sortType = new SortType(SortType::VALUE_SORT_TYPE); $this->assertSame('usort', $sortType->getValue(true)); }