protected function invokeCallable(callable $callback, $callbackArguments)
    {
        if ($callbackArguments === null) {
            return $callback();
        }

        if (Arr::isIndexed($callbackArguments)) {
            return call_user_func_array($callback, (array) $callbackArguments);
        }

        $orderedArgs = $this->getArguments($callback, $callbackArguments);

        return call_user_func_array($callback, $orderedArgs);
    }