1#[derive(Clone, PartialEq, ::prost::Message)]
3pub struct ProtoRow {
4 #[prost(message, repeated, tag = "1")]
5 pub datums: ::prost::alloc::vec::Vec<ProtoDatum>,
6}
7#[derive(Clone, PartialEq, ::prost::Message)]
8pub struct ProtoDatum {
9 #[prost(
18 oneof = "proto_datum::DatumType",
19 tags = "1, 2, 3, 4, 5, 6, 7, 8, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33"
20 )]
21 pub datum_type: ::core::option::Option<proto_datum::DatumType>,
22}
23pub mod proto_datum {
25 #[derive(Clone, PartialEq, ::prost::Oneof)]
34 pub enum DatumType {
35 #[prost(enumeration = "super::ProtoDatumOther", tag = "1")]
36 Other(i32),
37 #[prost(int32, tag = "2")]
38 Int16(i32),
39 #[prost(int32, tag = "3")]
40 Int32(i32),
41 #[prost(int64, tag = "4")]
42 Int64(i64),
43 #[prost(float, tag = "5")]
44 Float32(f32),
45 #[prost(double, tag = "6")]
46 Float64(f64),
47 #[prost(bytes, tag = "7")]
48 Bytes(::prost::bytes::Bytes),
49 #[prost(string, tag = "8")]
51 String(::prost::alloc::string::String),
52 #[prost(message, tag = "16")]
61 Date(super::super::adt::date::ProtoDate),
62 #[prost(message, tag = "17")]
63 Time(::mz_proto::chrono::ProtoNaiveTime),
64 #[prost(message, tag = "18")]
65 Timestamp(::mz_proto::chrono::ProtoNaiveDateTime),
66 #[prost(message, tag = "19")]
67 TimestampTz(::mz_proto::chrono::ProtoNaiveDateTime),
68 #[prost(message, tag = "20")]
69 Interval(super::super::adt::interval::ProtoInterval),
70 #[prost(message, tag = "21")]
71 Array(super::ProtoArray),
72 #[prost(message, tag = "22")]
73 List(super::ProtoRow),
74 #[prost(message, tag = "23")]
75 Dict(super::ProtoDict),
76 #[prost(message, tag = "24")]
77 Numeric(super::ProtoNumeric),
78 #[prost(bytes, tag = "25")]
79 Uuid(::prost::alloc::vec::Vec<u8>),
80 #[prost(uint32, tag = "26")]
81 Uint32(u32),
82 #[prost(uint32, tag = "27")]
83 Uint8(u32),
84 #[prost(uint32, tag = "28")]
85 Uint16(u32),
86 #[prost(uint64, tag = "29")]
87 Uint64(u64),
88 #[prost(uint64, tag = "30")]
89 MzTimestamp(u64),
90 #[prost(message, tag = "31")]
91 Range(::prost::alloc::boxed::Box<super::ProtoRange>),
92 #[prost(message, tag = "32")]
93 MzAclItem(super::super::adt::mz_acl_item::ProtoMzAclItem),
94 #[prost(message, tag = "33")]
95 AclItem(super::super::adt::mz_acl_item::ProtoAclItem),
96 }
97}
98#[derive(Clone, PartialEq, ::prost::Message)]
99pub struct ProtoArray {
100 #[prost(message, optional, tag = "1")]
103 pub elements: ::core::option::Option<ProtoRow>,
104 #[prost(message, repeated, tag = "2")]
112 pub dims: ::prost::alloc::vec::Vec<ProtoArrayDimension>,
113}
114#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
115pub struct ProtoArrayDimension {
116 #[prost(int64, tag = "1")]
117 pub lower_bound: i64,
118 #[prost(uint64, tag = "2")]
119 pub length: u64,
120}
121#[derive(Clone, PartialEq, ::prost::Message)]
122pub struct ProtoDict {
123 #[prost(message, repeated, tag = "1")]
124 pub elements: ::prost::alloc::vec::Vec<ProtoDictElement>,
125}
126#[derive(Clone, PartialEq, ::prost::Message)]
127pub struct ProtoDictElement {
128 #[prost(string, tag = "1")]
129 pub key: ::prost::alloc::string::String,
130 #[prost(message, optional, tag = "2")]
131 pub val: ::core::option::Option<ProtoDatum>,
132}
133#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
139pub struct ProtoNumeric {
140 #[prost(bytes = "vec", tag = "1")]
145 pub bcd: ::prost::alloc::vec::Vec<u8>,
146 #[prost(int32, tag = "2")]
148 pub scale: i32,
149}
150#[derive(Clone, PartialEq, ::prost::Message)]
151pub struct ProtoRangeInner {
152 #[prost(bool, tag = "1")]
153 pub lower_inclusive: bool,
154 #[prost(message, optional, boxed, tag = "2")]
155 pub lower: ::core::option::Option<::prost::alloc::boxed::Box<ProtoDatum>>,
156 #[prost(bool, tag = "3")]
157 pub upper_inclusive: bool,
158 #[prost(message, optional, boxed, tag = "4")]
159 pub upper: ::core::option::Option<::prost::alloc::boxed::Box<ProtoDatum>>,
160}
161#[derive(Clone, PartialEq, ::prost::Message)]
162pub struct ProtoRange {
163 #[prost(message, optional, boxed, tag = "1")]
164 pub inner: ::core::option::Option<::prost::alloc::boxed::Box<ProtoRangeInner>>,
165}
166#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
167#[repr(i32)]
168pub enum ProtoDatumOther {
169 Unknown = 0,
177 Null = 1,
178 False = 2,
179 True = 3,
180 JsonNull = 4,
181 Dummy = 5,
182 NumericPosInf = 6,
183 NumericNegInf = 7,
184 NumericNaN = 8,
185}
186impl ProtoDatumOther {
187 pub fn as_str_name(&self) -> &'static str {
192 match self {
193 Self::Unknown => "UNKNOWN",
194 Self::Null => "NULL",
195 Self::False => "FALSE",
196 Self::True => "TRUE",
197 Self::JsonNull => "JSON_NULL",
198 Self::Dummy => "DUMMY",
199 Self::NumericPosInf => "NUMERIC_POS_INF",
200 Self::NumericNegInf => "NUMERIC_NEG_INF",
201 Self::NumericNaN => "NUMERIC_NA_N",
202 }
203 }
204 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
206 match value {
207 "UNKNOWN" => Some(Self::Unknown),
208 "NULL" => Some(Self::Null),
209 "FALSE" => Some(Self::False),
210 "TRUE" => Some(Self::True),
211 "JSON_NULL" => Some(Self::JsonNull),
212 "DUMMY" => Some(Self::Dummy),
213 "NUMERIC_POS_INF" => Some(Self::NumericPosInf),
214 "NUMERIC_NEG_INF" => Some(Self::NumericNegInf),
215 "NUMERIC_NA_N" => Some(Self::NumericNaN),
216 _ => None,
217 }
218 }
219}