def mkFilter(parts):
    """Convert a filter-convertable thing into a filter

    @param parts: a filter, an endpoint, a callable, or a list of any of these.
    """
    # Convert the parts into a list, and pass to mkCompoundFilter
    if parts is None:
        parts = [BasicServiceEndpoint]

    try:
        parts = list(parts)
    except __HOLE__:
        return mkCompoundFilter([parts])
    else:
        return mkCompoundFilter(parts)
dataset/ETHPy150Open CollabQ/CollabQ/openid/yadis/filters.py/mkFilter