public function push(callable $callback)
    {
        if ($callback instanceof self) {
            $this->queue = array_merge($this->queue, $callback->queue);
            return;
        }

        $this->queue[] = $callback;
    }
public function push(callable $callback)
    {
        if ($callback instanceof self) {
            $this->queue = array_merge($this->queue, $callback->queue);
            return;
        }

        $this->queue[] = $callback;
    }
public function push ( callable $ callback ) { if ( $ callback instanceof self ) { $ this -> queue = array_merge ( $ this -> queue , $ callback -> queue ) ; return ; } $ this -> queue [ ] = $ callback ; }
Unrolls instances of self to avoid blowing up the call stack on resolution.

@param callable $callback
Unrolls instances of self to avoid blowing up the call stack on resolution .