Ensures that the argument is a list that either is empty or contains only GPParamSpec's
        :param arr: list
        :return:

def _all_params(arr):
        """
        Ensures that the argument is a list that either is empty or contains only GPParamSpec's
        :param arr: list
        :return:
        """
        if not isinstance([], list):
            raise TypeError("non-list value found for parameters")
        return all(isinstance(x, GPParamSpec) for x in arr)