def _get_class_repr(cls, type_, bound, keyfunc, keyfunc_name):
    """Return a class representation using the slice parameters.

        Args:
            type_: The type the class was sliced with.
            bound: The boundaries specified for the values of type_.
            keyfunc: The comparison function used to check the value
                boundaries.
            keyfunc_name: The name of keyfunc.

        Returns:
            A string representing the class.
        """
    if keyfunc is not cls._default:
        return '{}.{}[{}, {}, {}]'.format(cls.__module__, cls.__name__, cls
            ._get_fullname(type_), cls._get_bound_repr(bound), keyfunc_name)
    return '{}.{}[{}, {}]'.format(cls.__module__, cls.__name__, cls.
        _get_fullname(type_), cls._get_bound_repr(bound))
