code: def eval_where(where_list,composite_row,nix,tables_dict):
    "join-friendly whereclause evaluator. composite_row is a list or tuple of row lists. where_list is the thing from decompose_select."
    # todo: do I need to use 3vl instead of all() to merge where_list?
    evaluator = Evaluator(composite_row,nix,tables_dict)
    return all(evaluator.eval(w) for w in where_listf eval_where(where_list,composite_row,nix,tables_dict):
    "join-friendly whereclause evaluator. composite_row is a list or tuple of row lists. where_list is the thing from decompose_select."
    # todo: do I need to use 3vl instead of all() to merge where_list?
    evaluator = Evaluator(composite_row,nix,tables_dict)
    return all(evaluator.eval(w) for w in where_list)
docs: join-friendly whereclause evaluator. composite_row is a list or tuple of row lists. where_list is the thing from decompose_select.