| 88 | } |
| 89 | |
| 90 | static void scanArrowArrayDurationScaledDown(const ArrowArray* array, ValueVector& outputVector, |
| 91 | ArrowNullMaskTree* mask, int64_t scaleFactor, uint64_t srcOffset, uint64_t dstOffset, |
| 92 | uint64_t count) { |
| 93 | auto arrayBuffer = ((const int64_t*)array->buffers[1]) + srcOffset; |
| 94 | |
| 95 | mask->copyToValueVector(&outputVector, dstOffset, count); |
| 96 | |
| 97 | rowIter(outputVector, count, [&](auto i) { |
| 98 | if (!mask->isNull(i)) { |
| 99 | auto curValue = arrayBuffer[i]; |
| 100 | outputVector.setValue<interval_t>(i + dstOffset, |
| 101 | interval_t(0, 0, curValue / scaleFactor)); |
| 102 | } |
| 103 | }); |
| 104 | } |
| 105 | |
| 106 | static void scanArrowArrayMonthInterval(const ArrowArray* array, ValueVector& outputVector, |
| 107 | ArrowNullMaskTree* mask, uint64_t srcOffset, uint64_t dstOffset, uint64_t count) { |
no test coverage detected