Struct arrow_json::writer::Writer

source ·
pub struct Writer<W, F>
where W: Write, F: JsonFormat,
{ /* private fields */ }
Expand description

A JSON writer which serializes RecordBatches to a stream of u8 encoded JSON objects. See the module level documentation for detailed usage and examples. The specific format of the stream is controlled by the JsonFormat type parameter.

Implementations§

source§

impl<W, F> Writer<W, F>
where W: Write, F: JsonFormat,

source

pub fn new(writer: W) -> Self

Construct a new writer

source

pub fn write_row(&mut self, row: &Value) -> Result<(), ArrowError>

Write a single JSON row to the output writer

source

pub fn write(&mut self, batch: &RecordBatch) -> Result<(), ArrowError>

Convert the RecordBatch into JSON rows, and write them to the output

source

pub fn write_batches( &mut self, batches: &[&RecordBatch] ) -> Result<(), ArrowError>

Convert the RecordBatch into JSON rows, and write them to the output

source

pub fn finish(&mut self) -> Result<(), ArrowError>

Finishes the output stream. This function must be called after all record batches have been produced. (e.g. producing the final ']' if writing arrays.

source

pub fn into_inner(self) -> W

Unwraps this Writer<W>, returning the underlying writer

Trait Implementations§

source§

impl<W, F> Debug for Writer<W, F>
where W: Write + Debug, F: JsonFormat + Debug,

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<W, F> RecordBatchWriter for Writer<W, F>
where W: Write, F: JsonFormat,

source§

fn write(&mut self, batch: &RecordBatch) -> Result<(), ArrowError>

Write a single batch to the writer.
source§

fn close(self) -> Result<(), ArrowError>

Write footer or termination data, then mark the writer as done.

Auto Trait Implementations§

§

impl<W, F> RefUnwindSafe for Writer<W, F>

§

impl<W, F> Send for Writer<W, F>
where F: Send, W: Send,

§

impl<W, F> Sync for Writer<W, F>
where F: Sync, W: Sync,

§

impl<W, F> Unpin for Writer<W, F>
where F: Unpin, W: Unpin,

§

impl<W, F> UnwindSafe for Writer<W, F>
where F: UnwindSafe, W: UnwindSafe,

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> Allocation for T
where T: RefUnwindSafe + Send + Sync,