Skip to content

Commit a33f801

Browse files
committed
Allow not passing callback/errback
1 parent 27f45f6 commit a33f801

1 file changed

Lines changed: 13 additions & 5 deletions

File tree

src/React/Async/Util.php

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
class Util
66
{
7-
public static function series($tasks, $callback, $errback)
7+
public static function series($tasks, $callback = null, $errback = null)
88
{
99
$results = array();
1010

@@ -14,7 +14,9 @@ public static function series($tasks, $callback, $errback)
1414
};
1515

1616
$done = function () use (&$results, $callback) {
17-
call_user_func($callback, $results);
17+
if ($callback) {
18+
call_user_func($callback, $results);
19+
}
1820
};
1921

2022
$next = function () use (&$tasks, $taskCallback, $errback, $done) {
@@ -30,7 +32,7 @@ public static function series($tasks, $callback, $errback)
3032
$next();
3133
}
3234

33-
public static function parallel($tasks, $callback, $errback)
35+
public static function parallel($tasks, $callback = null, $errback = null)
3436
{
3537
$results = array();
3638
$errors = array();
@@ -41,6 +43,10 @@ public static function parallel($tasks, $callback, $errback)
4143
};
4244

4345
$done = function () use (&$results, &$errors, $callback, $errback) {
46+
if (!$callback) {
47+
return;
48+
}
49+
4450
if (count($errors)) {
4551
$errback(array_shift($errors));
4652
return;
@@ -72,14 +78,16 @@ public static function parallel($tasks, $callback, $errback)
7278
}
7379
}
7480

75-
public static function waterfall($tasks, $callback, $errback)
81+
public static function waterfall($tasks, $callback = null, $errback = null)
7682
{
7783
$taskCallback = function () use (&$next) {
7884
call_user_func_array($next, func_get_args());
7985
};
8086

8187
$done = function () use ($callback) {
82-
call_user_func_array($callback, func_get_args());
88+
if ($callback) {
89+
call_user_func_array($callback, func_get_args());
90+
}
8391
};
8492

8593
$next = function () use (&$tasks, $taskCallback, $errback, $done) {

0 commit comments

Comments
 (0)