| 308 | public: |
| 309 | template <typename T> |
| 310 | enable_if_t<std::is_base_of<PrimitiveArray, T>::value || |
| 311 | std::is_base_of<FixedSizeBinaryArray, T>::value || |
| 312 | std::is_base_of<BinaryArray, T>::value || |
| 313 | std::is_base_of<LargeBinaryArray, T>::value || |
| 314 | std::is_base_of<BinaryViewArray, T>::value || |
| 315 | std::is_base_of<ListArray, T>::value || |
| 316 | std::is_base_of<LargeListArray, T>::value || |
| 317 | std::is_base_of<ListViewArray, T>::value || |
| 318 | std::is_base_of<LargeListViewArray, T>::value || |
| 319 | std::is_base_of<MapArray, T>::value || |
| 320 | std::is_base_of<FixedSizeListArray, T>::value, |
| 321 | Status> |
| 322 | Visit(const T& array) { |
| 323 | Status st = array.Validate(); |
| 324 | if (!st.ok()) { |
| 325 | (*sink_) << "<Invalid array: " << st.message() << ">"; |
| 326 | return Status::OK(); |
| 327 | } |
| 328 | |
| 329 | OpenArray(array); |
| 330 | if (array.length() > 0) { |
| 331 | RETURN_NOT_OK(WriteDataValues(array)); |
| 332 | } |
| 333 | CloseArray(array); |
| 334 | return Status::OK(); |
| 335 | } |
| 336 | |
| 337 | Status Visit(const NullArray& array) { |
| 338 | (*sink_) << array.length() << " nulls"; |
nothing calls this directly
no test coverage detected