Struct arrow::ipc::writer::DictionaryTracker[][src]

pub struct DictionaryTracker { /* fields omitted */ }

Keeps track of dictionaries that have been written, to avoid emitting the same dictionary multiple times. Can optionally error if an update to an existing dictionary is attempted, which isn’t allowed in the FileWriter.

Implementations

impl DictionaryTracker[src]

pub fn new(error_on_replacement: bool) -> Self[src]

pub fn insert(&mut self, dict_id: i64, column: &ArrayRef) -> Result<bool>[src]

Keep track of the dictionary with the given ID and values. Behavior:

  • If this ID has been written already and has the same data, return Ok(false) to indicate that the dictionary was not actually inserted (because it’s already been seen).
  • If this ID has been written already but with different data, and this tracker is configured to return an error, return an error.
  • If the tracker has not been configured to error on replacement or this dictionary has never been seen before, return Ok(true) to indicate that the dictionary was just inserted.

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,