presto-main/src/main/java/io/prestosql/metadata/InternalTable.java/Builder/Builder
class Builder:        public Builder(List<String> columnNames, List<Type> types)
        {
            requireNonNull(columnNames, "columnNames is null");

            ImmutableMap.Builder<String, Integer> columnIndexes = ImmutableMap.builder();
            int columnIndex = 0;
            for (String columnName : columnNames) {
                columnIndexes.put(columnName, columnIndex++);
            }
            this.columnIndexes = columnIndexes.build();

            this.types = ImmutableList.copyOf(requireNonNull(types, "types is null"));
            checkArgument(columnNames.size() == types.size(),
                    "Column name count does not match type count: columnNames=%s, types=%s", columnNames, types.size());

            pages = new ArrayList<>();
            pageBuilder = new PageBuilder(types);
            recordCount = 0;
        }