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

Function ConvertColumnsToTensor

cpp/src/arrow/tensor.cc:288–304  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

286
287template <typename DataType>
288inline void ConvertColumnsToTensor(const RecordBatch& batch, uint8_t* out,
289 bool row_major) {
290 using CType = typename arrow::TypeTraits<DataType>::CType;
291 auto* out_values = reinterpret_cast<CType*>(out);
292
293 int i = 0;
294 for (const auto& column : batch.columns()) {
295 if (row_major) {
296 ConvertColumnsToTensorRowMajorVisitor<CType> visitor{out_values, *column->data(),
297 batch.num_columns(), i++};
298 DCHECK_OK(VisitTypeInline(*column->type(), &visitor));
299 } else {
300 ConvertColumnsToTensorVisitor<CType> visitor{out_values, *column->data()};
301 DCHECK_OK(VisitTypeInline(*column->type(), &visitor));
302 }
303 }
304}
305
306Status RecordBatchToTensor(const RecordBatch& batch, bool null_to_nan, bool row_major,
307 MemoryPool* pool, std::shared_ptr<Tensor>* tensor) {

Callers

nothing calls this directly

Calls 5

VisitTypeInlineFunction · 0.85
columnsMethod · 0.80
dataMethod · 0.45
num_columnsMethod · 0.45
typeMethod · 0.45

Tested by

no test coverage detected