Struct deltalake::arrow::json::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.

By default the writer will skip writing keys with null values for backward compatibility. See WriterBuilder on how to customize this behaviour when creating a new writer.

Implementations§

source§

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

source

pub fn new(writer: W) -> Writer<W, F>

Construct a new writer

source

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

👎Deprecated: Use Writer::write

Write a single JSON row to the output writer

source

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

Serialize batch to JSON output

source

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

Serialize batches to JSON 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: Debug + Write, F: Debug + JsonFormat,

source§

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

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> Freeze for Writer<W, F>
where W: Freeze, F: Freeze,

§

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

§

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

§

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

§

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

§

impl<W, F> UnwindSafe for Writer<W, F>
where W: UnwindSafe, F: 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> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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> IntoEither for T

source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
source§

impl<Unshared, Shared> IntoShared<Shared> for Unshared
where Shared: FromUnshared<Unshared>,

source§

fn into_shared(self) -> Shared

Creates a shared type from an unshared type.
source§

impl<T> Same for T

§

type Output = T

Should always be Self
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<V, T> VZip<V> for T
where V: MultiLane<T>,

source§

fn vzip(self) -> V

source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

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

source§

impl<T> Ungil for T
where T: Send,