dbn::encode::csv

Struct EncoderBuilder

Source
pub struct EncoderBuilder<W>
where W: Write,
{ /* private fields */ }
Expand description

Helper for constructing a CSV Encoder.

No fields are required.

Implementations§

Source§

impl<W> EncoderBuilder<W>
where W: Write,

Source

pub fn new(writer: W) -> Self

Creates a new CSV encoder builder.

Source

pub fn use_pretty_px(self, use_pretty_px: bool) -> Self

Sets whether the CSV encoder will serialize price fields as a decimal. Defaults to false.

Source

pub fn use_pretty_ts(self, use_pretty_ts: bool) -> Self

Sets whether the CSV encoder will serialize timestamp fields as ISO8601 datetime strings. Defaults to false.

Source

pub fn write_header(self, write_header: bool) -> Self

Sets whether the CSV encoder will write a header row automatically. Defaults to true.

If false, a header row can still be written with Encoder::encode_header() or Encoder::encode_header_for_schema().

Source

pub fn schema(self, schema: Option<Schema>) -> Self

Sets the schema that will be encoded, used for determining the header row to write.

If schema isn’t set and write_header is left enabled, the header will be written based on the type of the first record.

Source

pub fn ts_out(self, ts_out: bool) -> Self

Sets whether to add a header field “ts_out”. Defaults to false.

Source

pub fn with_symbol(self, with_symbol: bool) -> Self

Sets whether to add a header field “symbol”. Defaults to false.

Source

pub fn delimiter(self, delimiter: u8) -> Self

Sets the field delimiter. Defaults to b',' for comma-separated values (CSV).

Source

pub fn build(self) -> Result<Encoder<W>>

Creates the new encoder with the previously specified settings and if write_header is true, encodes the header row.

§Errors

This function returns an error if it fails to write the header row.

Auto Trait Implementations§

§

impl<W> Freeze for EncoderBuilder<W>
where W: Freeze,

§

impl<W> RefUnwindSafe for EncoderBuilder<W>
where W: RefUnwindSafe,

§

impl<W> Send for EncoderBuilder<W>
where W: Send,

§

impl<W> Sync for EncoderBuilder<W>
where W: Sync,

§

impl<W> Unpin for EncoderBuilder<W>
where W: Unpin,

§

impl<W> UnwindSafe for EncoderBuilder<W>
where 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>,

Source§

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>,

Source§

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> Ungil for T
where T: Send,