public static function doReject($promiseOrValue = null)
    {
        if (!$promiseOrValue instanceof PromiseInterface)
        {
            return new PromiseRejected($promiseOrValue);
        }

        return self::doResolve($promiseOrValue)->then(function($value) {
            return new PromiseRejected($value);
        });
    }