enum ColReader {
Show 34 variants
Boolean(BooleanArray),
Int8 {
array: Int8Array,
cast: fn(_: i8) -> Datum<'static>,
},
Int16(Int16Array),
Int32(Int32Array),
Int64(Int64Array),
UInt8 {
array: UInt8Array,
cast: fn(_: u8) -> Datum<'static>,
},
UInt16(UInt16Array),
UInt32(UInt32Array),
UInt64(UInt64Array),
Float16 {
array: Float16Array,
cast: fn(_: f16) -> Datum<'static>,
},
Float32(Float32Array),
Float64(Float64Array),
Decimal128 {
array: Decimal128Array,
scale_factor: Numeric,
precision: usize,
},
Decimal256 {
array: Decimal256Array,
scale_factor: Numeric,
precision: usize,
},
Binary(BinaryArray),
LargeBinary(LargeBinaryArray),
FixedSizeBinary(FixedSizeBinaryArray),
BinaryView(BinaryViewArray),
Uuid(Box<ColReader>),
String(StringArray),
LargeString(LargeStringArray),
StringView(StringViewArray),
Jsonb(Box<ColReader>),
TimestampSecond(TimestampSecondArray),
TimestampMillisecond(TimestampMillisecondArray),
TimestampMicrosecond(TimestampMicrosecondArray),
TimestampNanosecond(TimestampNanosecondArray),
Date32(Date32Array),
Date64(Date64Array),
Time32Seconds(Time32SecondArray),
Time32Milliseconds(Time32MillisecondArray),
List {
offsets: OffsetBuffer<i32>,
values: Box<ColReader>,
nulls: Option<NullBuffer>,
},
LargeList {
offsets: OffsetBuffer<i64>,
values: Box<ColReader>,
nulls: Option<NullBuffer>,
},
Record {
fields: Vec<Box<ColReader>>,
nulls: Option<NullBuffer>,
},
}
Expand description
A “downcasted” version of arrow::array::Array
that supports reading Datum
s.
Note: While this is fairly verbose, one-time “downcasting” to an enum is much more performant
than downcasting every time we read a Datum
.
Variants§
Boolean(BooleanArray)
Int8
Int16(Int16Array)
Int32(Int32Array)
Int64(Int64Array)
UInt8
UInt16(UInt16Array)
UInt32(UInt32Array)
UInt64(UInt64Array)
Float16
Float32(Float32Array)
Float64(Float64Array)
Decimal128
Decimal256
Binary(BinaryArray)
LargeBinary(LargeBinaryArray)
FixedSizeBinary(FixedSizeBinaryArray)
BinaryView(BinaryViewArray)
Uuid(Box<ColReader>)
String(StringArray)
LargeString(LargeStringArray)
StringView(StringViewArray)
Jsonb(Box<ColReader>)
TimestampSecond(TimestampSecondArray)
TimestampMillisecond(TimestampMillisecondArray)
TimestampMicrosecond(TimestampMicrosecondArray)
TimestampNanosecond(TimestampNanosecondArray)
Date32(Date32Array)
Date64(Date64Array)
Time32Seconds(Time32SecondArray)
Time32Milliseconds(Time32MillisecondArray)
List
LargeList
Record
Implementations§
Auto Trait Implementations§
impl Freeze for ColReader
impl RefUnwindSafe for ColReader
impl Send for ColReader
impl Sync for ColReader
impl Unpin for ColReader
impl UnwindSafe for ColReader
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T
in a tonic::Request
Source§impl<T, U> OverrideFrom<Option<&T>> for Uwhere
U: OverrideFrom<T>,
impl<T, U> OverrideFrom<Option<&T>> for Uwhere
U: OverrideFrom<T>,
Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
Source§fn into_rust(self) -> Result<R, TryFromProtoError>
fn into_rust(self) -> Result<R, TryFromProtoError>
See
RustType::from_proto
.Source§fn from_rust(rust: &R) -> P
fn from_rust(rust: &R) -> P
See
RustType::into_proto
.Source§impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
Source§fn plus_equals(&mut self, rhs: &&'a S)
fn plus_equals(&mut self, rhs: &&'a S)
The method of
std::ops::AddAssign
, for types that do not implement AddAssign
.