pub trait ArrowSerialize: ArrowField {
    type MutableArrayType: MutableArray;

    // Required methods
    fn new_array() -> Self::MutableArrayType;
    fn arrow_serialize(
        v: &<Self as ArrowField>::Type,
        array: &mut Self::MutableArrayType
    ) -> Result<()>;
}
Expand description

Trait that is implemented by all types that are serializable to Arrow.

Implementations are provided for all built-in arrow types as well as Vec, and Option if T implements ArrowSerialize.

Note that Vec implementation needs to be enabled by the crate::arrow_enable_vec_for_type macro.

Required Associated Types§

Required Methods§

source

fn new_array() -> Self::MutableArrayType

Create a new mutable array

source

fn arrow_serialize( v: &<Self as ArrowField>::Type, array: &mut Self::MutableArrayType ) -> Result<()>

Serialize this field to arrow

Implementations on Foreign Types§

source§

impl ArrowSerialize for i8

source§

impl ArrowSerialize for NaiveDateTime

source§

impl ArrowSerialize for f32

source§

impl ArrowSerialize for Vec<u8>

source§

impl ArrowSerialize for Buffer<u8>

source§

impl ArrowSerialize for NaiveDate

source§

impl ArrowSerialize for i16

source§

impl ArrowSerialize for u16

source§

impl ArrowSerialize for u64

source§

impl ArrowSerialize for bool

source§

impl ArrowSerialize for u32

source§

impl<T> ArrowSerialize for Buffer<T>where T: NativeType + ArrowSerialize + ArrowEnableVecForType,

source§

impl ArrowSerialize for String

source§

impl ArrowSerialize for i64

source§

impl ArrowSerialize for f16

source§

impl<T> ArrowSerialize for Vec<T>where T: ArrowSerialize + ArrowEnableVecForType + 'static, <T as ArrowSerialize>::MutableArrayType: Default,

source§

impl ArrowSerialize for i32

source§

impl ArrowSerialize for f64

source§

impl ArrowSerialize for u8

source§

impl<T> ArrowSerialize for Option<T>where T: ArrowSerialize,

Implementors§