Struct arrow::ipc::writer::StreamWriter [−][src]
pub struct StreamWriter<W: Write> { /* fields omitted */ }
Implementations
Try create a new writer, with the schema written as part of the header
pub fn try_new_with_options(
writer: W,
schema: &Schema,
write_options: IpcWriteOptions
) -> Result<Self>
Write a record batch to the stream
Unwraps the BufWriter housed in StreamWriter.writer, returning the underlying writer
The buffer is flushed and the StreamWriter is finished before returning the writer.
Errors
An [‘Err’] may be returned if an error occurs while finishing the StreamWriter or while flushing the buffer.
Example
// The result we expect from an empty schema
let expected = vec![
255, 255, 255, 255, 64, 0, 0, 0,
16, 0, 0, 0, 0, 0, 10, 0,
14, 0, 12, 0, 11, 0, 4, 0,
10, 0, 0, 0, 20, 0, 0, 0,
0, 0, 0, 1, 4, 0, 10, 0,
12, 0, 0, 0, 8, 0, 4, 0,
10, 0, 0, 0, 8, 0, 0, 0,
8, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
255, 255, 255, 255, 0, 0, 0, 0
];
let schema = Schema::new(vec![]);
let buffer: Vec<u8> = Vec::new();
let stream_writer = StreamWriter::try_new(buffer, &schema)?;
assert_eq!(stream_writer.into_inner()?, expected);