MCPcopy Create free account
hub / github.com/apache/arrow / WriteTimestampBatch

Function WriteTimestampBatch

cpp/src/arrow/adapters/orc/util.cc:669–688  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

667
668template <class DataType>
669Status WriteTimestampBatch(const Array& array, int64_t orc_offset,
670 liborc::ColumnVectorBatch* column_vector_batch,
671 const int64_t& conversion_factor_from_second,
672 const int64_t& conversion_factor_to_nano) {
673 using ArrayType = typename TypeTraits<DataType>::ArrayType;
674 const ArrayType& array_(checked_cast<const ArrayType&>(array));
675 auto batch = checked_cast<liborc::TimestampVectorBatch*>(column_vector_batch);
676 if (array.null_count()) {
677 batch->hasNulls = true;
678 }
679 TimestampAppender<DataType> appender{array_,
680 batch,
681 orc_offset,
682 0,
683 conversion_factor_from_second,
684 conversion_factor_to_nano};
685 ArraySpanVisitor<DataType> visitor;
686 RETURN_NOT_OK(visitor.Visit(*array_.data(), &appender));
687 return Status::OK();
688}
689
690Status WriteFixedSizeBinaryBatch(const Array& array, int64_t orc_offset,
691 liborc::ColumnVectorBatch* column_vector_batch) {

Callers

nothing calls this directly

Calls 4

OKFunction · 0.50
null_countMethod · 0.45
VisitMethod · 0.45
dataMethod · 0.45

Tested by

no test coverage detected