| 204 | |
| 205 | private: |
| 206 | void fill(const arrow::Array& array) { |
| 207 | const auto array_data = array.data(); |
| 208 | const auto data = array_data->GetValuesSafe<uint8_t>(1); |
| 209 | view_->data = const_cast<void *>(reinterpret_cast<const void *>(data)); |
| 210 | const auto type = |
| 211 | std::static_pointer_cast<const arrow::FixedWidthType>(array.type()); |
| 212 | view_->item_size = type->bit_width() / 8; |
| 213 | view_->byte_size = view_->item_size * array.length(); |
| 214 | } |
| 215 | |
| 216 | memory_view *view_; |
| 217 | }; |