|
@@ 978-989 (lines=12) @@
|
| 975 |
|
* @param callable|string|null $callback |
| 976 |
|
* @return mixed |
| 977 |
|
*/ |
| 978 |
|
public function max($callback = null) |
| 979 |
|
{ |
| 980 |
|
$callback = $this->valueRetriever($callback); |
| 981 |
|
|
| 982 |
|
return $this->filter(function ($value) { |
| 983 |
|
return ! is_null($value); |
| 984 |
|
})->reduce(function ($result, $item) use ($callback) { |
| 985 |
|
$value = $callback($item); |
| 986 |
|
|
| 987 |
|
return is_null($result) || $value > $result ? $value : $result; |
| 988 |
|
}); |
| 989 |
|
} |
| 990 |
|
|
| 991 |
|
/** |
| 992 |
|
* Merge the collection with the given items. |
|
@@ 1030-1041 (lines=12) @@
|
| 1027 |
|
* @param callable|string|null $callback |
| 1028 |
|
* @return mixed |
| 1029 |
|
*/ |
| 1030 |
|
public function min($callback = null) |
| 1031 |
|
{ |
| 1032 |
|
$callback = $this->valueRetriever($callback); |
| 1033 |
|
|
| 1034 |
|
return $this->filter(function ($value) { |
| 1035 |
|
return ! is_null($value); |
| 1036 |
|
})->reduce(function ($result, $item) use ($callback) { |
| 1037 |
|
$value = $callback($item); |
| 1038 |
|
|
| 1039 |
|
return is_null($result) || $value < $result ? $value : $result; |
| 1040 |
|
}); |
| 1041 |
|
} |
| 1042 |
|
|
| 1043 |
|
/** |
| 1044 |
|
* Create a new collection consisting of every n-th element. |