enum Decoder {
Show 41 variants
Null(usize),
Boolean(BooleanBufferBuilder),
Int32(Vec<i32>),
Int64(Vec<i64>),
DurationSecond(Vec<i64>),
DurationMillisecond(Vec<i64>),
DurationMicrosecond(Vec<i64>),
DurationNanosecond(Vec<i64>),
Float32(Vec<f32>),
Float64(Vec<f64>),
Date32(Vec<i32>),
TimeMillis(Vec<i32>),
TimeMicros(Vec<i64>),
TimestampMillis(bool, Vec<i64>),
TimestampMicros(bool, Vec<i64>),
TimestampNanos(bool, Vec<i64>),
Int32ToInt64(Vec<i64>),
Int32ToFloat32(Vec<f32>),
Int32ToFloat64(Vec<f64>),
Int64ToFloat32(Vec<f32>),
Int64ToFloat64(Vec<f64>),
Float32ToFloat64(Vec<f64>),
BytesToString(OffsetBufferBuilder<i32>, Vec<u8>),
StringToBytes(OffsetBufferBuilder<i32>, Vec<u8>),
Binary(OffsetBufferBuilder<i32>, Vec<u8>),
String(OffsetBufferBuilder<i32>, Vec<u8>),
StringView(OffsetBufferBuilder<i32>, Vec<u8>),
Array(FieldRef, OffsetBufferBuilder<i32>, Box<Decoder>),
Record(Fields, Vec<Decoder>, Option<Projector>),
Map(FieldRef, OffsetBufferBuilder<i32>, OffsetBufferBuilder<i32>, Vec<u8>, Box<Decoder>),
Fixed(i32, Vec<u8>),
Enum(Vec<i32>, Arc<[String]>, Option<EnumResolution>),
Duration(IntervalMonthDayNanoBuilder),
Uuid(Vec<u8>),
Decimal32(usize, Option<usize>, Option<usize>, Decimal32Builder),
Decimal64(usize, Option<usize>, Option<usize>, Decimal64Builder),
Decimal128(usize, Option<usize>, Option<usize>, Decimal128Builder),
Decimal256(usize, Option<usize>, Option<usize>, Decimal256Builder),
RunEndEncoded(u8, usize, Box<Decoder>),
Union(UnionDecoder),
Nullable(Nullability, NullBufferBuilder, Box<Decoder>, NullablePlan),
}变体§
Null(usize)
Boolean(BooleanBufferBuilder)
Int32(Vec<i32>)
Int64(Vec<i64>)
DurationSecond(Vec<i64>)
DurationMillisecond(Vec<i64>)
DurationMicrosecond(Vec<i64>)
DurationNanosecond(Vec<i64>)
Float32(Vec<f32>)
Float64(Vec<f64>)
Date32(Vec<i32>)
TimeMillis(Vec<i32>)
TimeMicros(Vec<i64>)
TimestampMillis(bool, Vec<i64>)
TimestampMicros(bool, Vec<i64>)
TimestampNanos(bool, Vec<i64>)
Int32ToInt64(Vec<i64>)
Int32ToFloat32(Vec<f32>)
Int32ToFloat64(Vec<f64>)
Int64ToFloat32(Vec<f32>)
Int64ToFloat64(Vec<f64>)
Float32ToFloat64(Vec<f64>)
BytesToString(OffsetBufferBuilder<i32>, Vec<u8>)
StringToBytes(OffsetBufferBuilder<i32>, Vec<u8>)
Binary(OffsetBufferBuilder<i32>, Vec<u8>)
String(OffsetBufferBuilder<i32>, Vec<u8>)
字符串数据以 UTF-8 字节编码,映射到 Arrow 的 StringArray
StringView(OffsetBufferBuilder<i32>, Vec<u8>)
字符串数据以 UTF-8 字节编码,但映射到 Arrow 的 StringViewArray
Array(FieldRef, OffsetBufferBuilder<i32>, Box<Decoder>)
Record(Fields, Vec<Decoder>, Option<Projector>)
Map(FieldRef, OffsetBufferBuilder<i32>, OffsetBufferBuilder<i32>, Vec<u8>, Box<Decoder>)
Fixed(i32, Vec<u8>)
Enum(Vec<i32>, Arc<[String]>, Option<EnumResolution>)
Duration(IntervalMonthDayNanoBuilder)
Uuid(Vec<u8>)
Decimal32(usize, Option<usize>, Option<usize>, Decimal32Builder)
Decimal64(usize, Option<usize>, Option<usize>, Decimal64Builder)
Decimal128(usize, Option<usize>, Option<usize>, Decimal128Builder)
Decimal256(usize, Option<usize>, Option<usize>, Decimal256Builder)
RunEndEncoded(u8, usize, Box<Decoder>)
Union(UnionDecoder)
Nullable(Nullability, NullBufferBuilder, Box<Decoder>, NullablePlan)
实现§
源§impl Decoder
impl Decoder
fn try_new(data_type: &AvroDataType) -> Result<Self, ArrowError>
fn try_new_internal(data_type: &AvroDataType) -> Result<Self, ArrowError>
源代码fn append_null(&mut self) -> Result<(), ArrowError>
fn append_null(&mut self) -> Result<(), ArrowError>
附加一个空记录
源代码fn append_default(&mut self, lit: &AvroLiteral) -> Result<(), ArrowError>
fn append_default(&mut self, lit: &AvroLiteral) -> Result<(), ArrowError>
将单个默认字面量附加到解码器的缓冲区中
源代码fn decode(&mut self, buf: &mut AvroCursor<'_>) -> Result<(), ArrowError>
fn decode(&mut self, buf: &mut AvroCursor<'_>) -> Result<(), ArrowError>
从 buf 解码单个记录