/** * @return mixed|callable */ public static function divide() { $args = func_get_args(); /** * Divides two numbers. Equivalent to `$a / $b`. * * @category Math * * @param int|float $a The first value. * @param int|float $b The second value. * * @return float The result of `$a / $b`. */ $_divide = function ($a, $b) { Exception::assertNumber($a); Exception::assertNonZero($b); return $a / $b; }; return call_user_func_array(self::curry2($_divide), $args); }