7#include <sparrow/buffer/buffer.hpp>
8#include <sparrow/record_batch.hpp>
16 return sparrow::buffer<uint8_t>(size, uint8_t{0}, sparrow::buffer<uint8_t>::default_allocator{});
31 template <
typename CHILD>
38 auto** child_ptrs =
new CHILD*[children.size()];
39 for (std::size_t i = 0; i < children.size(); ++i)
41 child_ptrs[i] =
new CHILD(children[i]);
51 std::optional<sparrow::record_batch>
schema;
52 std::vector<sparrow::record_batch>
batches;
sparrow::buffer< uint8_t > make_zero_offset_buffer()
SPARROW_IPC_API record_batch_stream deserialize_file(std::span< const uint8_t > data)
Deserializes Arrow IPC file format into a record_batch_stream.
SPARROW_IPC_API record_batch_stream deserialize_stream_to_record_batches(std::span< const uint8_t > data)
Deserializes an Arrow IPC stream into a record_batch_stream.
SPARROW_IPC_API std::vector< sparrow::record_batch > deserialize_stream(std::span< const uint8_t > data)
Deserializes an Arrow IPC stream from binary data into a vector of record batches.
sparrow::buffer< uint8_t > make_zeroed_buffer(std::size_t size)
sparrow::buffer< uint8_t > make_typed_zeroed_buffer(std::size_t count)
CHILD ** make_owned_children(std::vector< CHILD > &&children)
Result of stream deserialization containing optional schema and record batches.
std::vector< sparrow::record_batch > batches
std::optional< sparrow::record_batch > schema