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

Method ProcessREE

cpp/src/arrow/c/bridge.cc:1388–1402  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1386 }
1387
1388 Status ProcessREE() {
1389 RETURN_NOT_OK(f_parser_.CheckAtEnd());
1390 RETURN_NOT_OK(CheckNumChildren(2));
1391 ARROW_ASSIGN_OR_RAISE(auto run_ends_field, MakeChildField(0));
1392 ARROW_ASSIGN_OR_RAISE(auto values_field, MakeChildField(1));
1393 if (!is_run_end_type(run_ends_field->type()->id())) {
1394 return Status::Invalid("Expected a valid run-end integer type, but struct has ",
1395 run_ends_field->type()->ToString());
1396 }
1397 if (values_field->type()->id() == Type::RUN_END_ENCODED) {
1398 return Status::Invalid("ArrowArray struct contains a nested run-end encoded array");
1399 }
1400 type_ = run_end_encoded(run_ends_field->type(), values_field->type());
1401 return Status::OK();
1402 }
1403
1404 Result<std::shared_ptr<Field>> MakeChildField(int64_t child_id) {
1405 const auto& child = child_importers_[child_id];

Callers

nothing calls this directly

Calls 8

is_run_end_typeFunction · 0.85
run_end_encodedFunction · 0.85
CheckAtEndMethod · 0.80
InvalidFunction · 0.50
OKFunction · 0.50
idMethod · 0.45
typeMethod · 0.45
ToStringMethod · 0.45

Tested by

no test coverage detected