def partial_map(method, object_seq):
    """
    Like map, but filters out all objects with an non-true result, and
    returns them in a separate items list. I.e. any item for which the map
    resulted in a non-true value is provided in a "reject" list.

    @param method: The method to perform on each item.
    @type method: function
    @param object_seq: The sequence of items to apply the method to.
    @type object_seq: sequence
    @return: The tuple of lists (mapped_items, rejected_items).
    """
    mapped = []
    rejected = []
    for item in object_seq:
        result = method(*(item,))
        if result:
            mapped.append(result)
        else:
            rejected.append(item)
    return mapped, rejected
