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

Method MakeAsyncIterator

cpp/src/arrow/csv/reader.cc:284–294  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

282 using BlockReader::BlockReader;
283
284 static AsyncGenerator<CSVBlock> MakeAsyncIterator(
285 AsyncGenerator<std::shared_ptr<Buffer>> buffer_generator,
286 std::unique_ptr<Chunker> chunker, std::shared_ptr<Buffer> first_buffer,
287 int64_t skip_rows) {
288 auto block_reader = std::make_shared<ThreadedBlockReader>(std::move(chunker),
289 first_buffer, skip_rows);
290 // Wrap shared pointer in callable
291 Transformer<std::shared_ptr<Buffer>, CSVBlock> block_reader_fn =
292 [block_reader](std::shared_ptr<Buffer> next) { return (*block_reader)(next); };
293 return MakeTransformedGenerator(std::move(buffer_generator), block_reader_fn);
294 }
295
296 Result<TransformFlow<CSVBlock>> operator()(std::shared_ptr<Buffer> next_buffer) {
297 if (buffer_ == nullptr) {

Callers

nothing calls this directly

Calls 1

MakeTransformedGeneratorFunction · 0.85

Tested by

no test coverage detected