#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct Buffer {
#[prost(uint32, tag = "1")]
pub buffer_index: u32,
#[prost(enumeration = "buffer::BufferType", tag = "2")]
pub buffer_type: i32,
}
pub mod buffer {
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum BufferType {
Page = 0,
Column = 1,
File = 2,
}
impl BufferType {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Page => "page",
Self::Column => "column",
Self::File => "file",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"page" => Some(Self::Page),
"column" => Some(Self::Column),
"file" => Some(Self::File),
_ => None,
}
}
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Nullable {
#[prost(oneof = "nullable::Nullability", tags = "1, 2, 3")]
pub nullability: ::core::option::Option<nullable::Nullability>,
}
pub mod nullable {
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct NoNull {
#[prost(message, optional, boxed, tag = "1")]
pub values: ::core::option::Option<
::prost::alloc::boxed::Box<super::ArrayEncoding>,
>,
}
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct AllNull {}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SomeNull {
#[prost(message, optional, boxed, tag = "1")]
pub validity: ::core::option::Option<
::prost::alloc::boxed::Box<super::ArrayEncoding>,
>,
#[prost(message, optional, boxed, tag = "2")]
pub values: ::core::option::Option<
::prost::alloc::boxed::Box<super::ArrayEncoding>,
>,
}
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Nullability {
#[prost(message, tag = "1")]
NoNulls(::prost::alloc::boxed::Box<NoNull>),
#[prost(message, tag = "2")]
SomeNulls(::prost::alloc::boxed::Box<SomeNull>),
#[prost(message, tag = "3")]
AllNulls(AllNull),
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct List {
#[prost(message, optional, boxed, tag = "1")]
pub offsets: ::core::option::Option<::prost::alloc::boxed::Box<ArrayEncoding>>,
#[prost(uint64, tag = "2")]
pub null_offset_adjustment: u64,
#[prost(uint64, tag = "3")]
pub num_items: u64,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FixedSizeList {
#[prost(uint32, tag = "1")]
pub dimension: u32,
#[prost(bool, tag = "3")]
pub has_validity: bool,
#[prost(message, optional, boxed, tag = "2")]
pub items: ::core::option::Option<::prost::alloc::boxed::Box<ArrayEncoding>>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct Compression {
#[prost(string, tag = "1")]
pub scheme: ::prost::alloc::string::String,
#[prost(int32, optional, tag = "2")]
pub level: ::core::option::Option<i32>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct Flat {
#[prost(uint64, tag = "1")]
pub bits_per_value: u64,
#[prost(message, optional, tag = "2")]
pub buffer: ::core::option::Option<Buffer>,
#[prost(message, optional, tag = "3")]
pub compression: ::core::option::Option<Compression>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct Constant {
#[prost(bytes = "vec", tag = "1")]
pub value: ::prost::alloc::vec::Vec<u8>,
}
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct Bitpacked {
#[prost(uint64, tag = "1")]
pub compressed_bits_per_value: u64,
#[prost(uint64, tag = "2")]
pub uncompressed_bits_per_value: u64,
#[prost(message, optional, tag = "3")]
pub buffer: ::core::option::Option<Buffer>,
#[prost(bool, tag = "4")]
pub signed: bool,
}
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct BitpackedForNonNeg {
#[prost(uint64, tag = "1")]
pub compressed_bits_per_value: u64,
#[prost(uint64, tag = "2")]
pub uncompressed_bits_per_value: u64,
#[prost(message, optional, tag = "3")]
pub buffer: ::core::option::Option<Buffer>,
}
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct InlineBitpacking {
#[prost(uint64, tag = "2")]
pub uncompressed_bits_per_value: u64,
}
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct OutOfLineBitpacking {
#[prost(uint64, tag = "2")]
pub uncompressed_bits_per_value: u64,
#[prost(uint64, tag = "3")]
pub compressed_bits_per_value: u64,
}
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct SimpleStruct {}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Binary {
#[prost(message, optional, boxed, tag = "1")]
pub indices: ::core::option::Option<::prost::alloc::boxed::Box<ArrayEncoding>>,
#[prost(message, optional, boxed, tag = "2")]
pub bytes: ::core::option::Option<::prost::alloc::boxed::Box<ArrayEncoding>>,
#[prost(uint64, tag = "3")]
pub null_adjustment: u64,
}
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct Variable {
#[prost(uint32, tag = "1")]
pub bits_per_offset: u32,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Fsst {
#[prost(message, optional, boxed, tag = "1")]
pub binary: ::core::option::Option<::prost::alloc::boxed::Box<ArrayEncoding>>,
#[prost(bytes = "vec", tag = "2")]
pub symbol_table: ::prost::alloc::vec::Vec<u8>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Dictionary {
#[prost(message, optional, boxed, tag = "1")]
pub indices: ::core::option::Option<::prost::alloc::boxed::Box<ArrayEncoding>>,
#[prost(message, optional, boxed, tag = "2")]
pub items: ::core::option::Option<::prost::alloc::boxed::Box<ArrayEncoding>>,
#[prost(uint32, tag = "3")]
pub num_dictionary_items: u32,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PackedStruct {
#[prost(message, repeated, tag = "1")]
pub inner: ::prost::alloc::vec::Vec<ArrayEncoding>,
#[prost(message, optional, tag = "2")]
pub buffer: ::core::option::Option<Buffer>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PackedStructFixedWidthMiniBlock {
#[prost(message, optional, boxed, tag = "1")]
pub flat: ::core::option::Option<::prost::alloc::boxed::Box<ArrayEncoding>>,
#[prost(uint32, repeated, tag = "2")]
pub bits_per_values: ::prost::alloc::vec::Vec<u32>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FixedSizeBinary {
#[prost(message, optional, boxed, tag = "1")]
pub bytes: ::core::option::Option<::prost::alloc::boxed::Box<ArrayEncoding>>,
#[prost(uint32, tag = "2")]
pub byte_width: u32,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct Block {
#[prost(string, tag = "1")]
pub scheme: ::prost::alloc::string::String,
}
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct Rle {
#[prost(uint64, tag = "1")]
pub bits_per_value: u64,
}
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct ByteStreamSplit {
#[prost(uint64, tag = "1")]
pub bits_per_value: u64,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GeneralMiniBlock {
#[prost(message, optional, boxed, tag = "1")]
pub inner: ::core::option::Option<::prost::alloc::boxed::Box<ArrayEncoding>>,
#[prost(message, optional, tag = "2")]
pub compression: ::core::option::Option<Compression>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ArrayEncoding {
#[prost(
oneof = "array_encoding::ArrayEncoding",
tags = "1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21"
)]
pub array_encoding: ::core::option::Option<array_encoding::ArrayEncoding>,
}
pub mod array_encoding {
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum ArrayEncoding {
#[prost(message, tag = "1")]
Flat(super::Flat),
#[prost(message, tag = "2")]
Nullable(::prost::alloc::boxed::Box<super::Nullable>),
#[prost(message, tag = "3")]
FixedSizeList(::prost::alloc::boxed::Box<super::FixedSizeList>),
#[prost(message, tag = "4")]
List(::prost::alloc::boxed::Box<super::List>),
#[prost(message, tag = "5")]
Struct(super::SimpleStruct),
#[prost(message, tag = "6")]
Binary(::prost::alloc::boxed::Box<super::Binary>),
#[prost(message, tag = "7")]
Dictionary(::prost::alloc::boxed::Box<super::Dictionary>),
#[prost(message, tag = "8")]
Fsst(::prost::alloc::boxed::Box<super::Fsst>),
#[prost(message, tag = "9")]
PackedStruct(super::PackedStruct),
#[prost(message, tag = "10")]
Bitpacked(super::Bitpacked),
#[prost(message, tag = "11")]
FixedSizeBinary(::prost::alloc::boxed::Box<super::FixedSizeBinary>),
#[prost(message, tag = "12")]
BitpackedForNonNeg(super::BitpackedForNonNeg),
#[prost(message, tag = "13")]
Constant(super::Constant),
#[prost(message, tag = "14")]
InlineBitpacking(super::InlineBitpacking),
#[prost(message, tag = "15")]
OutOfLineBitpacking(super::OutOfLineBitpacking),
#[prost(message, tag = "16")]
Variable(super::Variable),
#[prost(message, tag = "17")]
PackedStructFixedWidthMiniBlock(
::prost::alloc::boxed::Box<super::PackedStructFixedWidthMiniBlock>,
),
#[prost(message, tag = "18")]
Block(super::Block),
#[prost(message, tag = "19")]
Rle(super::Rle),
#[prost(message, tag = "20")]
GeneralMiniBlock(::prost::alloc::boxed::Box<super::GeneralMiniBlock>),
#[prost(message, tag = "21")]
ByteStreamSplit(super::ByteStreamSplit),
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ZoneIndex {
#[prost(uint32, tag = "1")]
pub rows_per_zone: u32,
#[prost(message, optional, tag = "2")]
pub zone_map_buffer: ::core::option::Option<Buffer>,
#[prost(message, optional, boxed, tag = "3")]
pub inner: ::core::option::Option<::prost::alloc::boxed::Box<ColumnEncoding>>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Blob {
#[prost(message, optional, boxed, tag = "1")]
pub inner: ::core::option::Option<::prost::alloc::boxed::Box<ColumnEncoding>>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ColumnEncoding {
#[prost(oneof = "column_encoding::ColumnEncoding", tags = "1, 2, 3")]
pub column_encoding: ::core::option::Option<column_encoding::ColumnEncoding>,
}
pub mod column_encoding {
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum ColumnEncoding {
#[prost(message, tag = "1")]
Values(()),
#[prost(message, tag = "2")]
ZoneIndex(::prost::alloc::boxed::Box<super::ZoneIndex>),
#[prost(message, tag = "3")]
Blob(::prost::alloc::boxed::Box<super::Blob>),
}
}