1#[derive(Clone, PartialEq, ::prost::Message)]
3pub struct Schema {
4 #[prost(message, repeated, tag = "1")]
5 pub columns: ::prost::alloc::vec::Vec<Field>,
6 #[prost(map = "string, string", tag = "2")]
7 pub metadata: ::std::collections::HashMap<
8 ::prost::alloc::string::String,
9 ::prost::alloc::string::String,
10 >,
11}
12#[derive(Clone, PartialEq, ::prost::Message)]
13pub struct Field {
14 #[prost(string, tag = "1")]
15 pub name: ::prost::alloc::string::String,
16 #[prost(message, optional, boxed, tag = "2")]
17 pub arrow_type: ::core::option::Option<::prost::alloc::boxed::Box<ArrowType>>,
18 #[prost(bool, tag = "3")]
19 pub nullable: bool,
20 #[prost(message, repeated, tag = "4")]
21 pub children: ::prost::alloc::vec::Vec<Field>,
22 #[prost(map = "string, string", tag = "5")]
23 pub metadata: ::std::collections::HashMap<
24 ::prost::alloc::string::String,
25 ::prost::alloc::string::String,
26 >,
27}
28#[derive(Clone, Copy, PartialEq, ::prost::Message)]
29pub struct FixedSizeBinary {
30 #[prost(int32, tag = "1")]
31 pub length: i32,
32}
33#[derive(Clone, PartialEq, ::prost::Message)]
34pub struct Timestamp {
35 #[prost(enumeration = "TimeUnit", tag = "1")]
36 pub time_unit: i32,
37 #[prost(string, tag = "2")]
38 pub timezone: ::prost::alloc::string::String,
39}
40#[derive(Clone, Copy, PartialEq, ::prost::Message)]
41pub struct Decimal {
42 #[prost(int32, tag = "1")]
43 pub precision: i32,
44 #[prost(int32, tag = "2")]
45 pub scale: i32,
46}
47#[derive(Clone, PartialEq, ::prost::Message)]
48pub struct List {
49 #[prost(message, optional, boxed, tag = "1")]
50 pub field_type: ::core::option::Option<::prost::alloc::boxed::Box<Field>>,
51}
52#[derive(Clone, PartialEq, ::prost::Message)]
53pub struct FixedSizeList {
54 #[prost(message, optional, boxed, tag = "1")]
55 pub field_type: ::core::option::Option<::prost::alloc::boxed::Box<Field>>,
56 #[prost(int32, tag = "2")]
57 pub list_size: i32,
58}
59#[derive(Clone, PartialEq, ::prost::Message)]
60pub struct Struct {
61 #[prost(message, repeated, tag = "1")]
62 pub sub_field_types: ::prost::alloc::vec::Vec<Field>,
63}
64#[derive(Clone, PartialEq, ::prost::Message)]
65pub struct Map {
66 #[prost(message, optional, boxed, tag = "1")]
67 pub key_field: ::core::option::Option<::prost::alloc::boxed::Box<Field>>,
68 #[prost(message, optional, boxed, tag = "2")]
69 pub item_field: ::core::option::Option<::prost::alloc::boxed::Box<Field>>,
70 #[prost(bool, tag = "3")]
71 pub keys_sorted: bool,
72}
73#[derive(Clone, PartialEq, ::prost::Message)]
74pub struct ScalarListValue {
75 #[prost(bytes = "vec", tag = "1")]
76 pub arrow_data: ::prost::alloc::vec::Vec<u8>,
77 #[prost(message, optional, tag = "2")]
78 pub schema: ::core::option::Option<Schema>,
79}
80#[derive(Clone, Copy, PartialEq, ::prost::Message)]
81pub struct ScalarTime32Value {
82 #[prost(oneof = "scalar_time32_value::Value", tags = "1, 2")]
83 pub value: ::core::option::Option<scalar_time32_value::Value>,
84}
85pub mod scalar_time32_value {
87 #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
88 pub enum Value {
89 #[prost(int32, tag = "1")]
90 Time32SecondValue(i32),
91 #[prost(int32, tag = "2")]
92 Time32MillisecondValue(i32),
93 }
94}
95#[derive(Clone, Copy, PartialEq, ::prost::Message)]
96pub struct ScalarTime64Value {
97 #[prost(oneof = "scalar_time64_value::Value", tags = "1, 2")]
98 pub value: ::core::option::Option<scalar_time64_value::Value>,
99}
100pub mod scalar_time64_value {
102 #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
103 pub enum Value {
104 #[prost(int64, tag = "1")]
105 Time64MicrosecondValue(i64),
106 #[prost(int64, tag = "2")]
107 Time64NanosecondValue(i64),
108 }
109}
110#[derive(Clone, PartialEq, ::prost::Message)]
111pub struct ScalarTimestampValue {
112 #[prost(string, tag = "5")]
113 pub timezone: ::prost::alloc::string::String,
114 #[prost(oneof = "scalar_timestamp_value::Value", tags = "1, 2, 3, 4")]
115 pub value: ::core::option::Option<scalar_timestamp_value::Value>,
116}
117pub mod scalar_timestamp_value {
119 #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
120 pub enum Value {
121 #[prost(int64, tag = "1")]
122 TimeMicrosecondValue(i64),
123 #[prost(int64, tag = "2")]
124 TimeNanosecondValue(i64),
125 #[prost(int64, tag = "3")]
126 TimeSecondValue(i64),
127 #[prost(int64, tag = "4")]
128 TimeMillisecondValue(i64),
129 }
130}
131#[derive(Clone, PartialEq, ::prost::Message)]
132pub struct StructValue {
133 #[prost(message, repeated, tag = "2")]
134 pub field_values: ::prost::alloc::vec::Vec<ScalarValue>,
135 #[prost(message, repeated, tag = "3")]
136 pub fields: ::prost::alloc::vec::Vec<Field>,
137}
138#[derive(Clone, PartialEq, ::prost::Message)]
139pub struct ScalarFixedSizeBinary {
140 #[prost(bytes = "vec", tag = "1")]
141 pub values: ::prost::alloc::vec::Vec<u8>,
142 #[prost(int32, tag = "2")]
143 pub length: i32,
144}
145#[derive(Clone, PartialEq, ::prost::Message)]
146pub struct DecimalValue {
147 #[prost(bytes = "vec", tag = "1")]
148 pub value: ::prost::alloc::vec::Vec<u8>,
149 #[prost(int32, tag = "2")]
150 pub precision: i32,
151 #[prost(int32, tag = "3")]
152 pub scale: i32,
153}
154#[derive(Clone, PartialEq, ::prost::Message)]
156pub struct Extension {
157 #[prost(string, tag = "1")]
160 pub name: ::prost::alloc::string::String,
161 #[prost(message, optional, boxed, tag = "2")]
163 pub storage_type: ::core::option::Option<::prost::alloc::boxed::Box<ArrowType>>,
164}
165#[derive(Clone, PartialEq, ::prost::Message)]
166pub struct ExtensionValue {
167 #[prost(message, optional, tag = "1")]
168 pub extension_type: ::core::option::Option<Extension>,
169 #[prost(message, optional, boxed, tag = "2")]
170 pub storage_value: ::core::option::Option<::prost::alloc::boxed::Box<ScalarValue>>,
171}
172#[derive(Clone, PartialEq, ::prost::Message)]
173pub struct ScalarValue {
174 #[prost(
175 oneof = "scalar_value::Value",
176 tags = "1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40"
177 )]
178 pub value: ::core::option::Option<scalar_value::Value>,
179}
180pub mod scalar_value {
182 #[derive(Clone, PartialEq, ::prost::Oneof)]
183 pub enum Value {
184 #[prost(message, tag = "1")]
188 NullValue(super::ArrowType),
189 #[prost(bool, tag = "2")]
190 BoolValue(bool),
191 #[prost(double, tag = "3")]
192 Float64Value(f64),
193 #[prost(int64, tag = "4")]
194 Int64Value(i64),
195 #[prost(string, tag = "5")]
196 LargeUtf8Value(::prost::alloc::string::String),
197 #[prost(message, tag = "6")]
198 TimestampValue(super::ScalarTimestampValue),
199 #[prost(int64, tag = "7")]
200 Date64Value(i64),
201 #[prost(message, tag = "8")]
202 StructValue(super::StructValue),
203 #[prost(message, tag = "9")]
204 LargeListValue(super::ScalarListValue),
205 #[prost(message, tag = "10")]
208 Time64Value(super::ScalarTime64Value),
209 #[prost(int64, tag = "16")]
210 DurationSecondValue(i64),
211 #[prost(int64, tag = "17")]
212 DurationMillisecondValue(i64),
213 #[prost(int64, tag = "18")]
214 DurationMicrosecondValue(i64),
215 #[prost(int64, tag = "19")]
216 DurationNanosecondValue(i64),
217 #[prost(string, tag = "20")]
218 Utf8Value(::prost::alloc::string::String),
219 #[prost(int32, tag = "21")]
220 Int8Value(i32),
221 #[prost(int32, tag = "22")]
222 Int16Value(i32),
223 #[prost(int32, tag = "23")]
224 Int32Value(i32),
225 #[prost(uint32, tag = "24")]
226 Uint8Value(u32),
227 #[prost(uint32, tag = "25")]
228 Uint16Value(u32),
229 #[prost(uint32, tag = "26")]
230 Uint32Value(u32),
231 #[prost(uint64, tag = "27")]
232 Uint64Value(u64),
233 #[prost(float, tag = "28")]
234 Float16Value(f32),
235 #[prost(float, tag = "29")]
236 Float32Value(f32),
237 #[prost(int32, tag = "30")]
238 Date32Value(i32),
239 #[prost(message, tag = "31")]
240 Time32Value(super::ScalarTime32Value),
241 #[prost(message, tag = "32")]
242 ListValue(super::ScalarListValue),
243 #[prost(message, tag = "33")]
244 FixedSizeListValue(super::ScalarListValue),
245 #[prost(message, tag = "34")]
246 MapValue(super::ScalarListValue),
247 #[prost(bytes, tag = "35")]
248 BinaryValue(::prost::alloc::vec::Vec<u8>),
249 #[prost(bytes, tag = "36")]
250 LargeBinaryValue(::prost::alloc::vec::Vec<u8>),
251 #[prost(message, tag = "37")]
252 FixedSizeBinaryValue(super::ScalarFixedSizeBinary),
253 #[prost(message, tag = "38")]
254 Decimal128Value(super::DecimalValue),
255 #[prost(message, tag = "39")]
256 Decimal256Value(super::DecimalValue),
257 #[prost(message, tag = "40")]
258 ExtensionValue(::prost::alloc::boxed::Box<super::ExtensionValue>),
259 }
260}
261#[derive(Clone, PartialEq, ::prost::Message)]
262pub struct ArrowType {
263 #[prost(
264 oneof = "arrow_type::ArrowTypeEnum",
265 tags = "1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37"
266 )]
267 pub arrow_type_enum: ::core::option::Option<arrow_type::ArrowTypeEnum>,
268}
269pub mod arrow_type {
271 #[derive(Clone, PartialEq, ::prost::Oneof)]
272 pub enum ArrowTypeEnum {
273 #[prost(message, tag = "1")]
277 None(super::EmptyMessage),
278 #[prost(message, tag = "2")]
279 Bool(super::EmptyMessage),
280 #[prost(message, tag = "3")]
281 Float64(super::EmptyMessage),
282 #[prost(message, tag = "4")]
283 Int64(super::EmptyMessage),
284 #[prost(message, tag = "5")]
285 LargeUtf8(super::EmptyMessage),
286 #[prost(message, tag = "6")]
287 Timestamp(super::Timestamp),
288 #[prost(message, tag = "7")]
289 Date64(super::EmptyMessage),
290 #[prost(message, tag = "8")]
291 Struct(super::Struct),
292 #[prost(message, tag = "9")]
293 LargeList(::prost::alloc::boxed::Box<super::List>),
294 #[prost(enumeration = "super::TimeUnit", tag = "10")]
297 Time64(i32),
298 #[prost(enumeration = "super::TimeUnit", tag = "16")]
299 Duration(i32),
300 #[prost(message, tag = "17")]
301 Utf8(super::EmptyMessage),
302 #[prost(message, tag = "18")]
303 Int8(super::EmptyMessage),
304 #[prost(message, tag = "19")]
305 Int16(super::EmptyMessage),
306 #[prost(message, tag = "20")]
307 Int32(super::EmptyMessage),
308 #[prost(message, tag = "21")]
309 Uint8(super::EmptyMessage),
310 #[prost(message, tag = "22")]
311 Uint16(super::EmptyMessage),
312 #[prost(message, tag = "23")]
313 Uint32(super::EmptyMessage),
314 #[prost(message, tag = "24")]
315 Uint64(super::EmptyMessage),
316 #[prost(message, tag = "25")]
317 Float16(super::EmptyMessage),
318 #[prost(message, tag = "26")]
319 Float32(super::EmptyMessage),
320 #[prost(message, tag = "27")]
321 Date32(super::EmptyMessage),
322 #[prost(enumeration = "super::TimeUnit", tag = "28")]
323 Time32(i32),
324 #[prost(message, tag = "29")]
325 List(::prost::alloc::boxed::Box<super::List>),
326 #[prost(message, tag = "30")]
327 FixedSizeList(::prost::alloc::boxed::Box<super::FixedSizeList>),
328 #[prost(message, tag = "31")]
329 Binary(super::EmptyMessage),
330 #[prost(message, tag = "32")]
331 LargeBinary(super::EmptyMessage),
332 #[prost(int32, tag = "33")]
333 FixedSizeBinary(i32),
334 #[prost(message, tag = "34")]
335 Decimal128(super::Decimal),
336 #[prost(message, tag = "35")]
337 Decimal256(super::Decimal),
338 #[prost(message, tag = "36")]
339 Map(::prost::alloc::boxed::Box<super::Map>),
340 #[prost(message, tag = "37")]
341 Extension(::prost::alloc::boxed::Box<super::Extension>),
342 }
343}
344#[derive(Clone, Copy, PartialEq, ::prost::Message)]
345pub struct EmptyMessage {}
346#[derive(Clone, PartialEq, ::prost::Message)]
348pub struct TableParquetBytes {
349 #[prost(bytes = "vec", tag = "1")]
350 pub encoded_parquet_bytes: ::prost::alloc::vec::Vec<u8>,
351}
352#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
353#[repr(i32)]
354pub enum TimeUnit {
355 Unspecified = 0,
356 Second = 1,
357 Millisecond = 2,
358 Microsecond = 3,
359 Nanosecond = 4,
360}
361impl TimeUnit {
362 pub fn as_str_name(&self) -> &'static str {
367 match self {
368 Self::Unspecified => "TIME_UNIT_UNSPECIFIED",
369 Self::Second => "TIME_UNIT_SECOND",
370 Self::Millisecond => "TIME_UNIT_MILLISECOND",
371 Self::Microsecond => "TIME_UNIT_MICROSECOND",
372 Self::Nanosecond => "TIME_UNIT_NANOSECOND",
373 }
374 }
375 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
377 match value {
378 "TIME_UNIT_UNSPECIFIED" => Some(Self::Unspecified),
379 "TIME_UNIT_SECOND" => Some(Self::Second),
380 "TIME_UNIT_MILLISECOND" => Some(Self::Millisecond),
381 "TIME_UNIT_MICROSECOND" => Some(Self::Microsecond),
382 "TIME_UNIT_NANOSECOND" => Some(Self::Nanosecond),
383 _ => None,
384 }
385 }
386}
387#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
388#[repr(i32)]
389pub enum FeatherCompression {
390 Unspecified = 0,
391 Uncompressed = 1,
392 Lz4 = 2,
393 Zstd = 3,
394}
395impl FeatherCompression {
396 pub fn as_str_name(&self) -> &'static str {
401 match self {
402 Self::Unspecified => "FEATHER_COMPRESSION_UNSPECIFIED",
403 Self::Uncompressed => "FEATHER_COMPRESSION_UNCOMPRESSED",
404 Self::Lz4 => "FEATHER_COMPRESSION_LZ4",
405 Self::Zstd => "FEATHER_COMPRESSION_ZSTD",
406 }
407 }
408 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
410 match value {
411 "FEATHER_COMPRESSION_UNSPECIFIED" => Some(Self::Unspecified),
412 "FEATHER_COMPRESSION_UNCOMPRESSED" => Some(Self::Uncompressed),
413 "FEATHER_COMPRESSION_LZ4" => Some(Self::Lz4),
414 "FEATHER_COMPRESSION_ZSTD" => Some(Self::Zstd),
415 _ => None,
416 }
417 }
418}