presto-main/src/main/java/io/prestosql/operator/index/TuplePageFilter.java/TuplePageFilter/TuplePageFilter
class TuplePageFilter:    public TuplePageFilter(Page tuplePage, List<Type> types, List<Integer> inputChannels)
    {
        requireNonNull(tuplePage, "tuplePage is null");
        requireNonNull(types, "types is null");
        requireNonNull(inputChannels, "inputChannels is null");

        checkArgument(tuplePage.getPositionCount() == 1, "tuplePage should only have one position");
        checkArgument(tuplePage.getChannelCount() == inputChannels.size(), "tuplePage and inputChannels have different number of channels");
        checkArgument(types.size() == inputChannels.size(), "types and inputChannels have different number of channels");

        this.tuplePage = tuplePage;
        this.types = ImmutableList.copyOf(types);
        this.inputChannels = new InputChannels(inputChannels);
    }