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

Method AppendScalars

cpp/src/arrow/array/builder_base.cc:345–359  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

343}
344
345Status ArrayBuilder::AppendScalars(const ScalarVector& scalars) {
346 if (scalars.empty()) return Status::OK();
347 const auto ty = type();
348 for (const auto& scalar : scalars) {
349 if (!scalar->type->Equals(ty)) {
350 return Status::Invalid("Cannot append scalar of type ", scalar->type->ToString(),
351 " to builder for type ", type()->ToString());
352 }
353 }
354
355 using Iterator = DerefConstIterator<ScalarVector::const_iterator>;
356 return AppendScalarImpl<Iterator>{Iterator{scalars.begin()}, Iterator{scalars.end()},
357 /*n_repeats=*/1, this}
358 .Convert();
359}
360
361Status ArrayBuilder::Finish(std::shared_ptr<Array>* out) {
362 std::shared_ptr<ArrayData> internal_data;

Callers 5

AppendScalarsFunction · 0.45
FromProtoFunction · 0.45
AssertAppendScalarFunction · 0.45
ScalarVectorToArrayFunction · 0.45
GenericToScalarFunction · 0.45

Calls 9

typeFunction · 0.70
OKFunction · 0.50
InvalidFunction · 0.50
emptyMethod · 0.45
EqualsMethod · 0.45
ToStringMethod · 0.45
ConvertMethod · 0.45
beginMethod · 0.45
endMethod · 0.45

Tested by 1

AssertAppendScalarFunction · 0.36