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

Method operator()

cpp/src/arrow/json/reader.cc:307–324  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

305 : context_(std::move(context)) {}
306
307 Result<DecodedBlock> operator()(const ChunkedBlock& block) const {
308 int64_t num_bytes;
309 ARROW_ASSIGN_OR_RAISE(auto unconverted, ParseBlock(block, context_->parse_options(),
310 context_->pool(), &num_bytes));
311
312 std::shared_ptr<ChunkedArrayBuilder> builder;
313 RETURN_NOT_OK(MakeChunkedArrayBuilder(TaskGroup::MakeSerial(), context_->pool(),
314 context_->promotion_graph(),
315 context_->conversion_type(), &builder));
316 builder->Insert(0, field("", unconverted->type()), unconverted);
317
318 std::shared_ptr<ChunkedArray> chunked;
319 RETURN_NOT_OK(builder->Finish(&chunked));
320 ARROW_ASSIGN_OR_RAISE(
321 auto batch, RecordBatch::FromStructArray(chunked->chunk(0), context_->pool()));
322
323 return DecodedBlock{std::move(batch), num_bytes};
324 }
325
326 private:
327 std::shared_ptr<const DecodeContext> context_;

Callers

nothing calls this directly

Calls 7

MakeChunkedArrayBuilderFunction · 0.85
promotion_graphMethod · 0.80
fieldFunction · 0.50
poolMethod · 0.45
InsertMethod · 0.45
typeMethod · 0.45
FinishMethod · 0.45

Tested by

no test coverage detected