presto-elasticsearch/src/main/java/io/prestosql/elasticsearch/ElasticsearchPageSource.java/ElasticsearchPageSource/createDecoders
class ElasticsearchPageSource:    private List<Decoder> createDecoders(ConnectorSession session, List<ElasticsearchColumnHandle> columns)
    {
        return columns.stream()
                .map(column -> {
                    if (column.getName().equals(ID.getName())) {
                        return new IdColumnDecoder();
                    }

                    if (column.getName().equals(SCORE.getName())) {
                        return new ScoreColumnDecoder();
                    }

                    if (column.getName().equals(SOURCE.getName())) {
                        return new SourceColumnDecoder();
                    }

                    return createDecoder(session, column.getName(), column.getType());
                })
                .collect(toImmutableList());
    }