MCPcopy Create free account
hub / github.com/apache/arrow / operator()

Method operator()

cpp/src/arrow/util/async_util.h:404–422  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

402 : state_holder(std::move(state_holder)),
403 task_completion(std::move(task_completion)) {}
404 void operator()(const Result<T>& maybe_item) {
405 if (!maybe_item.ok()) {
406 task_completion.MarkFinished(maybe_item.status());
407 return;
408 }
409 const auto& item = *maybe_item;
410 if (IsIterationEnd(item)) {
411 task_completion.MarkFinished();
412 return;
413 }
414 Status visit_st = state_holder->visitor(item);
415 if (!visit_st.ok()) {
416 task_completion.MarkFinished(std::move(visit_st));
417 return;
418 }
419 state_holder->task_group->AddTask(
420 std::make_unique<SubmitTask>(std::move(state_holder)));
421 task_completion.MarkFinished();
422 }
423 std::unique_ptr<State> state_holder;
424 Future<> task_completion;
425 };

Callers

nothing calls this directly

Calls 5

IsIterationEndFunction · 0.85
okMethod · 0.45
MarkFinishedMethod · 0.45
statusMethod · 0.45
AddTaskMethod · 0.45

Tested by

no test coverage detected