44
55class 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