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

Method CreateRecordBatch

cpp/src/arrow/ipc/reader.cc:620–638  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

618// buffer decompression, dictionary resolution, buffer re-alignment.
619struct RecordBatchLoader {
620 Result<std::shared_ptr<RecordBatch>> CreateRecordBatch(ArrayDataVector columns) {
621 ARROW_ASSIGN_OR_RAISE(auto filtered_columns, CreateColumns(std::move(columns)));
622
623 std::shared_ptr<Schema> filtered_schema;
624 if (!inclusion_mask_.empty()) {
625 FieldVector filtered_fields;
626 for (int i = 0; i < schema_->num_fields(); ++i) {
627 if (inclusion_mask_[i]) {
628 filtered_fields.push_back(schema_->field(i));
629 }
630 }
631 filtered_schema = schema(std::move(filtered_fields), schema_->metadata());
632 } else {
633 filtered_schema = schema_;
634 }
635
636 return RecordBatch::Make(std::move(filtered_schema), batch_length_,
637 std::move(filtered_columns));
638 }
639
640 Result<ArrayDataVector> CreateColumns(ArrayDataVector columns,
641 bool resolve_dictionaries = true) {

Callers 3

LoadRecordBatchSubsetFunction · 0.45
CreateRecordBatchMethod · 0.45
ReadCachedRecordBatchMethod · 0.45

Calls 7

push_backMethod · 0.80
schemaFunction · 0.70
MakeFunction · 0.50
emptyMethod · 0.45
num_fieldsMethod · 0.45
fieldMethod · 0.45
metadataMethod · 0.45

Tested by

no test coverage detected