#[derive(serde::Serialize)]
#[derive(serde::Deserialize)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ProtoArrayData {
#[prost(message, optional, tag = "1")]
pub data_type: ::core::option::Option<DataType>,
#[prost(uint64, tag = "2")]
pub length: u64,
#[prost(uint64, tag = "3")]
pub offset: u64,
#[prost(message, repeated, tag = "4")]
pub buffers: ::prost::alloc::vec::Vec<Buffer>,
#[prost(message, repeated, tag = "5")]
pub children: ::prost::alloc::vec::Vec<ProtoArrayData>,
#[prost(message, optional, tag = "6")]
pub nulls: ::core::option::Option<BooleanBuffer>,
}
#[derive(serde::Serialize)]
#[derive(serde::Deserialize)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DataType {
#[prost(
oneof = "data_type::Kind",
tags = "1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 16, 17, 18, 19, 20"
)]
pub kind: ::core::option::Option<data_type::Kind>,
}
pub mod data_type {
#[derive(serde::Serialize)]
#[derive(serde::Deserialize)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Struct {
#[prost(message, repeated, tag = "1")]
pub children: ::prost::alloc::vec::Vec<super::Field>,
}
#[derive(serde::Serialize)]
#[derive(serde::Deserialize)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Map {
#[prost(message, optional, boxed, tag = "1")]
pub value: ::core::option::Option<::prost::alloc::boxed::Box<super::Field>>,
#[prost(bool, tag = "2")]
pub sorted: bool,
}
#[derive(serde::Serialize)]
#[derive(serde::Deserialize)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Kind {
#[prost(message, tag = "1")]
String(()),
#[prost(message, tag = "2")]
Binary(()),
#[prost(int32, tag = "3")]
FixedBinary(i32),
#[prost(message, tag = "4")]
Int32(()),
#[prost(message, tag = "5")]
Int64(()),
#[prost(message, tag = "6")]
Uint32(()),
#[prost(message, tag = "7")]
Uint64(()),
#[prost(message, tag = "8")]
Float32(()),
#[prost(message, tag = "9")]
Float64(()),
#[prost(message, tag = "10")]
Struct(Struct),
#[prost(message, tag = "11")]
List(::prost::alloc::boxed::Box<super::Field>),
#[prost(message, tag = "12")]
Uint8(()),
#[prost(message, tag = "13")]
Boolean(()),
#[prost(message, tag = "16")]
Null(()),
#[prost(message, tag = "17")]
Int8(()),
#[prost(message, tag = "18")]
Int16(()),
#[prost(message, tag = "19")]
Uint16(()),
#[prost(message, tag = "20")]
Map(::prost::alloc::boxed::Box<Map>),
}
}
#[derive(serde::Serialize)]
#[derive(serde::Deserialize)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Field {
#[prost(string, tag = "1")]
pub name: ::prost::alloc::string::String,
#[prost(bool, tag = "2")]
pub nullable: bool,
#[prost(message, optional, boxed, tag = "3")]
pub data_type: ::core::option::Option<::prost::alloc::boxed::Box<DataType>>,
}
#[derive(serde::Serialize)]
#[derive(serde::Deserialize)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Buffer {
#[prost(bytes = "bytes", tag = "1")]
pub data: ::prost::bytes::Bytes,
}
#[derive(serde::Serialize)]
#[derive(serde::Deserialize)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BooleanBuffer {
#[prost(message, optional, tag = "1")]
pub buffer: ::core::option::Option<Buffer>,
#[prost(uint64, tag = "2")]
pub length: u64,
}