123456789101112131415161718192021222324252627282930313233343536373839 |
- <?php
- /**
- * @file
- * SortInterface.php
- *
- * @author: marand
- *
- * @license General Public License version 2 or later
- */
- namespace OSInet\Sort;
- interface SortInterface {
- /**
- * @param string $type
- * The name of the sort algorithm: bubble, heap, insertion, merge, quick,
- * selection, and so on.
- *
- * @return SortInterface
- */
- public static function create($type);
- /**
- * @param array $data
- * The data to sort. It will not be modified in place.
- * @param callable $comparison
- * The comparison callback. It must take two Sortable parameters, and
- * return less than 0 if the first is lower than the second, 0 if they are
- * equal, and more than 0 if the first is higher than the second. It may
- * take a third array parameter, which will receive the $options array.
- * @param array $options
- * A hash of options for the comparison function.
- *
- * @return array
- * The sorted version of the input data.
- */
- public function sort($data, $comparison, $options = array());
- }
|