def make_iterables(values):
    """
    Create a list of iterables (``list`` and ``tuple``) containing each of the
    values passed as a parameter. It was designed to be used when defining types
    in the configuration schema. For example make_iterables([str, ContextVale])
    will return  [[str], (str,), [ContextValue], (ContextValue,)].

    :param values: List of values to place in each iterable.
    :type values: ``list``

    :return: List of iterables containing one of each of the values.
    :rtype: ``list`` of ``list`` and ``tuple``
    """
    iterables = []
    for value in values:
        iterables.append([value])
        iterables.append((value,))
    return iterables