| 263 | } |
| 264 | |
| 265 | static void scanArrowArrayFixedList(const ArrowSchema* schema, const ArrowArray* array, |
| 266 | ValueVector& outputVector, ArrowNullMaskTree* mask, uint64_t srcOffset, uint64_t dstOffset, |
| 267 | uint64_t count) { |
| 268 | auto numElements = ArrayType::getNumElements(outputVector.dataType); |
| 269 | |
| 270 | mask->copyToValueVector(&outputVector, dstOffset, count); |
| 271 | |
| 272 | rowIter(outputVector, count, [&](auto i) { |
| 273 | auto newEntry = ListVector::addList(&outputVector, numElements); |
| 274 | outputVector.setValue<list_entry_t>(i + dstOffset, newEntry); |
| 275 | }); |
| 276 | |
| 277 | auto auxiliaryBuffer = ListVector::getDataVector(&outputVector); |
| 278 | ArrowConverter::fromArrowArray(schema->children[0], array->children[0], *auxiliaryBuffer, |
| 279 | mask->getChild(0), srcOffset * numElements + array->children[0]->offset, |
| 280 | dstOffset * numElements, count * numElements); |
| 281 | } |
| 282 | |
| 283 | static void scanArrowArrayStruct(const ArrowSchema* schema, const ArrowArray* array, |
| 284 | ValueVector& outputVector, ArrowNullMaskTree* mask, uint64_t srcOffset, uint64_t dstOffset, |
no test coverage detected