case INT:
return new LazyIntTreeReader(columnId, rowIndexStride);
case STRING:
return new LazyStringTreeReader(columnId, rowIndexStride);
case BINARY:
return new LazyBinaryTreeReader(columnId, rowIndexStride);
case TIMESTAMP:
return new LazyTimestampTreeReader(columnId, rowIndexStride);
case STRUCT:
int structFieldCount = type.getFieldNamesCount();
LazyTreeReader[] structFields = new LazyTreeReader[structFieldCount];