def check_list_or_object(_list: list, _class: type):
    """
    Checks if _list parameter is a list of the same type as _class, or if it is a single value of that type.
    :param _list: List or single value to be checked.
    :param _class: Type of object desired.
    :return: List of values of the type _class.
    """
    if _list:
        if isinstance(_list, (list, tuple)):
            if all([isinstance(obj, _class) for obj in _list]):
                return _list
            else:
                raise TypeError("Object in argument list is not a {0}!".format(_class.__name__))
        else:
            if isinstance(_list, _class):
                return [_list]
            else:
                raise TypeError("Argument used is not a {0}!".format(_class.__name__))
    else:
        return []