1#[derive(serde::Serialize)]
3#[derive(Clone, PartialEq, ::prost::Message)]
4pub struct ParseResult {
5 #[prost(int32, tag = "1")]
6 pub version: i32,
7 #[prost(message, repeated, tag = "2")]
8 pub stmts: ::prost::alloc::vec::Vec<RawStmt>,
9}
10#[derive(serde::Serialize)]
11#[derive(Clone, PartialEq, ::prost::Message)]
12pub struct ScanResult {
13 #[prost(int32, tag = "1")]
14 pub version: i32,
15 #[prost(message, repeated, tag = "2")]
16 pub tokens: ::prost::alloc::vec::Vec<ScanToken>,
17}
18#[derive(serde::Serialize)]
19#[derive(Clone, PartialEq, ::prost::Message)]
20pub struct Node {
21 #[prost(
22 oneof = "node::Node",
23 tags = "1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 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, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271"
24 )]
25 pub node: ::core::option::Option<node::Node>,
26}
27pub mod node {
29 bounded_message_oneof! {
30 #[derive(serde::Serialize)]
31 #[derive(Clone, PartialEq)]
32 pub enum Node {
33 #[prost(message, tag = "1")]
34 Alias(super::Alias),
35 #[prost(message, tag = "2")]
36 RangeVar(super::RangeVar),
37 #[prost(message, tag = "3")]
38 TableFunc(::prost::alloc::boxed::Box<super::TableFunc>),
39 #[prost(message, tag = "4")]
40 IntoClause(::prost::alloc::boxed::Box<super::IntoClause>),
41 #[prost(message, tag = "5")]
42 Var(::prost::alloc::boxed::Box<super::Var>),
43 #[prost(message, tag = "6")]
44 Param(::prost::alloc::boxed::Box<super::Param>),
45 #[prost(message, tag = "7")]
46 Aggref(::prost::alloc::boxed::Box<super::Aggref>),
47 #[prost(message, tag = "8")]
48 GroupingFunc(::prost::alloc::boxed::Box<super::GroupingFunc>),
49 #[prost(message, tag = "9")]
50 WindowFunc(::prost::alloc::boxed::Box<super::WindowFunc>),
51 #[prost(message, tag = "10")]
52 WindowFuncRunCondition(
53 ::prost::alloc::boxed::Box<super::WindowFuncRunCondition>,
54 ),
55 #[prost(message, tag = "11")]
56 MergeSupportFunc(::prost::alloc::boxed::Box<super::MergeSupportFunc>),
57 #[prost(message, tag = "12")]
58 SubscriptingRef(::prost::alloc::boxed::Box<super::SubscriptingRef>),
59 #[prost(message, tag = "13")]
60 FuncExpr(::prost::alloc::boxed::Box<super::FuncExpr>),
61 #[prost(message, tag = "14")]
62 NamedArgExpr(::prost::alloc::boxed::Box<super::NamedArgExpr>),
63 #[prost(message, tag = "15")]
64 OpExpr(::prost::alloc::boxed::Box<super::OpExpr>),
65 #[prost(message, tag = "16")]
66 DistinctExpr(::prost::alloc::boxed::Box<super::DistinctExpr>),
67 #[prost(message, tag = "17")]
68 NullIfExpr(::prost::alloc::boxed::Box<super::NullIfExpr>),
69 #[prost(message, tag = "18")]
70 ScalarArrayOpExpr(::prost::alloc::boxed::Box<super::ScalarArrayOpExpr>),
71 #[prost(message, tag = "19")]
72 BoolExpr(::prost::alloc::boxed::Box<super::BoolExpr>),
73 #[prost(message, tag = "20")]
74 SubLink(::prost::alloc::boxed::Box<super::SubLink>),
75 #[prost(message, tag = "21")]
76 SubPlan(::prost::alloc::boxed::Box<super::SubPlan>),
77 #[prost(message, tag = "22")]
78 AlternativeSubPlan(::prost::alloc::boxed::Box<super::AlternativeSubPlan>),
79 #[prost(message, tag = "23")]
80 FieldSelect(::prost::alloc::boxed::Box<super::FieldSelect>),
81 #[prost(message, tag = "24")]
82 FieldStore(::prost::alloc::boxed::Box<super::FieldStore>),
83 #[prost(message, tag = "25")]
84 RelabelType(::prost::alloc::boxed::Box<super::RelabelType>),
85 #[prost(message, tag = "26")]
86 CoerceViaIo(::prost::alloc::boxed::Box<super::CoerceViaIo>),
87 #[prost(message, tag = "27")]
88 ArrayCoerceExpr(::prost::alloc::boxed::Box<super::ArrayCoerceExpr>),
89 #[prost(message, tag = "28")]
90 ConvertRowtypeExpr(::prost::alloc::boxed::Box<super::ConvertRowtypeExpr>),
91 #[prost(message, tag = "29")]
92 CollateExpr(::prost::alloc::boxed::Box<super::CollateExpr>),
93 #[prost(message, tag = "30")]
94 CaseExpr(::prost::alloc::boxed::Box<super::CaseExpr>),
95 #[prost(message, tag = "31")]
96 CaseWhen(::prost::alloc::boxed::Box<super::CaseWhen>),
97 #[prost(message, tag = "32")]
98 CaseTestExpr(::prost::alloc::boxed::Box<super::CaseTestExpr>),
99 #[prost(message, tag = "33")]
100 ArrayExpr(::prost::alloc::boxed::Box<super::ArrayExpr>),
101 #[prost(message, tag = "34")]
102 RowExpr(::prost::alloc::boxed::Box<super::RowExpr>),
103 #[prost(message, tag = "35")]
104 RowCompareExpr(::prost::alloc::boxed::Box<super::RowCompareExpr>),
105 #[prost(message, tag = "36")]
106 CoalesceExpr(::prost::alloc::boxed::Box<super::CoalesceExpr>),
107 #[prost(message, tag = "37")]
108 MinMaxExpr(::prost::alloc::boxed::Box<super::MinMaxExpr>),
109 #[prost(message, tag = "38")]
110 SqlvalueFunction(::prost::alloc::boxed::Box<super::SqlValueFunction>),
111 #[prost(message, tag = "39")]
112 XmlExpr(::prost::alloc::boxed::Box<super::XmlExpr>),
113 #[prost(message, tag = "40")]
114 JsonFormat(super::JsonFormat),
115 #[prost(message, tag = "41")]
116 JsonReturning(super::JsonReturning),
117 #[prost(message, tag = "42")]
118 JsonValueExpr(::prost::alloc::boxed::Box<super::JsonValueExpr>),
119 #[prost(message, tag = "43")]
120 JsonConstructorExpr(::prost::alloc::boxed::Box<super::JsonConstructorExpr>),
121 #[prost(message, tag = "44")]
122 JsonIsPredicate(::prost::alloc::boxed::Box<super::JsonIsPredicate>),
123 #[prost(message, tag = "45")]
124 JsonBehavior(::prost::alloc::boxed::Box<super::JsonBehavior>),
125 #[prost(message, tag = "46")]
126 JsonExpr(::prost::alloc::boxed::Box<super::JsonExpr>),
127 #[prost(message, tag = "47")]
128 JsonTablePath(super::JsonTablePath),
129 #[prost(message, tag = "48")]
130 JsonTablePathScan(::prost::alloc::boxed::Box<super::JsonTablePathScan>),
131 #[prost(message, tag = "49")]
132 JsonTableSiblingJoin(::prost::alloc::boxed::Box<super::JsonTableSiblingJoin>),
133 #[prost(message, tag = "50")]
134 NullTest(::prost::alloc::boxed::Box<super::NullTest>),
135 #[prost(message, tag = "51")]
136 BooleanTest(::prost::alloc::boxed::Box<super::BooleanTest>),
137 #[prost(message, tag = "52")]
138 MergeAction(::prost::alloc::boxed::Box<super::MergeAction>),
139 #[prost(message, tag = "53")]
140 CoerceToDomain(::prost::alloc::boxed::Box<super::CoerceToDomain>),
141 #[prost(message, tag = "54")]
142 CoerceToDomainValue(::prost::alloc::boxed::Box<super::CoerceToDomainValue>),
143 #[prost(message, tag = "55")]
144 SetToDefault(::prost::alloc::boxed::Box<super::SetToDefault>),
145 #[prost(message, tag = "56")]
146 CurrentOfExpr(::prost::alloc::boxed::Box<super::CurrentOfExpr>),
147 #[prost(message, tag = "57")]
148 NextValueExpr(::prost::alloc::boxed::Box<super::NextValueExpr>),
149 #[prost(message, tag = "58")]
150 InferenceElem(::prost::alloc::boxed::Box<super::InferenceElem>),
151 #[prost(message, tag = "59")]
152 ReturningExpr(::prost::alloc::boxed::Box<super::ReturningExpr>),
153 #[prost(message, tag = "60")]
154 TargetEntry(::prost::alloc::boxed::Box<super::TargetEntry>),
155 #[prost(message, tag = "61")]
156 RangeTblRef(super::RangeTblRef),
157 #[prost(message, tag = "62")]
158 JoinExpr(::prost::alloc::boxed::Box<super::JoinExpr>),
159 #[prost(message, tag = "63")]
160 FromExpr(::prost::alloc::boxed::Box<super::FromExpr>),
161 #[prost(message, tag = "64")]
162 OnConflictExpr(::prost::alloc::boxed::Box<super::OnConflictExpr>),
163 #[prost(message, tag = "65")]
164 Query(::prost::alloc::boxed::Box<super::Query>),
165 #[prost(message, tag = "66")]
166 TypeName(super::TypeName),
167 #[prost(message, tag = "67")]
168 ColumnRef(super::ColumnRef),
169 #[prost(message, tag = "68")]
170 ParamRef(super::ParamRef),
171 #[prost(message, tag = "69")]
172 AExpr(::prost::alloc::boxed::Box<super::AExpr>),
173 #[prost(message, tag = "70")]
174 TypeCast(::prost::alloc::boxed::Box<super::TypeCast>),
175 #[prost(message, tag = "71")]
176 CollateClause(::prost::alloc::boxed::Box<super::CollateClause>),
177 #[prost(message, tag = "72")]
178 RoleSpec(super::RoleSpec),
179 #[prost(message, tag = "73")]
180 FuncCall(::prost::alloc::boxed::Box<super::FuncCall>),
181 #[prost(message, tag = "74")]
182 AStar(super::AStar),
183 #[prost(message, tag = "75")]
184 AIndices(::prost::alloc::boxed::Box<super::AIndices>),
185 #[prost(message, tag = "76")]
186 AIndirection(::prost::alloc::boxed::Box<super::AIndirection>),
187 #[prost(message, tag = "77")]
188 AArrayExpr(super::AArrayExpr),
189 #[prost(message, tag = "78")]
190 ResTarget(::prost::alloc::boxed::Box<super::ResTarget>),
191 #[prost(message, tag = "79")]
192 MultiAssignRef(::prost::alloc::boxed::Box<super::MultiAssignRef>),
193 #[prost(message, tag = "80")]
194 SortBy(::prost::alloc::boxed::Box<super::SortBy>),
195 #[prost(message, tag = "81")]
196 WindowDef(::prost::alloc::boxed::Box<super::WindowDef>),
197 #[prost(message, tag = "82")]
198 RangeSubselect(::prost::alloc::boxed::Box<super::RangeSubselect>),
199 #[prost(message, tag = "83")]
200 RangeFunction(super::RangeFunction),
201 #[prost(message, tag = "84")]
202 RangeTableFunc(::prost::alloc::boxed::Box<super::RangeTableFunc>),
203 #[prost(message, tag = "85")]
204 RangeTableFuncCol(::prost::alloc::boxed::Box<super::RangeTableFuncCol>),
205 #[prost(message, tag = "86")]
206 RangeTableSample(::prost::alloc::boxed::Box<super::RangeTableSample>),
207 #[prost(message, tag = "87")]
208 ColumnDef(::prost::alloc::boxed::Box<super::ColumnDef>),
209 #[prost(message, tag = "88")]
210 TableLikeClause(super::TableLikeClause),
211 #[prost(message, tag = "89")]
212 IndexElem(::prost::alloc::boxed::Box<super::IndexElem>),
213 #[prost(message, tag = "90")]
214 DefElem(::prost::alloc::boxed::Box<super::DefElem>),
215 #[prost(message, tag = "91")]
216 LockingClause(super::LockingClause),
217 #[prost(message, tag = "92")]
218 XmlSerialize(::prost::alloc::boxed::Box<super::XmlSerialize>),
219 #[prost(message, tag = "93")]
220 PartitionElem(::prost::alloc::boxed::Box<super::PartitionElem>),
221 #[prost(message, tag = "94")]
222 PartitionSpec(super::PartitionSpec),
223 #[prost(message, tag = "95")]
224 PartitionBoundSpec(super::PartitionBoundSpec),
225 #[prost(message, tag = "96")]
226 PartitionRangeDatum(::prost::alloc::boxed::Box<super::PartitionRangeDatum>),
227 #[prost(message, tag = "97")]
228 PartitionCmd(super::PartitionCmd),
229 #[prost(message, tag = "98")]
230 RangeTblEntry(::prost::alloc::boxed::Box<super::RangeTblEntry>),
231 #[prost(message, tag = "99")]
232 RtepermissionInfo(super::RtePermissionInfo),
233 #[prost(message, tag = "100")]
234 RangeTblFunction(::prost::alloc::boxed::Box<super::RangeTblFunction>),
235 #[prost(message, tag = "101")]
236 TableSampleClause(::prost::alloc::boxed::Box<super::TableSampleClause>),
237 #[prost(message, tag = "102")]
238 WithCheckOption(::prost::alloc::boxed::Box<super::WithCheckOption>),
239 #[prost(message, tag = "103")]
240 SortGroupClause(super::SortGroupClause),
241 #[prost(message, tag = "104")]
242 GroupingSet(super::GroupingSet),
243 #[prost(message, tag = "105")]
244 WindowClause(::prost::alloc::boxed::Box<super::WindowClause>),
245 #[prost(message, tag = "106")]
246 RowMarkClause(super::RowMarkClause),
247 #[prost(message, tag = "107")]
248 WithClause(super::WithClause),
249 #[prost(message, tag = "108")]
250 InferClause(::prost::alloc::boxed::Box<super::InferClause>),
251 #[prost(message, tag = "109")]
252 OnConflictClause(::prost::alloc::boxed::Box<super::OnConflictClause>),
253 #[prost(message, tag = "110")]
254 CtesearchClause(super::CteSearchClause),
255 #[prost(message, tag = "111")]
256 CtecycleClause(::prost::alloc::boxed::Box<super::CteCycleClause>),
257 #[prost(message, tag = "112")]
258 CommonTableExpr(::prost::alloc::boxed::Box<super::CommonTableExpr>),
259 #[prost(message, tag = "113")]
260 MergeWhenClause(::prost::alloc::boxed::Box<super::MergeWhenClause>),
261 #[prost(message, tag = "114")]
262 ReturningOption(super::ReturningOption),
263 #[prost(message, tag = "115")]
264 ReturningClause(super::ReturningClause),
265 #[prost(message, tag = "116")]
266 TriggerTransition(super::TriggerTransition),
267 #[prost(message, tag = "117")]
268 JsonOutput(super::JsonOutput),
269 #[prost(message, tag = "118")]
270 JsonArgument(::prost::alloc::boxed::Box<super::JsonArgument>),
271 #[prost(message, tag = "119")]
272 JsonFuncExpr(::prost::alloc::boxed::Box<super::JsonFuncExpr>),
273 #[prost(message, tag = "120")]
274 JsonTablePathSpec(::prost::alloc::boxed::Box<super::JsonTablePathSpec>),
275 #[prost(message, tag = "121")]
276 JsonTable(::prost::alloc::boxed::Box<super::JsonTable>),
277 #[prost(message, tag = "122")]
278 JsonTableColumn(::prost::alloc::boxed::Box<super::JsonTableColumn>),
279 #[prost(message, tag = "123")]
280 JsonKeyValue(::prost::alloc::boxed::Box<super::JsonKeyValue>),
281 #[prost(message, tag = "124")]
282 JsonParseExpr(::prost::alloc::boxed::Box<super::JsonParseExpr>),
283 #[prost(message, tag = "125")]
284 JsonScalarExpr(::prost::alloc::boxed::Box<super::JsonScalarExpr>),
285 #[prost(message, tag = "126")]
286 JsonSerializeExpr(::prost::alloc::boxed::Box<super::JsonSerializeExpr>),
287 #[prost(message, tag = "127")]
288 JsonObjectConstructor(super::JsonObjectConstructor),
289 #[prost(message, tag = "128")]
290 JsonArrayConstructor(super::JsonArrayConstructor),
291 #[prost(message, tag = "129")]
292 JsonArrayQueryConstructor(
293 ::prost::alloc::boxed::Box<super::JsonArrayQueryConstructor>,
294 ),
295 #[prost(message, tag = "130")]
296 JsonAggConstructor(::prost::alloc::boxed::Box<super::JsonAggConstructor>),
297 #[prost(message, tag = "131")]
298 JsonObjectAgg(::prost::alloc::boxed::Box<super::JsonObjectAgg>),
299 #[prost(message, tag = "132")]
300 JsonArrayAgg(::prost::alloc::boxed::Box<super::JsonArrayAgg>),
301 #[prost(message, tag = "133")]
302 RawStmt(::prost::alloc::boxed::Box<super::RawStmt>),
303 #[prost(message, tag = "134")]
304 InsertStmt(::prost::alloc::boxed::Box<super::InsertStmt>),
305 #[prost(message, tag = "135")]
306 DeleteStmt(::prost::alloc::boxed::Box<super::DeleteStmt>),
307 #[prost(message, tag = "136")]
308 UpdateStmt(::prost::alloc::boxed::Box<super::UpdateStmt>),
309 #[prost(message, tag = "137")]
310 MergeStmt(::prost::alloc::boxed::Box<super::MergeStmt>),
311 #[prost(message, tag = "138")]
312 SelectStmt(::prost::alloc::boxed::Box<super::SelectStmt>),
313 #[prost(message, tag = "139")]
314 SetOperationStmt(::prost::alloc::boxed::Box<super::SetOperationStmt>),
315 #[prost(message, tag = "140")]
316 ReturnStmt(::prost::alloc::boxed::Box<super::ReturnStmt>),
317 #[prost(message, tag = "141")]
318 PlassignStmt(::prost::alloc::boxed::Box<super::PlAssignStmt>),
319 #[prost(message, tag = "142")]
320 CreateSchemaStmt(super::CreateSchemaStmt),
321 #[prost(message, tag = "143")]
322 AlterTableStmt(super::AlterTableStmt),
323 #[prost(message, tag = "144")]
324 AlterTableCmd(::prost::alloc::boxed::Box<super::AlterTableCmd>),
325 #[prost(message, tag = "145")]
326 AtalterConstraint(super::AtAlterConstraint),
327 #[prost(message, tag = "146")]
328 ReplicaIdentityStmt(super::ReplicaIdentityStmt),
329 #[prost(message, tag = "147")]
330 AlterCollationStmt(super::AlterCollationStmt),
331 #[prost(message, tag = "148")]
332 AlterDomainStmt(::prost::alloc::boxed::Box<super::AlterDomainStmt>),
333 #[prost(message, tag = "149")]
334 GrantStmt(super::GrantStmt),
335 #[prost(message, tag = "150")]
336 ObjectWithArgs(super::ObjectWithArgs),
337 #[prost(message, tag = "151")]
338 AccessPriv(super::AccessPriv),
339 #[prost(message, tag = "152")]
340 GrantRoleStmt(super::GrantRoleStmt),
341 #[prost(message, tag = "153")]
342 AlterDefaultPrivilegesStmt(super::AlterDefaultPrivilegesStmt),
343 #[prost(message, tag = "154")]
344 CopyStmt(::prost::alloc::boxed::Box<super::CopyStmt>),
345 #[prost(message, tag = "155")]
346 VariableSetStmt(super::VariableSetStmt),
347 #[prost(message, tag = "156")]
348 VariableShowStmt(super::VariableShowStmt),
349 #[prost(message, tag = "157")]
350 CreateStmt(super::CreateStmt),
351 #[prost(message, tag = "158")]
352 Constraint(::prost::alloc::boxed::Box<super::Constraint>),
353 #[prost(message, tag = "159")]
354 CreateTableSpaceStmt(super::CreateTableSpaceStmt),
355 #[prost(message, tag = "160")]
356 DropTableSpaceStmt(super::DropTableSpaceStmt),
357 #[prost(message, tag = "161")]
358 AlterTableSpaceOptionsStmt(super::AlterTableSpaceOptionsStmt),
359 #[prost(message, tag = "162")]
360 AlterTableMoveAllStmt(super::AlterTableMoveAllStmt),
361 #[prost(message, tag = "163")]
362 CreateExtensionStmt(super::CreateExtensionStmt),
363 #[prost(message, tag = "164")]
364 AlterExtensionStmt(super::AlterExtensionStmt),
365 #[prost(message, tag = "165")]
366 AlterExtensionContentsStmt(
367 ::prost::alloc::boxed::Box<super::AlterExtensionContentsStmt>,
368 ),
369 #[prost(message, tag = "166")]
370 CreateFdwStmt(super::CreateFdwStmt),
371 #[prost(message, tag = "167")]
372 AlterFdwStmt(super::AlterFdwStmt),
373 #[prost(message, tag = "168")]
374 CreateForeignServerStmt(super::CreateForeignServerStmt),
375 #[prost(message, tag = "169")]
376 AlterForeignServerStmt(super::AlterForeignServerStmt),
377 #[prost(message, tag = "170")]
378 CreateForeignTableStmt(super::CreateForeignTableStmt),
379 #[prost(message, tag = "171")]
380 CreateUserMappingStmt(super::CreateUserMappingStmt),
381 #[prost(message, tag = "172")]
382 AlterUserMappingStmt(super::AlterUserMappingStmt),
383 #[prost(message, tag = "173")]
384 DropUserMappingStmt(super::DropUserMappingStmt),
385 #[prost(message, tag = "174")]
386 ImportForeignSchemaStmt(super::ImportForeignSchemaStmt),
387 #[prost(message, tag = "175")]
388 CreatePolicyStmt(::prost::alloc::boxed::Box<super::CreatePolicyStmt>),
389 #[prost(message, tag = "176")]
390 AlterPolicyStmt(::prost::alloc::boxed::Box<super::AlterPolicyStmt>),
391 #[prost(message, tag = "177")]
392 CreateAmStmt(super::CreateAmStmt),
393 #[prost(message, tag = "178")]
394 CreateTrigStmt(::prost::alloc::boxed::Box<super::CreateTrigStmt>),
395 #[prost(message, tag = "179")]
396 CreateEventTrigStmt(super::CreateEventTrigStmt),
397 #[prost(message, tag = "180")]
398 AlterEventTrigStmt(super::AlterEventTrigStmt),
399 #[prost(message, tag = "181")]
400 CreatePlangStmt(super::CreatePLangStmt),
401 #[prost(message, tag = "182")]
402 CreateRoleStmt(super::CreateRoleStmt),
403 #[prost(message, tag = "183")]
404 AlterRoleStmt(super::AlterRoleStmt),
405 #[prost(message, tag = "184")]
406 AlterRoleSetStmt(super::AlterRoleSetStmt),
407 #[prost(message, tag = "185")]
408 DropRoleStmt(super::DropRoleStmt),
409 #[prost(message, tag = "186")]
410 CreateSeqStmt(super::CreateSeqStmt),
411 #[prost(message, tag = "187")]
412 AlterSeqStmt(super::AlterSeqStmt),
413 #[prost(message, tag = "188")]
414 DefineStmt(super::DefineStmt),
415 #[prost(message, tag = "189")]
416 CreateDomainStmt(::prost::alloc::boxed::Box<super::CreateDomainStmt>),
417 #[prost(message, tag = "190")]
418 CreateOpClassStmt(super::CreateOpClassStmt),
419 #[prost(message, tag = "191")]
420 CreateOpClassItem(super::CreateOpClassItem),
421 #[prost(message, tag = "192")]
422 CreateOpFamilyStmt(super::CreateOpFamilyStmt),
423 #[prost(message, tag = "193")]
424 AlterOpFamilyStmt(super::AlterOpFamilyStmt),
425 #[prost(message, tag = "194")]
426 DropStmt(super::DropStmt),
427 #[prost(message, tag = "195")]
428 TruncateStmt(super::TruncateStmt),
429 #[prost(message, tag = "196")]
430 CommentStmt(::prost::alloc::boxed::Box<super::CommentStmt>),
431 #[prost(message, tag = "197")]
432 SecLabelStmt(::prost::alloc::boxed::Box<super::SecLabelStmt>),
433 #[prost(message, tag = "198")]
434 DeclareCursorStmt(::prost::alloc::boxed::Box<super::DeclareCursorStmt>),
435 #[prost(message, tag = "199")]
436 ClosePortalStmt(super::ClosePortalStmt),
437 #[prost(message, tag = "200")]
438 FetchStmt(super::FetchStmt),
439 #[prost(message, tag = "201")]
440 IndexStmt(::prost::alloc::boxed::Box<super::IndexStmt>),
441 #[prost(message, tag = "202")]
442 CreateStatsStmt(super::CreateStatsStmt),
443 #[prost(message, tag = "203")]
444 StatsElem(::prost::alloc::boxed::Box<super::StatsElem>),
445 #[prost(message, tag = "204")]
446 AlterStatsStmt(::prost::alloc::boxed::Box<super::AlterStatsStmt>),
447 #[prost(message, tag = "205")]
448 CreateFunctionStmt(::prost::alloc::boxed::Box<super::CreateFunctionStmt>),
449 #[prost(message, tag = "206")]
450 FunctionParameter(::prost::alloc::boxed::Box<super::FunctionParameter>),
451 #[prost(message, tag = "207")]
452 AlterFunctionStmt(super::AlterFunctionStmt),
453 #[prost(message, tag = "208")]
454 DoStmt(super::DoStmt),
455 #[prost(message, tag = "209")]
456 InlineCodeBlock(super::InlineCodeBlock),
457 #[prost(message, tag = "210")]
458 CallStmt(::prost::alloc::boxed::Box<super::CallStmt>),
459 #[prost(message, tag = "211")]
460 CallContext(super::CallContext),
461 #[prost(message, tag = "212")]
462 RenameStmt(::prost::alloc::boxed::Box<super::RenameStmt>),
463 #[prost(message, tag = "213")]
464 AlterObjectDependsStmt(
465 ::prost::alloc::boxed::Box<super::AlterObjectDependsStmt>,
466 ),
467 #[prost(message, tag = "214")]
468 AlterObjectSchemaStmt(::prost::alloc::boxed::Box<super::AlterObjectSchemaStmt>),
469 #[prost(message, tag = "215")]
470 AlterOwnerStmt(::prost::alloc::boxed::Box<super::AlterOwnerStmt>),
471 #[prost(message, tag = "216")]
472 AlterOperatorStmt(super::AlterOperatorStmt),
473 #[prost(message, tag = "217")]
474 AlterTypeStmt(super::AlterTypeStmt),
475 #[prost(message, tag = "218")]
476 RuleStmt(::prost::alloc::boxed::Box<super::RuleStmt>),
477 #[prost(message, tag = "219")]
478 NotifyStmt(super::NotifyStmt),
479 #[prost(message, tag = "220")]
480 ListenStmt(super::ListenStmt),
481 #[prost(message, tag = "221")]
482 UnlistenStmt(super::UnlistenStmt),
483 #[prost(message, tag = "222")]
484 TransactionStmt(super::TransactionStmt),
485 #[prost(message, tag = "223")]
486 CompositeTypeStmt(super::CompositeTypeStmt),
487 #[prost(message, tag = "224")]
488 CreateEnumStmt(super::CreateEnumStmt),
489 #[prost(message, tag = "225")]
490 CreateRangeStmt(super::CreateRangeStmt),
491 #[prost(message, tag = "226")]
492 AlterEnumStmt(super::AlterEnumStmt),
493 #[prost(message, tag = "227")]
494 ViewStmt(::prost::alloc::boxed::Box<super::ViewStmt>),
495 #[prost(message, tag = "228")]
496 LoadStmt(super::LoadStmt),
497 #[prost(message, tag = "229")]
498 CreatedbStmt(super::CreatedbStmt),
499 #[prost(message, tag = "230")]
500 AlterDatabaseStmt(super::AlterDatabaseStmt),
501 #[prost(message, tag = "231")]
502 AlterDatabaseRefreshCollStmt(super::AlterDatabaseRefreshCollStmt),
503 #[prost(message, tag = "232")]
504 AlterDatabaseSetStmt(super::AlterDatabaseSetStmt),
505 #[prost(message, tag = "233")]
506 DropdbStmt(super::DropdbStmt),
507 #[prost(message, tag = "234")]
508 AlterSystemStmt(super::AlterSystemStmt),
509 #[prost(message, tag = "235")]
510 ClusterStmt(super::ClusterStmt),
511 #[prost(message, tag = "236")]
512 VacuumStmt(super::VacuumStmt),
513 #[prost(message, tag = "237")]
514 VacuumRelation(super::VacuumRelation),
515 #[prost(message, tag = "238")]
516 ExplainStmt(::prost::alloc::boxed::Box<super::ExplainStmt>),
517 #[prost(message, tag = "239")]
518 CreateTableAsStmt(::prost::alloc::boxed::Box<super::CreateTableAsStmt>),
519 #[prost(message, tag = "240")]
520 RefreshMatViewStmt(super::RefreshMatViewStmt),
521 #[prost(message, tag = "241")]
522 CheckPointStmt(super::CheckPointStmt),
523 #[prost(message, tag = "242")]
524 DiscardStmt(super::DiscardStmt),
525 #[prost(message, tag = "243")]
526 LockStmt(super::LockStmt),
527 #[prost(message, tag = "244")]
528 ConstraintsSetStmt(super::ConstraintsSetStmt),
529 #[prost(message, tag = "245")]
530 ReindexStmt(super::ReindexStmt),
531 #[prost(message, tag = "246")]
532 CreateConversionStmt(super::CreateConversionStmt),
533 #[prost(message, tag = "247")]
534 CreateCastStmt(super::CreateCastStmt),
535 #[prost(message, tag = "248")]
536 CreateTransformStmt(super::CreateTransformStmt),
537 #[prost(message, tag = "249")]
538 PrepareStmt(::prost::alloc::boxed::Box<super::PrepareStmt>),
539 #[prost(message, tag = "250")]
540 ExecuteStmt(super::ExecuteStmt),
541 #[prost(message, tag = "251")]
542 DeallocateStmt(super::DeallocateStmt),
543 #[prost(message, tag = "252")]
544 DropOwnedStmt(super::DropOwnedStmt),
545 #[prost(message, tag = "253")]
546 ReassignOwnedStmt(super::ReassignOwnedStmt),
547 #[prost(message, tag = "254")]
548 AlterTsdictionaryStmt(super::AlterTsDictionaryStmt),
549 #[prost(message, tag = "255")]
550 AlterTsconfigurationStmt(super::AlterTsConfigurationStmt),
551 #[prost(message, tag = "256")]
552 PublicationTable(::prost::alloc::boxed::Box<super::PublicationTable>),
553 #[prost(message, tag = "257")]
554 PublicationObjSpec(::prost::alloc::boxed::Box<super::PublicationObjSpec>),
555 #[prost(message, tag = "258")]
556 CreatePublicationStmt(super::CreatePublicationStmt),
557 #[prost(message, tag = "259")]
558 AlterPublicationStmt(super::AlterPublicationStmt),
559 #[prost(message, tag = "260")]
560 CreateSubscriptionStmt(super::CreateSubscriptionStmt),
561 #[prost(message, tag = "261")]
562 AlterSubscriptionStmt(super::AlterSubscriptionStmt),
563 #[prost(message, tag = "262")]
564 DropSubscriptionStmt(super::DropSubscriptionStmt),
565 #[prost(message, tag = "263")]
566 Integer(super::Integer),
567 #[prost(message, tag = "264")]
568 Float(super::Float),
569 #[prost(message, tag = "265")]
570 Boolean(super::Boolean),
571 #[prost(message, tag = "266")]
572 String(super::String),
573 #[prost(message, tag = "267")]
574 BitString(super::BitString),
575 #[prost(message, tag = "268")]
576 List(super::List),
577 #[prost(message, tag = "269")]
578 IntList(super::IntList),
579 #[prost(message, tag = "270")]
580 OidList(super::OidList),
581 #[prost(message, tag = "271")]
582 AConst(super::AConst),
583 }
584 }
585}
586#[derive(serde::Serialize)]
587#[derive(Clone, Copy, PartialEq, ::prost::Message)]
588pub struct Integer {
589 #[prost(int32, tag = "1")]
591 pub ival: i32,
592}
593#[derive(serde::Serialize)]
594#[derive(Clone, PartialEq, ::prost::Message)]
595pub struct Float {
596 #[prost(string, tag = "1")]
598 pub fval: ::prost::alloc::string::String,
599}
600#[derive(serde::Serialize)]
601#[derive(Clone, Copy, PartialEq, ::prost::Message)]
602pub struct Boolean {
603 #[prost(bool, tag = "1")]
604 pub boolval: bool,
605}
606#[derive(serde::Serialize)]
607#[derive(Clone, PartialEq, ::prost::Message)]
608pub struct String {
609 #[prost(string, tag = "1")]
611 pub sval: ::prost::alloc::string::String,
612}
613#[derive(serde::Serialize)]
614#[derive(Clone, PartialEq, ::prost::Message)]
615pub struct BitString {
616 #[prost(string, tag = "1")]
618 pub bsval: ::prost::alloc::string::String,
619}
620#[derive(serde::Serialize)]
621#[derive(Clone, PartialEq, ::prost::Message)]
622pub struct List {
623 #[prost(message, repeated, tag = "1")]
624 pub items: ::prost::alloc::vec::Vec<Node>,
625}
626#[derive(serde::Serialize)]
627#[derive(Clone, PartialEq, ::prost::Message)]
628pub struct OidList {
629 #[prost(message, repeated, tag = "1")]
630 pub items: ::prost::alloc::vec::Vec<Node>,
631}
632#[derive(serde::Serialize)]
633#[derive(Clone, PartialEq, ::prost::Message)]
634pub struct IntList {
635 #[prost(message, repeated, tag = "1")]
636 pub items: ::prost::alloc::vec::Vec<Node>,
637}
638#[derive(serde::Serialize)]
639#[derive(Clone, PartialEq, ::prost::Message)]
640pub struct AConst {
641 #[prost(bool, tag = "10")]
642 pub isnull: bool,
643 #[prost(int32, tag = "11")]
644 pub location: i32,
645 #[prost(oneof = "a_const::Val", tags = "1, 2, 3, 4, 5")]
646 pub val: ::core::option::Option<a_const::Val>,
647}
648pub mod a_const {
650 #[derive(serde::Serialize)]
651 #[derive(Clone, PartialEq, ::prost::Oneof)]
652 pub enum Val {
653 #[prost(message, tag = "1")]
654 Ival(super::Integer),
655 #[prost(message, tag = "2")]
656 Fval(super::Float),
657 #[prost(message, tag = "3")]
658 Boolval(super::Boolean),
659 #[prost(message, tag = "4")]
660 Sval(super::String),
661 #[prost(message, tag = "5")]
662 Bsval(super::BitString),
663 }
664}
665#[derive(serde::Serialize)]
666#[derive(Clone, PartialEq, ::prost::Message)]
667pub struct Alias {
668 #[prost(string, tag = "1")]
669 pub aliasname: ::prost::alloc::string::String,
670 #[prost(message, repeated, tag = "2")]
671 pub colnames: ::prost::alloc::vec::Vec<Node>,
672}
673#[derive(serde::Serialize)]
674#[derive(Clone, PartialEq, ::prost::Message)]
675pub struct RangeVar {
676 #[prost(string, tag = "1")]
677 pub catalogname: ::prost::alloc::string::String,
678 #[prost(string, tag = "2")]
679 pub schemaname: ::prost::alloc::string::String,
680 #[prost(string, tag = "3")]
681 pub relname: ::prost::alloc::string::String,
682 #[prost(bool, tag = "4")]
683 pub inh: bool,
684 #[prost(string, tag = "5")]
685 pub relpersistence: ::prost::alloc::string::String,
686 #[prost(message, optional, tag = "6")]
687 pub alias: ::core::option::Option<Alias>,
688 #[prost(int32, tag = "7")]
689 pub location: i32,
690}
691#[derive(serde::Serialize)]
692#[derive(Clone, PartialEq, ::prost::Message)]
693pub struct TableFunc {
694 #[prost(enumeration = "TableFuncType", tag = "1")]
695 pub functype: i32,
696 #[prost(message, repeated, tag = "2")]
697 pub ns_uris: ::prost::alloc::vec::Vec<Node>,
698 #[prost(message, repeated, tag = "3")]
699 pub ns_names: ::prost::alloc::vec::Vec<Node>,
700 #[prost(message, optional, boxed, tag = "4")]
701 pub docexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
702 #[prost(message, optional, boxed, tag = "5")]
703 pub rowexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
704 #[prost(message, repeated, tag = "6")]
705 pub colnames: ::prost::alloc::vec::Vec<Node>,
706 #[prost(message, repeated, tag = "7")]
707 pub coltypes: ::prost::alloc::vec::Vec<Node>,
708 #[prost(message, repeated, tag = "8")]
709 pub coltypmods: ::prost::alloc::vec::Vec<Node>,
710 #[prost(message, repeated, tag = "9")]
711 pub colcollations: ::prost::alloc::vec::Vec<Node>,
712 #[prost(message, repeated, tag = "10")]
713 pub colexprs: ::prost::alloc::vec::Vec<Node>,
714 #[prost(message, repeated, tag = "11")]
715 pub coldefexprs: ::prost::alloc::vec::Vec<Node>,
716 #[prost(message, repeated, tag = "12")]
717 pub colvalexprs: ::prost::alloc::vec::Vec<Node>,
718 #[prost(message, repeated, tag = "13")]
719 pub passingvalexprs: ::prost::alloc::vec::Vec<Node>,
720 #[prost(uint64, repeated, tag = "14")]
721 pub notnulls: ::prost::alloc::vec::Vec<u64>,
722 #[prost(message, optional, boxed, tag = "15")]
723 pub plan: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
724 #[prost(int32, tag = "16")]
725 pub ordinalitycol: i32,
726 #[prost(int32, tag = "17")]
727 pub location: i32,
728}
729#[derive(serde::Serialize)]
730#[derive(Clone, PartialEq, ::prost::Message)]
731pub struct IntoClause {
732 #[prost(message, optional, tag = "1")]
733 pub rel: ::core::option::Option<RangeVar>,
734 #[prost(message, repeated, tag = "2")]
735 pub col_names: ::prost::alloc::vec::Vec<Node>,
736 #[prost(string, tag = "3")]
737 pub access_method: ::prost::alloc::string::String,
738 #[prost(message, repeated, tag = "4")]
739 pub options: ::prost::alloc::vec::Vec<Node>,
740 #[prost(enumeration = "OnCommitAction", tag = "5")]
741 pub on_commit: i32,
742 #[prost(string, tag = "6")]
743 pub table_space_name: ::prost::alloc::string::String,
744 #[prost(message, optional, boxed, tag = "7")]
745 pub view_query: ::core::option::Option<::prost::alloc::boxed::Box<Query>>,
746 #[prost(bool, tag = "8")]
747 pub skip_data: bool,
748}
749#[derive(serde::Serialize)]
750#[derive(Clone, PartialEq, ::prost::Message)]
751pub struct Var {
752 #[prost(message, optional, boxed, tag = "1")]
753 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
754 #[prost(int32, tag = "2")]
755 pub varno: i32,
756 #[prost(int32, tag = "3")]
757 pub varattno: i32,
758 #[prost(uint32, tag = "4")]
759 pub vartype: u32,
760 #[prost(int32, tag = "5")]
761 pub vartypmod: i32,
762 #[prost(uint32, tag = "6")]
763 pub varcollid: u32,
764 #[prost(uint64, repeated, tag = "7")]
765 pub varnullingrels: ::prost::alloc::vec::Vec<u64>,
766 #[prost(uint32, tag = "8")]
767 pub varlevelsup: u32,
768 #[prost(enumeration = "VarReturningType", tag = "9")]
769 pub varreturningtype: i32,
770 #[prost(int32, tag = "10")]
771 pub location: i32,
772}
773#[derive(serde::Serialize)]
774#[derive(Clone, PartialEq, ::prost::Message)]
775pub struct Param {
776 #[prost(message, optional, boxed, tag = "1")]
777 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
778 #[prost(enumeration = "ParamKind", tag = "2")]
779 pub paramkind: i32,
780 #[prost(int32, tag = "3")]
781 pub paramid: i32,
782 #[prost(uint32, tag = "4")]
783 pub paramtype: u32,
784 #[prost(int32, tag = "5")]
785 pub paramtypmod: i32,
786 #[prost(uint32, tag = "6")]
787 pub paramcollid: u32,
788 #[prost(int32, tag = "7")]
789 pub location: i32,
790}
791#[derive(serde::Serialize)]
792#[derive(Clone, PartialEq, ::prost::Message)]
793pub struct Aggref {
794 #[prost(message, optional, boxed, tag = "1")]
795 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
796 #[prost(uint32, tag = "2")]
797 pub aggfnoid: u32,
798 #[prost(uint32, tag = "3")]
799 pub aggtype: u32,
800 #[prost(uint32, tag = "4")]
801 pub aggcollid: u32,
802 #[prost(uint32, tag = "5")]
803 pub inputcollid: u32,
804 #[prost(message, repeated, tag = "6")]
805 pub aggargtypes: ::prost::alloc::vec::Vec<Node>,
806 #[prost(message, repeated, tag = "7")]
807 pub aggdirectargs: ::prost::alloc::vec::Vec<Node>,
808 #[prost(message, repeated, tag = "8")]
809 pub args: ::prost::alloc::vec::Vec<Node>,
810 #[prost(message, repeated, tag = "9")]
811 pub aggorder: ::prost::alloc::vec::Vec<Node>,
812 #[prost(message, repeated, tag = "10")]
813 pub aggdistinct: ::prost::alloc::vec::Vec<Node>,
814 #[prost(message, optional, boxed, tag = "11")]
815 pub aggfilter: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
816 #[prost(bool, tag = "12")]
817 pub aggstar: bool,
818 #[prost(bool, tag = "13")]
819 pub aggvariadic: bool,
820 #[prost(string, tag = "14")]
821 pub aggkind: ::prost::alloc::string::String,
822 #[prost(uint32, tag = "15")]
823 pub agglevelsup: u32,
824 #[prost(enumeration = "AggSplit", tag = "16")]
825 pub aggsplit: i32,
826 #[prost(int32, tag = "17")]
827 pub aggno: i32,
828 #[prost(int32, tag = "18")]
829 pub aggtransno: i32,
830 #[prost(int32, tag = "19")]
831 pub location: i32,
832}
833#[derive(serde::Serialize)]
834#[derive(Clone, PartialEq, ::prost::Message)]
835pub struct GroupingFunc {
836 #[prost(message, optional, boxed, tag = "1")]
837 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
838 #[prost(message, repeated, tag = "2")]
839 pub args: ::prost::alloc::vec::Vec<Node>,
840 #[prost(message, repeated, tag = "3")]
841 pub refs: ::prost::alloc::vec::Vec<Node>,
842 #[prost(uint32, tag = "4")]
843 pub agglevelsup: u32,
844 #[prost(int32, tag = "5")]
845 pub location: i32,
846}
847#[derive(serde::Serialize)]
848#[derive(Clone, PartialEq, ::prost::Message)]
849pub struct WindowFunc {
850 #[prost(message, optional, boxed, tag = "1")]
851 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
852 #[prost(uint32, tag = "2")]
853 pub winfnoid: u32,
854 #[prost(uint32, tag = "3")]
855 pub wintype: u32,
856 #[prost(uint32, tag = "4")]
857 pub wincollid: u32,
858 #[prost(uint32, tag = "5")]
859 pub inputcollid: u32,
860 #[prost(message, repeated, tag = "6")]
861 pub args: ::prost::alloc::vec::Vec<Node>,
862 #[prost(message, optional, boxed, tag = "7")]
863 pub aggfilter: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
864 #[prost(message, repeated, tag = "8")]
865 pub run_condition: ::prost::alloc::vec::Vec<Node>,
866 #[prost(uint32, tag = "9")]
867 pub winref: u32,
868 #[prost(bool, tag = "10")]
869 pub winstar: bool,
870 #[prost(bool, tag = "11")]
871 pub winagg: bool,
872 #[prost(int32, tag = "12")]
873 pub location: i32,
874}
875#[derive(serde::Serialize)]
876#[derive(Clone, PartialEq, ::prost::Message)]
877pub struct WindowFuncRunCondition {
878 #[prost(message, optional, boxed, tag = "1")]
879 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
880 #[prost(uint32, tag = "2")]
881 pub opno: u32,
882 #[prost(uint32, tag = "3")]
883 pub inputcollid: u32,
884 #[prost(bool, tag = "4")]
885 pub wfunc_left: bool,
886 #[prost(message, optional, boxed, tag = "5")]
887 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
888}
889#[derive(serde::Serialize)]
890#[derive(Clone, PartialEq, ::prost::Message)]
891pub struct MergeSupportFunc {
892 #[prost(message, optional, boxed, tag = "1")]
893 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
894 #[prost(uint32, tag = "2")]
895 pub msftype: u32,
896 #[prost(uint32, tag = "3")]
897 pub msfcollid: u32,
898 #[prost(int32, tag = "4")]
899 pub location: i32,
900}
901#[derive(serde::Serialize)]
902#[derive(Clone, PartialEq, ::prost::Message)]
903pub struct SubscriptingRef {
904 #[prost(message, optional, boxed, tag = "1")]
905 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
906 #[prost(uint32, tag = "2")]
907 pub refcontainertype: u32,
908 #[prost(uint32, tag = "3")]
909 pub refelemtype: u32,
910 #[prost(uint32, tag = "4")]
911 pub refrestype: u32,
912 #[prost(int32, tag = "5")]
913 pub reftypmod: i32,
914 #[prost(uint32, tag = "6")]
915 pub refcollid: u32,
916 #[prost(message, repeated, tag = "7")]
917 pub refupperindexpr: ::prost::alloc::vec::Vec<Node>,
918 #[prost(message, repeated, tag = "8")]
919 pub reflowerindexpr: ::prost::alloc::vec::Vec<Node>,
920 #[prost(message, optional, boxed, tag = "9")]
921 pub refexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
922 #[prost(message, optional, boxed, tag = "10")]
923 pub refassgnexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
924}
925#[derive(serde::Serialize)]
926#[derive(Clone, PartialEq, ::prost::Message)]
927pub struct FuncExpr {
928 #[prost(message, optional, boxed, tag = "1")]
929 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
930 #[prost(uint32, tag = "2")]
931 pub funcid: u32,
932 #[prost(uint32, tag = "3")]
933 pub funcresulttype: u32,
934 #[prost(bool, tag = "4")]
935 pub funcretset: bool,
936 #[prost(bool, tag = "5")]
937 pub funcvariadic: bool,
938 #[prost(enumeration = "CoercionForm", tag = "6")]
939 pub funcformat: i32,
940 #[prost(uint32, tag = "7")]
941 pub funccollid: u32,
942 #[prost(uint32, tag = "8")]
943 pub inputcollid: u32,
944 #[prost(message, repeated, tag = "9")]
945 pub args: ::prost::alloc::vec::Vec<Node>,
946 #[prost(int32, tag = "10")]
947 pub location: i32,
948}
949#[derive(serde::Serialize)]
950#[derive(Clone, PartialEq, ::prost::Message)]
951pub struct NamedArgExpr {
952 #[prost(message, optional, boxed, tag = "1")]
953 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
954 #[prost(message, optional, boxed, tag = "2")]
955 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
956 #[prost(string, tag = "3")]
957 pub name: ::prost::alloc::string::String,
958 #[prost(int32, tag = "4")]
959 pub argnumber: i32,
960 #[prost(int32, tag = "5")]
961 pub location: i32,
962}
963#[derive(serde::Serialize)]
964#[derive(Clone, PartialEq, ::prost::Message)]
965pub struct OpExpr {
966 #[prost(message, optional, boxed, tag = "1")]
967 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
968 #[prost(uint32, tag = "2")]
969 pub opno: u32,
970 #[prost(uint32, tag = "3")]
971 pub opresulttype: u32,
972 #[prost(bool, tag = "4")]
973 pub opretset: bool,
974 #[prost(uint32, tag = "5")]
975 pub opcollid: u32,
976 #[prost(uint32, tag = "6")]
977 pub inputcollid: u32,
978 #[prost(message, repeated, tag = "7")]
979 pub args: ::prost::alloc::vec::Vec<Node>,
980 #[prost(int32, tag = "8")]
981 pub location: i32,
982}
983#[derive(serde::Serialize)]
984#[derive(Clone, PartialEq, ::prost::Message)]
985pub struct DistinctExpr {
986 #[prost(message, optional, boxed, tag = "1")]
987 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
988 #[prost(uint32, tag = "2")]
989 pub opno: u32,
990 #[prost(uint32, tag = "3")]
991 pub opresulttype: u32,
992 #[prost(bool, tag = "4")]
993 pub opretset: bool,
994 #[prost(uint32, tag = "5")]
995 pub opcollid: u32,
996 #[prost(uint32, tag = "6")]
997 pub inputcollid: u32,
998 #[prost(message, repeated, tag = "7")]
999 pub args: ::prost::alloc::vec::Vec<Node>,
1000 #[prost(int32, tag = "8")]
1001 pub location: i32,
1002}
1003#[derive(serde::Serialize)]
1004#[derive(Clone, PartialEq, ::prost::Message)]
1005pub struct NullIfExpr {
1006 #[prost(message, optional, boxed, tag = "1")]
1007 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1008 #[prost(uint32, tag = "2")]
1009 pub opno: u32,
1010 #[prost(uint32, tag = "3")]
1011 pub opresulttype: u32,
1012 #[prost(bool, tag = "4")]
1013 pub opretset: bool,
1014 #[prost(uint32, tag = "5")]
1015 pub opcollid: u32,
1016 #[prost(uint32, tag = "6")]
1017 pub inputcollid: u32,
1018 #[prost(message, repeated, tag = "7")]
1019 pub args: ::prost::alloc::vec::Vec<Node>,
1020 #[prost(int32, tag = "8")]
1021 pub location: i32,
1022}
1023#[derive(serde::Serialize)]
1024#[derive(Clone, PartialEq, ::prost::Message)]
1025pub struct ScalarArrayOpExpr {
1026 #[prost(message, optional, boxed, tag = "1")]
1027 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1028 #[prost(uint32, tag = "2")]
1029 pub opno: u32,
1030 #[prost(bool, tag = "3")]
1031 pub use_or: bool,
1032 #[prost(uint32, tag = "4")]
1033 pub inputcollid: u32,
1034 #[prost(message, repeated, tag = "5")]
1035 pub args: ::prost::alloc::vec::Vec<Node>,
1036 #[prost(int32, tag = "6")]
1037 pub location: i32,
1038}
1039#[derive(serde::Serialize)]
1040#[derive(Clone, PartialEq, ::prost::Message)]
1041pub struct BoolExpr {
1042 #[prost(message, optional, boxed, tag = "1")]
1043 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1044 #[prost(enumeration = "BoolExprType", tag = "2")]
1045 pub boolop: i32,
1046 #[prost(message, repeated, tag = "3")]
1047 pub args: ::prost::alloc::vec::Vec<Node>,
1048 #[prost(int32, tag = "4")]
1049 pub location: i32,
1050}
1051#[derive(serde::Serialize)]
1052#[derive(Clone, PartialEq, ::prost::Message)]
1053pub struct SubLink {
1054 #[prost(message, optional, boxed, tag = "1")]
1055 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1056 #[prost(enumeration = "SubLinkType", tag = "2")]
1057 pub sub_link_type: i32,
1058 #[prost(int32, tag = "3")]
1059 pub sub_link_id: i32,
1060 #[prost(message, optional, boxed, tag = "4")]
1061 pub testexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1062 #[prost(message, repeated, tag = "5")]
1063 pub oper_name: ::prost::alloc::vec::Vec<Node>,
1064 #[prost(message, optional, boxed, tag = "6")]
1065 pub subselect: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1066 #[prost(int32, tag = "7")]
1067 pub location: i32,
1068}
1069#[derive(serde::Serialize)]
1070#[derive(Clone, PartialEq, ::prost::Message)]
1071pub struct SubPlan {
1072 #[prost(message, optional, boxed, tag = "1")]
1073 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1074 #[prost(enumeration = "SubLinkType", tag = "2")]
1075 pub sub_link_type: i32,
1076 #[prost(message, optional, boxed, tag = "3")]
1077 pub testexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1078 #[prost(message, repeated, tag = "4")]
1079 pub param_ids: ::prost::alloc::vec::Vec<Node>,
1080 #[prost(int32, tag = "5")]
1081 pub plan_id: i32,
1082 #[prost(string, tag = "6")]
1083 pub plan_name: ::prost::alloc::string::String,
1084 #[prost(uint32, tag = "7")]
1085 pub first_col_type: u32,
1086 #[prost(int32, tag = "8")]
1087 pub first_col_typmod: i32,
1088 #[prost(uint32, tag = "9")]
1089 pub first_col_collation: u32,
1090 #[prost(bool, tag = "10")]
1091 pub use_hash_table: bool,
1092 #[prost(bool, tag = "11")]
1093 pub unknown_eq_false: bool,
1094 #[prost(bool, tag = "12")]
1095 pub parallel_safe: bool,
1096 #[prost(message, repeated, tag = "13")]
1097 pub set_param: ::prost::alloc::vec::Vec<Node>,
1098 #[prost(message, repeated, tag = "14")]
1099 pub par_param: ::prost::alloc::vec::Vec<Node>,
1100 #[prost(message, repeated, tag = "15")]
1101 pub args: ::prost::alloc::vec::Vec<Node>,
1102 #[prost(double, tag = "16")]
1103 pub startup_cost: f64,
1104 #[prost(double, tag = "17")]
1105 pub per_call_cost: f64,
1106}
1107#[derive(serde::Serialize)]
1108#[derive(Clone, PartialEq, ::prost::Message)]
1109pub struct AlternativeSubPlan {
1110 #[prost(message, optional, boxed, tag = "1")]
1111 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1112 #[prost(message, repeated, tag = "2")]
1113 pub subplans: ::prost::alloc::vec::Vec<Node>,
1114}
1115#[derive(serde::Serialize)]
1116#[derive(Clone, PartialEq, ::prost::Message)]
1117pub struct FieldSelect {
1118 #[prost(message, optional, boxed, tag = "1")]
1119 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1120 #[prost(message, optional, boxed, tag = "2")]
1121 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1122 #[prost(int32, tag = "3")]
1123 pub fieldnum: i32,
1124 #[prost(uint32, tag = "4")]
1125 pub resulttype: u32,
1126 #[prost(int32, tag = "5")]
1127 pub resulttypmod: i32,
1128 #[prost(uint32, tag = "6")]
1129 pub resultcollid: u32,
1130}
1131#[derive(serde::Serialize)]
1132#[derive(Clone, PartialEq, ::prost::Message)]
1133pub struct FieldStore {
1134 #[prost(message, optional, boxed, tag = "1")]
1135 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1136 #[prost(message, optional, boxed, tag = "2")]
1137 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1138 #[prost(message, repeated, tag = "3")]
1139 pub newvals: ::prost::alloc::vec::Vec<Node>,
1140 #[prost(message, repeated, tag = "4")]
1141 pub fieldnums: ::prost::alloc::vec::Vec<Node>,
1142 #[prost(uint32, tag = "5")]
1143 pub resulttype: u32,
1144}
1145#[derive(serde::Serialize)]
1146#[derive(Clone, PartialEq, ::prost::Message)]
1147pub struct RelabelType {
1148 #[prost(message, optional, boxed, tag = "1")]
1149 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1150 #[prost(message, optional, boxed, tag = "2")]
1151 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1152 #[prost(uint32, tag = "3")]
1153 pub resulttype: u32,
1154 #[prost(int32, tag = "4")]
1155 pub resulttypmod: i32,
1156 #[prost(uint32, tag = "5")]
1157 pub resultcollid: u32,
1158 #[prost(enumeration = "CoercionForm", tag = "6")]
1159 pub relabelformat: i32,
1160 #[prost(int32, tag = "7")]
1161 pub location: i32,
1162}
1163#[derive(serde::Serialize)]
1164#[derive(Clone, PartialEq, ::prost::Message)]
1165pub struct CoerceViaIo {
1166 #[prost(message, optional, boxed, tag = "1")]
1167 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1168 #[prost(message, optional, boxed, tag = "2")]
1169 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1170 #[prost(uint32, tag = "3")]
1171 pub resulttype: u32,
1172 #[prost(uint32, tag = "4")]
1173 pub resultcollid: u32,
1174 #[prost(enumeration = "CoercionForm", tag = "5")]
1175 pub coerceformat: i32,
1176 #[prost(int32, tag = "6")]
1177 pub location: i32,
1178}
1179#[derive(serde::Serialize)]
1180#[derive(Clone, PartialEq, ::prost::Message)]
1181pub struct ArrayCoerceExpr {
1182 #[prost(message, optional, boxed, tag = "1")]
1183 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1184 #[prost(message, optional, boxed, tag = "2")]
1185 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1186 #[prost(message, optional, boxed, tag = "3")]
1187 pub elemexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1188 #[prost(uint32, tag = "4")]
1189 pub resulttype: u32,
1190 #[prost(int32, tag = "5")]
1191 pub resulttypmod: i32,
1192 #[prost(uint32, tag = "6")]
1193 pub resultcollid: u32,
1194 #[prost(enumeration = "CoercionForm", tag = "7")]
1195 pub coerceformat: i32,
1196 #[prost(int32, tag = "8")]
1197 pub location: i32,
1198}
1199#[derive(serde::Serialize)]
1200#[derive(Clone, PartialEq, ::prost::Message)]
1201pub struct ConvertRowtypeExpr {
1202 #[prost(message, optional, boxed, tag = "1")]
1203 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1204 #[prost(message, optional, boxed, tag = "2")]
1205 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1206 #[prost(uint32, tag = "3")]
1207 pub resulttype: u32,
1208 #[prost(enumeration = "CoercionForm", tag = "4")]
1209 pub convertformat: i32,
1210 #[prost(int32, tag = "5")]
1211 pub location: i32,
1212}
1213#[derive(serde::Serialize)]
1214#[derive(Clone, PartialEq, ::prost::Message)]
1215pub struct CollateExpr {
1216 #[prost(message, optional, boxed, tag = "1")]
1217 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1218 #[prost(message, optional, boxed, tag = "2")]
1219 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1220 #[prost(uint32, tag = "3")]
1221 pub coll_oid: u32,
1222 #[prost(int32, tag = "4")]
1223 pub location: i32,
1224}
1225#[derive(serde::Serialize)]
1226#[derive(Clone, PartialEq, ::prost::Message)]
1227pub struct CaseExpr {
1228 #[prost(message, optional, boxed, tag = "1")]
1229 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1230 #[prost(uint32, tag = "2")]
1231 pub casetype: u32,
1232 #[prost(uint32, tag = "3")]
1233 pub casecollid: u32,
1234 #[prost(message, optional, boxed, tag = "4")]
1235 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1236 #[prost(message, repeated, tag = "5")]
1237 pub args: ::prost::alloc::vec::Vec<Node>,
1238 #[prost(message, optional, boxed, tag = "6")]
1239 pub defresult: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1240 #[prost(int32, tag = "7")]
1241 pub location: i32,
1242}
1243#[derive(serde::Serialize)]
1244#[derive(Clone, PartialEq, ::prost::Message)]
1245pub struct CaseWhen {
1246 #[prost(message, optional, boxed, tag = "1")]
1247 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1248 #[prost(message, optional, boxed, tag = "2")]
1249 pub expr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1250 #[prost(message, optional, boxed, tag = "3")]
1251 pub result: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1252 #[prost(int32, tag = "4")]
1253 pub location: i32,
1254}
1255#[derive(serde::Serialize)]
1256#[derive(Clone, PartialEq, ::prost::Message)]
1257pub struct CaseTestExpr {
1258 #[prost(message, optional, boxed, tag = "1")]
1259 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1260 #[prost(uint32, tag = "2")]
1261 pub type_id: u32,
1262 #[prost(int32, tag = "3")]
1263 pub type_mod: i32,
1264 #[prost(uint32, tag = "4")]
1265 pub collation: u32,
1266}
1267#[derive(serde::Serialize)]
1268#[derive(Clone, PartialEq, ::prost::Message)]
1269pub struct ArrayExpr {
1270 #[prost(message, optional, boxed, tag = "1")]
1271 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1272 #[prost(uint32, tag = "2")]
1273 pub array_typeid: u32,
1274 #[prost(uint32, tag = "3")]
1275 pub array_collid: u32,
1276 #[prost(uint32, tag = "4")]
1277 pub element_typeid: u32,
1278 #[prost(message, repeated, tag = "5")]
1279 pub elements: ::prost::alloc::vec::Vec<Node>,
1280 #[prost(bool, tag = "6")]
1281 pub multidims: bool,
1282 #[prost(int32, tag = "7")]
1283 pub list_start: i32,
1284 #[prost(int32, tag = "8")]
1285 pub list_end: i32,
1286 #[prost(int32, tag = "9")]
1287 pub location: i32,
1288}
1289#[derive(serde::Serialize)]
1290#[derive(Clone, PartialEq, ::prost::Message)]
1291pub struct RowExpr {
1292 #[prost(message, optional, boxed, tag = "1")]
1293 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1294 #[prost(message, repeated, tag = "2")]
1295 pub args: ::prost::alloc::vec::Vec<Node>,
1296 #[prost(uint32, tag = "3")]
1297 pub row_typeid: u32,
1298 #[prost(enumeration = "CoercionForm", tag = "4")]
1299 pub row_format: i32,
1300 #[prost(message, repeated, tag = "5")]
1301 pub colnames: ::prost::alloc::vec::Vec<Node>,
1302 #[prost(int32, tag = "6")]
1303 pub location: i32,
1304}
1305#[derive(serde::Serialize)]
1306#[derive(Clone, PartialEq, ::prost::Message)]
1307pub struct RowCompareExpr {
1308 #[prost(message, optional, boxed, tag = "1")]
1309 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1310 #[prost(enumeration = "CompareType", tag = "2")]
1311 pub cmptype: i32,
1312 #[prost(message, repeated, tag = "3")]
1313 pub opnos: ::prost::alloc::vec::Vec<Node>,
1314 #[prost(message, repeated, tag = "4")]
1315 pub opfamilies: ::prost::alloc::vec::Vec<Node>,
1316 #[prost(message, repeated, tag = "5")]
1317 pub inputcollids: ::prost::alloc::vec::Vec<Node>,
1318 #[prost(message, repeated, tag = "6")]
1319 pub largs: ::prost::alloc::vec::Vec<Node>,
1320 #[prost(message, repeated, tag = "7")]
1321 pub rargs: ::prost::alloc::vec::Vec<Node>,
1322}
1323#[derive(serde::Serialize)]
1324#[derive(Clone, PartialEq, ::prost::Message)]
1325pub struct CoalesceExpr {
1326 #[prost(message, optional, boxed, tag = "1")]
1327 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1328 #[prost(uint32, tag = "2")]
1329 pub coalescetype: u32,
1330 #[prost(uint32, tag = "3")]
1331 pub coalescecollid: u32,
1332 #[prost(message, repeated, tag = "4")]
1333 pub args: ::prost::alloc::vec::Vec<Node>,
1334 #[prost(int32, tag = "5")]
1335 pub location: i32,
1336}
1337#[derive(serde::Serialize)]
1338#[derive(Clone, PartialEq, ::prost::Message)]
1339pub struct MinMaxExpr {
1340 #[prost(message, optional, boxed, tag = "1")]
1341 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1342 #[prost(uint32, tag = "2")]
1343 pub minmaxtype: u32,
1344 #[prost(uint32, tag = "3")]
1345 pub minmaxcollid: u32,
1346 #[prost(uint32, tag = "4")]
1347 pub inputcollid: u32,
1348 #[prost(enumeration = "MinMaxOp", tag = "5")]
1349 pub op: i32,
1350 #[prost(message, repeated, tag = "6")]
1351 pub args: ::prost::alloc::vec::Vec<Node>,
1352 #[prost(int32, tag = "7")]
1353 pub location: i32,
1354}
1355#[derive(serde::Serialize)]
1356#[derive(Clone, PartialEq, ::prost::Message)]
1357pub struct SqlValueFunction {
1358 #[prost(message, optional, boxed, tag = "1")]
1359 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1360 #[prost(enumeration = "SqlValueFunctionOp", tag = "2")]
1361 pub op: i32,
1362 #[prost(uint32, tag = "3")]
1363 pub r#type: u32,
1364 #[prost(int32, tag = "4")]
1365 pub typmod: i32,
1366 #[prost(int32, tag = "5")]
1367 pub location: i32,
1368}
1369#[derive(serde::Serialize)]
1370#[derive(Clone, PartialEq, ::prost::Message)]
1371pub struct XmlExpr {
1372 #[prost(message, optional, boxed, tag = "1")]
1373 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1374 #[prost(enumeration = "XmlExprOp", tag = "2")]
1375 pub op: i32,
1376 #[prost(string, tag = "3")]
1377 pub name: ::prost::alloc::string::String,
1378 #[prost(message, repeated, tag = "4")]
1379 pub named_args: ::prost::alloc::vec::Vec<Node>,
1380 #[prost(message, repeated, tag = "5")]
1381 pub arg_names: ::prost::alloc::vec::Vec<Node>,
1382 #[prost(message, repeated, tag = "6")]
1383 pub args: ::prost::alloc::vec::Vec<Node>,
1384 #[prost(enumeration = "XmlOptionType", tag = "7")]
1385 pub xmloption: i32,
1386 #[prost(bool, tag = "8")]
1387 pub indent: bool,
1388 #[prost(uint32, tag = "9")]
1389 pub r#type: u32,
1390 #[prost(int32, tag = "10")]
1391 pub typmod: i32,
1392 #[prost(int32, tag = "11")]
1393 pub location: i32,
1394}
1395#[derive(serde::Serialize)]
1396#[derive(Clone, Copy, PartialEq, ::prost::Message)]
1397pub struct JsonFormat {
1398 #[prost(enumeration = "JsonFormatType", tag = "1")]
1399 pub format_type: i32,
1400 #[prost(enumeration = "JsonEncoding", tag = "2")]
1401 pub encoding: i32,
1402 #[prost(int32, tag = "3")]
1403 pub location: i32,
1404}
1405#[derive(serde::Serialize)]
1406#[derive(Clone, Copy, PartialEq, ::prost::Message)]
1407pub struct JsonReturning {
1408 #[prost(message, optional, tag = "1")]
1409 pub format: ::core::option::Option<JsonFormat>,
1410 #[prost(uint32, tag = "2")]
1411 pub typid: u32,
1412 #[prost(int32, tag = "3")]
1413 pub typmod: i32,
1414}
1415#[derive(serde::Serialize)]
1416#[derive(Clone, PartialEq, ::prost::Message)]
1417pub struct JsonValueExpr {
1418 #[prost(message, optional, boxed, tag = "1")]
1419 pub raw_expr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1420 #[prost(message, optional, boxed, tag = "2")]
1421 pub formatted_expr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1422 #[prost(message, optional, tag = "3")]
1423 pub format: ::core::option::Option<JsonFormat>,
1424}
1425#[derive(serde::Serialize)]
1426#[derive(Clone, PartialEq, ::prost::Message)]
1427pub struct JsonConstructorExpr {
1428 #[prost(message, optional, boxed, tag = "1")]
1429 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1430 #[prost(enumeration = "JsonConstructorType", tag = "2")]
1431 pub r#type: i32,
1432 #[prost(message, repeated, tag = "3")]
1433 pub args: ::prost::alloc::vec::Vec<Node>,
1434 #[prost(message, optional, boxed, tag = "4")]
1435 pub func: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1436 #[prost(message, optional, boxed, tag = "5")]
1437 pub coercion: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1438 #[prost(message, optional, tag = "6")]
1439 pub returning: ::core::option::Option<JsonReturning>,
1440 #[prost(bool, tag = "7")]
1441 pub absent_on_null: bool,
1442 #[prost(bool, tag = "8")]
1443 pub unique: bool,
1444 #[prost(int32, tag = "9")]
1445 pub location: i32,
1446}
1447#[derive(serde::Serialize)]
1448#[derive(Clone, PartialEq, ::prost::Message)]
1449pub struct JsonIsPredicate {
1450 #[prost(message, optional, boxed, tag = "1")]
1451 pub expr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1452 #[prost(message, optional, tag = "2")]
1453 pub format: ::core::option::Option<JsonFormat>,
1454 #[prost(enumeration = "JsonValueType", tag = "3")]
1455 pub item_type: i32,
1456 #[prost(bool, tag = "4")]
1457 pub unique_keys: bool,
1458 #[prost(int32, tag = "5")]
1459 pub location: i32,
1460}
1461#[derive(serde::Serialize)]
1462#[derive(Clone, PartialEq, ::prost::Message)]
1463pub struct JsonBehavior {
1464 #[prost(enumeration = "JsonBehaviorType", tag = "1")]
1465 pub btype: i32,
1466 #[prost(message, optional, boxed, tag = "2")]
1467 pub expr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1468 #[prost(bool, tag = "3")]
1469 pub coerce: bool,
1470 #[prost(int32, tag = "4")]
1471 pub location: i32,
1472}
1473#[derive(serde::Serialize)]
1474#[derive(Clone, PartialEq, ::prost::Message)]
1475pub struct JsonExpr {
1476 #[prost(message, optional, boxed, tag = "1")]
1477 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1478 #[prost(enumeration = "JsonExprOp", tag = "2")]
1479 pub op: i32,
1480 #[prost(string, tag = "3")]
1481 pub column_name: ::prost::alloc::string::String,
1482 #[prost(message, optional, boxed, tag = "4")]
1483 pub formatted_expr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1484 #[prost(message, optional, tag = "5")]
1485 pub format: ::core::option::Option<JsonFormat>,
1486 #[prost(message, optional, boxed, tag = "6")]
1487 pub path_spec: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1488 #[prost(message, optional, tag = "7")]
1489 pub returning: ::core::option::Option<JsonReturning>,
1490 #[prost(message, repeated, tag = "8")]
1491 pub passing_names: ::prost::alloc::vec::Vec<Node>,
1492 #[prost(message, repeated, tag = "9")]
1493 pub passing_values: ::prost::alloc::vec::Vec<Node>,
1494 #[prost(message, optional, boxed, tag = "10")]
1495 pub on_empty: ::core::option::Option<::prost::alloc::boxed::Box<JsonBehavior>>,
1496 #[prost(message, optional, boxed, tag = "11")]
1497 pub on_error: ::core::option::Option<::prost::alloc::boxed::Box<JsonBehavior>>,
1498 #[prost(bool, tag = "12")]
1499 pub use_io_coercion: bool,
1500 #[prost(bool, tag = "13")]
1501 pub use_json_coercion: bool,
1502 #[prost(enumeration = "JsonWrapper", tag = "14")]
1503 pub wrapper: i32,
1504 #[prost(bool, tag = "15")]
1505 pub omit_quotes: bool,
1506 #[prost(uint32, tag = "16")]
1507 pub collation: u32,
1508 #[prost(int32, tag = "17")]
1509 pub location: i32,
1510}
1511#[derive(serde::Serialize)]
1512#[derive(Clone, PartialEq, ::prost::Message)]
1513pub struct JsonTablePath {
1514 #[prost(string, tag = "1")]
1515 pub name: ::prost::alloc::string::String,
1516}
1517#[derive(serde::Serialize)]
1518#[derive(Clone, PartialEq, ::prost::Message)]
1519pub struct JsonTablePathScan {
1520 #[prost(message, optional, boxed, tag = "1")]
1521 pub plan: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1522 #[prost(message, optional, tag = "2")]
1523 pub path: ::core::option::Option<JsonTablePath>,
1524 #[prost(bool, tag = "3")]
1525 pub error_on_error: bool,
1526 #[prost(message, optional, boxed, tag = "4")]
1527 pub child: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1528 #[prost(int32, tag = "5")]
1529 pub col_min: i32,
1530 #[prost(int32, tag = "6")]
1531 pub col_max: i32,
1532}
1533#[derive(serde::Serialize)]
1534#[derive(Clone, PartialEq, ::prost::Message)]
1535pub struct JsonTableSiblingJoin {
1536 #[prost(message, optional, boxed, tag = "1")]
1537 pub plan: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1538 #[prost(message, optional, boxed, tag = "2")]
1539 pub lplan: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1540 #[prost(message, optional, boxed, tag = "3")]
1541 pub rplan: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1542}
1543#[derive(serde::Serialize)]
1544#[derive(Clone, PartialEq, ::prost::Message)]
1545pub struct NullTest {
1546 #[prost(message, optional, boxed, tag = "1")]
1547 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1548 #[prost(message, optional, boxed, tag = "2")]
1549 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1550 #[prost(enumeration = "NullTestType", tag = "3")]
1551 pub nulltesttype: i32,
1552 #[prost(bool, tag = "4")]
1553 pub argisrow: bool,
1554 #[prost(int32, tag = "5")]
1555 pub location: i32,
1556}
1557#[derive(serde::Serialize)]
1558#[derive(Clone, PartialEq, ::prost::Message)]
1559pub struct BooleanTest {
1560 #[prost(message, optional, boxed, tag = "1")]
1561 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1562 #[prost(message, optional, boxed, tag = "2")]
1563 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1564 #[prost(enumeration = "BoolTestType", tag = "3")]
1565 pub booltesttype: i32,
1566 #[prost(int32, tag = "4")]
1567 pub location: i32,
1568}
1569#[derive(serde::Serialize)]
1570#[derive(Clone, PartialEq, ::prost::Message)]
1571pub struct MergeAction {
1572 #[prost(enumeration = "MergeMatchKind", tag = "1")]
1573 pub match_kind: i32,
1574 #[prost(enumeration = "CmdType", tag = "2")]
1575 pub command_type: i32,
1576 #[prost(enumeration = "OverridingKind", tag = "3")]
1577 pub r#override: i32,
1578 #[prost(message, optional, boxed, tag = "4")]
1579 pub qual: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1580 #[prost(message, repeated, tag = "5")]
1581 pub target_list: ::prost::alloc::vec::Vec<Node>,
1582 #[prost(message, repeated, tag = "6")]
1583 pub update_colnos: ::prost::alloc::vec::Vec<Node>,
1584}
1585#[derive(serde::Serialize)]
1586#[derive(Clone, PartialEq, ::prost::Message)]
1587pub struct CoerceToDomain {
1588 #[prost(message, optional, boxed, tag = "1")]
1589 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1590 #[prost(message, optional, boxed, tag = "2")]
1591 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1592 #[prost(uint32, tag = "3")]
1593 pub resulttype: u32,
1594 #[prost(int32, tag = "4")]
1595 pub resulttypmod: i32,
1596 #[prost(uint32, tag = "5")]
1597 pub resultcollid: u32,
1598 #[prost(enumeration = "CoercionForm", tag = "6")]
1599 pub coercionformat: i32,
1600 #[prost(int32, tag = "7")]
1601 pub location: i32,
1602}
1603#[derive(serde::Serialize)]
1604#[derive(Clone, PartialEq, ::prost::Message)]
1605pub struct CoerceToDomainValue {
1606 #[prost(message, optional, boxed, tag = "1")]
1607 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1608 #[prost(uint32, tag = "2")]
1609 pub type_id: u32,
1610 #[prost(int32, tag = "3")]
1611 pub type_mod: i32,
1612 #[prost(uint32, tag = "4")]
1613 pub collation: u32,
1614 #[prost(int32, tag = "5")]
1615 pub location: i32,
1616}
1617#[derive(serde::Serialize)]
1618#[derive(Clone, PartialEq, ::prost::Message)]
1619pub struct SetToDefault {
1620 #[prost(message, optional, boxed, tag = "1")]
1621 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1622 #[prost(uint32, tag = "2")]
1623 pub type_id: u32,
1624 #[prost(int32, tag = "3")]
1625 pub type_mod: i32,
1626 #[prost(uint32, tag = "4")]
1627 pub collation: u32,
1628 #[prost(int32, tag = "5")]
1629 pub location: i32,
1630}
1631#[derive(serde::Serialize)]
1632#[derive(Clone, PartialEq, ::prost::Message)]
1633pub struct CurrentOfExpr {
1634 #[prost(message, optional, boxed, tag = "1")]
1635 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1636 #[prost(uint32, tag = "2")]
1637 pub cvarno: u32,
1638 #[prost(string, tag = "3")]
1639 pub cursor_name: ::prost::alloc::string::String,
1640 #[prost(int32, tag = "4")]
1641 pub cursor_param: i32,
1642}
1643#[derive(serde::Serialize)]
1644#[derive(Clone, PartialEq, ::prost::Message)]
1645pub struct NextValueExpr {
1646 #[prost(message, optional, boxed, tag = "1")]
1647 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1648 #[prost(uint32, tag = "2")]
1649 pub seqid: u32,
1650 #[prost(uint32, tag = "3")]
1651 pub type_id: u32,
1652}
1653#[derive(serde::Serialize)]
1654#[derive(Clone, PartialEq, ::prost::Message)]
1655pub struct InferenceElem {
1656 #[prost(message, optional, boxed, tag = "1")]
1657 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1658 #[prost(message, optional, boxed, tag = "2")]
1659 pub expr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1660 #[prost(uint32, tag = "3")]
1661 pub infercollid: u32,
1662 #[prost(uint32, tag = "4")]
1663 pub inferopclass: u32,
1664}
1665#[derive(serde::Serialize)]
1666#[derive(Clone, PartialEq, ::prost::Message)]
1667pub struct ReturningExpr {
1668 #[prost(message, optional, boxed, tag = "1")]
1669 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1670 #[prost(int32, tag = "2")]
1671 pub retlevelsup: i32,
1672 #[prost(bool, tag = "3")]
1673 pub retold: bool,
1674 #[prost(message, optional, boxed, tag = "4")]
1675 pub retexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1676}
1677#[derive(serde::Serialize)]
1678#[derive(Clone, PartialEq, ::prost::Message)]
1679pub struct TargetEntry {
1680 #[prost(message, optional, boxed, tag = "1")]
1681 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1682 #[prost(message, optional, boxed, tag = "2")]
1683 pub expr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1684 #[prost(int32, tag = "3")]
1685 pub resno: i32,
1686 #[prost(string, tag = "4")]
1687 pub resname: ::prost::alloc::string::String,
1688 #[prost(uint32, tag = "5")]
1689 pub ressortgroupref: u32,
1690 #[prost(uint32, tag = "6")]
1691 pub resorigtbl: u32,
1692 #[prost(int32, tag = "7")]
1693 pub resorigcol: i32,
1694 #[prost(bool, tag = "8")]
1695 pub resjunk: bool,
1696}
1697#[derive(serde::Serialize)]
1698#[derive(Clone, Copy, PartialEq, ::prost::Message)]
1699pub struct RangeTblRef {
1700 #[prost(int32, tag = "1")]
1701 pub rtindex: i32,
1702}
1703#[derive(serde::Serialize)]
1704#[derive(Clone, PartialEq, ::prost::Message)]
1705pub struct JoinExpr {
1706 #[prost(enumeration = "JoinType", tag = "1")]
1707 pub jointype: i32,
1708 #[prost(bool, tag = "2")]
1709 pub is_natural: bool,
1710 #[prost(message, optional, boxed, tag = "3")]
1711 pub larg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1712 #[prost(message, optional, boxed, tag = "4")]
1713 pub rarg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1714 #[prost(message, repeated, tag = "5")]
1715 pub using_clause: ::prost::alloc::vec::Vec<Node>,
1716 #[prost(message, optional, tag = "6")]
1717 pub join_using_alias: ::core::option::Option<Alias>,
1718 #[prost(message, optional, boxed, tag = "7")]
1719 pub quals: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1720 #[prost(message, optional, tag = "8")]
1721 pub alias: ::core::option::Option<Alias>,
1722 #[prost(int32, tag = "9")]
1723 pub rtindex: i32,
1724}
1725#[derive(serde::Serialize)]
1726#[derive(Clone, PartialEq, ::prost::Message)]
1727pub struct FromExpr {
1728 #[prost(message, repeated, tag = "1")]
1729 pub fromlist: ::prost::alloc::vec::Vec<Node>,
1730 #[prost(message, optional, boxed, tag = "2")]
1731 pub quals: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1732}
1733#[derive(serde::Serialize)]
1734#[derive(Clone, PartialEq, ::prost::Message)]
1735pub struct OnConflictExpr {
1736 #[prost(enumeration = "OnConflictAction", tag = "1")]
1737 pub action: i32,
1738 #[prost(message, repeated, tag = "2")]
1739 pub arbiter_elems: ::prost::alloc::vec::Vec<Node>,
1740 #[prost(message, optional, boxed, tag = "3")]
1741 pub arbiter_where: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1742 #[prost(uint32, tag = "4")]
1743 pub constraint: u32,
1744 #[prost(message, repeated, tag = "5")]
1745 pub on_conflict_set: ::prost::alloc::vec::Vec<Node>,
1746 #[prost(message, optional, boxed, tag = "6")]
1747 pub on_conflict_where: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1748 #[prost(int32, tag = "7")]
1749 pub excl_rel_index: i32,
1750 #[prost(message, repeated, tag = "8")]
1751 pub excl_rel_tlist: ::prost::alloc::vec::Vec<Node>,
1752}
1753#[derive(serde::Serialize)]
1754#[derive(Clone, PartialEq, ::prost::Message)]
1755pub struct Query {
1756 #[prost(enumeration = "CmdType", tag = "1")]
1757 pub command_type: i32,
1758 #[prost(enumeration = "QuerySource", tag = "2")]
1759 pub query_source: i32,
1760 #[prost(bool, tag = "3")]
1761 pub can_set_tag: bool,
1762 #[prost(message, optional, boxed, tag = "4")]
1763 pub utility_stmt: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1764 #[prost(int32, tag = "5")]
1765 pub result_relation: i32,
1766 #[prost(bool, tag = "6")]
1767 pub has_aggs: bool,
1768 #[prost(bool, tag = "7")]
1769 pub has_window_funcs: bool,
1770 #[prost(bool, tag = "8")]
1771 pub has_target_srfs: bool,
1772 #[prost(bool, tag = "9")]
1773 pub has_sub_links: bool,
1774 #[prost(bool, tag = "10")]
1775 pub has_distinct_on: bool,
1776 #[prost(bool, tag = "11")]
1777 pub has_recursive: bool,
1778 #[prost(bool, tag = "12")]
1779 pub has_modifying_cte: bool,
1780 #[prost(bool, tag = "13")]
1781 pub has_for_update: bool,
1782 #[prost(bool, tag = "14")]
1783 pub has_row_security: bool,
1784 #[prost(bool, tag = "15")]
1785 pub has_group_rte: bool,
1786 #[prost(bool, tag = "16")]
1787 pub is_return: bool,
1788 #[prost(message, repeated, tag = "17")]
1789 pub cte_list: ::prost::alloc::vec::Vec<Node>,
1790 #[prost(message, repeated, tag = "18")]
1791 pub rtable: ::prost::alloc::vec::Vec<Node>,
1792 #[prost(message, repeated, tag = "19")]
1793 pub rteperminfos: ::prost::alloc::vec::Vec<Node>,
1794 #[prost(message, optional, boxed, tag = "20")]
1795 pub jointree: ::core::option::Option<::prost::alloc::boxed::Box<FromExpr>>,
1796 #[prost(message, repeated, tag = "21")]
1797 pub merge_action_list: ::prost::alloc::vec::Vec<Node>,
1798 #[prost(int32, tag = "22")]
1799 pub merge_target_relation: i32,
1800 #[prost(message, optional, boxed, tag = "23")]
1801 pub merge_join_condition: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1802 #[prost(message, repeated, tag = "24")]
1803 pub target_list: ::prost::alloc::vec::Vec<Node>,
1804 #[prost(enumeration = "OverridingKind", tag = "25")]
1805 pub r#override: i32,
1806 #[prost(message, optional, boxed, tag = "26")]
1807 pub on_conflict: ::core::option::Option<::prost::alloc::boxed::Box<OnConflictExpr>>,
1808 #[prost(string, tag = "27")]
1809 pub returning_old_alias: ::prost::alloc::string::String,
1810 #[prost(string, tag = "28")]
1811 pub returning_new_alias: ::prost::alloc::string::String,
1812 #[prost(message, repeated, tag = "29")]
1813 pub returning_list: ::prost::alloc::vec::Vec<Node>,
1814 #[prost(message, repeated, tag = "30")]
1815 pub group_clause: ::prost::alloc::vec::Vec<Node>,
1816 #[prost(bool, tag = "31")]
1817 pub group_distinct: bool,
1818 #[prost(message, repeated, tag = "32")]
1819 pub grouping_sets: ::prost::alloc::vec::Vec<Node>,
1820 #[prost(message, optional, boxed, tag = "33")]
1821 pub having_qual: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1822 #[prost(message, repeated, tag = "34")]
1823 pub window_clause: ::prost::alloc::vec::Vec<Node>,
1824 #[prost(message, repeated, tag = "35")]
1825 pub distinct_clause: ::prost::alloc::vec::Vec<Node>,
1826 #[prost(message, repeated, tag = "36")]
1827 pub sort_clause: ::prost::alloc::vec::Vec<Node>,
1828 #[prost(message, optional, boxed, tag = "37")]
1829 pub limit_offset: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1830 #[prost(message, optional, boxed, tag = "38")]
1831 pub limit_count: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1832 #[prost(enumeration = "LimitOption", tag = "39")]
1833 pub limit_option: i32,
1834 #[prost(message, repeated, tag = "40")]
1835 pub row_marks: ::prost::alloc::vec::Vec<Node>,
1836 #[prost(message, optional, boxed, tag = "41")]
1837 pub set_operations: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1838 #[prost(message, repeated, tag = "42")]
1839 pub constraint_deps: ::prost::alloc::vec::Vec<Node>,
1840 #[prost(message, repeated, tag = "43")]
1841 pub with_check_options: ::prost::alloc::vec::Vec<Node>,
1842 #[prost(int32, tag = "44")]
1843 pub stmt_location: i32,
1844 #[prost(int32, tag = "45")]
1845 pub stmt_len: i32,
1846}
1847#[derive(serde::Serialize)]
1848#[derive(Clone, PartialEq, ::prost::Message)]
1849pub struct TypeName {
1850 #[prost(message, repeated, tag = "1")]
1851 pub names: ::prost::alloc::vec::Vec<Node>,
1852 #[prost(uint32, tag = "2")]
1853 pub type_oid: u32,
1854 #[prost(bool, tag = "3")]
1855 pub setof: bool,
1856 #[prost(bool, tag = "4")]
1857 pub pct_type: bool,
1858 #[prost(message, repeated, tag = "5")]
1859 pub typmods: ::prost::alloc::vec::Vec<Node>,
1860 #[prost(int32, tag = "6")]
1861 pub typemod: i32,
1862 #[prost(message, repeated, tag = "7")]
1863 pub array_bounds: ::prost::alloc::vec::Vec<Node>,
1864 #[prost(int32, tag = "8")]
1865 pub location: i32,
1866}
1867#[derive(serde::Serialize)]
1868#[derive(Clone, PartialEq, ::prost::Message)]
1869pub struct ColumnRef {
1870 #[prost(message, repeated, tag = "1")]
1871 pub fields: ::prost::alloc::vec::Vec<Node>,
1872 #[prost(int32, tag = "2")]
1873 pub location: i32,
1874}
1875#[derive(serde::Serialize)]
1876#[derive(Clone, Copy, PartialEq, ::prost::Message)]
1877pub struct ParamRef {
1878 #[prost(int32, tag = "1")]
1879 pub number: i32,
1880 #[prost(int32, tag = "2")]
1881 pub location: i32,
1882}
1883#[derive(serde::Serialize)]
1884#[derive(Clone, PartialEq, ::prost::Message)]
1885pub struct AExpr {
1886 #[prost(enumeration = "AExprKind", tag = "1")]
1887 pub kind: i32,
1888 #[prost(message, repeated, tag = "2")]
1889 pub name: ::prost::alloc::vec::Vec<Node>,
1890 #[prost(message, optional, boxed, tag = "3")]
1891 pub lexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1892 #[prost(message, optional, boxed, tag = "4")]
1893 pub rexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1894 #[prost(int32, tag = "5")]
1895 pub rexpr_list_start: i32,
1896 #[prost(int32, tag = "6")]
1897 pub rexpr_list_end: i32,
1898 #[prost(int32, tag = "7")]
1899 pub location: i32,
1900}
1901#[derive(serde::Serialize)]
1902#[derive(Clone, PartialEq, ::prost::Message)]
1903pub struct TypeCast {
1904 #[prost(message, optional, boxed, tag = "1")]
1905 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1906 #[prost(message, optional, tag = "2")]
1907 pub type_name: ::core::option::Option<TypeName>,
1908 #[prost(int32, tag = "3")]
1909 pub location: i32,
1910}
1911#[derive(serde::Serialize)]
1912#[derive(Clone, PartialEq, ::prost::Message)]
1913pub struct CollateClause {
1914 #[prost(message, optional, boxed, tag = "1")]
1915 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1916 #[prost(message, repeated, tag = "2")]
1917 pub collname: ::prost::alloc::vec::Vec<Node>,
1918 #[prost(int32, tag = "3")]
1919 pub location: i32,
1920}
1921#[derive(serde::Serialize)]
1922#[derive(Clone, PartialEq, ::prost::Message)]
1923pub struct RoleSpec {
1924 #[prost(enumeration = "RoleSpecType", tag = "1")]
1925 pub roletype: i32,
1926 #[prost(string, tag = "2")]
1927 pub rolename: ::prost::alloc::string::String,
1928 #[prost(int32, tag = "3")]
1929 pub location: i32,
1930}
1931#[derive(serde::Serialize)]
1932#[derive(Clone, PartialEq, ::prost::Message)]
1933pub struct FuncCall {
1934 #[prost(message, repeated, tag = "1")]
1935 pub funcname: ::prost::alloc::vec::Vec<Node>,
1936 #[prost(message, repeated, tag = "2")]
1937 pub args: ::prost::alloc::vec::Vec<Node>,
1938 #[prost(message, repeated, tag = "3")]
1939 pub agg_order: ::prost::alloc::vec::Vec<Node>,
1940 #[prost(message, optional, boxed, tag = "4")]
1941 pub agg_filter: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1942 #[prost(message, optional, boxed, tag = "5")]
1943 pub over: ::core::option::Option<::prost::alloc::boxed::Box<WindowDef>>,
1944 #[prost(bool, tag = "6")]
1945 pub agg_within_group: bool,
1946 #[prost(bool, tag = "7")]
1947 pub agg_star: bool,
1948 #[prost(bool, tag = "8")]
1949 pub agg_distinct: bool,
1950 #[prost(bool, tag = "9")]
1951 pub func_variadic: bool,
1952 #[prost(enumeration = "CoercionForm", tag = "10")]
1953 pub funcformat: i32,
1954 #[prost(int32, tag = "11")]
1955 pub location: i32,
1956}
1957#[derive(serde::Serialize)]
1958#[derive(Clone, Copy, PartialEq, ::prost::Message)]
1959pub struct AStar {}
1960#[derive(serde::Serialize)]
1961#[derive(Clone, PartialEq, ::prost::Message)]
1962pub struct AIndices {
1963 #[prost(bool, tag = "1")]
1964 pub is_slice: bool,
1965 #[prost(message, optional, boxed, tag = "2")]
1966 pub lidx: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1967 #[prost(message, optional, boxed, tag = "3")]
1968 pub uidx: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1969}
1970#[derive(serde::Serialize)]
1971#[derive(Clone, PartialEq, ::prost::Message)]
1972pub struct AIndirection {
1973 #[prost(message, optional, boxed, tag = "1")]
1974 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1975 #[prost(message, repeated, tag = "2")]
1976 pub indirection: ::prost::alloc::vec::Vec<Node>,
1977}
1978#[derive(serde::Serialize)]
1979#[derive(Clone, PartialEq, ::prost::Message)]
1980pub struct AArrayExpr {
1981 #[prost(message, repeated, tag = "1")]
1982 pub elements: ::prost::alloc::vec::Vec<Node>,
1983 #[prost(int32, tag = "2")]
1984 pub list_start: i32,
1985 #[prost(int32, tag = "3")]
1986 pub list_end: i32,
1987 #[prost(int32, tag = "4")]
1988 pub location: i32,
1989}
1990#[derive(serde::Serialize)]
1991#[derive(Clone, PartialEq, ::prost::Message)]
1992pub struct ResTarget {
1993 #[prost(string, tag = "1")]
1994 pub name: ::prost::alloc::string::String,
1995 #[prost(message, repeated, tag = "2")]
1996 pub indirection: ::prost::alloc::vec::Vec<Node>,
1997 #[prost(message, optional, boxed, tag = "3")]
1998 pub val: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1999 #[prost(int32, tag = "4")]
2000 pub location: i32,
2001}
2002#[derive(serde::Serialize)]
2003#[derive(Clone, PartialEq, ::prost::Message)]
2004pub struct MultiAssignRef {
2005 #[prost(message, optional, boxed, tag = "1")]
2006 pub source: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2007 #[prost(int32, tag = "2")]
2008 pub colno: i32,
2009 #[prost(int32, tag = "3")]
2010 pub ncolumns: i32,
2011}
2012#[derive(serde::Serialize)]
2013#[derive(Clone, PartialEq, ::prost::Message)]
2014pub struct SortBy {
2015 #[prost(message, optional, boxed, tag = "1")]
2016 pub node: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2017 #[prost(enumeration = "SortByDir", tag = "2")]
2018 pub sortby_dir: i32,
2019 #[prost(enumeration = "SortByNulls", tag = "3")]
2020 pub sortby_nulls: i32,
2021 #[prost(message, repeated, tag = "4")]
2022 pub use_op: ::prost::alloc::vec::Vec<Node>,
2023 #[prost(int32, tag = "5")]
2024 pub location: i32,
2025}
2026#[derive(serde::Serialize)]
2027#[derive(Clone, PartialEq, ::prost::Message)]
2028pub struct WindowDef {
2029 #[prost(string, tag = "1")]
2030 pub name: ::prost::alloc::string::String,
2031 #[prost(string, tag = "2")]
2032 pub refname: ::prost::alloc::string::String,
2033 #[prost(message, repeated, tag = "3")]
2034 pub partition_clause: ::prost::alloc::vec::Vec<Node>,
2035 #[prost(message, repeated, tag = "4")]
2036 pub order_clause: ::prost::alloc::vec::Vec<Node>,
2037 #[prost(int32, tag = "5")]
2038 pub frame_options: i32,
2039 #[prost(message, optional, boxed, tag = "6")]
2040 pub start_offset: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2041 #[prost(message, optional, boxed, tag = "7")]
2042 pub end_offset: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2043 #[prost(int32, tag = "8")]
2044 pub location: i32,
2045}
2046#[derive(serde::Serialize)]
2047#[derive(Clone, PartialEq, ::prost::Message)]
2048pub struct RangeSubselect {
2049 #[prost(bool, tag = "1")]
2050 pub lateral: bool,
2051 #[prost(message, optional, boxed, tag = "2")]
2052 pub subquery: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2053 #[prost(message, optional, tag = "3")]
2054 pub alias: ::core::option::Option<Alias>,
2055}
2056#[derive(serde::Serialize)]
2057#[derive(Clone, PartialEq, ::prost::Message)]
2058pub struct RangeFunction {
2059 #[prost(bool, tag = "1")]
2060 pub lateral: bool,
2061 #[prost(bool, tag = "2")]
2062 pub ordinality: bool,
2063 #[prost(bool, tag = "3")]
2064 pub is_rowsfrom: bool,
2065 #[prost(message, repeated, tag = "4")]
2066 pub functions: ::prost::alloc::vec::Vec<Node>,
2067 #[prost(message, optional, tag = "5")]
2068 pub alias: ::core::option::Option<Alias>,
2069 #[prost(message, repeated, tag = "6")]
2070 pub coldeflist: ::prost::alloc::vec::Vec<Node>,
2071}
2072#[derive(serde::Serialize)]
2073#[derive(Clone, PartialEq, ::prost::Message)]
2074pub struct RangeTableFunc {
2075 #[prost(bool, tag = "1")]
2076 pub lateral: bool,
2077 #[prost(message, optional, boxed, tag = "2")]
2078 pub docexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2079 #[prost(message, optional, boxed, tag = "3")]
2080 pub rowexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2081 #[prost(message, repeated, tag = "4")]
2082 pub namespaces: ::prost::alloc::vec::Vec<Node>,
2083 #[prost(message, repeated, tag = "5")]
2084 pub columns: ::prost::alloc::vec::Vec<Node>,
2085 #[prost(message, optional, tag = "6")]
2086 pub alias: ::core::option::Option<Alias>,
2087 #[prost(int32, tag = "7")]
2088 pub location: i32,
2089}
2090#[derive(serde::Serialize)]
2091#[derive(Clone, PartialEq, ::prost::Message)]
2092pub struct RangeTableFuncCol {
2093 #[prost(string, tag = "1")]
2094 pub colname: ::prost::alloc::string::String,
2095 #[prost(message, optional, tag = "2")]
2096 pub type_name: ::core::option::Option<TypeName>,
2097 #[prost(bool, tag = "3")]
2098 pub for_ordinality: bool,
2099 #[prost(bool, tag = "4")]
2100 pub is_not_null: bool,
2101 #[prost(message, optional, boxed, tag = "5")]
2102 pub colexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2103 #[prost(message, optional, boxed, tag = "6")]
2104 pub coldefexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2105 #[prost(int32, tag = "7")]
2106 pub location: i32,
2107}
2108#[derive(serde::Serialize)]
2109#[derive(Clone, PartialEq, ::prost::Message)]
2110pub struct RangeTableSample {
2111 #[prost(message, optional, boxed, tag = "1")]
2112 pub relation: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2113 #[prost(message, repeated, tag = "2")]
2114 pub method: ::prost::alloc::vec::Vec<Node>,
2115 #[prost(message, repeated, tag = "3")]
2116 pub args: ::prost::alloc::vec::Vec<Node>,
2117 #[prost(message, optional, boxed, tag = "4")]
2118 pub repeatable: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2119 #[prost(int32, tag = "5")]
2120 pub location: i32,
2121}
2122#[derive(serde::Serialize)]
2123#[derive(Clone, PartialEq, ::prost::Message)]
2124pub struct ColumnDef {
2125 #[prost(string, tag = "1")]
2126 pub colname: ::prost::alloc::string::String,
2127 #[prost(message, optional, tag = "2")]
2128 pub type_name: ::core::option::Option<TypeName>,
2129 #[prost(string, tag = "3")]
2130 pub compression: ::prost::alloc::string::String,
2131 #[prost(int32, tag = "4")]
2132 pub inhcount: i32,
2133 #[prost(bool, tag = "5")]
2134 pub is_local: bool,
2135 #[prost(bool, tag = "6")]
2136 pub is_not_null: bool,
2137 #[prost(bool, tag = "7")]
2138 pub is_from_type: bool,
2139 #[prost(string, tag = "8")]
2140 pub storage: ::prost::alloc::string::String,
2141 #[prost(string, tag = "9")]
2142 pub storage_name: ::prost::alloc::string::String,
2143 #[prost(message, optional, boxed, tag = "10")]
2144 pub raw_default: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2145 #[prost(message, optional, boxed, tag = "11")]
2146 pub cooked_default: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2147 #[prost(string, tag = "12")]
2148 pub identity: ::prost::alloc::string::String,
2149 #[prost(message, optional, tag = "13")]
2150 pub identity_sequence: ::core::option::Option<RangeVar>,
2151 #[prost(string, tag = "14")]
2152 pub generated: ::prost::alloc::string::String,
2153 #[prost(message, optional, boxed, tag = "15")]
2154 pub coll_clause: ::core::option::Option<::prost::alloc::boxed::Box<CollateClause>>,
2155 #[prost(uint32, tag = "16")]
2156 pub coll_oid: u32,
2157 #[prost(message, repeated, tag = "17")]
2158 pub constraints: ::prost::alloc::vec::Vec<Node>,
2159 #[prost(message, repeated, tag = "18")]
2160 pub fdwoptions: ::prost::alloc::vec::Vec<Node>,
2161 #[prost(int32, tag = "19")]
2162 pub location: i32,
2163}
2164#[derive(serde::Serialize)]
2165#[derive(Clone, PartialEq, ::prost::Message)]
2166pub struct TableLikeClause {
2167 #[prost(message, optional, tag = "1")]
2168 pub relation: ::core::option::Option<RangeVar>,
2169 #[prost(uint32, tag = "2")]
2170 pub options: u32,
2171 #[prost(uint32, tag = "3")]
2172 pub relation_oid: u32,
2173}
2174#[derive(serde::Serialize)]
2175#[derive(Clone, PartialEq, ::prost::Message)]
2176pub struct IndexElem {
2177 #[prost(string, tag = "1")]
2178 pub name: ::prost::alloc::string::String,
2179 #[prost(message, optional, boxed, tag = "2")]
2180 pub expr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2181 #[prost(string, tag = "3")]
2182 pub indexcolname: ::prost::alloc::string::String,
2183 #[prost(message, repeated, tag = "4")]
2184 pub collation: ::prost::alloc::vec::Vec<Node>,
2185 #[prost(message, repeated, tag = "5")]
2186 pub opclass: ::prost::alloc::vec::Vec<Node>,
2187 #[prost(message, repeated, tag = "6")]
2188 pub opclassopts: ::prost::alloc::vec::Vec<Node>,
2189 #[prost(enumeration = "SortByDir", tag = "7")]
2190 pub ordering: i32,
2191 #[prost(enumeration = "SortByNulls", tag = "8")]
2192 pub nulls_ordering: i32,
2193}
2194#[derive(serde::Serialize)]
2195#[derive(Clone, PartialEq, ::prost::Message)]
2196pub struct DefElem {
2197 #[prost(string, tag = "1")]
2198 pub defnamespace: ::prost::alloc::string::String,
2199 #[prost(string, tag = "2")]
2200 pub defname: ::prost::alloc::string::String,
2201 #[prost(message, optional, boxed, tag = "3")]
2202 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2203 #[prost(enumeration = "DefElemAction", tag = "4")]
2204 pub defaction: i32,
2205 #[prost(int32, tag = "5")]
2206 pub location: i32,
2207}
2208#[derive(serde::Serialize)]
2209#[derive(Clone, PartialEq, ::prost::Message)]
2210pub struct LockingClause {
2211 #[prost(message, repeated, tag = "1")]
2212 pub locked_rels: ::prost::alloc::vec::Vec<Node>,
2213 #[prost(enumeration = "LockClauseStrength", tag = "2")]
2214 pub strength: i32,
2215 #[prost(enumeration = "LockWaitPolicy", tag = "3")]
2216 pub wait_policy: i32,
2217}
2218#[derive(serde::Serialize)]
2219#[derive(Clone, PartialEq, ::prost::Message)]
2220pub struct XmlSerialize {
2221 #[prost(enumeration = "XmlOptionType", tag = "1")]
2222 pub xmloption: i32,
2223 #[prost(message, optional, boxed, tag = "2")]
2224 pub expr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2225 #[prost(message, optional, tag = "3")]
2226 pub type_name: ::core::option::Option<TypeName>,
2227 #[prost(bool, tag = "4")]
2228 pub indent: bool,
2229 #[prost(int32, tag = "5")]
2230 pub location: i32,
2231}
2232#[derive(serde::Serialize)]
2233#[derive(Clone, PartialEq, ::prost::Message)]
2234pub struct PartitionElem {
2235 #[prost(string, tag = "1")]
2236 pub name: ::prost::alloc::string::String,
2237 #[prost(message, optional, boxed, tag = "2")]
2238 pub expr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2239 #[prost(message, repeated, tag = "3")]
2240 pub collation: ::prost::alloc::vec::Vec<Node>,
2241 #[prost(message, repeated, tag = "4")]
2242 pub opclass: ::prost::alloc::vec::Vec<Node>,
2243 #[prost(int32, tag = "5")]
2244 pub location: i32,
2245}
2246#[derive(serde::Serialize)]
2247#[derive(Clone, PartialEq, ::prost::Message)]
2248pub struct PartitionSpec {
2249 #[prost(enumeration = "PartitionStrategy", tag = "1")]
2250 pub strategy: i32,
2251 #[prost(message, repeated, tag = "2")]
2252 pub part_params: ::prost::alloc::vec::Vec<Node>,
2253 #[prost(int32, tag = "3")]
2254 pub location: i32,
2255}
2256#[derive(serde::Serialize)]
2257#[derive(Clone, PartialEq, ::prost::Message)]
2258pub struct PartitionBoundSpec {
2259 #[prost(string, tag = "1")]
2260 pub strategy: ::prost::alloc::string::String,
2261 #[prost(bool, tag = "2")]
2262 pub is_default: bool,
2263 #[prost(int32, tag = "3")]
2264 pub modulus: i32,
2265 #[prost(int32, tag = "4")]
2266 pub remainder: i32,
2267 #[prost(message, repeated, tag = "5")]
2268 pub listdatums: ::prost::alloc::vec::Vec<Node>,
2269 #[prost(message, repeated, tag = "6")]
2270 pub lowerdatums: ::prost::alloc::vec::Vec<Node>,
2271 #[prost(message, repeated, tag = "7")]
2272 pub upperdatums: ::prost::alloc::vec::Vec<Node>,
2273 #[prost(int32, tag = "8")]
2274 pub location: i32,
2275}
2276#[derive(serde::Serialize)]
2277#[derive(Clone, PartialEq, ::prost::Message)]
2278pub struct PartitionRangeDatum {
2279 #[prost(enumeration = "PartitionRangeDatumKind", tag = "1")]
2280 pub kind: i32,
2281 #[prost(message, optional, boxed, tag = "2")]
2282 pub value: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2283 #[prost(int32, tag = "3")]
2284 pub location: i32,
2285}
2286#[derive(serde::Serialize)]
2287#[derive(Clone, PartialEq, ::prost::Message)]
2288pub struct PartitionCmd {
2289 #[prost(message, optional, tag = "1")]
2290 pub name: ::core::option::Option<RangeVar>,
2291 #[prost(message, optional, tag = "2")]
2292 pub bound: ::core::option::Option<PartitionBoundSpec>,
2293 #[prost(bool, tag = "3")]
2294 pub concurrent: bool,
2295}
2296#[derive(serde::Serialize)]
2297#[derive(Clone, PartialEq, ::prost::Message)]
2298pub struct RangeTblEntry {
2299 #[prost(message, optional, tag = "1")]
2300 pub alias: ::core::option::Option<Alias>,
2301 #[prost(message, optional, tag = "2")]
2302 pub eref: ::core::option::Option<Alias>,
2303 #[prost(enumeration = "RteKind", tag = "3")]
2304 pub rtekind: i32,
2305 #[prost(uint32, tag = "4")]
2306 pub relid: u32,
2307 #[prost(bool, tag = "5")]
2308 pub inh: bool,
2309 #[prost(string, tag = "6")]
2310 pub relkind: ::prost::alloc::string::String,
2311 #[prost(int32, tag = "7")]
2312 pub rellockmode: i32,
2313 #[prost(uint32, tag = "8")]
2314 pub perminfoindex: u32,
2315 #[prost(message, optional, boxed, tag = "9")]
2316 pub tablesample: ::core::option::Option<
2317 ::prost::alloc::boxed::Box<TableSampleClause>,
2318 >,
2319 #[prost(message, optional, boxed, tag = "10")]
2320 pub subquery: ::core::option::Option<::prost::alloc::boxed::Box<Query>>,
2321 #[prost(bool, tag = "11")]
2322 pub security_barrier: bool,
2323 #[prost(enumeration = "JoinType", tag = "12")]
2324 pub jointype: i32,
2325 #[prost(int32, tag = "13")]
2326 pub joinmergedcols: i32,
2327 #[prost(message, repeated, tag = "14")]
2328 pub joinaliasvars: ::prost::alloc::vec::Vec<Node>,
2329 #[prost(message, repeated, tag = "15")]
2330 pub joinleftcols: ::prost::alloc::vec::Vec<Node>,
2331 #[prost(message, repeated, tag = "16")]
2332 pub joinrightcols: ::prost::alloc::vec::Vec<Node>,
2333 #[prost(message, optional, tag = "17")]
2334 pub join_using_alias: ::core::option::Option<Alias>,
2335 #[prost(message, repeated, tag = "18")]
2336 pub functions: ::prost::alloc::vec::Vec<Node>,
2337 #[prost(bool, tag = "19")]
2338 pub funcordinality: bool,
2339 #[prost(message, optional, boxed, tag = "20")]
2340 pub tablefunc: ::core::option::Option<::prost::alloc::boxed::Box<TableFunc>>,
2341 #[prost(message, repeated, tag = "21")]
2342 pub values_lists: ::prost::alloc::vec::Vec<Node>,
2343 #[prost(string, tag = "22")]
2344 pub ctename: ::prost::alloc::string::String,
2345 #[prost(uint32, tag = "23")]
2346 pub ctelevelsup: u32,
2347 #[prost(bool, tag = "24")]
2348 pub self_reference: bool,
2349 #[prost(message, repeated, tag = "25")]
2350 pub coltypes: ::prost::alloc::vec::Vec<Node>,
2351 #[prost(message, repeated, tag = "26")]
2352 pub coltypmods: ::prost::alloc::vec::Vec<Node>,
2353 #[prost(message, repeated, tag = "27")]
2354 pub colcollations: ::prost::alloc::vec::Vec<Node>,
2355 #[prost(string, tag = "28")]
2356 pub enrname: ::prost::alloc::string::String,
2357 #[prost(double, tag = "29")]
2358 pub enrtuples: f64,
2359 #[prost(message, repeated, tag = "30")]
2360 pub groupexprs: ::prost::alloc::vec::Vec<Node>,
2361 #[prost(bool, tag = "31")]
2362 pub lateral: bool,
2363 #[prost(bool, tag = "32")]
2364 pub in_from_cl: bool,
2365 #[prost(message, repeated, tag = "33")]
2366 pub security_quals: ::prost::alloc::vec::Vec<Node>,
2367}
2368#[derive(serde::Serialize)]
2369#[derive(Clone, PartialEq, ::prost::Message)]
2370pub struct RtePermissionInfo {
2371 #[prost(uint32, tag = "1")]
2372 pub relid: u32,
2373 #[prost(bool, tag = "2")]
2374 pub inh: bool,
2375 #[prost(uint64, tag = "3")]
2376 pub required_perms: u64,
2377 #[prost(uint32, tag = "4")]
2378 pub check_as_user: u32,
2379 #[prost(uint64, repeated, tag = "5")]
2380 pub selected_cols: ::prost::alloc::vec::Vec<u64>,
2381 #[prost(uint64, repeated, tag = "6")]
2382 pub inserted_cols: ::prost::alloc::vec::Vec<u64>,
2383 #[prost(uint64, repeated, tag = "7")]
2384 pub updated_cols: ::prost::alloc::vec::Vec<u64>,
2385}
2386#[derive(serde::Serialize)]
2387#[derive(Clone, PartialEq, ::prost::Message)]
2388pub struct RangeTblFunction {
2389 #[prost(message, optional, boxed, tag = "1")]
2390 pub funcexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2391 #[prost(int32, tag = "2")]
2392 pub funccolcount: i32,
2393 #[prost(message, repeated, tag = "3")]
2394 pub funccolnames: ::prost::alloc::vec::Vec<Node>,
2395 #[prost(message, repeated, tag = "4")]
2396 pub funccoltypes: ::prost::alloc::vec::Vec<Node>,
2397 #[prost(message, repeated, tag = "5")]
2398 pub funccoltypmods: ::prost::alloc::vec::Vec<Node>,
2399 #[prost(message, repeated, tag = "6")]
2400 pub funccolcollations: ::prost::alloc::vec::Vec<Node>,
2401 #[prost(uint64, repeated, tag = "7")]
2402 pub funcparams: ::prost::alloc::vec::Vec<u64>,
2403}
2404#[derive(serde::Serialize)]
2405#[derive(Clone, PartialEq, ::prost::Message)]
2406pub struct TableSampleClause {
2407 #[prost(uint32, tag = "1")]
2408 pub tsmhandler: u32,
2409 #[prost(message, repeated, tag = "2")]
2410 pub args: ::prost::alloc::vec::Vec<Node>,
2411 #[prost(message, optional, boxed, tag = "3")]
2412 pub repeatable: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2413}
2414#[derive(serde::Serialize)]
2415#[derive(Clone, PartialEq, ::prost::Message)]
2416pub struct WithCheckOption {
2417 #[prost(enumeration = "WcoKind", tag = "1")]
2418 pub kind: i32,
2419 #[prost(string, tag = "2")]
2420 pub relname: ::prost::alloc::string::String,
2421 #[prost(string, tag = "3")]
2422 pub polname: ::prost::alloc::string::String,
2423 #[prost(message, optional, boxed, tag = "4")]
2424 pub qual: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2425 #[prost(bool, tag = "5")]
2426 pub cascaded: bool,
2427}
2428#[derive(serde::Serialize)]
2429#[derive(Clone, Copy, PartialEq, ::prost::Message)]
2430pub struct SortGroupClause {
2431 #[prost(uint32, tag = "1")]
2432 pub tle_sort_group_ref: u32,
2433 #[prost(uint32, tag = "2")]
2434 pub eqop: u32,
2435 #[prost(uint32, tag = "3")]
2436 pub sortop: u32,
2437 #[prost(bool, tag = "4")]
2438 pub reverse_sort: bool,
2439 #[prost(bool, tag = "5")]
2440 pub nulls_first: bool,
2441 #[prost(bool, tag = "6")]
2442 pub hashable: bool,
2443}
2444#[derive(serde::Serialize)]
2445#[derive(Clone, PartialEq, ::prost::Message)]
2446pub struct GroupingSet {
2447 #[prost(enumeration = "GroupingSetKind", tag = "1")]
2448 pub kind: i32,
2449 #[prost(message, repeated, tag = "2")]
2450 pub content: ::prost::alloc::vec::Vec<Node>,
2451 #[prost(int32, tag = "3")]
2452 pub location: i32,
2453}
2454#[derive(serde::Serialize)]
2455#[derive(Clone, PartialEq, ::prost::Message)]
2456pub struct WindowClause {
2457 #[prost(string, tag = "1")]
2458 pub name: ::prost::alloc::string::String,
2459 #[prost(string, tag = "2")]
2460 pub refname: ::prost::alloc::string::String,
2461 #[prost(message, repeated, tag = "3")]
2462 pub partition_clause: ::prost::alloc::vec::Vec<Node>,
2463 #[prost(message, repeated, tag = "4")]
2464 pub order_clause: ::prost::alloc::vec::Vec<Node>,
2465 #[prost(int32, tag = "5")]
2466 pub frame_options: i32,
2467 #[prost(message, optional, boxed, tag = "6")]
2468 pub start_offset: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2469 #[prost(message, optional, boxed, tag = "7")]
2470 pub end_offset: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2471 #[prost(uint32, tag = "8")]
2472 pub start_in_range_func: u32,
2473 #[prost(uint32, tag = "9")]
2474 pub end_in_range_func: u32,
2475 #[prost(uint32, tag = "10")]
2476 pub in_range_coll: u32,
2477 #[prost(bool, tag = "11")]
2478 pub in_range_asc: bool,
2479 #[prost(bool, tag = "12")]
2480 pub in_range_nulls_first: bool,
2481 #[prost(uint32, tag = "13")]
2482 pub winref: u32,
2483 #[prost(bool, tag = "14")]
2484 pub copied_order: bool,
2485}
2486#[derive(serde::Serialize)]
2487#[derive(Clone, Copy, PartialEq, ::prost::Message)]
2488pub struct RowMarkClause {
2489 #[prost(uint32, tag = "1")]
2490 pub rti: u32,
2491 #[prost(enumeration = "LockClauseStrength", tag = "2")]
2492 pub strength: i32,
2493 #[prost(enumeration = "LockWaitPolicy", tag = "3")]
2494 pub wait_policy: i32,
2495 #[prost(bool, tag = "4")]
2496 pub pushed_down: bool,
2497}
2498#[derive(serde::Serialize)]
2499#[derive(Clone, PartialEq, ::prost::Message)]
2500pub struct WithClause {
2501 #[prost(message, repeated, tag = "1")]
2502 pub ctes: ::prost::alloc::vec::Vec<Node>,
2503 #[prost(bool, tag = "2")]
2504 pub recursive: bool,
2505 #[prost(int32, tag = "3")]
2506 pub location: i32,
2507}
2508#[derive(serde::Serialize)]
2509#[derive(Clone, PartialEq, ::prost::Message)]
2510pub struct InferClause {
2511 #[prost(message, repeated, tag = "1")]
2512 pub index_elems: ::prost::alloc::vec::Vec<Node>,
2513 #[prost(message, optional, boxed, tag = "2")]
2514 pub where_clause: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2515 #[prost(string, tag = "3")]
2516 pub conname: ::prost::alloc::string::String,
2517 #[prost(int32, tag = "4")]
2518 pub location: i32,
2519}
2520#[derive(serde::Serialize)]
2521#[derive(Clone, PartialEq, ::prost::Message)]
2522pub struct OnConflictClause {
2523 #[prost(enumeration = "OnConflictAction", tag = "1")]
2524 pub action: i32,
2525 #[prost(message, optional, boxed, tag = "2")]
2526 pub infer: ::core::option::Option<::prost::alloc::boxed::Box<InferClause>>,
2527 #[prost(message, repeated, tag = "3")]
2528 pub target_list: ::prost::alloc::vec::Vec<Node>,
2529 #[prost(message, optional, boxed, tag = "4")]
2530 pub where_clause: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2531 #[prost(int32, tag = "5")]
2532 pub location: i32,
2533}
2534#[derive(serde::Serialize)]
2535#[derive(Clone, PartialEq, ::prost::Message)]
2536pub struct CteSearchClause {
2537 #[prost(message, repeated, tag = "1")]
2538 pub search_col_list: ::prost::alloc::vec::Vec<Node>,
2539 #[prost(bool, tag = "2")]
2540 pub search_breadth_first: bool,
2541 #[prost(string, tag = "3")]
2542 pub search_seq_column: ::prost::alloc::string::String,
2543 #[prost(int32, tag = "4")]
2544 pub location: i32,
2545}
2546#[derive(serde::Serialize)]
2547#[derive(Clone, PartialEq, ::prost::Message)]
2548pub struct CteCycleClause {
2549 #[prost(message, repeated, tag = "1")]
2550 pub cycle_col_list: ::prost::alloc::vec::Vec<Node>,
2551 #[prost(string, tag = "2")]
2552 pub cycle_mark_column: ::prost::alloc::string::String,
2553 #[prost(message, optional, boxed, tag = "3")]
2554 pub cycle_mark_value: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2555 #[prost(message, optional, boxed, tag = "4")]
2556 pub cycle_mark_default: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2557 #[prost(string, tag = "5")]
2558 pub cycle_path_column: ::prost::alloc::string::String,
2559 #[prost(int32, tag = "6")]
2560 pub location: i32,
2561 #[prost(uint32, tag = "7")]
2562 pub cycle_mark_type: u32,
2563 #[prost(int32, tag = "8")]
2564 pub cycle_mark_typmod: i32,
2565 #[prost(uint32, tag = "9")]
2566 pub cycle_mark_collation: u32,
2567 #[prost(uint32, tag = "10")]
2568 pub cycle_mark_neop: u32,
2569}
2570#[derive(serde::Serialize)]
2571#[derive(Clone, PartialEq, ::prost::Message)]
2572pub struct CommonTableExpr {
2573 #[prost(string, tag = "1")]
2574 pub ctename: ::prost::alloc::string::String,
2575 #[prost(message, repeated, tag = "2")]
2576 pub aliascolnames: ::prost::alloc::vec::Vec<Node>,
2577 #[prost(enumeration = "CteMaterialize", tag = "3")]
2578 pub ctematerialized: i32,
2579 #[prost(message, optional, boxed, tag = "4")]
2580 pub ctequery: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2581 #[prost(message, optional, tag = "5")]
2582 pub search_clause: ::core::option::Option<CteSearchClause>,
2583 #[prost(message, optional, boxed, tag = "6")]
2584 pub cycle_clause: ::core::option::Option<::prost::alloc::boxed::Box<CteCycleClause>>,
2585 #[prost(int32, tag = "7")]
2586 pub location: i32,
2587 #[prost(bool, tag = "8")]
2588 pub cterecursive: bool,
2589 #[prost(int32, tag = "9")]
2590 pub cterefcount: i32,
2591 #[prost(message, repeated, tag = "10")]
2592 pub ctecolnames: ::prost::alloc::vec::Vec<Node>,
2593 #[prost(message, repeated, tag = "11")]
2594 pub ctecoltypes: ::prost::alloc::vec::Vec<Node>,
2595 #[prost(message, repeated, tag = "12")]
2596 pub ctecoltypmods: ::prost::alloc::vec::Vec<Node>,
2597 #[prost(message, repeated, tag = "13")]
2598 pub ctecolcollations: ::prost::alloc::vec::Vec<Node>,
2599}
2600#[derive(serde::Serialize)]
2601#[derive(Clone, PartialEq, ::prost::Message)]
2602pub struct MergeWhenClause {
2603 #[prost(enumeration = "MergeMatchKind", tag = "1")]
2604 pub match_kind: i32,
2605 #[prost(enumeration = "CmdType", tag = "2")]
2606 pub command_type: i32,
2607 #[prost(enumeration = "OverridingKind", tag = "3")]
2608 pub r#override: i32,
2609 #[prost(message, optional, boxed, tag = "4")]
2610 pub condition: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2611 #[prost(message, repeated, tag = "5")]
2612 pub target_list: ::prost::alloc::vec::Vec<Node>,
2613 #[prost(message, repeated, tag = "6")]
2614 pub values: ::prost::alloc::vec::Vec<Node>,
2615}
2616#[derive(serde::Serialize)]
2617#[derive(Clone, PartialEq, ::prost::Message)]
2618pub struct ReturningOption {
2619 #[prost(enumeration = "ReturningOptionKind", tag = "1")]
2620 pub option: i32,
2621 #[prost(string, tag = "2")]
2622 pub value: ::prost::alloc::string::String,
2623 #[prost(int32, tag = "3")]
2624 pub location: i32,
2625}
2626#[derive(serde::Serialize)]
2627#[derive(Clone, PartialEq, ::prost::Message)]
2628pub struct ReturningClause {
2629 #[prost(message, repeated, tag = "1")]
2630 pub options: ::prost::alloc::vec::Vec<Node>,
2631 #[prost(message, repeated, tag = "2")]
2632 pub exprs: ::prost::alloc::vec::Vec<Node>,
2633}
2634#[derive(serde::Serialize)]
2635#[derive(Clone, PartialEq, ::prost::Message)]
2636pub struct TriggerTransition {
2637 #[prost(string, tag = "1")]
2638 pub name: ::prost::alloc::string::String,
2639 #[prost(bool, tag = "2")]
2640 pub is_new: bool,
2641 #[prost(bool, tag = "3")]
2642 pub is_table: bool,
2643}
2644#[derive(serde::Serialize)]
2645#[derive(Clone, PartialEq, ::prost::Message)]
2646pub struct JsonOutput {
2647 #[prost(message, optional, tag = "1")]
2648 pub type_name: ::core::option::Option<TypeName>,
2649 #[prost(message, optional, tag = "2")]
2650 pub returning: ::core::option::Option<JsonReturning>,
2651}
2652#[derive(serde::Serialize)]
2653#[derive(Clone, PartialEq, ::prost::Message)]
2654pub struct JsonArgument {
2655 #[prost(message, optional, boxed, tag = "1")]
2656 pub val: ::core::option::Option<::prost::alloc::boxed::Box<JsonValueExpr>>,
2657 #[prost(string, tag = "2")]
2658 pub name: ::prost::alloc::string::String,
2659}
2660#[derive(serde::Serialize)]
2661#[derive(Clone, PartialEq, ::prost::Message)]
2662pub struct JsonFuncExpr {
2663 #[prost(enumeration = "JsonExprOp", tag = "1")]
2664 pub op: i32,
2665 #[prost(string, tag = "2")]
2666 pub column_name: ::prost::alloc::string::String,
2667 #[prost(message, optional, boxed, tag = "3")]
2668 pub context_item: ::core::option::Option<::prost::alloc::boxed::Box<JsonValueExpr>>,
2669 #[prost(message, optional, boxed, tag = "4")]
2670 pub pathspec: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2671 #[prost(message, repeated, tag = "5")]
2672 pub passing: ::prost::alloc::vec::Vec<Node>,
2673 #[prost(message, optional, tag = "6")]
2674 pub output: ::core::option::Option<JsonOutput>,
2675 #[prost(message, optional, boxed, tag = "7")]
2676 pub on_empty: ::core::option::Option<::prost::alloc::boxed::Box<JsonBehavior>>,
2677 #[prost(message, optional, boxed, tag = "8")]
2678 pub on_error: ::core::option::Option<::prost::alloc::boxed::Box<JsonBehavior>>,
2679 #[prost(enumeration = "JsonWrapper", tag = "9")]
2680 pub wrapper: i32,
2681 #[prost(enumeration = "JsonQuotes", tag = "10")]
2682 pub quotes: i32,
2683 #[prost(int32, tag = "11")]
2684 pub location: i32,
2685}
2686#[derive(serde::Serialize)]
2687#[derive(Clone, PartialEq, ::prost::Message)]
2688pub struct JsonTablePathSpec {
2689 #[prost(message, optional, boxed, tag = "1")]
2690 pub string: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2691 #[prost(string, tag = "2")]
2692 pub name: ::prost::alloc::string::String,
2693 #[prost(int32, tag = "3")]
2694 pub name_location: i32,
2695 #[prost(int32, tag = "4")]
2696 pub location: i32,
2697}
2698#[derive(serde::Serialize)]
2699#[derive(Clone, PartialEq, ::prost::Message)]
2700pub struct JsonTable {
2701 #[prost(message, optional, boxed, tag = "1")]
2702 pub context_item: ::core::option::Option<::prost::alloc::boxed::Box<JsonValueExpr>>,
2703 #[prost(message, optional, boxed, tag = "2")]
2704 pub pathspec: ::core::option::Option<::prost::alloc::boxed::Box<JsonTablePathSpec>>,
2705 #[prost(message, repeated, tag = "3")]
2706 pub passing: ::prost::alloc::vec::Vec<Node>,
2707 #[prost(message, repeated, tag = "4")]
2708 pub columns: ::prost::alloc::vec::Vec<Node>,
2709 #[prost(message, optional, boxed, tag = "5")]
2710 pub on_error: ::core::option::Option<::prost::alloc::boxed::Box<JsonBehavior>>,
2711 #[prost(message, optional, tag = "6")]
2712 pub alias: ::core::option::Option<Alias>,
2713 #[prost(bool, tag = "7")]
2714 pub lateral: bool,
2715 #[prost(int32, tag = "8")]
2716 pub location: i32,
2717}
2718#[derive(serde::Serialize)]
2719#[derive(Clone, PartialEq, ::prost::Message)]
2720pub struct JsonTableColumn {
2721 #[prost(enumeration = "JsonTableColumnType", tag = "1")]
2722 pub coltype: i32,
2723 #[prost(string, tag = "2")]
2724 pub name: ::prost::alloc::string::String,
2725 #[prost(message, optional, tag = "3")]
2726 pub type_name: ::core::option::Option<TypeName>,
2727 #[prost(message, optional, boxed, tag = "4")]
2728 pub pathspec: ::core::option::Option<::prost::alloc::boxed::Box<JsonTablePathSpec>>,
2729 #[prost(message, optional, tag = "5")]
2730 pub format: ::core::option::Option<JsonFormat>,
2731 #[prost(enumeration = "JsonWrapper", tag = "6")]
2732 pub wrapper: i32,
2733 #[prost(enumeration = "JsonQuotes", tag = "7")]
2734 pub quotes: i32,
2735 #[prost(message, repeated, tag = "8")]
2736 pub columns: ::prost::alloc::vec::Vec<Node>,
2737 #[prost(message, optional, boxed, tag = "9")]
2738 pub on_empty: ::core::option::Option<::prost::alloc::boxed::Box<JsonBehavior>>,
2739 #[prost(message, optional, boxed, tag = "10")]
2740 pub on_error: ::core::option::Option<::prost::alloc::boxed::Box<JsonBehavior>>,
2741 #[prost(int32, tag = "11")]
2742 pub location: i32,
2743}
2744#[derive(serde::Serialize)]
2745#[derive(Clone, PartialEq, ::prost::Message)]
2746pub struct JsonKeyValue {
2747 #[prost(message, optional, boxed, tag = "1")]
2748 pub key: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2749 #[prost(message, optional, boxed, tag = "2")]
2750 pub value: ::core::option::Option<::prost::alloc::boxed::Box<JsonValueExpr>>,
2751}
2752#[derive(serde::Serialize)]
2753#[derive(Clone, PartialEq, ::prost::Message)]
2754pub struct JsonParseExpr {
2755 #[prost(message, optional, boxed, tag = "1")]
2756 pub expr: ::core::option::Option<::prost::alloc::boxed::Box<JsonValueExpr>>,
2757 #[prost(message, optional, tag = "2")]
2758 pub output: ::core::option::Option<JsonOutput>,
2759 #[prost(bool, tag = "3")]
2760 pub unique_keys: bool,
2761 #[prost(int32, tag = "4")]
2762 pub location: i32,
2763}
2764#[derive(serde::Serialize)]
2765#[derive(Clone, PartialEq, ::prost::Message)]
2766pub struct JsonScalarExpr {
2767 #[prost(message, optional, boxed, tag = "1")]
2768 pub expr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2769 #[prost(message, optional, tag = "2")]
2770 pub output: ::core::option::Option<JsonOutput>,
2771 #[prost(int32, tag = "3")]
2772 pub location: i32,
2773}
2774#[derive(serde::Serialize)]
2775#[derive(Clone, PartialEq, ::prost::Message)]
2776pub struct JsonSerializeExpr {
2777 #[prost(message, optional, boxed, tag = "1")]
2778 pub expr: ::core::option::Option<::prost::alloc::boxed::Box<JsonValueExpr>>,
2779 #[prost(message, optional, tag = "2")]
2780 pub output: ::core::option::Option<JsonOutput>,
2781 #[prost(int32, tag = "3")]
2782 pub location: i32,
2783}
2784#[derive(serde::Serialize)]
2785#[derive(Clone, PartialEq, ::prost::Message)]
2786pub struct JsonObjectConstructor {
2787 #[prost(message, repeated, tag = "1")]
2788 pub exprs: ::prost::alloc::vec::Vec<Node>,
2789 #[prost(message, optional, tag = "2")]
2790 pub output: ::core::option::Option<JsonOutput>,
2791 #[prost(bool, tag = "3")]
2792 pub absent_on_null: bool,
2793 #[prost(bool, tag = "4")]
2794 pub unique: bool,
2795 #[prost(int32, tag = "5")]
2796 pub location: i32,
2797}
2798#[derive(serde::Serialize)]
2799#[derive(Clone, PartialEq, ::prost::Message)]
2800pub struct JsonArrayConstructor {
2801 #[prost(message, repeated, tag = "1")]
2802 pub exprs: ::prost::alloc::vec::Vec<Node>,
2803 #[prost(message, optional, tag = "2")]
2804 pub output: ::core::option::Option<JsonOutput>,
2805 #[prost(bool, tag = "3")]
2806 pub absent_on_null: bool,
2807 #[prost(int32, tag = "4")]
2808 pub location: i32,
2809}
2810#[derive(serde::Serialize)]
2811#[derive(Clone, PartialEq, ::prost::Message)]
2812pub struct JsonArrayQueryConstructor {
2813 #[prost(message, optional, boxed, tag = "1")]
2814 pub query: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2815 #[prost(message, optional, tag = "2")]
2816 pub output: ::core::option::Option<JsonOutput>,
2817 #[prost(message, optional, tag = "3")]
2818 pub format: ::core::option::Option<JsonFormat>,
2819 #[prost(bool, tag = "4")]
2820 pub absent_on_null: bool,
2821 #[prost(int32, tag = "5")]
2822 pub location: i32,
2823}
2824#[derive(serde::Serialize)]
2825#[derive(Clone, PartialEq, ::prost::Message)]
2826pub struct JsonAggConstructor {
2827 #[prost(message, optional, tag = "1")]
2828 pub output: ::core::option::Option<JsonOutput>,
2829 #[prost(message, optional, boxed, tag = "2")]
2830 pub agg_filter: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2831 #[prost(message, repeated, tag = "3")]
2832 pub agg_order: ::prost::alloc::vec::Vec<Node>,
2833 #[prost(message, optional, boxed, tag = "4")]
2834 pub over: ::core::option::Option<::prost::alloc::boxed::Box<WindowDef>>,
2835 #[prost(int32, tag = "5")]
2836 pub location: i32,
2837}
2838#[derive(serde::Serialize)]
2839#[derive(Clone, PartialEq, ::prost::Message)]
2840pub struct JsonObjectAgg {
2841 #[prost(message, optional, boxed, tag = "1")]
2842 pub constructor: ::core::option::Option<
2843 ::prost::alloc::boxed::Box<JsonAggConstructor>,
2844 >,
2845 #[prost(message, optional, boxed, tag = "2")]
2846 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<JsonKeyValue>>,
2847 #[prost(bool, tag = "3")]
2848 pub absent_on_null: bool,
2849 #[prost(bool, tag = "4")]
2850 pub unique: bool,
2851}
2852#[derive(serde::Serialize)]
2853#[derive(Clone, PartialEq, ::prost::Message)]
2854pub struct JsonArrayAgg {
2855 #[prost(message, optional, boxed, tag = "1")]
2856 pub constructor: ::core::option::Option<
2857 ::prost::alloc::boxed::Box<JsonAggConstructor>,
2858 >,
2859 #[prost(message, optional, boxed, tag = "2")]
2860 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<JsonValueExpr>>,
2861 #[prost(bool, tag = "3")]
2862 pub absent_on_null: bool,
2863}
2864#[derive(serde::Serialize)]
2865#[derive(Clone, PartialEq, ::prost::Message)]
2866pub struct RawStmt {
2867 #[prost(message, optional, boxed, tag = "1")]
2868 pub stmt: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2869 #[prost(int32, tag = "2")]
2870 pub stmt_location: i32,
2871 #[prost(int32, tag = "3")]
2872 pub stmt_len: i32,
2873}
2874#[derive(serde::Serialize)]
2875#[derive(Clone, PartialEq, ::prost::Message)]
2876pub struct InsertStmt {
2877 #[prost(message, optional, tag = "1")]
2878 pub relation: ::core::option::Option<RangeVar>,
2879 #[prost(message, repeated, tag = "2")]
2880 pub cols: ::prost::alloc::vec::Vec<Node>,
2881 #[prost(message, optional, boxed, tag = "3")]
2882 pub select_stmt: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2883 #[prost(message, optional, boxed, tag = "4")]
2884 pub on_conflict_clause: ::core::option::Option<
2885 ::prost::alloc::boxed::Box<OnConflictClause>,
2886 >,
2887 #[prost(message, optional, tag = "5")]
2888 pub returning_clause: ::core::option::Option<ReturningClause>,
2889 #[prost(message, optional, tag = "6")]
2890 pub with_clause: ::core::option::Option<WithClause>,
2891 #[prost(enumeration = "OverridingKind", tag = "7")]
2892 pub r#override: i32,
2893}
2894#[derive(serde::Serialize)]
2895#[derive(Clone, PartialEq, ::prost::Message)]
2896pub struct DeleteStmt {
2897 #[prost(message, optional, tag = "1")]
2898 pub relation: ::core::option::Option<RangeVar>,
2899 #[prost(message, repeated, tag = "2")]
2900 pub using_clause: ::prost::alloc::vec::Vec<Node>,
2901 #[prost(message, optional, boxed, tag = "3")]
2902 pub where_clause: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2903 #[prost(message, optional, tag = "4")]
2904 pub returning_clause: ::core::option::Option<ReturningClause>,
2905 #[prost(message, optional, tag = "5")]
2906 pub with_clause: ::core::option::Option<WithClause>,
2907}
2908#[derive(serde::Serialize)]
2909#[derive(Clone, PartialEq, ::prost::Message)]
2910pub struct UpdateStmt {
2911 #[prost(message, optional, tag = "1")]
2912 pub relation: ::core::option::Option<RangeVar>,
2913 #[prost(message, repeated, tag = "2")]
2914 pub target_list: ::prost::alloc::vec::Vec<Node>,
2915 #[prost(message, optional, boxed, tag = "3")]
2916 pub where_clause: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2917 #[prost(message, repeated, tag = "4")]
2918 pub from_clause: ::prost::alloc::vec::Vec<Node>,
2919 #[prost(message, optional, tag = "5")]
2920 pub returning_clause: ::core::option::Option<ReturningClause>,
2921 #[prost(message, optional, tag = "6")]
2922 pub with_clause: ::core::option::Option<WithClause>,
2923}
2924#[derive(serde::Serialize)]
2925#[derive(Clone, PartialEq, ::prost::Message)]
2926pub struct MergeStmt {
2927 #[prost(message, optional, tag = "1")]
2928 pub relation: ::core::option::Option<RangeVar>,
2929 #[prost(message, optional, boxed, tag = "2")]
2930 pub source_relation: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2931 #[prost(message, optional, boxed, tag = "3")]
2932 pub join_condition: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2933 #[prost(message, repeated, tag = "4")]
2934 pub merge_when_clauses: ::prost::alloc::vec::Vec<Node>,
2935 #[prost(message, optional, tag = "5")]
2936 pub returning_clause: ::core::option::Option<ReturningClause>,
2937 #[prost(message, optional, tag = "6")]
2938 pub with_clause: ::core::option::Option<WithClause>,
2939}
2940#[derive(serde::Serialize)]
2941#[derive(Clone, PartialEq, ::prost::Message)]
2942pub struct SelectStmt {
2943 #[prost(message, repeated, tag = "1")]
2944 pub distinct_clause: ::prost::alloc::vec::Vec<Node>,
2945 #[prost(message, optional, boxed, tag = "2")]
2946 pub into_clause: ::core::option::Option<::prost::alloc::boxed::Box<IntoClause>>,
2947 #[prost(message, repeated, tag = "3")]
2948 pub target_list: ::prost::alloc::vec::Vec<Node>,
2949 #[prost(message, repeated, tag = "4")]
2950 pub from_clause: ::prost::alloc::vec::Vec<Node>,
2951 #[prost(message, optional, boxed, tag = "5")]
2952 pub where_clause: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2953 #[prost(message, repeated, tag = "6")]
2954 pub group_clause: ::prost::alloc::vec::Vec<Node>,
2955 #[prost(bool, tag = "7")]
2956 pub group_distinct: bool,
2957 #[prost(message, optional, boxed, tag = "8")]
2958 pub having_clause: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2959 #[prost(message, repeated, tag = "9")]
2960 pub window_clause: ::prost::alloc::vec::Vec<Node>,
2961 #[prost(message, repeated, tag = "10")]
2962 pub values_lists: ::prost::alloc::vec::Vec<Node>,
2963 #[prost(message, repeated, tag = "11")]
2964 pub sort_clause: ::prost::alloc::vec::Vec<Node>,
2965 #[prost(message, optional, boxed, tag = "12")]
2966 pub limit_offset: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2967 #[prost(message, optional, boxed, tag = "13")]
2968 pub limit_count: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2969 #[prost(enumeration = "LimitOption", tag = "14")]
2970 pub limit_option: i32,
2971 #[prost(message, repeated, tag = "15")]
2972 pub locking_clause: ::prost::alloc::vec::Vec<Node>,
2973 #[prost(message, optional, tag = "16")]
2974 pub with_clause: ::core::option::Option<WithClause>,
2975 #[prost(enumeration = "SetOperation", tag = "17")]
2976 pub op: i32,
2977 #[prost(bool, tag = "18")]
2978 pub all: bool,
2979 #[prost(message, optional, boxed, tag = "19")]
2980 pub larg: ::core::option::Option<::prost::alloc::boxed::Box<SelectStmt>>,
2981 #[prost(message, optional, boxed, tag = "20")]
2982 pub rarg: ::core::option::Option<::prost::alloc::boxed::Box<SelectStmt>>,
2983}
2984#[derive(serde::Serialize)]
2985#[derive(Clone, PartialEq, ::prost::Message)]
2986pub struct SetOperationStmt {
2987 #[prost(enumeration = "SetOperation", tag = "1")]
2988 pub op: i32,
2989 #[prost(bool, tag = "2")]
2990 pub all: bool,
2991 #[prost(message, optional, boxed, tag = "3")]
2992 pub larg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2993 #[prost(message, optional, boxed, tag = "4")]
2994 pub rarg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2995 #[prost(message, repeated, tag = "5")]
2996 pub col_types: ::prost::alloc::vec::Vec<Node>,
2997 #[prost(message, repeated, tag = "6")]
2998 pub col_typmods: ::prost::alloc::vec::Vec<Node>,
2999 #[prost(message, repeated, tag = "7")]
3000 pub col_collations: ::prost::alloc::vec::Vec<Node>,
3001 #[prost(message, repeated, tag = "8")]
3002 pub group_clauses: ::prost::alloc::vec::Vec<Node>,
3003}
3004#[derive(serde::Serialize)]
3005#[derive(Clone, PartialEq, ::prost::Message)]
3006pub struct ReturnStmt {
3007 #[prost(message, optional, boxed, tag = "1")]
3008 pub returnval: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3009}
3010#[derive(serde::Serialize)]
3011#[derive(Clone, PartialEq, ::prost::Message)]
3012pub struct PlAssignStmt {
3013 #[prost(string, tag = "1")]
3014 pub name: ::prost::alloc::string::String,
3015 #[prost(message, repeated, tag = "2")]
3016 pub indirection: ::prost::alloc::vec::Vec<Node>,
3017 #[prost(int32, tag = "3")]
3018 pub nnames: i32,
3019 #[prost(message, optional, boxed, tag = "4")]
3020 pub val: ::core::option::Option<::prost::alloc::boxed::Box<SelectStmt>>,
3021 #[prost(int32, tag = "5")]
3022 pub location: i32,
3023}
3024#[derive(serde::Serialize)]
3025#[derive(Clone, PartialEq, ::prost::Message)]
3026pub struct CreateSchemaStmt {
3027 #[prost(string, tag = "1")]
3028 pub schemaname: ::prost::alloc::string::String,
3029 #[prost(message, optional, tag = "2")]
3030 pub authrole: ::core::option::Option<RoleSpec>,
3031 #[prost(message, repeated, tag = "3")]
3032 pub schema_elts: ::prost::alloc::vec::Vec<Node>,
3033 #[prost(bool, tag = "4")]
3034 pub if_not_exists: bool,
3035}
3036#[derive(serde::Serialize)]
3037#[derive(Clone, PartialEq, ::prost::Message)]
3038pub struct AlterTableStmt {
3039 #[prost(message, optional, tag = "1")]
3040 pub relation: ::core::option::Option<RangeVar>,
3041 #[prost(message, repeated, tag = "2")]
3042 pub cmds: ::prost::alloc::vec::Vec<Node>,
3043 #[prost(enumeration = "ObjectType", tag = "3")]
3044 pub objtype: i32,
3045 #[prost(bool, tag = "4")]
3046 pub missing_ok: bool,
3047}
3048#[derive(serde::Serialize)]
3049#[derive(Clone, PartialEq, ::prost::Message)]
3050pub struct AlterTableCmd {
3051 #[prost(enumeration = "AlterTableType", tag = "1")]
3052 pub subtype: i32,
3053 #[prost(string, tag = "2")]
3054 pub name: ::prost::alloc::string::String,
3055 #[prost(int32, tag = "3")]
3056 pub num: i32,
3057 #[prost(message, optional, tag = "4")]
3058 pub newowner: ::core::option::Option<RoleSpec>,
3059 #[prost(message, optional, boxed, tag = "5")]
3060 pub def: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3061 #[prost(enumeration = "DropBehavior", tag = "6")]
3062 pub behavior: i32,
3063 #[prost(bool, tag = "7")]
3064 pub missing_ok: bool,
3065 #[prost(bool, tag = "8")]
3066 pub recurse: bool,
3067}
3068#[derive(serde::Serialize)]
3069#[derive(Clone, PartialEq, ::prost::Message)]
3070pub struct AtAlterConstraint {
3071 #[prost(string, tag = "1")]
3072 pub conname: ::prost::alloc::string::String,
3073 #[prost(bool, tag = "2")]
3074 pub alter_enforceability: bool,
3075 #[prost(bool, tag = "3")]
3076 pub is_enforced: bool,
3077 #[prost(bool, tag = "4")]
3078 pub alter_deferrability: bool,
3079 #[prost(bool, tag = "5")]
3080 pub deferrable: bool,
3081 #[prost(bool, tag = "6")]
3082 pub initdeferred: bool,
3083 #[prost(bool, tag = "7")]
3084 pub alter_inheritability: bool,
3085 #[prost(bool, tag = "8")]
3086 pub noinherit: bool,
3087}
3088#[derive(serde::Serialize)]
3089#[derive(Clone, PartialEq, ::prost::Message)]
3090pub struct ReplicaIdentityStmt {
3091 #[prost(string, tag = "1")]
3092 pub identity_type: ::prost::alloc::string::String,
3093 #[prost(string, tag = "2")]
3094 pub name: ::prost::alloc::string::String,
3095}
3096#[derive(serde::Serialize)]
3097#[derive(Clone, PartialEq, ::prost::Message)]
3098pub struct AlterCollationStmt {
3099 #[prost(message, repeated, tag = "1")]
3100 pub collname: ::prost::alloc::vec::Vec<Node>,
3101}
3102#[derive(serde::Serialize)]
3103#[derive(Clone, PartialEq, ::prost::Message)]
3104pub struct AlterDomainStmt {
3105 #[prost(string, tag = "1")]
3106 pub subtype: ::prost::alloc::string::String,
3107 #[prost(message, repeated, tag = "2")]
3108 pub type_name: ::prost::alloc::vec::Vec<Node>,
3109 #[prost(string, tag = "3")]
3110 pub name: ::prost::alloc::string::String,
3111 #[prost(message, optional, boxed, tag = "4")]
3112 pub def: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3113 #[prost(enumeration = "DropBehavior", tag = "5")]
3114 pub behavior: i32,
3115 #[prost(bool, tag = "6")]
3116 pub missing_ok: bool,
3117}
3118#[derive(serde::Serialize)]
3119#[derive(Clone, PartialEq, ::prost::Message)]
3120pub struct GrantStmt {
3121 #[prost(bool, tag = "1")]
3122 pub is_grant: bool,
3123 #[prost(enumeration = "GrantTargetType", tag = "2")]
3124 pub targtype: i32,
3125 #[prost(enumeration = "ObjectType", tag = "3")]
3126 pub objtype: i32,
3127 #[prost(message, repeated, tag = "4")]
3128 pub objects: ::prost::alloc::vec::Vec<Node>,
3129 #[prost(message, repeated, tag = "5")]
3130 pub privileges: ::prost::alloc::vec::Vec<Node>,
3131 #[prost(message, repeated, tag = "6")]
3132 pub grantees: ::prost::alloc::vec::Vec<Node>,
3133 #[prost(bool, tag = "7")]
3134 pub grant_option: bool,
3135 #[prost(message, optional, tag = "8")]
3136 pub grantor: ::core::option::Option<RoleSpec>,
3137 #[prost(enumeration = "DropBehavior", tag = "9")]
3138 pub behavior: i32,
3139}
3140#[derive(serde::Serialize)]
3141#[derive(Clone, PartialEq, ::prost::Message)]
3142pub struct ObjectWithArgs {
3143 #[prost(message, repeated, tag = "1")]
3144 pub objname: ::prost::alloc::vec::Vec<Node>,
3145 #[prost(message, repeated, tag = "2")]
3146 pub objargs: ::prost::alloc::vec::Vec<Node>,
3147 #[prost(message, repeated, tag = "3")]
3148 pub objfuncargs: ::prost::alloc::vec::Vec<Node>,
3149 #[prost(bool, tag = "4")]
3150 pub args_unspecified: bool,
3151}
3152#[derive(serde::Serialize)]
3153#[derive(Clone, PartialEq, ::prost::Message)]
3154pub struct AccessPriv {
3155 #[prost(string, tag = "1")]
3156 pub priv_name: ::prost::alloc::string::String,
3157 #[prost(message, repeated, tag = "2")]
3158 pub cols: ::prost::alloc::vec::Vec<Node>,
3159}
3160#[derive(serde::Serialize)]
3161#[derive(Clone, PartialEq, ::prost::Message)]
3162pub struct GrantRoleStmt {
3163 #[prost(message, repeated, tag = "1")]
3164 pub granted_roles: ::prost::alloc::vec::Vec<Node>,
3165 #[prost(message, repeated, tag = "2")]
3166 pub grantee_roles: ::prost::alloc::vec::Vec<Node>,
3167 #[prost(bool, tag = "3")]
3168 pub is_grant: bool,
3169 #[prost(message, repeated, tag = "4")]
3170 pub opt: ::prost::alloc::vec::Vec<Node>,
3171 #[prost(message, optional, tag = "5")]
3172 pub grantor: ::core::option::Option<RoleSpec>,
3173 #[prost(enumeration = "DropBehavior", tag = "6")]
3174 pub behavior: i32,
3175}
3176#[derive(serde::Serialize)]
3177#[derive(Clone, PartialEq, ::prost::Message)]
3178pub struct AlterDefaultPrivilegesStmt {
3179 #[prost(message, repeated, tag = "1")]
3180 pub options: ::prost::alloc::vec::Vec<Node>,
3181 #[prost(message, optional, tag = "2")]
3182 pub action: ::core::option::Option<GrantStmt>,
3183}
3184#[derive(serde::Serialize)]
3185#[derive(Clone, PartialEq, ::prost::Message)]
3186pub struct CopyStmt {
3187 #[prost(message, optional, tag = "1")]
3188 pub relation: ::core::option::Option<RangeVar>,
3189 #[prost(message, optional, boxed, tag = "2")]
3190 pub query: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3191 #[prost(message, repeated, tag = "3")]
3192 pub attlist: ::prost::alloc::vec::Vec<Node>,
3193 #[prost(bool, tag = "4")]
3194 pub is_from: bool,
3195 #[prost(bool, tag = "5")]
3196 pub is_program: bool,
3197 #[prost(string, tag = "6")]
3198 pub filename: ::prost::alloc::string::String,
3199 #[prost(message, repeated, tag = "7")]
3200 pub options: ::prost::alloc::vec::Vec<Node>,
3201 #[prost(message, optional, boxed, tag = "8")]
3202 pub where_clause: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3203}
3204#[derive(serde::Serialize)]
3205#[derive(Clone, PartialEq, ::prost::Message)]
3206pub struct VariableSetStmt {
3207 #[prost(enumeration = "VariableSetKind", tag = "1")]
3208 pub kind: i32,
3209 #[prost(string, tag = "2")]
3210 pub name: ::prost::alloc::string::String,
3211 #[prost(message, repeated, tag = "3")]
3212 pub args: ::prost::alloc::vec::Vec<Node>,
3213 #[prost(bool, tag = "4")]
3214 pub jumble_args: bool,
3215 #[prost(bool, tag = "5")]
3216 pub is_local: bool,
3217 #[prost(int32, tag = "6")]
3218 pub location: i32,
3219}
3220#[derive(serde::Serialize)]
3221#[derive(Clone, PartialEq, ::prost::Message)]
3222pub struct VariableShowStmt {
3223 #[prost(string, tag = "1")]
3224 pub name: ::prost::alloc::string::String,
3225}
3226#[derive(serde::Serialize)]
3227#[derive(Clone, PartialEq, ::prost::Message)]
3228pub struct CreateStmt {
3229 #[prost(message, optional, tag = "1")]
3230 pub relation: ::core::option::Option<RangeVar>,
3231 #[prost(message, repeated, tag = "2")]
3232 pub table_elts: ::prost::alloc::vec::Vec<Node>,
3233 #[prost(message, repeated, tag = "3")]
3234 pub inh_relations: ::prost::alloc::vec::Vec<Node>,
3235 #[prost(message, optional, tag = "4")]
3236 pub partbound: ::core::option::Option<PartitionBoundSpec>,
3237 #[prost(message, optional, tag = "5")]
3238 pub partspec: ::core::option::Option<PartitionSpec>,
3239 #[prost(message, optional, tag = "6")]
3240 pub of_typename: ::core::option::Option<TypeName>,
3241 #[prost(message, repeated, tag = "7")]
3242 pub constraints: ::prost::alloc::vec::Vec<Node>,
3243 #[prost(message, repeated, tag = "8")]
3244 pub nnconstraints: ::prost::alloc::vec::Vec<Node>,
3245 #[prost(message, repeated, tag = "9")]
3246 pub options: ::prost::alloc::vec::Vec<Node>,
3247 #[prost(enumeration = "OnCommitAction", tag = "10")]
3248 pub oncommit: i32,
3249 #[prost(string, tag = "11")]
3250 pub tablespacename: ::prost::alloc::string::String,
3251 #[prost(string, tag = "12")]
3252 pub access_method: ::prost::alloc::string::String,
3253 #[prost(bool, tag = "13")]
3254 pub if_not_exists: bool,
3255}
3256#[derive(serde::Serialize)]
3257#[derive(Clone, PartialEq, ::prost::Message)]
3258pub struct Constraint {
3259 #[prost(enumeration = "ConstrType", tag = "1")]
3260 pub contype: i32,
3261 #[prost(string, tag = "2")]
3262 pub conname: ::prost::alloc::string::String,
3263 #[prost(bool, tag = "3")]
3264 pub deferrable: bool,
3265 #[prost(bool, tag = "4")]
3266 pub initdeferred: bool,
3267 #[prost(bool, tag = "5")]
3268 pub is_enforced: bool,
3269 #[prost(bool, tag = "6")]
3270 pub skip_validation: bool,
3271 #[prost(bool, tag = "7")]
3272 pub initially_valid: bool,
3273 #[prost(bool, tag = "8")]
3274 pub is_no_inherit: bool,
3275 #[prost(message, optional, boxed, tag = "9")]
3276 pub raw_expr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3277 #[prost(string, tag = "10")]
3278 pub cooked_expr: ::prost::alloc::string::String,
3279 #[prost(string, tag = "11")]
3280 pub generated_when: ::prost::alloc::string::String,
3281 #[prost(string, tag = "12")]
3282 pub generated_kind: ::prost::alloc::string::String,
3283 #[prost(bool, tag = "13")]
3284 pub nulls_not_distinct: bool,
3285 #[prost(message, repeated, tag = "14")]
3286 pub keys: ::prost::alloc::vec::Vec<Node>,
3287 #[prost(bool, tag = "15")]
3288 pub without_overlaps: bool,
3289 #[prost(message, repeated, tag = "16")]
3290 pub including: ::prost::alloc::vec::Vec<Node>,
3291 #[prost(message, repeated, tag = "17")]
3292 pub exclusions: ::prost::alloc::vec::Vec<Node>,
3293 #[prost(message, repeated, tag = "18")]
3294 pub options: ::prost::alloc::vec::Vec<Node>,
3295 #[prost(string, tag = "19")]
3296 pub indexname: ::prost::alloc::string::String,
3297 #[prost(string, tag = "20")]
3298 pub indexspace: ::prost::alloc::string::String,
3299 #[prost(bool, tag = "21")]
3300 pub reset_default_tblspc: bool,
3301 #[prost(string, tag = "22")]
3302 pub access_method: ::prost::alloc::string::String,
3303 #[prost(message, optional, boxed, tag = "23")]
3304 pub where_clause: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3305 #[prost(message, optional, tag = "24")]
3306 pub pktable: ::core::option::Option<RangeVar>,
3307 #[prost(message, repeated, tag = "25")]
3308 pub fk_attrs: ::prost::alloc::vec::Vec<Node>,
3309 #[prost(message, repeated, tag = "26")]
3310 pub pk_attrs: ::prost::alloc::vec::Vec<Node>,
3311 #[prost(bool, tag = "27")]
3312 pub fk_with_period: bool,
3313 #[prost(bool, tag = "28")]
3314 pub pk_with_period: bool,
3315 #[prost(string, tag = "29")]
3316 pub fk_matchtype: ::prost::alloc::string::String,
3317 #[prost(string, tag = "30")]
3318 pub fk_upd_action: ::prost::alloc::string::String,
3319 #[prost(string, tag = "31")]
3320 pub fk_del_action: ::prost::alloc::string::String,
3321 #[prost(message, repeated, tag = "32")]
3322 pub fk_del_set_cols: ::prost::alloc::vec::Vec<Node>,
3323 #[prost(message, repeated, tag = "33")]
3324 pub old_conpfeqop: ::prost::alloc::vec::Vec<Node>,
3325 #[prost(uint32, tag = "34")]
3326 pub old_pktable_oid: u32,
3327 #[prost(int32, tag = "35")]
3328 pub location: i32,
3329}
3330#[derive(serde::Serialize)]
3331#[derive(Clone, PartialEq, ::prost::Message)]
3332pub struct CreateTableSpaceStmt {
3333 #[prost(string, tag = "1")]
3334 pub tablespacename: ::prost::alloc::string::String,
3335 #[prost(message, optional, tag = "2")]
3336 pub owner: ::core::option::Option<RoleSpec>,
3337 #[prost(string, tag = "3")]
3338 pub location: ::prost::alloc::string::String,
3339 #[prost(message, repeated, tag = "4")]
3340 pub options: ::prost::alloc::vec::Vec<Node>,
3341}
3342#[derive(serde::Serialize)]
3343#[derive(Clone, PartialEq, ::prost::Message)]
3344pub struct DropTableSpaceStmt {
3345 #[prost(string, tag = "1")]
3346 pub tablespacename: ::prost::alloc::string::String,
3347 #[prost(bool, tag = "2")]
3348 pub missing_ok: bool,
3349}
3350#[derive(serde::Serialize)]
3351#[derive(Clone, PartialEq, ::prost::Message)]
3352pub struct AlterTableSpaceOptionsStmt {
3353 #[prost(string, tag = "1")]
3354 pub tablespacename: ::prost::alloc::string::String,
3355 #[prost(message, repeated, tag = "2")]
3356 pub options: ::prost::alloc::vec::Vec<Node>,
3357 #[prost(bool, tag = "3")]
3358 pub is_reset: bool,
3359}
3360#[derive(serde::Serialize)]
3361#[derive(Clone, PartialEq, ::prost::Message)]
3362pub struct AlterTableMoveAllStmt {
3363 #[prost(string, tag = "1")]
3364 pub orig_tablespacename: ::prost::alloc::string::String,
3365 #[prost(enumeration = "ObjectType", tag = "2")]
3366 pub objtype: i32,
3367 #[prost(message, repeated, tag = "3")]
3368 pub roles: ::prost::alloc::vec::Vec<Node>,
3369 #[prost(string, tag = "4")]
3370 pub new_tablespacename: ::prost::alloc::string::String,
3371 #[prost(bool, tag = "5")]
3372 pub nowait: bool,
3373}
3374#[derive(serde::Serialize)]
3375#[derive(Clone, PartialEq, ::prost::Message)]
3376pub struct CreateExtensionStmt {
3377 #[prost(string, tag = "1")]
3378 pub extname: ::prost::alloc::string::String,
3379 #[prost(bool, tag = "2")]
3380 pub if_not_exists: bool,
3381 #[prost(message, repeated, tag = "3")]
3382 pub options: ::prost::alloc::vec::Vec<Node>,
3383}
3384#[derive(serde::Serialize)]
3385#[derive(Clone, PartialEq, ::prost::Message)]
3386pub struct AlterExtensionStmt {
3387 #[prost(string, tag = "1")]
3388 pub extname: ::prost::alloc::string::String,
3389 #[prost(message, repeated, tag = "2")]
3390 pub options: ::prost::alloc::vec::Vec<Node>,
3391}
3392#[derive(serde::Serialize)]
3393#[derive(Clone, PartialEq, ::prost::Message)]
3394pub struct AlterExtensionContentsStmt {
3395 #[prost(string, tag = "1")]
3396 pub extname: ::prost::alloc::string::String,
3397 #[prost(int32, tag = "2")]
3398 pub action: i32,
3399 #[prost(enumeration = "ObjectType", tag = "3")]
3400 pub objtype: i32,
3401 #[prost(message, optional, boxed, tag = "4")]
3402 pub object: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3403}
3404#[derive(serde::Serialize)]
3405#[derive(Clone, PartialEq, ::prost::Message)]
3406pub struct CreateFdwStmt {
3407 #[prost(string, tag = "1")]
3408 pub fdwname: ::prost::alloc::string::String,
3409 #[prost(message, repeated, tag = "2")]
3410 pub func_options: ::prost::alloc::vec::Vec<Node>,
3411 #[prost(message, repeated, tag = "3")]
3412 pub options: ::prost::alloc::vec::Vec<Node>,
3413}
3414#[derive(serde::Serialize)]
3415#[derive(Clone, PartialEq, ::prost::Message)]
3416pub struct AlterFdwStmt {
3417 #[prost(string, tag = "1")]
3418 pub fdwname: ::prost::alloc::string::String,
3419 #[prost(message, repeated, tag = "2")]
3420 pub func_options: ::prost::alloc::vec::Vec<Node>,
3421 #[prost(message, repeated, tag = "3")]
3422 pub options: ::prost::alloc::vec::Vec<Node>,
3423}
3424#[derive(serde::Serialize)]
3425#[derive(Clone, PartialEq, ::prost::Message)]
3426pub struct CreateForeignServerStmt {
3427 #[prost(string, tag = "1")]
3428 pub servername: ::prost::alloc::string::String,
3429 #[prost(string, tag = "2")]
3430 pub servertype: ::prost::alloc::string::String,
3431 #[prost(string, tag = "3")]
3432 pub version: ::prost::alloc::string::String,
3433 #[prost(string, tag = "4")]
3434 pub fdwname: ::prost::alloc::string::String,
3435 #[prost(bool, tag = "5")]
3436 pub if_not_exists: bool,
3437 #[prost(message, repeated, tag = "6")]
3438 pub options: ::prost::alloc::vec::Vec<Node>,
3439}
3440#[derive(serde::Serialize)]
3441#[derive(Clone, PartialEq, ::prost::Message)]
3442pub struct AlterForeignServerStmt {
3443 #[prost(string, tag = "1")]
3444 pub servername: ::prost::alloc::string::String,
3445 #[prost(string, tag = "2")]
3446 pub version: ::prost::alloc::string::String,
3447 #[prost(message, repeated, tag = "3")]
3448 pub options: ::prost::alloc::vec::Vec<Node>,
3449 #[prost(bool, tag = "4")]
3450 pub has_version: bool,
3451}
3452#[derive(serde::Serialize)]
3453#[derive(Clone, PartialEq, ::prost::Message)]
3454pub struct CreateForeignTableStmt {
3455 #[prost(message, optional, tag = "1")]
3456 pub base_stmt: ::core::option::Option<CreateStmt>,
3457 #[prost(string, tag = "2")]
3458 pub servername: ::prost::alloc::string::String,
3459 #[prost(message, repeated, tag = "3")]
3460 pub options: ::prost::alloc::vec::Vec<Node>,
3461}
3462#[derive(serde::Serialize)]
3463#[derive(Clone, PartialEq, ::prost::Message)]
3464pub struct CreateUserMappingStmt {
3465 #[prost(message, optional, tag = "1")]
3466 pub user: ::core::option::Option<RoleSpec>,
3467 #[prost(string, tag = "2")]
3468 pub servername: ::prost::alloc::string::String,
3469 #[prost(bool, tag = "3")]
3470 pub if_not_exists: bool,
3471 #[prost(message, repeated, tag = "4")]
3472 pub options: ::prost::alloc::vec::Vec<Node>,
3473}
3474#[derive(serde::Serialize)]
3475#[derive(Clone, PartialEq, ::prost::Message)]
3476pub struct AlterUserMappingStmt {
3477 #[prost(message, optional, tag = "1")]
3478 pub user: ::core::option::Option<RoleSpec>,
3479 #[prost(string, tag = "2")]
3480 pub servername: ::prost::alloc::string::String,
3481 #[prost(message, repeated, tag = "3")]
3482 pub options: ::prost::alloc::vec::Vec<Node>,
3483}
3484#[derive(serde::Serialize)]
3485#[derive(Clone, PartialEq, ::prost::Message)]
3486pub struct DropUserMappingStmt {
3487 #[prost(message, optional, tag = "1")]
3488 pub user: ::core::option::Option<RoleSpec>,
3489 #[prost(string, tag = "2")]
3490 pub servername: ::prost::alloc::string::String,
3491 #[prost(bool, tag = "3")]
3492 pub missing_ok: bool,
3493}
3494#[derive(serde::Serialize)]
3495#[derive(Clone, PartialEq, ::prost::Message)]
3496pub struct ImportForeignSchemaStmt {
3497 #[prost(string, tag = "1")]
3498 pub server_name: ::prost::alloc::string::String,
3499 #[prost(string, tag = "2")]
3500 pub remote_schema: ::prost::alloc::string::String,
3501 #[prost(string, tag = "3")]
3502 pub local_schema: ::prost::alloc::string::String,
3503 #[prost(enumeration = "ImportForeignSchemaType", tag = "4")]
3504 pub list_type: i32,
3505 #[prost(message, repeated, tag = "5")]
3506 pub table_list: ::prost::alloc::vec::Vec<Node>,
3507 #[prost(message, repeated, tag = "6")]
3508 pub options: ::prost::alloc::vec::Vec<Node>,
3509}
3510#[derive(serde::Serialize)]
3511#[derive(Clone, PartialEq, ::prost::Message)]
3512pub struct CreatePolicyStmt {
3513 #[prost(string, tag = "1")]
3514 pub policy_name: ::prost::alloc::string::String,
3515 #[prost(message, optional, tag = "2")]
3516 pub table: ::core::option::Option<RangeVar>,
3517 #[prost(string, tag = "3")]
3518 pub cmd_name: ::prost::alloc::string::String,
3519 #[prost(bool, tag = "4")]
3520 pub permissive: bool,
3521 #[prost(message, repeated, tag = "5")]
3522 pub roles: ::prost::alloc::vec::Vec<Node>,
3523 #[prost(message, optional, boxed, tag = "6")]
3524 pub qual: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3525 #[prost(message, optional, boxed, tag = "7")]
3526 pub with_check: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3527}
3528#[derive(serde::Serialize)]
3529#[derive(Clone, PartialEq, ::prost::Message)]
3530pub struct AlterPolicyStmt {
3531 #[prost(string, tag = "1")]
3532 pub policy_name: ::prost::alloc::string::String,
3533 #[prost(message, optional, tag = "2")]
3534 pub table: ::core::option::Option<RangeVar>,
3535 #[prost(message, repeated, tag = "3")]
3536 pub roles: ::prost::alloc::vec::Vec<Node>,
3537 #[prost(message, optional, boxed, tag = "4")]
3538 pub qual: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3539 #[prost(message, optional, boxed, tag = "5")]
3540 pub with_check: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3541}
3542#[derive(serde::Serialize)]
3543#[derive(Clone, PartialEq, ::prost::Message)]
3544pub struct CreateAmStmt {
3545 #[prost(string, tag = "1")]
3546 pub amname: ::prost::alloc::string::String,
3547 #[prost(message, repeated, tag = "2")]
3548 pub handler_name: ::prost::alloc::vec::Vec<Node>,
3549 #[prost(string, tag = "3")]
3550 pub amtype: ::prost::alloc::string::String,
3551}
3552#[derive(serde::Serialize)]
3553#[derive(Clone, PartialEq, ::prost::Message)]
3554pub struct CreateTrigStmt {
3555 #[prost(bool, tag = "1")]
3556 pub replace: bool,
3557 #[prost(bool, tag = "2")]
3558 pub isconstraint: bool,
3559 #[prost(string, tag = "3")]
3560 pub trigname: ::prost::alloc::string::String,
3561 #[prost(message, optional, tag = "4")]
3562 pub relation: ::core::option::Option<RangeVar>,
3563 #[prost(message, repeated, tag = "5")]
3564 pub funcname: ::prost::alloc::vec::Vec<Node>,
3565 #[prost(message, repeated, tag = "6")]
3566 pub args: ::prost::alloc::vec::Vec<Node>,
3567 #[prost(bool, tag = "7")]
3568 pub row: bool,
3569 #[prost(int32, tag = "8")]
3570 pub timing: i32,
3571 #[prost(int32, tag = "9")]
3572 pub events: i32,
3573 #[prost(message, repeated, tag = "10")]
3574 pub columns: ::prost::alloc::vec::Vec<Node>,
3575 #[prost(message, optional, boxed, tag = "11")]
3576 pub when_clause: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3577 #[prost(message, repeated, tag = "12")]
3578 pub transition_rels: ::prost::alloc::vec::Vec<Node>,
3579 #[prost(bool, tag = "13")]
3580 pub deferrable: bool,
3581 #[prost(bool, tag = "14")]
3582 pub initdeferred: bool,
3583 #[prost(message, optional, tag = "15")]
3584 pub constrrel: ::core::option::Option<RangeVar>,
3585}
3586#[derive(serde::Serialize)]
3587#[derive(Clone, PartialEq, ::prost::Message)]
3588pub struct CreateEventTrigStmt {
3589 #[prost(string, tag = "1")]
3590 pub trigname: ::prost::alloc::string::String,
3591 #[prost(string, tag = "2")]
3592 pub eventname: ::prost::alloc::string::String,
3593 #[prost(message, repeated, tag = "3")]
3594 pub whenclause: ::prost::alloc::vec::Vec<Node>,
3595 #[prost(message, repeated, tag = "4")]
3596 pub funcname: ::prost::alloc::vec::Vec<Node>,
3597}
3598#[derive(serde::Serialize)]
3599#[derive(Clone, PartialEq, ::prost::Message)]
3600pub struct AlterEventTrigStmt {
3601 #[prost(string, tag = "1")]
3602 pub trigname: ::prost::alloc::string::String,
3603 #[prost(string, tag = "2")]
3604 pub tgenabled: ::prost::alloc::string::String,
3605}
3606#[derive(serde::Serialize)]
3607#[derive(Clone, PartialEq, ::prost::Message)]
3608pub struct CreatePLangStmt {
3609 #[prost(bool, tag = "1")]
3610 pub replace: bool,
3611 #[prost(string, tag = "2")]
3612 pub plname: ::prost::alloc::string::String,
3613 #[prost(message, repeated, tag = "3")]
3614 pub plhandler: ::prost::alloc::vec::Vec<Node>,
3615 #[prost(message, repeated, tag = "4")]
3616 pub plinline: ::prost::alloc::vec::Vec<Node>,
3617 #[prost(message, repeated, tag = "5")]
3618 pub plvalidator: ::prost::alloc::vec::Vec<Node>,
3619 #[prost(bool, tag = "6")]
3620 pub pltrusted: bool,
3621}
3622#[derive(serde::Serialize)]
3623#[derive(Clone, PartialEq, ::prost::Message)]
3624pub struct CreateRoleStmt {
3625 #[prost(enumeration = "RoleStmtType", tag = "1")]
3626 pub stmt_type: i32,
3627 #[prost(string, tag = "2")]
3628 pub role: ::prost::alloc::string::String,
3629 #[prost(message, repeated, tag = "3")]
3630 pub options: ::prost::alloc::vec::Vec<Node>,
3631}
3632#[derive(serde::Serialize)]
3633#[derive(Clone, PartialEq, ::prost::Message)]
3634pub struct AlterRoleStmt {
3635 #[prost(message, optional, tag = "1")]
3636 pub role: ::core::option::Option<RoleSpec>,
3637 #[prost(message, repeated, tag = "2")]
3638 pub options: ::prost::alloc::vec::Vec<Node>,
3639 #[prost(int32, tag = "3")]
3640 pub action: i32,
3641}
3642#[derive(serde::Serialize)]
3643#[derive(Clone, PartialEq, ::prost::Message)]
3644pub struct AlterRoleSetStmt {
3645 #[prost(message, optional, tag = "1")]
3646 pub role: ::core::option::Option<RoleSpec>,
3647 #[prost(string, tag = "2")]
3648 pub database: ::prost::alloc::string::String,
3649 #[prost(message, optional, tag = "3")]
3650 pub setstmt: ::core::option::Option<VariableSetStmt>,
3651}
3652#[derive(serde::Serialize)]
3653#[derive(Clone, PartialEq, ::prost::Message)]
3654pub struct DropRoleStmt {
3655 #[prost(message, repeated, tag = "1")]
3656 pub roles: ::prost::alloc::vec::Vec<Node>,
3657 #[prost(bool, tag = "2")]
3658 pub missing_ok: bool,
3659}
3660#[derive(serde::Serialize)]
3661#[derive(Clone, PartialEq, ::prost::Message)]
3662pub struct CreateSeqStmt {
3663 #[prost(message, optional, tag = "1")]
3664 pub sequence: ::core::option::Option<RangeVar>,
3665 #[prost(message, repeated, tag = "2")]
3666 pub options: ::prost::alloc::vec::Vec<Node>,
3667 #[prost(uint32, tag = "3")]
3668 pub owner_id: u32,
3669 #[prost(bool, tag = "4")]
3670 pub for_identity: bool,
3671 #[prost(bool, tag = "5")]
3672 pub if_not_exists: bool,
3673}
3674#[derive(serde::Serialize)]
3675#[derive(Clone, PartialEq, ::prost::Message)]
3676pub struct AlterSeqStmt {
3677 #[prost(message, optional, tag = "1")]
3678 pub sequence: ::core::option::Option<RangeVar>,
3679 #[prost(message, repeated, tag = "2")]
3680 pub options: ::prost::alloc::vec::Vec<Node>,
3681 #[prost(bool, tag = "3")]
3682 pub for_identity: bool,
3683 #[prost(bool, tag = "4")]
3684 pub missing_ok: bool,
3685}
3686#[derive(serde::Serialize)]
3687#[derive(Clone, PartialEq, ::prost::Message)]
3688pub struct DefineStmt {
3689 #[prost(enumeration = "ObjectType", tag = "1")]
3690 pub kind: i32,
3691 #[prost(bool, tag = "2")]
3692 pub oldstyle: bool,
3693 #[prost(message, repeated, tag = "3")]
3694 pub defnames: ::prost::alloc::vec::Vec<Node>,
3695 #[prost(message, repeated, tag = "4")]
3696 pub args: ::prost::alloc::vec::Vec<Node>,
3697 #[prost(message, repeated, tag = "5")]
3698 pub definition: ::prost::alloc::vec::Vec<Node>,
3699 #[prost(bool, tag = "6")]
3700 pub if_not_exists: bool,
3701 #[prost(bool, tag = "7")]
3702 pub replace: bool,
3703}
3704#[derive(serde::Serialize)]
3705#[derive(Clone, PartialEq, ::prost::Message)]
3706pub struct CreateDomainStmt {
3707 #[prost(message, repeated, tag = "1")]
3708 pub domainname: ::prost::alloc::vec::Vec<Node>,
3709 #[prost(message, optional, tag = "2")]
3710 pub type_name: ::core::option::Option<TypeName>,
3711 #[prost(message, optional, boxed, tag = "3")]
3712 pub coll_clause: ::core::option::Option<::prost::alloc::boxed::Box<CollateClause>>,
3713 #[prost(message, repeated, tag = "4")]
3714 pub constraints: ::prost::alloc::vec::Vec<Node>,
3715}
3716#[derive(serde::Serialize)]
3717#[derive(Clone, PartialEq, ::prost::Message)]
3718pub struct CreateOpClassStmt {
3719 #[prost(message, repeated, tag = "1")]
3720 pub opclassname: ::prost::alloc::vec::Vec<Node>,
3721 #[prost(message, repeated, tag = "2")]
3722 pub opfamilyname: ::prost::alloc::vec::Vec<Node>,
3723 #[prost(string, tag = "3")]
3724 pub amname: ::prost::alloc::string::String,
3725 #[prost(message, optional, tag = "4")]
3726 pub datatype: ::core::option::Option<TypeName>,
3727 #[prost(message, repeated, tag = "5")]
3728 pub items: ::prost::alloc::vec::Vec<Node>,
3729 #[prost(bool, tag = "6")]
3730 pub is_default: bool,
3731}
3732#[derive(serde::Serialize)]
3733#[derive(Clone, PartialEq, ::prost::Message)]
3734pub struct CreateOpClassItem {
3735 #[prost(int32, tag = "1")]
3736 pub itemtype: i32,
3737 #[prost(message, optional, tag = "2")]
3738 pub name: ::core::option::Option<ObjectWithArgs>,
3739 #[prost(int32, tag = "3")]
3740 pub number: i32,
3741 #[prost(message, repeated, tag = "4")]
3742 pub order_family: ::prost::alloc::vec::Vec<Node>,
3743 #[prost(message, repeated, tag = "5")]
3744 pub class_args: ::prost::alloc::vec::Vec<Node>,
3745 #[prost(message, optional, tag = "6")]
3746 pub storedtype: ::core::option::Option<TypeName>,
3747}
3748#[derive(serde::Serialize)]
3749#[derive(Clone, PartialEq, ::prost::Message)]
3750pub struct CreateOpFamilyStmt {
3751 #[prost(message, repeated, tag = "1")]
3752 pub opfamilyname: ::prost::alloc::vec::Vec<Node>,
3753 #[prost(string, tag = "2")]
3754 pub amname: ::prost::alloc::string::String,
3755}
3756#[derive(serde::Serialize)]
3757#[derive(Clone, PartialEq, ::prost::Message)]
3758pub struct AlterOpFamilyStmt {
3759 #[prost(message, repeated, tag = "1")]
3760 pub opfamilyname: ::prost::alloc::vec::Vec<Node>,
3761 #[prost(string, tag = "2")]
3762 pub amname: ::prost::alloc::string::String,
3763 #[prost(bool, tag = "3")]
3764 pub is_drop: bool,
3765 #[prost(message, repeated, tag = "4")]
3766 pub items: ::prost::alloc::vec::Vec<Node>,
3767}
3768#[derive(serde::Serialize)]
3769#[derive(Clone, PartialEq, ::prost::Message)]
3770pub struct DropStmt {
3771 #[prost(message, repeated, tag = "1")]
3772 pub objects: ::prost::alloc::vec::Vec<Node>,
3773 #[prost(enumeration = "ObjectType", tag = "2")]
3774 pub remove_type: i32,
3775 #[prost(enumeration = "DropBehavior", tag = "3")]
3776 pub behavior: i32,
3777 #[prost(bool, tag = "4")]
3778 pub missing_ok: bool,
3779 #[prost(bool, tag = "5")]
3780 pub concurrent: bool,
3781}
3782#[derive(serde::Serialize)]
3783#[derive(Clone, PartialEq, ::prost::Message)]
3784pub struct TruncateStmt {
3785 #[prost(message, repeated, tag = "1")]
3786 pub relations: ::prost::alloc::vec::Vec<Node>,
3787 #[prost(bool, tag = "2")]
3788 pub restart_seqs: bool,
3789 #[prost(enumeration = "DropBehavior", tag = "3")]
3790 pub behavior: i32,
3791}
3792#[derive(serde::Serialize)]
3793#[derive(Clone, PartialEq, ::prost::Message)]
3794pub struct CommentStmt {
3795 #[prost(enumeration = "ObjectType", tag = "1")]
3796 pub objtype: i32,
3797 #[prost(message, optional, boxed, tag = "2")]
3798 pub object: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3799 #[prost(string, tag = "3")]
3800 pub comment: ::prost::alloc::string::String,
3801}
3802#[derive(serde::Serialize)]
3803#[derive(Clone, PartialEq, ::prost::Message)]
3804pub struct SecLabelStmt {
3805 #[prost(enumeration = "ObjectType", tag = "1")]
3806 pub objtype: i32,
3807 #[prost(message, optional, boxed, tag = "2")]
3808 pub object: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3809 #[prost(string, tag = "3")]
3810 pub provider: ::prost::alloc::string::String,
3811 #[prost(string, tag = "4")]
3812 pub label: ::prost::alloc::string::String,
3813}
3814#[derive(serde::Serialize)]
3815#[derive(Clone, PartialEq, ::prost::Message)]
3816pub struct DeclareCursorStmt {
3817 #[prost(string, tag = "1")]
3818 pub portalname: ::prost::alloc::string::String,
3819 #[prost(int32, tag = "2")]
3820 pub options: i32,
3821 #[prost(message, optional, boxed, tag = "3")]
3822 pub query: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3823}
3824#[derive(serde::Serialize)]
3825#[derive(Clone, PartialEq, ::prost::Message)]
3826pub struct ClosePortalStmt {
3827 #[prost(string, tag = "1")]
3828 pub portalname: ::prost::alloc::string::String,
3829}
3830#[derive(serde::Serialize)]
3831#[derive(Clone, PartialEq, ::prost::Message)]
3832pub struct FetchStmt {
3833 #[prost(enumeration = "FetchDirection", tag = "1")]
3834 pub direction: i32,
3835 #[prost(int64, tag = "2")]
3836 pub how_many: i64,
3837 #[prost(string, tag = "3")]
3838 pub portalname: ::prost::alloc::string::String,
3839 #[prost(bool, tag = "4")]
3840 pub ismove: bool,
3841}
3842#[derive(serde::Serialize)]
3843#[derive(Clone, PartialEq, ::prost::Message)]
3844pub struct IndexStmt {
3845 #[prost(string, tag = "1")]
3846 pub idxname: ::prost::alloc::string::String,
3847 #[prost(message, optional, tag = "2")]
3848 pub relation: ::core::option::Option<RangeVar>,
3849 #[prost(string, tag = "3")]
3850 pub access_method: ::prost::alloc::string::String,
3851 #[prost(string, tag = "4")]
3852 pub table_space: ::prost::alloc::string::String,
3853 #[prost(message, repeated, tag = "5")]
3854 pub index_params: ::prost::alloc::vec::Vec<Node>,
3855 #[prost(message, repeated, tag = "6")]
3856 pub index_including_params: ::prost::alloc::vec::Vec<Node>,
3857 #[prost(message, repeated, tag = "7")]
3858 pub options: ::prost::alloc::vec::Vec<Node>,
3859 #[prost(message, optional, boxed, tag = "8")]
3860 pub where_clause: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3861 #[prost(message, repeated, tag = "9")]
3862 pub exclude_op_names: ::prost::alloc::vec::Vec<Node>,
3863 #[prost(string, tag = "10")]
3864 pub idxcomment: ::prost::alloc::string::String,
3865 #[prost(uint32, tag = "11")]
3866 pub index_oid: u32,
3867 #[prost(uint32, tag = "12")]
3868 pub old_number: u32,
3869 #[prost(uint32, tag = "13")]
3870 pub old_create_subid: u32,
3871 #[prost(uint32, tag = "14")]
3872 pub old_first_relfilelocator_subid: u32,
3873 #[prost(bool, tag = "15")]
3874 pub unique: bool,
3875 #[prost(bool, tag = "16")]
3876 pub nulls_not_distinct: bool,
3877 #[prost(bool, tag = "17")]
3878 pub primary: bool,
3879 #[prost(bool, tag = "18")]
3880 pub isconstraint: bool,
3881 #[prost(bool, tag = "19")]
3882 pub iswithoutoverlaps: bool,
3883 #[prost(bool, tag = "20")]
3884 pub deferrable: bool,
3885 #[prost(bool, tag = "21")]
3886 pub initdeferred: bool,
3887 #[prost(bool, tag = "22")]
3888 pub transformed: bool,
3889 #[prost(bool, tag = "23")]
3890 pub concurrent: bool,
3891 #[prost(bool, tag = "24")]
3892 pub if_not_exists: bool,
3893 #[prost(bool, tag = "25")]
3894 pub reset_default_tblspc: bool,
3895}
3896#[derive(serde::Serialize)]
3897#[derive(Clone, PartialEq, ::prost::Message)]
3898pub struct CreateStatsStmt {
3899 #[prost(message, repeated, tag = "1")]
3900 pub defnames: ::prost::alloc::vec::Vec<Node>,
3901 #[prost(message, repeated, tag = "2")]
3902 pub stat_types: ::prost::alloc::vec::Vec<Node>,
3903 #[prost(message, repeated, tag = "3")]
3904 pub exprs: ::prost::alloc::vec::Vec<Node>,
3905 #[prost(message, repeated, tag = "4")]
3906 pub relations: ::prost::alloc::vec::Vec<Node>,
3907 #[prost(string, tag = "5")]
3908 pub stxcomment: ::prost::alloc::string::String,
3909 #[prost(bool, tag = "6")]
3910 pub transformed: bool,
3911 #[prost(bool, tag = "7")]
3912 pub if_not_exists: bool,
3913}
3914#[derive(serde::Serialize)]
3915#[derive(Clone, PartialEq, ::prost::Message)]
3916pub struct StatsElem {
3917 #[prost(string, tag = "1")]
3918 pub name: ::prost::alloc::string::String,
3919 #[prost(message, optional, boxed, tag = "2")]
3920 pub expr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3921}
3922#[derive(serde::Serialize)]
3923#[derive(Clone, PartialEq, ::prost::Message)]
3924pub struct AlterStatsStmt {
3925 #[prost(message, repeated, tag = "1")]
3926 pub defnames: ::prost::alloc::vec::Vec<Node>,
3927 #[prost(message, optional, boxed, tag = "2")]
3928 pub stxstattarget: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3929 #[prost(bool, tag = "3")]
3930 pub missing_ok: bool,
3931}
3932#[derive(serde::Serialize)]
3933#[derive(Clone, PartialEq, ::prost::Message)]
3934pub struct CreateFunctionStmt {
3935 #[prost(bool, tag = "1")]
3936 pub is_procedure: bool,
3937 #[prost(bool, tag = "2")]
3938 pub replace: bool,
3939 #[prost(message, repeated, tag = "3")]
3940 pub funcname: ::prost::alloc::vec::Vec<Node>,
3941 #[prost(message, repeated, tag = "4")]
3942 pub parameters: ::prost::alloc::vec::Vec<Node>,
3943 #[prost(message, optional, tag = "5")]
3944 pub return_type: ::core::option::Option<TypeName>,
3945 #[prost(message, repeated, tag = "6")]
3946 pub options: ::prost::alloc::vec::Vec<Node>,
3947 #[prost(message, optional, boxed, tag = "7")]
3948 pub sql_body: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3949}
3950#[derive(serde::Serialize)]
3951#[derive(Clone, PartialEq, ::prost::Message)]
3952pub struct FunctionParameter {
3953 #[prost(string, tag = "1")]
3954 pub name: ::prost::alloc::string::String,
3955 #[prost(message, optional, tag = "2")]
3956 pub arg_type: ::core::option::Option<TypeName>,
3957 #[prost(enumeration = "FunctionParameterMode", tag = "3")]
3958 pub mode: i32,
3959 #[prost(message, optional, boxed, tag = "4")]
3960 pub defexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3961 #[prost(int32, tag = "5")]
3962 pub location: i32,
3963}
3964#[derive(serde::Serialize)]
3965#[derive(Clone, PartialEq, ::prost::Message)]
3966pub struct AlterFunctionStmt {
3967 #[prost(enumeration = "ObjectType", tag = "1")]
3968 pub objtype: i32,
3969 #[prost(message, optional, tag = "2")]
3970 pub func: ::core::option::Option<ObjectWithArgs>,
3971 #[prost(message, repeated, tag = "3")]
3972 pub actions: ::prost::alloc::vec::Vec<Node>,
3973}
3974#[derive(serde::Serialize)]
3975#[derive(Clone, PartialEq, ::prost::Message)]
3976pub struct DoStmt {
3977 #[prost(message, repeated, tag = "1")]
3978 pub args: ::prost::alloc::vec::Vec<Node>,
3979}
3980#[derive(serde::Serialize)]
3981#[derive(Clone, PartialEq, ::prost::Message)]
3982pub struct InlineCodeBlock {
3983 #[prost(string, tag = "1")]
3984 pub source_text: ::prost::alloc::string::String,
3985 #[prost(uint32, tag = "2")]
3986 pub lang_oid: u32,
3987 #[prost(bool, tag = "3")]
3988 pub lang_is_trusted: bool,
3989 #[prost(bool, tag = "4")]
3990 pub atomic: bool,
3991}
3992#[derive(serde::Serialize)]
3993#[derive(Clone, PartialEq, ::prost::Message)]
3994pub struct CallStmt {
3995 #[prost(message, optional, boxed, tag = "1")]
3996 pub funccall: ::core::option::Option<::prost::alloc::boxed::Box<FuncCall>>,
3997 #[prost(message, optional, boxed, tag = "2")]
3998 pub funcexpr: ::core::option::Option<::prost::alloc::boxed::Box<FuncExpr>>,
3999 #[prost(message, repeated, tag = "3")]
4000 pub outargs: ::prost::alloc::vec::Vec<Node>,
4001}
4002#[derive(serde::Serialize)]
4003#[derive(Clone, Copy, PartialEq, ::prost::Message)]
4004pub struct CallContext {
4005 #[prost(bool, tag = "1")]
4006 pub atomic: bool,
4007}
4008#[derive(serde::Serialize)]
4009#[derive(Clone, PartialEq, ::prost::Message)]
4010pub struct RenameStmt {
4011 #[prost(enumeration = "ObjectType", tag = "1")]
4012 pub rename_type: i32,
4013 #[prost(enumeration = "ObjectType", tag = "2")]
4014 pub relation_type: i32,
4015 #[prost(message, optional, tag = "3")]
4016 pub relation: ::core::option::Option<RangeVar>,
4017 #[prost(message, optional, boxed, tag = "4")]
4018 pub object: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
4019 #[prost(string, tag = "5")]
4020 pub subname: ::prost::alloc::string::String,
4021 #[prost(string, tag = "6")]
4022 pub newname: ::prost::alloc::string::String,
4023 #[prost(enumeration = "DropBehavior", tag = "7")]
4024 pub behavior: i32,
4025 #[prost(bool, tag = "8")]
4026 pub missing_ok: bool,
4027}
4028#[derive(serde::Serialize)]
4029#[derive(Clone, PartialEq, ::prost::Message)]
4030pub struct AlterObjectDependsStmt {
4031 #[prost(enumeration = "ObjectType", tag = "1")]
4032 pub object_type: i32,
4033 #[prost(message, optional, tag = "2")]
4034 pub relation: ::core::option::Option<RangeVar>,
4035 #[prost(message, optional, boxed, tag = "3")]
4036 pub object: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
4037 #[prost(message, optional, tag = "4")]
4038 pub extname: ::core::option::Option<String>,
4039 #[prost(bool, tag = "5")]
4040 pub remove: bool,
4041}
4042#[derive(serde::Serialize)]
4043#[derive(Clone, PartialEq, ::prost::Message)]
4044pub struct AlterObjectSchemaStmt {
4045 #[prost(enumeration = "ObjectType", tag = "1")]
4046 pub object_type: i32,
4047 #[prost(message, optional, tag = "2")]
4048 pub relation: ::core::option::Option<RangeVar>,
4049 #[prost(message, optional, boxed, tag = "3")]
4050 pub object: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
4051 #[prost(string, tag = "4")]
4052 pub newschema: ::prost::alloc::string::String,
4053 #[prost(bool, tag = "5")]
4054 pub missing_ok: bool,
4055}
4056#[derive(serde::Serialize)]
4057#[derive(Clone, PartialEq, ::prost::Message)]
4058pub struct AlterOwnerStmt {
4059 #[prost(enumeration = "ObjectType", tag = "1")]
4060 pub object_type: i32,
4061 #[prost(message, optional, tag = "2")]
4062 pub relation: ::core::option::Option<RangeVar>,
4063 #[prost(message, optional, boxed, tag = "3")]
4064 pub object: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
4065 #[prost(message, optional, tag = "4")]
4066 pub newowner: ::core::option::Option<RoleSpec>,
4067}
4068#[derive(serde::Serialize)]
4069#[derive(Clone, PartialEq, ::prost::Message)]
4070pub struct AlterOperatorStmt {
4071 #[prost(message, optional, tag = "1")]
4072 pub opername: ::core::option::Option<ObjectWithArgs>,
4073 #[prost(message, repeated, tag = "2")]
4074 pub options: ::prost::alloc::vec::Vec<Node>,
4075}
4076#[derive(serde::Serialize)]
4077#[derive(Clone, PartialEq, ::prost::Message)]
4078pub struct AlterTypeStmt {
4079 #[prost(message, repeated, tag = "1")]
4080 pub type_name: ::prost::alloc::vec::Vec<Node>,
4081 #[prost(message, repeated, tag = "2")]
4082 pub options: ::prost::alloc::vec::Vec<Node>,
4083}
4084#[derive(serde::Serialize)]
4085#[derive(Clone, PartialEq, ::prost::Message)]
4086pub struct RuleStmt {
4087 #[prost(message, optional, tag = "1")]
4088 pub relation: ::core::option::Option<RangeVar>,
4089 #[prost(string, tag = "2")]
4090 pub rulename: ::prost::alloc::string::String,
4091 #[prost(message, optional, boxed, tag = "3")]
4092 pub where_clause: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
4093 #[prost(enumeration = "CmdType", tag = "4")]
4094 pub event: i32,
4095 #[prost(bool, tag = "5")]
4096 pub instead: bool,
4097 #[prost(message, repeated, tag = "6")]
4098 pub actions: ::prost::alloc::vec::Vec<Node>,
4099 #[prost(bool, tag = "7")]
4100 pub replace: bool,
4101}
4102#[derive(serde::Serialize)]
4103#[derive(Clone, PartialEq, ::prost::Message)]
4104pub struct NotifyStmt {
4105 #[prost(string, tag = "1")]
4106 pub conditionname: ::prost::alloc::string::String,
4107 #[prost(string, tag = "2")]
4108 pub payload: ::prost::alloc::string::String,
4109}
4110#[derive(serde::Serialize)]
4111#[derive(Clone, PartialEq, ::prost::Message)]
4112pub struct ListenStmt {
4113 #[prost(string, tag = "1")]
4114 pub conditionname: ::prost::alloc::string::String,
4115}
4116#[derive(serde::Serialize)]
4117#[derive(Clone, PartialEq, ::prost::Message)]
4118pub struct UnlistenStmt {
4119 #[prost(string, tag = "1")]
4120 pub conditionname: ::prost::alloc::string::String,
4121}
4122#[derive(serde::Serialize)]
4123#[derive(Clone, PartialEq, ::prost::Message)]
4124pub struct TransactionStmt {
4125 #[prost(enumeration = "TransactionStmtKind", tag = "1")]
4126 pub kind: i32,
4127 #[prost(message, repeated, tag = "2")]
4128 pub options: ::prost::alloc::vec::Vec<Node>,
4129 #[prost(string, tag = "3")]
4130 pub savepoint_name: ::prost::alloc::string::String,
4131 #[prost(string, tag = "4")]
4132 pub gid: ::prost::alloc::string::String,
4133 #[prost(bool, tag = "5")]
4134 pub chain: bool,
4135 #[prost(int32, tag = "6")]
4136 pub location: i32,
4137}
4138#[derive(serde::Serialize)]
4139#[derive(Clone, PartialEq, ::prost::Message)]
4140pub struct CompositeTypeStmt {
4141 #[prost(message, optional, tag = "1")]
4142 pub typevar: ::core::option::Option<RangeVar>,
4143 #[prost(message, repeated, tag = "2")]
4144 pub coldeflist: ::prost::alloc::vec::Vec<Node>,
4145}
4146#[derive(serde::Serialize)]
4147#[derive(Clone, PartialEq, ::prost::Message)]
4148pub struct CreateEnumStmt {
4149 #[prost(message, repeated, tag = "1")]
4150 pub type_name: ::prost::alloc::vec::Vec<Node>,
4151 #[prost(message, repeated, tag = "2")]
4152 pub vals: ::prost::alloc::vec::Vec<Node>,
4153}
4154#[derive(serde::Serialize)]
4155#[derive(Clone, PartialEq, ::prost::Message)]
4156pub struct CreateRangeStmt {
4157 #[prost(message, repeated, tag = "1")]
4158 pub type_name: ::prost::alloc::vec::Vec<Node>,
4159 #[prost(message, repeated, tag = "2")]
4160 pub params: ::prost::alloc::vec::Vec<Node>,
4161}
4162#[derive(serde::Serialize)]
4163#[derive(Clone, PartialEq, ::prost::Message)]
4164pub struct AlterEnumStmt {
4165 #[prost(message, repeated, tag = "1")]
4166 pub type_name: ::prost::alloc::vec::Vec<Node>,
4167 #[prost(string, tag = "2")]
4168 pub old_val: ::prost::alloc::string::String,
4169 #[prost(string, tag = "3")]
4170 pub new_val: ::prost::alloc::string::String,
4171 #[prost(string, tag = "4")]
4172 pub new_val_neighbor: ::prost::alloc::string::String,
4173 #[prost(bool, tag = "5")]
4174 pub new_val_is_after: bool,
4175 #[prost(bool, tag = "6")]
4176 pub skip_if_new_val_exists: bool,
4177}
4178#[derive(serde::Serialize)]
4179#[derive(Clone, PartialEq, ::prost::Message)]
4180pub struct ViewStmt {
4181 #[prost(message, optional, tag = "1")]
4182 pub view: ::core::option::Option<RangeVar>,
4183 #[prost(message, repeated, tag = "2")]
4184 pub aliases: ::prost::alloc::vec::Vec<Node>,
4185 #[prost(message, optional, boxed, tag = "3")]
4186 pub query: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
4187 #[prost(bool, tag = "4")]
4188 pub replace: bool,
4189 #[prost(message, repeated, tag = "5")]
4190 pub options: ::prost::alloc::vec::Vec<Node>,
4191 #[prost(enumeration = "ViewCheckOption", tag = "6")]
4192 pub with_check_option: i32,
4193}
4194#[derive(serde::Serialize)]
4195#[derive(Clone, PartialEq, ::prost::Message)]
4196pub struct LoadStmt {
4197 #[prost(string, tag = "1")]
4198 pub filename: ::prost::alloc::string::String,
4199}
4200#[derive(serde::Serialize)]
4201#[derive(Clone, PartialEq, ::prost::Message)]
4202pub struct CreatedbStmt {
4203 #[prost(string, tag = "1")]
4204 pub dbname: ::prost::alloc::string::String,
4205 #[prost(message, repeated, tag = "2")]
4206 pub options: ::prost::alloc::vec::Vec<Node>,
4207}
4208#[derive(serde::Serialize)]
4209#[derive(Clone, PartialEq, ::prost::Message)]
4210pub struct AlterDatabaseStmt {
4211 #[prost(string, tag = "1")]
4212 pub dbname: ::prost::alloc::string::String,
4213 #[prost(message, repeated, tag = "2")]
4214 pub options: ::prost::alloc::vec::Vec<Node>,
4215}
4216#[derive(serde::Serialize)]
4217#[derive(Clone, PartialEq, ::prost::Message)]
4218pub struct AlterDatabaseRefreshCollStmt {
4219 #[prost(string, tag = "1")]
4220 pub dbname: ::prost::alloc::string::String,
4221}
4222#[derive(serde::Serialize)]
4223#[derive(Clone, PartialEq, ::prost::Message)]
4224pub struct AlterDatabaseSetStmt {
4225 #[prost(string, tag = "1")]
4226 pub dbname: ::prost::alloc::string::String,
4227 #[prost(message, optional, tag = "2")]
4228 pub setstmt: ::core::option::Option<VariableSetStmt>,
4229}
4230#[derive(serde::Serialize)]
4231#[derive(Clone, PartialEq, ::prost::Message)]
4232pub struct DropdbStmt {
4233 #[prost(string, tag = "1")]
4234 pub dbname: ::prost::alloc::string::String,
4235 #[prost(bool, tag = "2")]
4236 pub missing_ok: bool,
4237 #[prost(message, repeated, tag = "3")]
4238 pub options: ::prost::alloc::vec::Vec<Node>,
4239}
4240#[derive(serde::Serialize)]
4241#[derive(Clone, PartialEq, ::prost::Message)]
4242pub struct AlterSystemStmt {
4243 #[prost(message, optional, tag = "1")]
4244 pub setstmt: ::core::option::Option<VariableSetStmt>,
4245}
4246#[derive(serde::Serialize)]
4247#[derive(Clone, PartialEq, ::prost::Message)]
4248pub struct ClusterStmt {
4249 #[prost(message, optional, tag = "1")]
4250 pub relation: ::core::option::Option<RangeVar>,
4251 #[prost(string, tag = "2")]
4252 pub indexname: ::prost::alloc::string::String,
4253 #[prost(message, repeated, tag = "3")]
4254 pub params: ::prost::alloc::vec::Vec<Node>,
4255}
4256#[derive(serde::Serialize)]
4257#[derive(Clone, PartialEq, ::prost::Message)]
4258pub struct VacuumStmt {
4259 #[prost(message, repeated, tag = "1")]
4260 pub options: ::prost::alloc::vec::Vec<Node>,
4261 #[prost(message, repeated, tag = "2")]
4262 pub rels: ::prost::alloc::vec::Vec<Node>,
4263 #[prost(bool, tag = "3")]
4264 pub is_vacuumcmd: bool,
4265}
4266#[derive(serde::Serialize)]
4267#[derive(Clone, PartialEq, ::prost::Message)]
4268pub struct VacuumRelation {
4269 #[prost(message, optional, tag = "1")]
4270 pub relation: ::core::option::Option<RangeVar>,
4271 #[prost(uint32, tag = "2")]
4272 pub oid: u32,
4273 #[prost(message, repeated, tag = "3")]
4274 pub va_cols: ::prost::alloc::vec::Vec<Node>,
4275}
4276#[derive(serde::Serialize)]
4277#[derive(Clone, PartialEq, ::prost::Message)]
4278pub struct ExplainStmt {
4279 #[prost(message, optional, boxed, tag = "1")]
4280 pub query: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
4281 #[prost(message, repeated, tag = "2")]
4282 pub options: ::prost::alloc::vec::Vec<Node>,
4283}
4284#[derive(serde::Serialize)]
4285#[derive(Clone, PartialEq, ::prost::Message)]
4286pub struct CreateTableAsStmt {
4287 #[prost(message, optional, boxed, tag = "1")]
4288 pub query: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
4289 #[prost(message, optional, boxed, tag = "2")]
4290 pub into: ::core::option::Option<::prost::alloc::boxed::Box<IntoClause>>,
4291 #[prost(enumeration = "ObjectType", tag = "3")]
4292 pub objtype: i32,
4293 #[prost(bool, tag = "4")]
4294 pub is_select_into: bool,
4295 #[prost(bool, tag = "5")]
4296 pub if_not_exists: bool,
4297}
4298#[derive(serde::Serialize)]
4299#[derive(Clone, PartialEq, ::prost::Message)]
4300pub struct RefreshMatViewStmt {
4301 #[prost(bool, tag = "1")]
4302 pub concurrent: bool,
4303 #[prost(bool, tag = "2")]
4304 pub skip_data: bool,
4305 #[prost(message, optional, tag = "3")]
4306 pub relation: ::core::option::Option<RangeVar>,
4307}
4308#[derive(serde::Serialize)]
4309#[derive(Clone, Copy, PartialEq, ::prost::Message)]
4310pub struct CheckPointStmt {}
4311#[derive(serde::Serialize)]
4312#[derive(Clone, Copy, PartialEq, ::prost::Message)]
4313pub struct DiscardStmt {
4314 #[prost(enumeration = "DiscardMode", tag = "1")]
4315 pub target: i32,
4316}
4317#[derive(serde::Serialize)]
4318#[derive(Clone, PartialEq, ::prost::Message)]
4319pub struct LockStmt {
4320 #[prost(message, repeated, tag = "1")]
4321 pub relations: ::prost::alloc::vec::Vec<Node>,
4322 #[prost(int32, tag = "2")]
4323 pub mode: i32,
4324 #[prost(bool, tag = "3")]
4325 pub nowait: bool,
4326}
4327#[derive(serde::Serialize)]
4328#[derive(Clone, PartialEq, ::prost::Message)]
4329pub struct ConstraintsSetStmt {
4330 #[prost(message, repeated, tag = "1")]
4331 pub constraints: ::prost::alloc::vec::Vec<Node>,
4332 #[prost(bool, tag = "2")]
4333 pub deferred: bool,
4334}
4335#[derive(serde::Serialize)]
4336#[derive(Clone, PartialEq, ::prost::Message)]
4337pub struct ReindexStmt {
4338 #[prost(enumeration = "ReindexObjectType", tag = "1")]
4339 pub kind: i32,
4340 #[prost(message, optional, tag = "2")]
4341 pub relation: ::core::option::Option<RangeVar>,
4342 #[prost(string, tag = "3")]
4343 pub name: ::prost::alloc::string::String,
4344 #[prost(message, repeated, tag = "4")]
4345 pub params: ::prost::alloc::vec::Vec<Node>,
4346}
4347#[derive(serde::Serialize)]
4348#[derive(Clone, PartialEq, ::prost::Message)]
4349pub struct CreateConversionStmt {
4350 #[prost(message, repeated, tag = "1")]
4351 pub conversion_name: ::prost::alloc::vec::Vec<Node>,
4352 #[prost(string, tag = "2")]
4353 pub for_encoding_name: ::prost::alloc::string::String,
4354 #[prost(string, tag = "3")]
4355 pub to_encoding_name: ::prost::alloc::string::String,
4356 #[prost(message, repeated, tag = "4")]
4357 pub func_name: ::prost::alloc::vec::Vec<Node>,
4358 #[prost(bool, tag = "5")]
4359 pub def: bool,
4360}
4361#[derive(serde::Serialize)]
4362#[derive(Clone, PartialEq, ::prost::Message)]
4363pub struct CreateCastStmt {
4364 #[prost(message, optional, tag = "1")]
4365 pub sourcetype: ::core::option::Option<TypeName>,
4366 #[prost(message, optional, tag = "2")]
4367 pub targettype: ::core::option::Option<TypeName>,
4368 #[prost(message, optional, tag = "3")]
4369 pub func: ::core::option::Option<ObjectWithArgs>,
4370 #[prost(enumeration = "CoercionContext", tag = "4")]
4371 pub context: i32,
4372 #[prost(bool, tag = "5")]
4373 pub inout: bool,
4374}
4375#[derive(serde::Serialize)]
4376#[derive(Clone, PartialEq, ::prost::Message)]
4377pub struct CreateTransformStmt {
4378 #[prost(bool, tag = "1")]
4379 pub replace: bool,
4380 #[prost(message, optional, tag = "2")]
4381 pub type_name: ::core::option::Option<TypeName>,
4382 #[prost(string, tag = "3")]
4383 pub lang: ::prost::alloc::string::String,
4384 #[prost(message, optional, tag = "4")]
4385 pub fromsql: ::core::option::Option<ObjectWithArgs>,
4386 #[prost(message, optional, tag = "5")]
4387 pub tosql: ::core::option::Option<ObjectWithArgs>,
4388}
4389#[derive(serde::Serialize)]
4390#[derive(Clone, PartialEq, ::prost::Message)]
4391pub struct PrepareStmt {
4392 #[prost(string, tag = "1")]
4393 pub name: ::prost::alloc::string::String,
4394 #[prost(message, repeated, tag = "2")]
4395 pub argtypes: ::prost::alloc::vec::Vec<Node>,
4396 #[prost(message, optional, boxed, tag = "3")]
4397 pub query: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
4398}
4399#[derive(serde::Serialize)]
4400#[derive(Clone, PartialEq, ::prost::Message)]
4401pub struct ExecuteStmt {
4402 #[prost(string, tag = "1")]
4403 pub name: ::prost::alloc::string::String,
4404 #[prost(message, repeated, tag = "2")]
4405 pub params: ::prost::alloc::vec::Vec<Node>,
4406}
4407#[derive(serde::Serialize)]
4408#[derive(Clone, PartialEq, ::prost::Message)]
4409pub struct DeallocateStmt {
4410 #[prost(string, tag = "1")]
4411 pub name: ::prost::alloc::string::String,
4412 #[prost(bool, tag = "2")]
4413 pub isall: bool,
4414 #[prost(int32, tag = "3")]
4415 pub location: i32,
4416}
4417#[derive(serde::Serialize)]
4418#[derive(Clone, PartialEq, ::prost::Message)]
4419pub struct DropOwnedStmt {
4420 #[prost(message, repeated, tag = "1")]
4421 pub roles: ::prost::alloc::vec::Vec<Node>,
4422 #[prost(enumeration = "DropBehavior", tag = "2")]
4423 pub behavior: i32,
4424}
4425#[derive(serde::Serialize)]
4426#[derive(Clone, PartialEq, ::prost::Message)]
4427pub struct ReassignOwnedStmt {
4428 #[prost(message, repeated, tag = "1")]
4429 pub roles: ::prost::alloc::vec::Vec<Node>,
4430 #[prost(message, optional, tag = "2")]
4431 pub newrole: ::core::option::Option<RoleSpec>,
4432}
4433#[derive(serde::Serialize)]
4434#[derive(Clone, PartialEq, ::prost::Message)]
4435pub struct AlterTsDictionaryStmt {
4436 #[prost(message, repeated, tag = "1")]
4437 pub dictname: ::prost::alloc::vec::Vec<Node>,
4438 #[prost(message, repeated, tag = "2")]
4439 pub options: ::prost::alloc::vec::Vec<Node>,
4440}
4441#[derive(serde::Serialize)]
4442#[derive(Clone, PartialEq, ::prost::Message)]
4443pub struct AlterTsConfigurationStmt {
4444 #[prost(enumeration = "AlterTsConfigType", tag = "1")]
4445 pub kind: i32,
4446 #[prost(message, repeated, tag = "2")]
4447 pub cfgname: ::prost::alloc::vec::Vec<Node>,
4448 #[prost(message, repeated, tag = "3")]
4449 pub tokentype: ::prost::alloc::vec::Vec<Node>,
4450 #[prost(message, repeated, tag = "4")]
4451 pub dicts: ::prost::alloc::vec::Vec<Node>,
4452 #[prost(bool, tag = "5")]
4453 pub r#override: bool,
4454 #[prost(bool, tag = "6")]
4455 pub replace: bool,
4456 #[prost(bool, tag = "7")]
4457 pub missing_ok: bool,
4458}
4459#[derive(serde::Serialize)]
4460#[derive(Clone, PartialEq, ::prost::Message)]
4461pub struct PublicationTable {
4462 #[prost(message, optional, tag = "1")]
4463 pub relation: ::core::option::Option<RangeVar>,
4464 #[prost(message, optional, boxed, tag = "2")]
4465 pub where_clause: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
4466 #[prost(message, repeated, tag = "3")]
4467 pub columns: ::prost::alloc::vec::Vec<Node>,
4468}
4469#[derive(serde::Serialize)]
4470#[derive(Clone, PartialEq, ::prost::Message)]
4471pub struct PublicationObjSpec {
4472 #[prost(enumeration = "PublicationObjSpecType", tag = "1")]
4473 pub pubobjtype: i32,
4474 #[prost(string, tag = "2")]
4475 pub name: ::prost::alloc::string::String,
4476 #[prost(message, optional, boxed, tag = "3")]
4477 pub pubtable: ::core::option::Option<::prost::alloc::boxed::Box<PublicationTable>>,
4478 #[prost(int32, tag = "4")]
4479 pub location: i32,
4480}
4481#[derive(serde::Serialize)]
4482#[derive(Clone, PartialEq, ::prost::Message)]
4483pub struct CreatePublicationStmt {
4484 #[prost(string, tag = "1")]
4485 pub pubname: ::prost::alloc::string::String,
4486 #[prost(message, repeated, tag = "2")]
4487 pub options: ::prost::alloc::vec::Vec<Node>,
4488 #[prost(message, repeated, tag = "3")]
4489 pub pubobjects: ::prost::alloc::vec::Vec<Node>,
4490 #[prost(bool, tag = "4")]
4491 pub for_all_tables: bool,
4492}
4493#[derive(serde::Serialize)]
4494#[derive(Clone, PartialEq, ::prost::Message)]
4495pub struct AlterPublicationStmt {
4496 #[prost(string, tag = "1")]
4497 pub pubname: ::prost::alloc::string::String,
4498 #[prost(message, repeated, tag = "2")]
4499 pub options: ::prost::alloc::vec::Vec<Node>,
4500 #[prost(message, repeated, tag = "3")]
4501 pub pubobjects: ::prost::alloc::vec::Vec<Node>,
4502 #[prost(bool, tag = "4")]
4503 pub for_all_tables: bool,
4504 #[prost(enumeration = "AlterPublicationAction", tag = "5")]
4505 pub action: i32,
4506}
4507#[derive(serde::Serialize)]
4508#[derive(Clone, PartialEq, ::prost::Message)]
4509pub struct CreateSubscriptionStmt {
4510 #[prost(string, tag = "1")]
4511 pub subname: ::prost::alloc::string::String,
4512 #[prost(string, tag = "2")]
4513 pub conninfo: ::prost::alloc::string::String,
4514 #[prost(message, repeated, tag = "3")]
4515 pub publication: ::prost::alloc::vec::Vec<Node>,
4516 #[prost(message, repeated, tag = "4")]
4517 pub options: ::prost::alloc::vec::Vec<Node>,
4518}
4519#[derive(serde::Serialize)]
4520#[derive(Clone, PartialEq, ::prost::Message)]
4521pub struct AlterSubscriptionStmt {
4522 #[prost(enumeration = "AlterSubscriptionType", tag = "1")]
4523 pub kind: i32,
4524 #[prost(string, tag = "2")]
4525 pub subname: ::prost::alloc::string::String,
4526 #[prost(string, tag = "3")]
4527 pub conninfo: ::prost::alloc::string::String,
4528 #[prost(message, repeated, tag = "4")]
4529 pub publication: ::prost::alloc::vec::Vec<Node>,
4530 #[prost(message, repeated, tag = "5")]
4531 pub options: ::prost::alloc::vec::Vec<Node>,
4532}
4533#[derive(serde::Serialize)]
4534#[derive(Clone, PartialEq, ::prost::Message)]
4535pub struct DropSubscriptionStmt {
4536 #[prost(string, tag = "1")]
4537 pub subname: ::prost::alloc::string::String,
4538 #[prost(bool, tag = "2")]
4539 pub missing_ok: bool,
4540 #[prost(enumeration = "DropBehavior", tag = "3")]
4541 pub behavior: i32,
4542}
4543#[derive(serde::Serialize)]
4544#[derive(Clone, Copy, PartialEq, ::prost::Message)]
4545pub struct ScanToken {
4546 #[prost(int32, tag = "1")]
4547 pub start: i32,
4548 #[prost(int32, tag = "2")]
4549 pub end: i32,
4550 #[prost(enumeration = "Token", tag = "4")]
4551 pub token: i32,
4552 #[prost(enumeration = "KeywordKind", tag = "5")]
4553 pub keyword_kind: i32,
4554}
4555#[derive(serde::Serialize)]
4562#[derive(Clone, PartialEq, ::prost::Message)]
4563pub struct SummaryResult {
4564 #[prost(message, repeated, tag = "1")]
4565 pub tables: ::prost::alloc::vec::Vec<summary_result::Table>,
4566 #[prost(map = "string, string", tag = "2")]
4568 pub aliases: ::std::collections::HashMap<
4569 ::prost::alloc::string::String,
4570 ::prost::alloc::string::String,
4571 >,
4572 #[prost(string, repeated, tag = "3")]
4573 pub cte_names: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
4574 #[prost(message, repeated, tag = "4")]
4575 pub functions: ::prost::alloc::vec::Vec<summary_result::Function>,
4576 #[prost(message, repeated, tag = "5")]
4577 pub filter_columns: ::prost::alloc::vec::Vec<summary_result::FilterColumn>,
4578 #[prost(string, repeated, tag = "6")]
4579 pub statement_types: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
4580 #[prost(string, tag = "7")]
4582 pub truncated_query: ::prost::alloc::string::String,
4583}
4584pub mod summary_result {
4586 #[derive(serde::Serialize)]
4587 #[derive(Clone, PartialEq, ::prost::Message)]
4588 pub struct Table {
4589 #[prost(string, tag = "1")]
4590 pub name: ::prost::alloc::string::String,
4591 #[prost(string, tag = "2")]
4592 pub schema_name: ::prost::alloc::string::String,
4593 #[prost(string, tag = "3")]
4594 pub table_name: ::prost::alloc::string::String,
4595 #[prost(enumeration = "Context", tag = "4")]
4596 pub context: i32,
4597 }
4598 #[derive(serde::Serialize)]
4599 #[derive(Clone, PartialEq, ::prost::Message)]
4600 pub struct Function {
4601 #[prost(string, tag = "1")]
4602 pub name: ::prost::alloc::string::String,
4603 #[prost(string, tag = "2")]
4604 pub function_name: ::prost::alloc::string::String,
4605 #[prost(string, tag = "3")]
4607 pub schema_name: ::prost::alloc::string::String,
4608 #[prost(enumeration = "Context", tag = "4")]
4609 pub context: i32,
4610 }
4611 #[derive(serde::Serialize)]
4612 #[derive(Clone, PartialEq, ::prost::Message)]
4613 pub struct FilterColumn {
4614 #[prost(string, tag = "1")]
4616 pub schema_name: ::prost::alloc::string::String,
4617 #[prost(string, tag = "2")]
4619 pub table_name: ::prost::alloc::string::String,
4620 #[prost(string, tag = "3")]
4621 pub column: ::prost::alloc::string::String,
4622 }
4623 #[derive(serde::Serialize)]
4624 #[derive(
4625 Clone,
4626 Copy,
4627 Debug,
4628 PartialEq,
4629 Eq,
4630 Hash,
4631 PartialOrd,
4632 Ord,
4633 ::prost::Enumeration
4634 )]
4635 #[repr(i32)]
4636 pub enum Context {
4637 None = 0,
4638 Select = 1,
4639 Dml = 2,
4640 Ddl = 3,
4641 Call = 4,
4642 }
4643 impl Context {
4644 pub fn as_str_name(&self) -> &'static str {
4649 match self {
4650 Self::None => "None",
4651 Self::Select => "Select",
4652 Self::Dml => "DML",
4653 Self::Ddl => "DDL",
4654 Self::Call => "Call",
4655 }
4656 }
4657 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
4659 match value {
4660 "None" => Some(Self::None),
4661 "Select" => Some(Self::Select),
4662 "DML" => Some(Self::Dml),
4663 "DDL" => Some(Self::Ddl),
4664 "Call" => Some(Self::Call),
4665 _ => None,
4666 }
4667 }
4668 }
4669}
4670#[derive(serde::Serialize)]
4671#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
4672#[repr(i32)]
4673pub enum QuerySource {
4674 Undefined = 0,
4675 QsrcOriginal = 1,
4676 QsrcParser = 2,
4677 QsrcInsteadRule = 3,
4678 QsrcQualInsteadRule = 4,
4679 QsrcNonInsteadRule = 5,
4680}
4681impl QuerySource {
4682 pub fn as_str_name(&self) -> &'static str {
4687 match self {
4688 Self::Undefined => "QUERY_SOURCE_UNDEFINED",
4689 Self::QsrcOriginal => "QSRC_ORIGINAL",
4690 Self::QsrcParser => "QSRC_PARSER",
4691 Self::QsrcInsteadRule => "QSRC_INSTEAD_RULE",
4692 Self::QsrcQualInsteadRule => "QSRC_QUAL_INSTEAD_RULE",
4693 Self::QsrcNonInsteadRule => "QSRC_NON_INSTEAD_RULE",
4694 }
4695 }
4696 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
4698 match value {
4699 "QUERY_SOURCE_UNDEFINED" => Some(Self::Undefined),
4700 "QSRC_ORIGINAL" => Some(Self::QsrcOriginal),
4701 "QSRC_PARSER" => Some(Self::QsrcParser),
4702 "QSRC_INSTEAD_RULE" => Some(Self::QsrcInsteadRule),
4703 "QSRC_QUAL_INSTEAD_RULE" => Some(Self::QsrcQualInsteadRule),
4704 "QSRC_NON_INSTEAD_RULE" => Some(Self::QsrcNonInsteadRule),
4705 _ => None,
4706 }
4707 }
4708}
4709#[derive(serde::Serialize)]
4710#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
4711#[repr(i32)]
4712pub enum SortByDir {
4713 Undefined = 0,
4714 SortbyDefault = 1,
4715 SortbyAsc = 2,
4716 SortbyDesc = 3,
4717 SortbyUsing = 4,
4718}
4719impl SortByDir {
4720 pub fn as_str_name(&self) -> &'static str {
4725 match self {
4726 Self::Undefined => "SORT_BY_DIR_UNDEFINED",
4727 Self::SortbyDefault => "SORTBY_DEFAULT",
4728 Self::SortbyAsc => "SORTBY_ASC",
4729 Self::SortbyDesc => "SORTBY_DESC",
4730 Self::SortbyUsing => "SORTBY_USING",
4731 }
4732 }
4733 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
4735 match value {
4736 "SORT_BY_DIR_UNDEFINED" => Some(Self::Undefined),
4737 "SORTBY_DEFAULT" => Some(Self::SortbyDefault),
4738 "SORTBY_ASC" => Some(Self::SortbyAsc),
4739 "SORTBY_DESC" => Some(Self::SortbyDesc),
4740 "SORTBY_USING" => Some(Self::SortbyUsing),
4741 _ => None,
4742 }
4743 }
4744}
4745#[derive(serde::Serialize)]
4746#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
4747#[repr(i32)]
4748pub enum SortByNulls {
4749 Undefined = 0,
4750 SortbyNullsDefault = 1,
4751 SortbyNullsFirst = 2,
4752 SortbyNullsLast = 3,
4753}
4754impl SortByNulls {
4755 pub fn as_str_name(&self) -> &'static str {
4760 match self {
4761 Self::Undefined => "SORT_BY_NULLS_UNDEFINED",
4762 Self::SortbyNullsDefault => "SORTBY_NULLS_DEFAULT",
4763 Self::SortbyNullsFirst => "SORTBY_NULLS_FIRST",
4764 Self::SortbyNullsLast => "SORTBY_NULLS_LAST",
4765 }
4766 }
4767 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
4769 match value {
4770 "SORT_BY_NULLS_UNDEFINED" => Some(Self::Undefined),
4771 "SORTBY_NULLS_DEFAULT" => Some(Self::SortbyNullsDefault),
4772 "SORTBY_NULLS_FIRST" => Some(Self::SortbyNullsFirst),
4773 "SORTBY_NULLS_LAST" => Some(Self::SortbyNullsLast),
4774 _ => None,
4775 }
4776 }
4777}
4778#[derive(serde::Serialize)]
4779#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
4780#[repr(i32)]
4781pub enum SetQuantifier {
4782 Undefined = 0,
4783 Default = 1,
4784 All = 2,
4785 Distinct = 3,
4786}
4787impl SetQuantifier {
4788 pub fn as_str_name(&self) -> &'static str {
4793 match self {
4794 Self::Undefined => "SET_QUANTIFIER_UNDEFINED",
4795 Self::Default => "SET_QUANTIFIER_DEFAULT",
4796 Self::All => "SET_QUANTIFIER_ALL",
4797 Self::Distinct => "SET_QUANTIFIER_DISTINCT",
4798 }
4799 }
4800 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
4802 match value {
4803 "SET_QUANTIFIER_UNDEFINED" => Some(Self::Undefined),
4804 "SET_QUANTIFIER_DEFAULT" => Some(Self::Default),
4805 "SET_QUANTIFIER_ALL" => Some(Self::All),
4806 "SET_QUANTIFIER_DISTINCT" => Some(Self::Distinct),
4807 _ => None,
4808 }
4809 }
4810}
4811#[derive(serde::Serialize)]
4812#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
4813#[repr(i32)]
4814pub enum AExprKind {
4815 Undefined = 0,
4816 AexprOp = 1,
4817 AexprOpAny = 2,
4818 AexprOpAll = 3,
4819 AexprDistinct = 4,
4820 AexprNotDistinct = 5,
4821 AexprNullif = 6,
4822 AexprIn = 7,
4823 AexprLike = 8,
4824 AexprIlike = 9,
4825 AexprSimilar = 10,
4826 AexprBetween = 11,
4827 AexprNotBetween = 12,
4828 AexprBetweenSym = 13,
4829 AexprNotBetweenSym = 14,
4830}
4831impl AExprKind {
4832 pub fn as_str_name(&self) -> &'static str {
4837 match self {
4838 Self::Undefined => "A_EXPR_KIND_UNDEFINED",
4839 Self::AexprOp => "AEXPR_OP",
4840 Self::AexprOpAny => "AEXPR_OP_ANY",
4841 Self::AexprOpAll => "AEXPR_OP_ALL",
4842 Self::AexprDistinct => "AEXPR_DISTINCT",
4843 Self::AexprNotDistinct => "AEXPR_NOT_DISTINCT",
4844 Self::AexprNullif => "AEXPR_NULLIF",
4845 Self::AexprIn => "AEXPR_IN",
4846 Self::AexprLike => "AEXPR_LIKE",
4847 Self::AexprIlike => "AEXPR_ILIKE",
4848 Self::AexprSimilar => "AEXPR_SIMILAR",
4849 Self::AexprBetween => "AEXPR_BETWEEN",
4850 Self::AexprNotBetween => "AEXPR_NOT_BETWEEN",
4851 Self::AexprBetweenSym => "AEXPR_BETWEEN_SYM",
4852 Self::AexprNotBetweenSym => "AEXPR_NOT_BETWEEN_SYM",
4853 }
4854 }
4855 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
4857 match value {
4858 "A_EXPR_KIND_UNDEFINED" => Some(Self::Undefined),
4859 "AEXPR_OP" => Some(Self::AexprOp),
4860 "AEXPR_OP_ANY" => Some(Self::AexprOpAny),
4861 "AEXPR_OP_ALL" => Some(Self::AexprOpAll),
4862 "AEXPR_DISTINCT" => Some(Self::AexprDistinct),
4863 "AEXPR_NOT_DISTINCT" => Some(Self::AexprNotDistinct),
4864 "AEXPR_NULLIF" => Some(Self::AexprNullif),
4865 "AEXPR_IN" => Some(Self::AexprIn),
4866 "AEXPR_LIKE" => Some(Self::AexprLike),
4867 "AEXPR_ILIKE" => Some(Self::AexprIlike),
4868 "AEXPR_SIMILAR" => Some(Self::AexprSimilar),
4869 "AEXPR_BETWEEN" => Some(Self::AexprBetween),
4870 "AEXPR_NOT_BETWEEN" => Some(Self::AexprNotBetween),
4871 "AEXPR_BETWEEN_SYM" => Some(Self::AexprBetweenSym),
4872 "AEXPR_NOT_BETWEEN_SYM" => Some(Self::AexprNotBetweenSym),
4873 _ => None,
4874 }
4875 }
4876}
4877#[derive(serde::Serialize)]
4878#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
4879#[repr(i32)]
4880pub enum RoleSpecType {
4881 Undefined = 0,
4882 RolespecCstring = 1,
4883 RolespecCurrentRole = 2,
4884 RolespecCurrentUser = 3,
4885 RolespecSessionUser = 4,
4886 RolespecPublic = 5,
4887}
4888impl RoleSpecType {
4889 pub fn as_str_name(&self) -> &'static str {
4894 match self {
4895 Self::Undefined => "ROLE_SPEC_TYPE_UNDEFINED",
4896 Self::RolespecCstring => "ROLESPEC_CSTRING",
4897 Self::RolespecCurrentRole => "ROLESPEC_CURRENT_ROLE",
4898 Self::RolespecCurrentUser => "ROLESPEC_CURRENT_USER",
4899 Self::RolespecSessionUser => "ROLESPEC_SESSION_USER",
4900 Self::RolespecPublic => "ROLESPEC_PUBLIC",
4901 }
4902 }
4903 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
4905 match value {
4906 "ROLE_SPEC_TYPE_UNDEFINED" => Some(Self::Undefined),
4907 "ROLESPEC_CSTRING" => Some(Self::RolespecCstring),
4908 "ROLESPEC_CURRENT_ROLE" => Some(Self::RolespecCurrentRole),
4909 "ROLESPEC_CURRENT_USER" => Some(Self::RolespecCurrentUser),
4910 "ROLESPEC_SESSION_USER" => Some(Self::RolespecSessionUser),
4911 "ROLESPEC_PUBLIC" => Some(Self::RolespecPublic),
4912 _ => None,
4913 }
4914 }
4915}
4916#[derive(serde::Serialize)]
4917#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
4918#[repr(i32)]
4919pub enum TableLikeOption {
4920 Undefined = 0,
4921 CreateTableLikeComments = 1,
4922 CreateTableLikeCompression = 2,
4923 CreateTableLikeConstraints = 3,
4924 CreateTableLikeDefaults = 4,
4925 CreateTableLikeGenerated = 5,
4926 CreateTableLikeIdentity = 6,
4927 CreateTableLikeIndexes = 7,
4928 CreateTableLikeStatistics = 8,
4929 CreateTableLikeStorage = 9,
4930 CreateTableLikeAll = 10,
4931}
4932impl TableLikeOption {
4933 pub fn as_str_name(&self) -> &'static str {
4938 match self {
4939 Self::Undefined => "TABLE_LIKE_OPTION_UNDEFINED",
4940 Self::CreateTableLikeComments => "CREATE_TABLE_LIKE_COMMENTS",
4941 Self::CreateTableLikeCompression => "CREATE_TABLE_LIKE_COMPRESSION",
4942 Self::CreateTableLikeConstraints => "CREATE_TABLE_LIKE_CONSTRAINTS",
4943 Self::CreateTableLikeDefaults => "CREATE_TABLE_LIKE_DEFAULTS",
4944 Self::CreateTableLikeGenerated => "CREATE_TABLE_LIKE_GENERATED",
4945 Self::CreateTableLikeIdentity => "CREATE_TABLE_LIKE_IDENTITY",
4946 Self::CreateTableLikeIndexes => "CREATE_TABLE_LIKE_INDEXES",
4947 Self::CreateTableLikeStatistics => "CREATE_TABLE_LIKE_STATISTICS",
4948 Self::CreateTableLikeStorage => "CREATE_TABLE_LIKE_STORAGE",
4949 Self::CreateTableLikeAll => "CREATE_TABLE_LIKE_ALL",
4950 }
4951 }
4952 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
4954 match value {
4955 "TABLE_LIKE_OPTION_UNDEFINED" => Some(Self::Undefined),
4956 "CREATE_TABLE_LIKE_COMMENTS" => Some(Self::CreateTableLikeComments),
4957 "CREATE_TABLE_LIKE_COMPRESSION" => Some(Self::CreateTableLikeCompression),
4958 "CREATE_TABLE_LIKE_CONSTRAINTS" => Some(Self::CreateTableLikeConstraints),
4959 "CREATE_TABLE_LIKE_DEFAULTS" => Some(Self::CreateTableLikeDefaults),
4960 "CREATE_TABLE_LIKE_GENERATED" => Some(Self::CreateTableLikeGenerated),
4961 "CREATE_TABLE_LIKE_IDENTITY" => Some(Self::CreateTableLikeIdentity),
4962 "CREATE_TABLE_LIKE_INDEXES" => Some(Self::CreateTableLikeIndexes),
4963 "CREATE_TABLE_LIKE_STATISTICS" => Some(Self::CreateTableLikeStatistics),
4964 "CREATE_TABLE_LIKE_STORAGE" => Some(Self::CreateTableLikeStorage),
4965 "CREATE_TABLE_LIKE_ALL" => Some(Self::CreateTableLikeAll),
4966 _ => None,
4967 }
4968 }
4969}
4970#[derive(serde::Serialize)]
4971#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
4972#[repr(i32)]
4973pub enum DefElemAction {
4974 Undefined = 0,
4975 DefelemUnspec = 1,
4976 DefelemSet = 2,
4977 DefelemAdd = 3,
4978 DefelemDrop = 4,
4979}
4980impl DefElemAction {
4981 pub fn as_str_name(&self) -> &'static str {
4986 match self {
4987 Self::Undefined => "DEF_ELEM_ACTION_UNDEFINED",
4988 Self::DefelemUnspec => "DEFELEM_UNSPEC",
4989 Self::DefelemSet => "DEFELEM_SET",
4990 Self::DefelemAdd => "DEFELEM_ADD",
4991 Self::DefelemDrop => "DEFELEM_DROP",
4992 }
4993 }
4994 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
4996 match value {
4997 "DEF_ELEM_ACTION_UNDEFINED" => Some(Self::Undefined),
4998 "DEFELEM_UNSPEC" => Some(Self::DefelemUnspec),
4999 "DEFELEM_SET" => Some(Self::DefelemSet),
5000 "DEFELEM_ADD" => Some(Self::DefelemAdd),
5001 "DEFELEM_DROP" => Some(Self::DefelemDrop),
5002 _ => None,
5003 }
5004 }
5005}
5006#[derive(serde::Serialize)]
5007#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5008#[repr(i32)]
5009pub enum PartitionStrategy {
5010 Undefined = 0,
5011 List = 1,
5012 Range = 2,
5013 Hash = 3,
5014}
5015impl PartitionStrategy {
5016 pub fn as_str_name(&self) -> &'static str {
5021 match self {
5022 Self::Undefined => "PARTITION_STRATEGY_UNDEFINED",
5023 Self::List => "PARTITION_STRATEGY_LIST",
5024 Self::Range => "PARTITION_STRATEGY_RANGE",
5025 Self::Hash => "PARTITION_STRATEGY_HASH",
5026 }
5027 }
5028 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5030 match value {
5031 "PARTITION_STRATEGY_UNDEFINED" => Some(Self::Undefined),
5032 "PARTITION_STRATEGY_LIST" => Some(Self::List),
5033 "PARTITION_STRATEGY_RANGE" => Some(Self::Range),
5034 "PARTITION_STRATEGY_HASH" => Some(Self::Hash),
5035 _ => None,
5036 }
5037 }
5038}
5039#[derive(serde::Serialize)]
5040#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5041#[repr(i32)]
5042pub enum PartitionRangeDatumKind {
5043 Undefined = 0,
5044 PartitionRangeDatumMinvalue = 1,
5045 PartitionRangeDatumValue = 2,
5046 PartitionRangeDatumMaxvalue = 3,
5047}
5048impl PartitionRangeDatumKind {
5049 pub fn as_str_name(&self) -> &'static str {
5054 match self {
5055 Self::Undefined => "PARTITION_RANGE_DATUM_KIND_UNDEFINED",
5056 Self::PartitionRangeDatumMinvalue => "PARTITION_RANGE_DATUM_MINVALUE",
5057 Self::PartitionRangeDatumValue => "PARTITION_RANGE_DATUM_VALUE",
5058 Self::PartitionRangeDatumMaxvalue => "PARTITION_RANGE_DATUM_MAXVALUE",
5059 }
5060 }
5061 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5063 match value {
5064 "PARTITION_RANGE_DATUM_KIND_UNDEFINED" => Some(Self::Undefined),
5065 "PARTITION_RANGE_DATUM_MINVALUE" => Some(Self::PartitionRangeDatumMinvalue),
5066 "PARTITION_RANGE_DATUM_VALUE" => Some(Self::PartitionRangeDatumValue),
5067 "PARTITION_RANGE_DATUM_MAXVALUE" => Some(Self::PartitionRangeDatumMaxvalue),
5068 _ => None,
5069 }
5070 }
5071}
5072#[derive(serde::Serialize)]
5073#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5074#[repr(i32)]
5075pub enum RteKind {
5076 RtekindUndefined = 0,
5077 RteRelation = 1,
5078 RteSubquery = 2,
5079 RteJoin = 3,
5080 RteFunction = 4,
5081 RteTablefunc = 5,
5082 RteValues = 6,
5083 RteCte = 7,
5084 RteNamedtuplestore = 8,
5085 RteResult = 9,
5086 RteGroup = 10,
5087}
5088impl RteKind {
5089 pub fn as_str_name(&self) -> &'static str {
5094 match self {
5095 Self::RtekindUndefined => "RTEKIND_UNDEFINED",
5096 Self::RteRelation => "RTE_RELATION",
5097 Self::RteSubquery => "RTE_SUBQUERY",
5098 Self::RteJoin => "RTE_JOIN",
5099 Self::RteFunction => "RTE_FUNCTION",
5100 Self::RteTablefunc => "RTE_TABLEFUNC",
5101 Self::RteValues => "RTE_VALUES",
5102 Self::RteCte => "RTE_CTE",
5103 Self::RteNamedtuplestore => "RTE_NAMEDTUPLESTORE",
5104 Self::RteResult => "RTE_RESULT",
5105 Self::RteGroup => "RTE_GROUP",
5106 }
5107 }
5108 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5110 match value {
5111 "RTEKIND_UNDEFINED" => Some(Self::RtekindUndefined),
5112 "RTE_RELATION" => Some(Self::RteRelation),
5113 "RTE_SUBQUERY" => Some(Self::RteSubquery),
5114 "RTE_JOIN" => Some(Self::RteJoin),
5115 "RTE_FUNCTION" => Some(Self::RteFunction),
5116 "RTE_TABLEFUNC" => Some(Self::RteTablefunc),
5117 "RTE_VALUES" => Some(Self::RteValues),
5118 "RTE_CTE" => Some(Self::RteCte),
5119 "RTE_NAMEDTUPLESTORE" => Some(Self::RteNamedtuplestore),
5120 "RTE_RESULT" => Some(Self::RteResult),
5121 "RTE_GROUP" => Some(Self::RteGroup),
5122 _ => None,
5123 }
5124 }
5125}
5126#[derive(serde::Serialize)]
5127#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5128#[repr(i32)]
5129pub enum WcoKind {
5130 WcokindUndefined = 0,
5131 WcoViewCheck = 1,
5132 WcoRlsInsertCheck = 2,
5133 WcoRlsUpdateCheck = 3,
5134 WcoRlsConflictCheck = 4,
5135 WcoRlsMergeUpdateCheck = 5,
5136 WcoRlsMergeDeleteCheck = 6,
5137}
5138impl WcoKind {
5139 pub fn as_str_name(&self) -> &'static str {
5144 match self {
5145 Self::WcokindUndefined => "WCOKIND_UNDEFINED",
5146 Self::WcoViewCheck => "WCO_VIEW_CHECK",
5147 Self::WcoRlsInsertCheck => "WCO_RLS_INSERT_CHECK",
5148 Self::WcoRlsUpdateCheck => "WCO_RLS_UPDATE_CHECK",
5149 Self::WcoRlsConflictCheck => "WCO_RLS_CONFLICT_CHECK",
5150 Self::WcoRlsMergeUpdateCheck => "WCO_RLS_MERGE_UPDATE_CHECK",
5151 Self::WcoRlsMergeDeleteCheck => "WCO_RLS_MERGE_DELETE_CHECK",
5152 }
5153 }
5154 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5156 match value {
5157 "WCOKIND_UNDEFINED" => Some(Self::WcokindUndefined),
5158 "WCO_VIEW_CHECK" => Some(Self::WcoViewCheck),
5159 "WCO_RLS_INSERT_CHECK" => Some(Self::WcoRlsInsertCheck),
5160 "WCO_RLS_UPDATE_CHECK" => Some(Self::WcoRlsUpdateCheck),
5161 "WCO_RLS_CONFLICT_CHECK" => Some(Self::WcoRlsConflictCheck),
5162 "WCO_RLS_MERGE_UPDATE_CHECK" => Some(Self::WcoRlsMergeUpdateCheck),
5163 "WCO_RLS_MERGE_DELETE_CHECK" => Some(Self::WcoRlsMergeDeleteCheck),
5164 _ => None,
5165 }
5166 }
5167}
5168#[derive(serde::Serialize)]
5169#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5170#[repr(i32)]
5171pub enum GroupingSetKind {
5172 Undefined = 0,
5173 GroupingSetEmpty = 1,
5174 GroupingSetSimple = 2,
5175 GroupingSetRollup = 3,
5176 GroupingSetCube = 4,
5177 GroupingSetSets = 5,
5178}
5179impl GroupingSetKind {
5180 pub fn as_str_name(&self) -> &'static str {
5185 match self {
5186 Self::Undefined => "GROUPING_SET_KIND_UNDEFINED",
5187 Self::GroupingSetEmpty => "GROUPING_SET_EMPTY",
5188 Self::GroupingSetSimple => "GROUPING_SET_SIMPLE",
5189 Self::GroupingSetRollup => "GROUPING_SET_ROLLUP",
5190 Self::GroupingSetCube => "GROUPING_SET_CUBE",
5191 Self::GroupingSetSets => "GROUPING_SET_SETS",
5192 }
5193 }
5194 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5196 match value {
5197 "GROUPING_SET_KIND_UNDEFINED" => Some(Self::Undefined),
5198 "GROUPING_SET_EMPTY" => Some(Self::GroupingSetEmpty),
5199 "GROUPING_SET_SIMPLE" => Some(Self::GroupingSetSimple),
5200 "GROUPING_SET_ROLLUP" => Some(Self::GroupingSetRollup),
5201 "GROUPING_SET_CUBE" => Some(Self::GroupingSetCube),
5202 "GROUPING_SET_SETS" => Some(Self::GroupingSetSets),
5203 _ => None,
5204 }
5205 }
5206}
5207#[derive(serde::Serialize)]
5208#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5209#[repr(i32)]
5210pub enum CteMaterialize {
5211 CtematerializeUndefined = 0,
5212 Default = 1,
5213 Always = 2,
5214 Never = 3,
5215}
5216impl CteMaterialize {
5217 pub fn as_str_name(&self) -> &'static str {
5222 match self {
5223 Self::CtematerializeUndefined => "CTEMATERIALIZE_UNDEFINED",
5224 Self::Default => "CTEMaterializeDefault",
5225 Self::Always => "CTEMaterializeAlways",
5226 Self::Never => "CTEMaterializeNever",
5227 }
5228 }
5229 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5231 match value {
5232 "CTEMATERIALIZE_UNDEFINED" => Some(Self::CtematerializeUndefined),
5233 "CTEMaterializeDefault" => Some(Self::Default),
5234 "CTEMaterializeAlways" => Some(Self::Always),
5235 "CTEMaterializeNever" => Some(Self::Never),
5236 _ => None,
5237 }
5238 }
5239}
5240#[derive(serde::Serialize)]
5241#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5242#[repr(i32)]
5243pub enum ReturningOptionKind {
5244 Undefined = 0,
5245 ReturningOptionOld = 1,
5246 ReturningOptionNew = 2,
5247}
5248impl ReturningOptionKind {
5249 pub fn as_str_name(&self) -> &'static str {
5254 match self {
5255 Self::Undefined => "RETURNING_OPTION_KIND_UNDEFINED",
5256 Self::ReturningOptionOld => "RETURNING_OPTION_OLD",
5257 Self::ReturningOptionNew => "RETURNING_OPTION_NEW",
5258 }
5259 }
5260 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5262 match value {
5263 "RETURNING_OPTION_KIND_UNDEFINED" => Some(Self::Undefined),
5264 "RETURNING_OPTION_OLD" => Some(Self::ReturningOptionOld),
5265 "RETURNING_OPTION_NEW" => Some(Self::ReturningOptionNew),
5266 _ => None,
5267 }
5268 }
5269}
5270#[derive(serde::Serialize)]
5271#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5272#[repr(i32)]
5273pub enum JsonQuotes {
5274 Undefined = 0,
5275 JsQuotesUnspec = 1,
5276 JsQuotesKeep = 2,
5277 JsQuotesOmit = 3,
5278}
5279impl JsonQuotes {
5280 pub fn as_str_name(&self) -> &'static str {
5285 match self {
5286 Self::Undefined => "JSON_QUOTES_UNDEFINED",
5287 Self::JsQuotesUnspec => "JS_QUOTES_UNSPEC",
5288 Self::JsQuotesKeep => "JS_QUOTES_KEEP",
5289 Self::JsQuotesOmit => "JS_QUOTES_OMIT",
5290 }
5291 }
5292 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5294 match value {
5295 "JSON_QUOTES_UNDEFINED" => Some(Self::Undefined),
5296 "JS_QUOTES_UNSPEC" => Some(Self::JsQuotesUnspec),
5297 "JS_QUOTES_KEEP" => Some(Self::JsQuotesKeep),
5298 "JS_QUOTES_OMIT" => Some(Self::JsQuotesOmit),
5299 _ => None,
5300 }
5301 }
5302}
5303#[derive(serde::Serialize)]
5304#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5305#[repr(i32)]
5306pub enum JsonTableColumnType {
5307 Undefined = 0,
5308 JtcForOrdinality = 1,
5309 JtcRegular = 2,
5310 JtcExists = 3,
5311 JtcFormatted = 4,
5312 JtcNested = 5,
5313}
5314impl JsonTableColumnType {
5315 pub fn as_str_name(&self) -> &'static str {
5320 match self {
5321 Self::Undefined => "JSON_TABLE_COLUMN_TYPE_UNDEFINED",
5322 Self::JtcForOrdinality => "JTC_FOR_ORDINALITY",
5323 Self::JtcRegular => "JTC_REGULAR",
5324 Self::JtcExists => "JTC_EXISTS",
5325 Self::JtcFormatted => "JTC_FORMATTED",
5326 Self::JtcNested => "JTC_NESTED",
5327 }
5328 }
5329 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5331 match value {
5332 "JSON_TABLE_COLUMN_TYPE_UNDEFINED" => Some(Self::Undefined),
5333 "JTC_FOR_ORDINALITY" => Some(Self::JtcForOrdinality),
5334 "JTC_REGULAR" => Some(Self::JtcRegular),
5335 "JTC_EXISTS" => Some(Self::JtcExists),
5336 "JTC_FORMATTED" => Some(Self::JtcFormatted),
5337 "JTC_NESTED" => Some(Self::JtcNested),
5338 _ => None,
5339 }
5340 }
5341}
5342#[derive(serde::Serialize)]
5343#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5344#[repr(i32)]
5345pub enum SetOperation {
5346 Undefined = 0,
5347 SetopNone = 1,
5348 SetopUnion = 2,
5349 SetopIntersect = 3,
5350 SetopExcept = 4,
5351}
5352impl SetOperation {
5353 pub fn as_str_name(&self) -> &'static str {
5358 match self {
5359 Self::Undefined => "SET_OPERATION_UNDEFINED",
5360 Self::SetopNone => "SETOP_NONE",
5361 Self::SetopUnion => "SETOP_UNION",
5362 Self::SetopIntersect => "SETOP_INTERSECT",
5363 Self::SetopExcept => "SETOP_EXCEPT",
5364 }
5365 }
5366 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5368 match value {
5369 "SET_OPERATION_UNDEFINED" => Some(Self::Undefined),
5370 "SETOP_NONE" => Some(Self::SetopNone),
5371 "SETOP_UNION" => Some(Self::SetopUnion),
5372 "SETOP_INTERSECT" => Some(Self::SetopIntersect),
5373 "SETOP_EXCEPT" => Some(Self::SetopExcept),
5374 _ => None,
5375 }
5376 }
5377}
5378#[derive(serde::Serialize)]
5379#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5380#[repr(i32)]
5381pub enum ObjectType {
5382 Undefined = 0,
5383 ObjectAccessMethod = 1,
5384 ObjectAggregate = 2,
5385 ObjectAmop = 3,
5386 ObjectAmproc = 4,
5387 ObjectAttribute = 5,
5388 ObjectCast = 6,
5389 ObjectColumn = 7,
5390 ObjectCollation = 8,
5391 ObjectConversion = 9,
5392 ObjectDatabase = 10,
5393 ObjectDefault = 11,
5394 ObjectDefacl = 12,
5395 ObjectDomain = 13,
5396 ObjectDomconstraint = 14,
5397 ObjectEventTrigger = 15,
5398 ObjectExtension = 16,
5399 ObjectFdw = 17,
5400 ObjectForeignServer = 18,
5401 ObjectForeignTable = 19,
5402 ObjectFunction = 20,
5403 ObjectIndex = 21,
5404 ObjectLanguage = 22,
5405 ObjectLargeobject = 23,
5406 ObjectMatview = 24,
5407 ObjectOpclass = 25,
5408 ObjectOperator = 26,
5409 ObjectOpfamily = 27,
5410 ObjectParameterAcl = 28,
5411 ObjectPolicy = 29,
5412 ObjectProcedure = 30,
5413 ObjectPublication = 31,
5414 ObjectPublicationNamespace = 32,
5415 ObjectPublicationRel = 33,
5416 ObjectRole = 34,
5417 ObjectRoutine = 35,
5418 ObjectRule = 36,
5419 ObjectSchema = 37,
5420 ObjectSequence = 38,
5421 ObjectSubscription = 39,
5422 ObjectStatisticExt = 40,
5423 ObjectTabconstraint = 41,
5424 ObjectTable = 42,
5425 ObjectTablespace = 43,
5426 ObjectTransform = 44,
5427 ObjectTrigger = 45,
5428 ObjectTsconfiguration = 46,
5429 ObjectTsdictionary = 47,
5430 ObjectTsparser = 48,
5431 ObjectTstemplate = 49,
5432 ObjectType = 50,
5433 ObjectUserMapping = 51,
5434 ObjectView = 52,
5435}
5436impl ObjectType {
5437 pub fn as_str_name(&self) -> &'static str {
5442 match self {
5443 Self::Undefined => "OBJECT_TYPE_UNDEFINED",
5444 Self::ObjectAccessMethod => "OBJECT_ACCESS_METHOD",
5445 Self::ObjectAggregate => "OBJECT_AGGREGATE",
5446 Self::ObjectAmop => "OBJECT_AMOP",
5447 Self::ObjectAmproc => "OBJECT_AMPROC",
5448 Self::ObjectAttribute => "OBJECT_ATTRIBUTE",
5449 Self::ObjectCast => "OBJECT_CAST",
5450 Self::ObjectColumn => "OBJECT_COLUMN",
5451 Self::ObjectCollation => "OBJECT_COLLATION",
5452 Self::ObjectConversion => "OBJECT_CONVERSION",
5453 Self::ObjectDatabase => "OBJECT_DATABASE",
5454 Self::ObjectDefault => "OBJECT_DEFAULT",
5455 Self::ObjectDefacl => "OBJECT_DEFACL",
5456 Self::ObjectDomain => "OBJECT_DOMAIN",
5457 Self::ObjectDomconstraint => "OBJECT_DOMCONSTRAINT",
5458 Self::ObjectEventTrigger => "OBJECT_EVENT_TRIGGER",
5459 Self::ObjectExtension => "OBJECT_EXTENSION",
5460 Self::ObjectFdw => "OBJECT_FDW",
5461 Self::ObjectForeignServer => "OBJECT_FOREIGN_SERVER",
5462 Self::ObjectForeignTable => "OBJECT_FOREIGN_TABLE",
5463 Self::ObjectFunction => "OBJECT_FUNCTION",
5464 Self::ObjectIndex => "OBJECT_INDEX",
5465 Self::ObjectLanguage => "OBJECT_LANGUAGE",
5466 Self::ObjectLargeobject => "OBJECT_LARGEOBJECT",
5467 Self::ObjectMatview => "OBJECT_MATVIEW",
5468 Self::ObjectOpclass => "OBJECT_OPCLASS",
5469 Self::ObjectOperator => "OBJECT_OPERATOR",
5470 Self::ObjectOpfamily => "OBJECT_OPFAMILY",
5471 Self::ObjectParameterAcl => "OBJECT_PARAMETER_ACL",
5472 Self::ObjectPolicy => "OBJECT_POLICY",
5473 Self::ObjectProcedure => "OBJECT_PROCEDURE",
5474 Self::ObjectPublication => "OBJECT_PUBLICATION",
5475 Self::ObjectPublicationNamespace => "OBJECT_PUBLICATION_NAMESPACE",
5476 Self::ObjectPublicationRel => "OBJECT_PUBLICATION_REL",
5477 Self::ObjectRole => "OBJECT_ROLE",
5478 Self::ObjectRoutine => "OBJECT_ROUTINE",
5479 Self::ObjectRule => "OBJECT_RULE",
5480 Self::ObjectSchema => "OBJECT_SCHEMA",
5481 Self::ObjectSequence => "OBJECT_SEQUENCE",
5482 Self::ObjectSubscription => "OBJECT_SUBSCRIPTION",
5483 Self::ObjectStatisticExt => "OBJECT_STATISTIC_EXT",
5484 Self::ObjectTabconstraint => "OBJECT_TABCONSTRAINT",
5485 Self::ObjectTable => "OBJECT_TABLE",
5486 Self::ObjectTablespace => "OBJECT_TABLESPACE",
5487 Self::ObjectTransform => "OBJECT_TRANSFORM",
5488 Self::ObjectTrigger => "OBJECT_TRIGGER",
5489 Self::ObjectTsconfiguration => "OBJECT_TSCONFIGURATION",
5490 Self::ObjectTsdictionary => "OBJECT_TSDICTIONARY",
5491 Self::ObjectTsparser => "OBJECT_TSPARSER",
5492 Self::ObjectTstemplate => "OBJECT_TSTEMPLATE",
5493 Self::ObjectType => "OBJECT_TYPE",
5494 Self::ObjectUserMapping => "OBJECT_USER_MAPPING",
5495 Self::ObjectView => "OBJECT_VIEW",
5496 }
5497 }
5498 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5500 match value {
5501 "OBJECT_TYPE_UNDEFINED" => Some(Self::Undefined),
5502 "OBJECT_ACCESS_METHOD" => Some(Self::ObjectAccessMethod),
5503 "OBJECT_AGGREGATE" => Some(Self::ObjectAggregate),
5504 "OBJECT_AMOP" => Some(Self::ObjectAmop),
5505 "OBJECT_AMPROC" => Some(Self::ObjectAmproc),
5506 "OBJECT_ATTRIBUTE" => Some(Self::ObjectAttribute),
5507 "OBJECT_CAST" => Some(Self::ObjectCast),
5508 "OBJECT_COLUMN" => Some(Self::ObjectColumn),
5509 "OBJECT_COLLATION" => Some(Self::ObjectCollation),
5510 "OBJECT_CONVERSION" => Some(Self::ObjectConversion),
5511 "OBJECT_DATABASE" => Some(Self::ObjectDatabase),
5512 "OBJECT_DEFAULT" => Some(Self::ObjectDefault),
5513 "OBJECT_DEFACL" => Some(Self::ObjectDefacl),
5514 "OBJECT_DOMAIN" => Some(Self::ObjectDomain),
5515 "OBJECT_DOMCONSTRAINT" => Some(Self::ObjectDomconstraint),
5516 "OBJECT_EVENT_TRIGGER" => Some(Self::ObjectEventTrigger),
5517 "OBJECT_EXTENSION" => Some(Self::ObjectExtension),
5518 "OBJECT_FDW" => Some(Self::ObjectFdw),
5519 "OBJECT_FOREIGN_SERVER" => Some(Self::ObjectForeignServer),
5520 "OBJECT_FOREIGN_TABLE" => Some(Self::ObjectForeignTable),
5521 "OBJECT_FUNCTION" => Some(Self::ObjectFunction),
5522 "OBJECT_INDEX" => Some(Self::ObjectIndex),
5523 "OBJECT_LANGUAGE" => Some(Self::ObjectLanguage),
5524 "OBJECT_LARGEOBJECT" => Some(Self::ObjectLargeobject),
5525 "OBJECT_MATVIEW" => Some(Self::ObjectMatview),
5526 "OBJECT_OPCLASS" => Some(Self::ObjectOpclass),
5527 "OBJECT_OPERATOR" => Some(Self::ObjectOperator),
5528 "OBJECT_OPFAMILY" => Some(Self::ObjectOpfamily),
5529 "OBJECT_PARAMETER_ACL" => Some(Self::ObjectParameterAcl),
5530 "OBJECT_POLICY" => Some(Self::ObjectPolicy),
5531 "OBJECT_PROCEDURE" => Some(Self::ObjectProcedure),
5532 "OBJECT_PUBLICATION" => Some(Self::ObjectPublication),
5533 "OBJECT_PUBLICATION_NAMESPACE" => Some(Self::ObjectPublicationNamespace),
5534 "OBJECT_PUBLICATION_REL" => Some(Self::ObjectPublicationRel),
5535 "OBJECT_ROLE" => Some(Self::ObjectRole),
5536 "OBJECT_ROUTINE" => Some(Self::ObjectRoutine),
5537 "OBJECT_RULE" => Some(Self::ObjectRule),
5538 "OBJECT_SCHEMA" => Some(Self::ObjectSchema),
5539 "OBJECT_SEQUENCE" => Some(Self::ObjectSequence),
5540 "OBJECT_SUBSCRIPTION" => Some(Self::ObjectSubscription),
5541 "OBJECT_STATISTIC_EXT" => Some(Self::ObjectStatisticExt),
5542 "OBJECT_TABCONSTRAINT" => Some(Self::ObjectTabconstraint),
5543 "OBJECT_TABLE" => Some(Self::ObjectTable),
5544 "OBJECT_TABLESPACE" => Some(Self::ObjectTablespace),
5545 "OBJECT_TRANSFORM" => Some(Self::ObjectTransform),
5546 "OBJECT_TRIGGER" => Some(Self::ObjectTrigger),
5547 "OBJECT_TSCONFIGURATION" => Some(Self::ObjectTsconfiguration),
5548 "OBJECT_TSDICTIONARY" => Some(Self::ObjectTsdictionary),
5549 "OBJECT_TSPARSER" => Some(Self::ObjectTsparser),
5550 "OBJECT_TSTEMPLATE" => Some(Self::ObjectTstemplate),
5551 "OBJECT_TYPE" => Some(Self::ObjectType),
5552 "OBJECT_USER_MAPPING" => Some(Self::ObjectUserMapping),
5553 "OBJECT_VIEW" => Some(Self::ObjectView),
5554 _ => None,
5555 }
5556 }
5557}
5558#[derive(serde::Serialize)]
5559#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5560#[repr(i32)]
5561pub enum DropBehavior {
5562 Undefined = 0,
5563 DropRestrict = 1,
5564 DropCascade = 2,
5565}
5566impl DropBehavior {
5567 pub fn as_str_name(&self) -> &'static str {
5572 match self {
5573 Self::Undefined => "DROP_BEHAVIOR_UNDEFINED",
5574 Self::DropRestrict => "DROP_RESTRICT",
5575 Self::DropCascade => "DROP_CASCADE",
5576 }
5577 }
5578 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5580 match value {
5581 "DROP_BEHAVIOR_UNDEFINED" => Some(Self::Undefined),
5582 "DROP_RESTRICT" => Some(Self::DropRestrict),
5583 "DROP_CASCADE" => Some(Self::DropCascade),
5584 _ => None,
5585 }
5586 }
5587}
5588#[derive(serde::Serialize)]
5589#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5590#[repr(i32)]
5591pub enum AlterTableType {
5592 Undefined = 0,
5593 AtAddColumn = 1,
5594 AtAddColumnToView = 2,
5595 AtColumnDefault = 3,
5596 AtCookedColumnDefault = 4,
5597 AtDropNotNull = 5,
5598 AtSetNotNull = 6,
5599 AtSetExpression = 7,
5600 AtDropExpression = 8,
5601 AtSetStatistics = 9,
5602 AtSetOptions = 10,
5603 AtResetOptions = 11,
5604 AtSetStorage = 12,
5605 AtSetCompression = 13,
5606 AtDropColumn = 14,
5607 AtAddIndex = 15,
5608 AtReAddIndex = 16,
5609 AtAddConstraint = 17,
5610 AtReAddConstraint = 18,
5611 AtReAddDomainConstraint = 19,
5612 AtAlterConstraint = 20,
5613 AtValidateConstraint = 21,
5614 AtAddIndexConstraint = 22,
5615 AtDropConstraint = 23,
5616 AtReAddComment = 24,
5617 AtAlterColumnType = 25,
5618 AtAlterColumnGenericOptions = 26,
5619 AtChangeOwner = 27,
5620 AtClusterOn = 28,
5621 AtDropCluster = 29,
5622 AtSetLogged = 30,
5623 AtSetUnLogged = 31,
5624 AtDropOids = 32,
5625 AtSetAccessMethod = 33,
5626 AtSetTableSpace = 34,
5627 AtSetRelOptions = 35,
5628 AtResetRelOptions = 36,
5629 AtReplaceRelOptions = 37,
5630 AtEnableTrig = 38,
5631 AtEnableAlwaysTrig = 39,
5632 AtEnableReplicaTrig = 40,
5633 AtDisableTrig = 41,
5634 AtEnableTrigAll = 42,
5635 AtDisableTrigAll = 43,
5636 AtEnableTrigUser = 44,
5637 AtDisableTrigUser = 45,
5638 AtEnableRule = 46,
5639 AtEnableAlwaysRule = 47,
5640 AtEnableReplicaRule = 48,
5641 AtDisableRule = 49,
5642 AtAddInherit = 50,
5643 AtDropInherit = 51,
5644 AtAddOf = 52,
5645 AtDropOf = 53,
5646 AtReplicaIdentity = 54,
5647 AtEnableRowSecurity = 55,
5648 AtDisableRowSecurity = 56,
5649 AtForceRowSecurity = 57,
5650 AtNoForceRowSecurity = 58,
5651 AtGenericOptions = 59,
5652 AtAttachPartition = 60,
5653 AtDetachPartition = 61,
5654 AtDetachPartitionFinalize = 62,
5655 AtAddIdentity = 63,
5656 AtSetIdentity = 64,
5657 AtDropIdentity = 65,
5658 AtReAddStatistics = 66,
5659}
5660impl AlterTableType {
5661 pub fn as_str_name(&self) -> &'static str {
5666 match self {
5667 Self::Undefined => "ALTER_TABLE_TYPE_UNDEFINED",
5668 Self::AtAddColumn => "AT_AddColumn",
5669 Self::AtAddColumnToView => "AT_AddColumnToView",
5670 Self::AtColumnDefault => "AT_ColumnDefault",
5671 Self::AtCookedColumnDefault => "AT_CookedColumnDefault",
5672 Self::AtDropNotNull => "AT_DropNotNull",
5673 Self::AtSetNotNull => "AT_SetNotNull",
5674 Self::AtSetExpression => "AT_SetExpression",
5675 Self::AtDropExpression => "AT_DropExpression",
5676 Self::AtSetStatistics => "AT_SetStatistics",
5677 Self::AtSetOptions => "AT_SetOptions",
5678 Self::AtResetOptions => "AT_ResetOptions",
5679 Self::AtSetStorage => "AT_SetStorage",
5680 Self::AtSetCompression => "AT_SetCompression",
5681 Self::AtDropColumn => "AT_DropColumn",
5682 Self::AtAddIndex => "AT_AddIndex",
5683 Self::AtReAddIndex => "AT_ReAddIndex",
5684 Self::AtAddConstraint => "AT_AddConstraint",
5685 Self::AtReAddConstraint => "AT_ReAddConstraint",
5686 Self::AtReAddDomainConstraint => "AT_ReAddDomainConstraint",
5687 Self::AtAlterConstraint => "AT_AlterConstraint",
5688 Self::AtValidateConstraint => "AT_ValidateConstraint",
5689 Self::AtAddIndexConstraint => "AT_AddIndexConstraint",
5690 Self::AtDropConstraint => "AT_DropConstraint",
5691 Self::AtReAddComment => "AT_ReAddComment",
5692 Self::AtAlterColumnType => "AT_AlterColumnType",
5693 Self::AtAlterColumnGenericOptions => "AT_AlterColumnGenericOptions",
5694 Self::AtChangeOwner => "AT_ChangeOwner",
5695 Self::AtClusterOn => "AT_ClusterOn",
5696 Self::AtDropCluster => "AT_DropCluster",
5697 Self::AtSetLogged => "AT_SetLogged",
5698 Self::AtSetUnLogged => "AT_SetUnLogged",
5699 Self::AtDropOids => "AT_DropOids",
5700 Self::AtSetAccessMethod => "AT_SetAccessMethod",
5701 Self::AtSetTableSpace => "AT_SetTableSpace",
5702 Self::AtSetRelOptions => "AT_SetRelOptions",
5703 Self::AtResetRelOptions => "AT_ResetRelOptions",
5704 Self::AtReplaceRelOptions => "AT_ReplaceRelOptions",
5705 Self::AtEnableTrig => "AT_EnableTrig",
5706 Self::AtEnableAlwaysTrig => "AT_EnableAlwaysTrig",
5707 Self::AtEnableReplicaTrig => "AT_EnableReplicaTrig",
5708 Self::AtDisableTrig => "AT_DisableTrig",
5709 Self::AtEnableTrigAll => "AT_EnableTrigAll",
5710 Self::AtDisableTrigAll => "AT_DisableTrigAll",
5711 Self::AtEnableTrigUser => "AT_EnableTrigUser",
5712 Self::AtDisableTrigUser => "AT_DisableTrigUser",
5713 Self::AtEnableRule => "AT_EnableRule",
5714 Self::AtEnableAlwaysRule => "AT_EnableAlwaysRule",
5715 Self::AtEnableReplicaRule => "AT_EnableReplicaRule",
5716 Self::AtDisableRule => "AT_DisableRule",
5717 Self::AtAddInherit => "AT_AddInherit",
5718 Self::AtDropInherit => "AT_DropInherit",
5719 Self::AtAddOf => "AT_AddOf",
5720 Self::AtDropOf => "AT_DropOf",
5721 Self::AtReplicaIdentity => "AT_ReplicaIdentity",
5722 Self::AtEnableRowSecurity => "AT_EnableRowSecurity",
5723 Self::AtDisableRowSecurity => "AT_DisableRowSecurity",
5724 Self::AtForceRowSecurity => "AT_ForceRowSecurity",
5725 Self::AtNoForceRowSecurity => "AT_NoForceRowSecurity",
5726 Self::AtGenericOptions => "AT_GenericOptions",
5727 Self::AtAttachPartition => "AT_AttachPartition",
5728 Self::AtDetachPartition => "AT_DetachPartition",
5729 Self::AtDetachPartitionFinalize => "AT_DetachPartitionFinalize",
5730 Self::AtAddIdentity => "AT_AddIdentity",
5731 Self::AtSetIdentity => "AT_SetIdentity",
5732 Self::AtDropIdentity => "AT_DropIdentity",
5733 Self::AtReAddStatistics => "AT_ReAddStatistics",
5734 }
5735 }
5736 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5738 match value {
5739 "ALTER_TABLE_TYPE_UNDEFINED" => Some(Self::Undefined),
5740 "AT_AddColumn" => Some(Self::AtAddColumn),
5741 "AT_AddColumnToView" => Some(Self::AtAddColumnToView),
5742 "AT_ColumnDefault" => Some(Self::AtColumnDefault),
5743 "AT_CookedColumnDefault" => Some(Self::AtCookedColumnDefault),
5744 "AT_DropNotNull" => Some(Self::AtDropNotNull),
5745 "AT_SetNotNull" => Some(Self::AtSetNotNull),
5746 "AT_SetExpression" => Some(Self::AtSetExpression),
5747 "AT_DropExpression" => Some(Self::AtDropExpression),
5748 "AT_SetStatistics" => Some(Self::AtSetStatistics),
5749 "AT_SetOptions" => Some(Self::AtSetOptions),
5750 "AT_ResetOptions" => Some(Self::AtResetOptions),
5751 "AT_SetStorage" => Some(Self::AtSetStorage),
5752 "AT_SetCompression" => Some(Self::AtSetCompression),
5753 "AT_DropColumn" => Some(Self::AtDropColumn),
5754 "AT_AddIndex" => Some(Self::AtAddIndex),
5755 "AT_ReAddIndex" => Some(Self::AtReAddIndex),
5756 "AT_AddConstraint" => Some(Self::AtAddConstraint),
5757 "AT_ReAddConstraint" => Some(Self::AtReAddConstraint),
5758 "AT_ReAddDomainConstraint" => Some(Self::AtReAddDomainConstraint),
5759 "AT_AlterConstraint" => Some(Self::AtAlterConstraint),
5760 "AT_ValidateConstraint" => Some(Self::AtValidateConstraint),
5761 "AT_AddIndexConstraint" => Some(Self::AtAddIndexConstraint),
5762 "AT_DropConstraint" => Some(Self::AtDropConstraint),
5763 "AT_ReAddComment" => Some(Self::AtReAddComment),
5764 "AT_AlterColumnType" => Some(Self::AtAlterColumnType),
5765 "AT_AlterColumnGenericOptions" => Some(Self::AtAlterColumnGenericOptions),
5766 "AT_ChangeOwner" => Some(Self::AtChangeOwner),
5767 "AT_ClusterOn" => Some(Self::AtClusterOn),
5768 "AT_DropCluster" => Some(Self::AtDropCluster),
5769 "AT_SetLogged" => Some(Self::AtSetLogged),
5770 "AT_SetUnLogged" => Some(Self::AtSetUnLogged),
5771 "AT_DropOids" => Some(Self::AtDropOids),
5772 "AT_SetAccessMethod" => Some(Self::AtSetAccessMethod),
5773 "AT_SetTableSpace" => Some(Self::AtSetTableSpace),
5774 "AT_SetRelOptions" => Some(Self::AtSetRelOptions),
5775 "AT_ResetRelOptions" => Some(Self::AtResetRelOptions),
5776 "AT_ReplaceRelOptions" => Some(Self::AtReplaceRelOptions),
5777 "AT_EnableTrig" => Some(Self::AtEnableTrig),
5778 "AT_EnableAlwaysTrig" => Some(Self::AtEnableAlwaysTrig),
5779 "AT_EnableReplicaTrig" => Some(Self::AtEnableReplicaTrig),
5780 "AT_DisableTrig" => Some(Self::AtDisableTrig),
5781 "AT_EnableTrigAll" => Some(Self::AtEnableTrigAll),
5782 "AT_DisableTrigAll" => Some(Self::AtDisableTrigAll),
5783 "AT_EnableTrigUser" => Some(Self::AtEnableTrigUser),
5784 "AT_DisableTrigUser" => Some(Self::AtDisableTrigUser),
5785 "AT_EnableRule" => Some(Self::AtEnableRule),
5786 "AT_EnableAlwaysRule" => Some(Self::AtEnableAlwaysRule),
5787 "AT_EnableReplicaRule" => Some(Self::AtEnableReplicaRule),
5788 "AT_DisableRule" => Some(Self::AtDisableRule),
5789 "AT_AddInherit" => Some(Self::AtAddInherit),
5790 "AT_DropInherit" => Some(Self::AtDropInherit),
5791 "AT_AddOf" => Some(Self::AtAddOf),
5792 "AT_DropOf" => Some(Self::AtDropOf),
5793 "AT_ReplicaIdentity" => Some(Self::AtReplicaIdentity),
5794 "AT_EnableRowSecurity" => Some(Self::AtEnableRowSecurity),
5795 "AT_DisableRowSecurity" => Some(Self::AtDisableRowSecurity),
5796 "AT_ForceRowSecurity" => Some(Self::AtForceRowSecurity),
5797 "AT_NoForceRowSecurity" => Some(Self::AtNoForceRowSecurity),
5798 "AT_GenericOptions" => Some(Self::AtGenericOptions),
5799 "AT_AttachPartition" => Some(Self::AtAttachPartition),
5800 "AT_DetachPartition" => Some(Self::AtDetachPartition),
5801 "AT_DetachPartitionFinalize" => Some(Self::AtDetachPartitionFinalize),
5802 "AT_AddIdentity" => Some(Self::AtAddIdentity),
5803 "AT_SetIdentity" => Some(Self::AtSetIdentity),
5804 "AT_DropIdentity" => Some(Self::AtDropIdentity),
5805 "AT_ReAddStatistics" => Some(Self::AtReAddStatistics),
5806 _ => None,
5807 }
5808 }
5809}
5810#[derive(serde::Serialize)]
5811#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5812#[repr(i32)]
5813pub enum GrantTargetType {
5814 Undefined = 0,
5815 AclTargetObject = 1,
5816 AclTargetAllInSchema = 2,
5817 AclTargetDefaults = 3,
5818}
5819impl GrantTargetType {
5820 pub fn as_str_name(&self) -> &'static str {
5825 match self {
5826 Self::Undefined => "GRANT_TARGET_TYPE_UNDEFINED",
5827 Self::AclTargetObject => "ACL_TARGET_OBJECT",
5828 Self::AclTargetAllInSchema => "ACL_TARGET_ALL_IN_SCHEMA",
5829 Self::AclTargetDefaults => "ACL_TARGET_DEFAULTS",
5830 }
5831 }
5832 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5834 match value {
5835 "GRANT_TARGET_TYPE_UNDEFINED" => Some(Self::Undefined),
5836 "ACL_TARGET_OBJECT" => Some(Self::AclTargetObject),
5837 "ACL_TARGET_ALL_IN_SCHEMA" => Some(Self::AclTargetAllInSchema),
5838 "ACL_TARGET_DEFAULTS" => Some(Self::AclTargetDefaults),
5839 _ => None,
5840 }
5841 }
5842}
5843#[derive(serde::Serialize)]
5844#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5845#[repr(i32)]
5846pub enum VariableSetKind {
5847 Undefined = 0,
5848 VarSetValue = 1,
5849 VarSetDefault = 2,
5850 VarSetCurrent = 3,
5851 VarSetMulti = 4,
5852 VarReset = 5,
5853 VarResetAll = 6,
5854}
5855impl VariableSetKind {
5856 pub fn as_str_name(&self) -> &'static str {
5861 match self {
5862 Self::Undefined => "VARIABLE_SET_KIND_UNDEFINED",
5863 Self::VarSetValue => "VAR_SET_VALUE",
5864 Self::VarSetDefault => "VAR_SET_DEFAULT",
5865 Self::VarSetCurrent => "VAR_SET_CURRENT",
5866 Self::VarSetMulti => "VAR_SET_MULTI",
5867 Self::VarReset => "VAR_RESET",
5868 Self::VarResetAll => "VAR_RESET_ALL",
5869 }
5870 }
5871 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5873 match value {
5874 "VARIABLE_SET_KIND_UNDEFINED" => Some(Self::Undefined),
5875 "VAR_SET_VALUE" => Some(Self::VarSetValue),
5876 "VAR_SET_DEFAULT" => Some(Self::VarSetDefault),
5877 "VAR_SET_CURRENT" => Some(Self::VarSetCurrent),
5878 "VAR_SET_MULTI" => Some(Self::VarSetMulti),
5879 "VAR_RESET" => Some(Self::VarReset),
5880 "VAR_RESET_ALL" => Some(Self::VarResetAll),
5881 _ => None,
5882 }
5883 }
5884}
5885#[derive(serde::Serialize)]
5886#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5887#[repr(i32)]
5888pub enum ConstrType {
5889 Undefined = 0,
5890 ConstrNull = 1,
5891 ConstrNotnull = 2,
5892 ConstrDefault = 3,
5893 ConstrIdentity = 4,
5894 ConstrGenerated = 5,
5895 ConstrCheck = 6,
5896 ConstrPrimary = 7,
5897 ConstrUnique = 8,
5898 ConstrExclusion = 9,
5899 ConstrForeign = 10,
5900 ConstrAttrDeferrable = 11,
5901 ConstrAttrNotDeferrable = 12,
5902 ConstrAttrDeferred = 13,
5903 ConstrAttrImmediate = 14,
5904 ConstrAttrEnforced = 15,
5905 ConstrAttrNotEnforced = 16,
5906}
5907impl ConstrType {
5908 pub fn as_str_name(&self) -> &'static str {
5913 match self {
5914 Self::Undefined => "CONSTR_TYPE_UNDEFINED",
5915 Self::ConstrNull => "CONSTR_NULL",
5916 Self::ConstrNotnull => "CONSTR_NOTNULL",
5917 Self::ConstrDefault => "CONSTR_DEFAULT",
5918 Self::ConstrIdentity => "CONSTR_IDENTITY",
5919 Self::ConstrGenerated => "CONSTR_GENERATED",
5920 Self::ConstrCheck => "CONSTR_CHECK",
5921 Self::ConstrPrimary => "CONSTR_PRIMARY",
5922 Self::ConstrUnique => "CONSTR_UNIQUE",
5923 Self::ConstrExclusion => "CONSTR_EXCLUSION",
5924 Self::ConstrForeign => "CONSTR_FOREIGN",
5925 Self::ConstrAttrDeferrable => "CONSTR_ATTR_DEFERRABLE",
5926 Self::ConstrAttrNotDeferrable => "CONSTR_ATTR_NOT_DEFERRABLE",
5927 Self::ConstrAttrDeferred => "CONSTR_ATTR_DEFERRED",
5928 Self::ConstrAttrImmediate => "CONSTR_ATTR_IMMEDIATE",
5929 Self::ConstrAttrEnforced => "CONSTR_ATTR_ENFORCED",
5930 Self::ConstrAttrNotEnforced => "CONSTR_ATTR_NOT_ENFORCED",
5931 }
5932 }
5933 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5935 match value {
5936 "CONSTR_TYPE_UNDEFINED" => Some(Self::Undefined),
5937 "CONSTR_NULL" => Some(Self::ConstrNull),
5938 "CONSTR_NOTNULL" => Some(Self::ConstrNotnull),
5939 "CONSTR_DEFAULT" => Some(Self::ConstrDefault),
5940 "CONSTR_IDENTITY" => Some(Self::ConstrIdentity),
5941 "CONSTR_GENERATED" => Some(Self::ConstrGenerated),
5942 "CONSTR_CHECK" => Some(Self::ConstrCheck),
5943 "CONSTR_PRIMARY" => Some(Self::ConstrPrimary),
5944 "CONSTR_UNIQUE" => Some(Self::ConstrUnique),
5945 "CONSTR_EXCLUSION" => Some(Self::ConstrExclusion),
5946 "CONSTR_FOREIGN" => Some(Self::ConstrForeign),
5947 "CONSTR_ATTR_DEFERRABLE" => Some(Self::ConstrAttrDeferrable),
5948 "CONSTR_ATTR_NOT_DEFERRABLE" => Some(Self::ConstrAttrNotDeferrable),
5949 "CONSTR_ATTR_DEFERRED" => Some(Self::ConstrAttrDeferred),
5950 "CONSTR_ATTR_IMMEDIATE" => Some(Self::ConstrAttrImmediate),
5951 "CONSTR_ATTR_ENFORCED" => Some(Self::ConstrAttrEnforced),
5952 "CONSTR_ATTR_NOT_ENFORCED" => Some(Self::ConstrAttrNotEnforced),
5953 _ => None,
5954 }
5955 }
5956}
5957#[derive(serde::Serialize)]
5958#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5959#[repr(i32)]
5960pub enum ImportForeignSchemaType {
5961 Undefined = 0,
5962 FdwImportSchemaAll = 1,
5963 FdwImportSchemaLimitTo = 2,
5964 FdwImportSchemaExcept = 3,
5965}
5966impl ImportForeignSchemaType {
5967 pub fn as_str_name(&self) -> &'static str {
5972 match self {
5973 Self::Undefined => "IMPORT_FOREIGN_SCHEMA_TYPE_UNDEFINED",
5974 Self::FdwImportSchemaAll => "FDW_IMPORT_SCHEMA_ALL",
5975 Self::FdwImportSchemaLimitTo => "FDW_IMPORT_SCHEMA_LIMIT_TO",
5976 Self::FdwImportSchemaExcept => "FDW_IMPORT_SCHEMA_EXCEPT",
5977 }
5978 }
5979 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5981 match value {
5982 "IMPORT_FOREIGN_SCHEMA_TYPE_UNDEFINED" => Some(Self::Undefined),
5983 "FDW_IMPORT_SCHEMA_ALL" => Some(Self::FdwImportSchemaAll),
5984 "FDW_IMPORT_SCHEMA_LIMIT_TO" => Some(Self::FdwImportSchemaLimitTo),
5985 "FDW_IMPORT_SCHEMA_EXCEPT" => Some(Self::FdwImportSchemaExcept),
5986 _ => None,
5987 }
5988 }
5989}
5990#[derive(serde::Serialize)]
5991#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5992#[repr(i32)]
5993pub enum RoleStmtType {
5994 Undefined = 0,
5995 RolestmtRole = 1,
5996 RolestmtUser = 2,
5997 RolestmtGroup = 3,
5998}
5999impl RoleStmtType {
6000 pub fn as_str_name(&self) -> &'static str {
6005 match self {
6006 Self::Undefined => "ROLE_STMT_TYPE_UNDEFINED",
6007 Self::RolestmtRole => "ROLESTMT_ROLE",
6008 Self::RolestmtUser => "ROLESTMT_USER",
6009 Self::RolestmtGroup => "ROLESTMT_GROUP",
6010 }
6011 }
6012 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6014 match value {
6015 "ROLE_STMT_TYPE_UNDEFINED" => Some(Self::Undefined),
6016 "ROLESTMT_ROLE" => Some(Self::RolestmtRole),
6017 "ROLESTMT_USER" => Some(Self::RolestmtUser),
6018 "ROLESTMT_GROUP" => Some(Self::RolestmtGroup),
6019 _ => None,
6020 }
6021 }
6022}
6023#[derive(serde::Serialize)]
6024#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6025#[repr(i32)]
6026pub enum FetchDirection {
6027 Undefined = 0,
6028 FetchForward = 1,
6029 FetchBackward = 2,
6030 FetchAbsolute = 3,
6031 FetchRelative = 4,
6032}
6033impl FetchDirection {
6034 pub fn as_str_name(&self) -> &'static str {
6039 match self {
6040 Self::Undefined => "FETCH_DIRECTION_UNDEFINED",
6041 Self::FetchForward => "FETCH_FORWARD",
6042 Self::FetchBackward => "FETCH_BACKWARD",
6043 Self::FetchAbsolute => "FETCH_ABSOLUTE",
6044 Self::FetchRelative => "FETCH_RELATIVE",
6045 }
6046 }
6047 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6049 match value {
6050 "FETCH_DIRECTION_UNDEFINED" => Some(Self::Undefined),
6051 "FETCH_FORWARD" => Some(Self::FetchForward),
6052 "FETCH_BACKWARD" => Some(Self::FetchBackward),
6053 "FETCH_ABSOLUTE" => Some(Self::FetchAbsolute),
6054 "FETCH_RELATIVE" => Some(Self::FetchRelative),
6055 _ => None,
6056 }
6057 }
6058}
6059#[derive(serde::Serialize)]
6060#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6061#[repr(i32)]
6062pub enum FunctionParameterMode {
6063 Undefined = 0,
6064 FuncParamIn = 1,
6065 FuncParamOut = 2,
6066 FuncParamInout = 3,
6067 FuncParamVariadic = 4,
6068 FuncParamTable = 5,
6069 FuncParamDefault = 6,
6070}
6071impl FunctionParameterMode {
6072 pub fn as_str_name(&self) -> &'static str {
6077 match self {
6078 Self::Undefined => "FUNCTION_PARAMETER_MODE_UNDEFINED",
6079 Self::FuncParamIn => "FUNC_PARAM_IN",
6080 Self::FuncParamOut => "FUNC_PARAM_OUT",
6081 Self::FuncParamInout => "FUNC_PARAM_INOUT",
6082 Self::FuncParamVariadic => "FUNC_PARAM_VARIADIC",
6083 Self::FuncParamTable => "FUNC_PARAM_TABLE",
6084 Self::FuncParamDefault => "FUNC_PARAM_DEFAULT",
6085 }
6086 }
6087 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6089 match value {
6090 "FUNCTION_PARAMETER_MODE_UNDEFINED" => Some(Self::Undefined),
6091 "FUNC_PARAM_IN" => Some(Self::FuncParamIn),
6092 "FUNC_PARAM_OUT" => Some(Self::FuncParamOut),
6093 "FUNC_PARAM_INOUT" => Some(Self::FuncParamInout),
6094 "FUNC_PARAM_VARIADIC" => Some(Self::FuncParamVariadic),
6095 "FUNC_PARAM_TABLE" => Some(Self::FuncParamTable),
6096 "FUNC_PARAM_DEFAULT" => Some(Self::FuncParamDefault),
6097 _ => None,
6098 }
6099 }
6100}
6101#[derive(serde::Serialize)]
6102#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6103#[repr(i32)]
6104pub enum TransactionStmtKind {
6105 Undefined = 0,
6106 TransStmtBegin = 1,
6107 TransStmtStart = 2,
6108 TransStmtCommit = 3,
6109 TransStmtRollback = 4,
6110 TransStmtSavepoint = 5,
6111 TransStmtRelease = 6,
6112 TransStmtRollbackTo = 7,
6113 TransStmtPrepare = 8,
6114 TransStmtCommitPrepared = 9,
6115 TransStmtRollbackPrepared = 10,
6116}
6117impl TransactionStmtKind {
6118 pub fn as_str_name(&self) -> &'static str {
6123 match self {
6124 Self::Undefined => "TRANSACTION_STMT_KIND_UNDEFINED",
6125 Self::TransStmtBegin => "TRANS_STMT_BEGIN",
6126 Self::TransStmtStart => "TRANS_STMT_START",
6127 Self::TransStmtCommit => "TRANS_STMT_COMMIT",
6128 Self::TransStmtRollback => "TRANS_STMT_ROLLBACK",
6129 Self::TransStmtSavepoint => "TRANS_STMT_SAVEPOINT",
6130 Self::TransStmtRelease => "TRANS_STMT_RELEASE",
6131 Self::TransStmtRollbackTo => "TRANS_STMT_ROLLBACK_TO",
6132 Self::TransStmtPrepare => "TRANS_STMT_PREPARE",
6133 Self::TransStmtCommitPrepared => "TRANS_STMT_COMMIT_PREPARED",
6134 Self::TransStmtRollbackPrepared => "TRANS_STMT_ROLLBACK_PREPARED",
6135 }
6136 }
6137 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6139 match value {
6140 "TRANSACTION_STMT_KIND_UNDEFINED" => Some(Self::Undefined),
6141 "TRANS_STMT_BEGIN" => Some(Self::TransStmtBegin),
6142 "TRANS_STMT_START" => Some(Self::TransStmtStart),
6143 "TRANS_STMT_COMMIT" => Some(Self::TransStmtCommit),
6144 "TRANS_STMT_ROLLBACK" => Some(Self::TransStmtRollback),
6145 "TRANS_STMT_SAVEPOINT" => Some(Self::TransStmtSavepoint),
6146 "TRANS_STMT_RELEASE" => Some(Self::TransStmtRelease),
6147 "TRANS_STMT_ROLLBACK_TO" => Some(Self::TransStmtRollbackTo),
6148 "TRANS_STMT_PREPARE" => Some(Self::TransStmtPrepare),
6149 "TRANS_STMT_COMMIT_PREPARED" => Some(Self::TransStmtCommitPrepared),
6150 "TRANS_STMT_ROLLBACK_PREPARED" => Some(Self::TransStmtRollbackPrepared),
6151 _ => None,
6152 }
6153 }
6154}
6155#[derive(serde::Serialize)]
6156#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6157#[repr(i32)]
6158pub enum ViewCheckOption {
6159 Undefined = 0,
6160 NoCheckOption = 1,
6161 LocalCheckOption = 2,
6162 CascadedCheckOption = 3,
6163}
6164impl ViewCheckOption {
6165 pub fn as_str_name(&self) -> &'static str {
6170 match self {
6171 Self::Undefined => "VIEW_CHECK_OPTION_UNDEFINED",
6172 Self::NoCheckOption => "NO_CHECK_OPTION",
6173 Self::LocalCheckOption => "LOCAL_CHECK_OPTION",
6174 Self::CascadedCheckOption => "CASCADED_CHECK_OPTION",
6175 }
6176 }
6177 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6179 match value {
6180 "VIEW_CHECK_OPTION_UNDEFINED" => Some(Self::Undefined),
6181 "NO_CHECK_OPTION" => Some(Self::NoCheckOption),
6182 "LOCAL_CHECK_OPTION" => Some(Self::LocalCheckOption),
6183 "CASCADED_CHECK_OPTION" => Some(Self::CascadedCheckOption),
6184 _ => None,
6185 }
6186 }
6187}
6188#[derive(serde::Serialize)]
6189#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6190#[repr(i32)]
6191pub enum DiscardMode {
6192 Undefined = 0,
6193 DiscardAll = 1,
6194 DiscardPlans = 2,
6195 DiscardSequences = 3,
6196 DiscardTemp = 4,
6197}
6198impl DiscardMode {
6199 pub fn as_str_name(&self) -> &'static str {
6204 match self {
6205 Self::Undefined => "DISCARD_MODE_UNDEFINED",
6206 Self::DiscardAll => "DISCARD_ALL",
6207 Self::DiscardPlans => "DISCARD_PLANS",
6208 Self::DiscardSequences => "DISCARD_SEQUENCES",
6209 Self::DiscardTemp => "DISCARD_TEMP",
6210 }
6211 }
6212 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6214 match value {
6215 "DISCARD_MODE_UNDEFINED" => Some(Self::Undefined),
6216 "DISCARD_ALL" => Some(Self::DiscardAll),
6217 "DISCARD_PLANS" => Some(Self::DiscardPlans),
6218 "DISCARD_SEQUENCES" => Some(Self::DiscardSequences),
6219 "DISCARD_TEMP" => Some(Self::DiscardTemp),
6220 _ => None,
6221 }
6222 }
6223}
6224#[derive(serde::Serialize)]
6225#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6226#[repr(i32)]
6227pub enum ReindexObjectType {
6228 Undefined = 0,
6229 ReindexObjectIndex = 1,
6230 ReindexObjectTable = 2,
6231 ReindexObjectSchema = 3,
6232 ReindexObjectSystem = 4,
6233 ReindexObjectDatabase = 5,
6234}
6235impl ReindexObjectType {
6236 pub fn as_str_name(&self) -> &'static str {
6241 match self {
6242 Self::Undefined => "REINDEX_OBJECT_TYPE_UNDEFINED",
6243 Self::ReindexObjectIndex => "REINDEX_OBJECT_INDEX",
6244 Self::ReindexObjectTable => "REINDEX_OBJECT_TABLE",
6245 Self::ReindexObjectSchema => "REINDEX_OBJECT_SCHEMA",
6246 Self::ReindexObjectSystem => "REINDEX_OBJECT_SYSTEM",
6247 Self::ReindexObjectDatabase => "REINDEX_OBJECT_DATABASE",
6248 }
6249 }
6250 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6252 match value {
6253 "REINDEX_OBJECT_TYPE_UNDEFINED" => Some(Self::Undefined),
6254 "REINDEX_OBJECT_INDEX" => Some(Self::ReindexObjectIndex),
6255 "REINDEX_OBJECT_TABLE" => Some(Self::ReindexObjectTable),
6256 "REINDEX_OBJECT_SCHEMA" => Some(Self::ReindexObjectSchema),
6257 "REINDEX_OBJECT_SYSTEM" => Some(Self::ReindexObjectSystem),
6258 "REINDEX_OBJECT_DATABASE" => Some(Self::ReindexObjectDatabase),
6259 _ => None,
6260 }
6261 }
6262}
6263#[derive(serde::Serialize)]
6264#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6265#[repr(i32)]
6266pub enum AlterTsConfigType {
6267 AlterTsconfigTypeUndefined = 0,
6268 AlterTsconfigAddMapping = 1,
6269 AlterTsconfigAlterMappingForToken = 2,
6270 AlterTsconfigReplaceDict = 3,
6271 AlterTsconfigReplaceDictForToken = 4,
6272 AlterTsconfigDropMapping = 5,
6273}
6274impl AlterTsConfigType {
6275 pub fn as_str_name(&self) -> &'static str {
6280 match self {
6281 Self::AlterTsconfigTypeUndefined => "ALTER_TSCONFIG_TYPE_UNDEFINED",
6282 Self::AlterTsconfigAddMapping => "ALTER_TSCONFIG_ADD_MAPPING",
6283 Self::AlterTsconfigAlterMappingForToken => {
6284 "ALTER_TSCONFIG_ALTER_MAPPING_FOR_TOKEN"
6285 }
6286 Self::AlterTsconfigReplaceDict => "ALTER_TSCONFIG_REPLACE_DICT",
6287 Self::AlterTsconfigReplaceDictForToken => {
6288 "ALTER_TSCONFIG_REPLACE_DICT_FOR_TOKEN"
6289 }
6290 Self::AlterTsconfigDropMapping => "ALTER_TSCONFIG_DROP_MAPPING",
6291 }
6292 }
6293 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6295 match value {
6296 "ALTER_TSCONFIG_TYPE_UNDEFINED" => Some(Self::AlterTsconfigTypeUndefined),
6297 "ALTER_TSCONFIG_ADD_MAPPING" => Some(Self::AlterTsconfigAddMapping),
6298 "ALTER_TSCONFIG_ALTER_MAPPING_FOR_TOKEN" => {
6299 Some(Self::AlterTsconfigAlterMappingForToken)
6300 }
6301 "ALTER_TSCONFIG_REPLACE_DICT" => Some(Self::AlterTsconfigReplaceDict),
6302 "ALTER_TSCONFIG_REPLACE_DICT_FOR_TOKEN" => {
6303 Some(Self::AlterTsconfigReplaceDictForToken)
6304 }
6305 "ALTER_TSCONFIG_DROP_MAPPING" => Some(Self::AlterTsconfigDropMapping),
6306 _ => None,
6307 }
6308 }
6309}
6310#[derive(serde::Serialize)]
6311#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6312#[repr(i32)]
6313pub enum PublicationObjSpecType {
6314 Undefined = 0,
6315 PublicationobjTable = 1,
6316 PublicationobjTablesInSchema = 2,
6317 PublicationobjTablesInCurSchema = 3,
6318 PublicationobjContinuation = 4,
6319}
6320impl PublicationObjSpecType {
6321 pub fn as_str_name(&self) -> &'static str {
6326 match self {
6327 Self::Undefined => "PUBLICATION_OBJ_SPEC_TYPE_UNDEFINED",
6328 Self::PublicationobjTable => "PUBLICATIONOBJ_TABLE",
6329 Self::PublicationobjTablesInSchema => "PUBLICATIONOBJ_TABLES_IN_SCHEMA",
6330 Self::PublicationobjTablesInCurSchema => {
6331 "PUBLICATIONOBJ_TABLES_IN_CUR_SCHEMA"
6332 }
6333 Self::PublicationobjContinuation => "PUBLICATIONOBJ_CONTINUATION",
6334 }
6335 }
6336 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6338 match value {
6339 "PUBLICATION_OBJ_SPEC_TYPE_UNDEFINED" => Some(Self::Undefined),
6340 "PUBLICATIONOBJ_TABLE" => Some(Self::PublicationobjTable),
6341 "PUBLICATIONOBJ_TABLES_IN_SCHEMA" => Some(Self::PublicationobjTablesInSchema),
6342 "PUBLICATIONOBJ_TABLES_IN_CUR_SCHEMA" => {
6343 Some(Self::PublicationobjTablesInCurSchema)
6344 }
6345 "PUBLICATIONOBJ_CONTINUATION" => Some(Self::PublicationobjContinuation),
6346 _ => None,
6347 }
6348 }
6349}
6350#[derive(serde::Serialize)]
6351#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6352#[repr(i32)]
6353pub enum AlterPublicationAction {
6354 Undefined = 0,
6355 ApAddObjects = 1,
6356 ApDropObjects = 2,
6357 ApSetObjects = 3,
6358}
6359impl AlterPublicationAction {
6360 pub fn as_str_name(&self) -> &'static str {
6365 match self {
6366 Self::Undefined => "ALTER_PUBLICATION_ACTION_UNDEFINED",
6367 Self::ApAddObjects => "AP_AddObjects",
6368 Self::ApDropObjects => "AP_DropObjects",
6369 Self::ApSetObjects => "AP_SetObjects",
6370 }
6371 }
6372 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6374 match value {
6375 "ALTER_PUBLICATION_ACTION_UNDEFINED" => Some(Self::Undefined),
6376 "AP_AddObjects" => Some(Self::ApAddObjects),
6377 "AP_DropObjects" => Some(Self::ApDropObjects),
6378 "AP_SetObjects" => Some(Self::ApSetObjects),
6379 _ => None,
6380 }
6381 }
6382}
6383#[derive(serde::Serialize)]
6384#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6385#[repr(i32)]
6386pub enum AlterSubscriptionType {
6387 Undefined = 0,
6388 AlterSubscriptionOptions = 1,
6389 AlterSubscriptionConnection = 2,
6390 AlterSubscriptionSetPublication = 3,
6391 AlterSubscriptionAddPublication = 4,
6392 AlterSubscriptionDropPublication = 5,
6393 AlterSubscriptionRefresh = 6,
6394 AlterSubscriptionEnabled = 7,
6395 AlterSubscriptionSkip = 8,
6396}
6397impl AlterSubscriptionType {
6398 pub fn as_str_name(&self) -> &'static str {
6403 match self {
6404 Self::Undefined => "ALTER_SUBSCRIPTION_TYPE_UNDEFINED",
6405 Self::AlterSubscriptionOptions => "ALTER_SUBSCRIPTION_OPTIONS",
6406 Self::AlterSubscriptionConnection => "ALTER_SUBSCRIPTION_CONNECTION",
6407 Self::AlterSubscriptionSetPublication => "ALTER_SUBSCRIPTION_SET_PUBLICATION",
6408 Self::AlterSubscriptionAddPublication => "ALTER_SUBSCRIPTION_ADD_PUBLICATION",
6409 Self::AlterSubscriptionDropPublication => {
6410 "ALTER_SUBSCRIPTION_DROP_PUBLICATION"
6411 }
6412 Self::AlterSubscriptionRefresh => "ALTER_SUBSCRIPTION_REFRESH",
6413 Self::AlterSubscriptionEnabled => "ALTER_SUBSCRIPTION_ENABLED",
6414 Self::AlterSubscriptionSkip => "ALTER_SUBSCRIPTION_SKIP",
6415 }
6416 }
6417 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6419 match value {
6420 "ALTER_SUBSCRIPTION_TYPE_UNDEFINED" => Some(Self::Undefined),
6421 "ALTER_SUBSCRIPTION_OPTIONS" => Some(Self::AlterSubscriptionOptions),
6422 "ALTER_SUBSCRIPTION_CONNECTION" => Some(Self::AlterSubscriptionConnection),
6423 "ALTER_SUBSCRIPTION_SET_PUBLICATION" => {
6424 Some(Self::AlterSubscriptionSetPublication)
6425 }
6426 "ALTER_SUBSCRIPTION_ADD_PUBLICATION" => {
6427 Some(Self::AlterSubscriptionAddPublication)
6428 }
6429 "ALTER_SUBSCRIPTION_DROP_PUBLICATION" => {
6430 Some(Self::AlterSubscriptionDropPublication)
6431 }
6432 "ALTER_SUBSCRIPTION_REFRESH" => Some(Self::AlterSubscriptionRefresh),
6433 "ALTER_SUBSCRIPTION_ENABLED" => Some(Self::AlterSubscriptionEnabled),
6434 "ALTER_SUBSCRIPTION_SKIP" => Some(Self::AlterSubscriptionSkip),
6435 _ => None,
6436 }
6437 }
6438}
6439#[derive(serde::Serialize)]
6440#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6441#[repr(i32)]
6442pub enum OverridingKind {
6443 Undefined = 0,
6444 OverridingNotSet = 1,
6445 OverridingUserValue = 2,
6446 OverridingSystemValue = 3,
6447}
6448impl OverridingKind {
6449 pub fn as_str_name(&self) -> &'static str {
6454 match self {
6455 Self::Undefined => "OVERRIDING_KIND_UNDEFINED",
6456 Self::OverridingNotSet => "OVERRIDING_NOT_SET",
6457 Self::OverridingUserValue => "OVERRIDING_USER_VALUE",
6458 Self::OverridingSystemValue => "OVERRIDING_SYSTEM_VALUE",
6459 }
6460 }
6461 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6463 match value {
6464 "OVERRIDING_KIND_UNDEFINED" => Some(Self::Undefined),
6465 "OVERRIDING_NOT_SET" => Some(Self::OverridingNotSet),
6466 "OVERRIDING_USER_VALUE" => Some(Self::OverridingUserValue),
6467 "OVERRIDING_SYSTEM_VALUE" => Some(Self::OverridingSystemValue),
6468 _ => None,
6469 }
6470 }
6471}
6472#[derive(serde::Serialize)]
6473#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6474#[repr(i32)]
6475pub enum OnCommitAction {
6476 Undefined = 0,
6477 OncommitNoop = 1,
6478 OncommitPreserveRows = 2,
6479 OncommitDeleteRows = 3,
6480 OncommitDrop = 4,
6481}
6482impl OnCommitAction {
6483 pub fn as_str_name(&self) -> &'static str {
6488 match self {
6489 Self::Undefined => "ON_COMMIT_ACTION_UNDEFINED",
6490 Self::OncommitNoop => "ONCOMMIT_NOOP",
6491 Self::OncommitPreserveRows => "ONCOMMIT_PRESERVE_ROWS",
6492 Self::OncommitDeleteRows => "ONCOMMIT_DELETE_ROWS",
6493 Self::OncommitDrop => "ONCOMMIT_DROP",
6494 }
6495 }
6496 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6498 match value {
6499 "ON_COMMIT_ACTION_UNDEFINED" => Some(Self::Undefined),
6500 "ONCOMMIT_NOOP" => Some(Self::OncommitNoop),
6501 "ONCOMMIT_PRESERVE_ROWS" => Some(Self::OncommitPreserveRows),
6502 "ONCOMMIT_DELETE_ROWS" => Some(Self::OncommitDeleteRows),
6503 "ONCOMMIT_DROP" => Some(Self::OncommitDrop),
6504 _ => None,
6505 }
6506 }
6507}
6508#[derive(serde::Serialize)]
6509#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6510#[repr(i32)]
6511pub enum TableFuncType {
6512 Undefined = 0,
6513 TftXmltable = 1,
6514 TftJsonTable = 2,
6515}
6516impl TableFuncType {
6517 pub fn as_str_name(&self) -> &'static str {
6522 match self {
6523 Self::Undefined => "TABLE_FUNC_TYPE_UNDEFINED",
6524 Self::TftXmltable => "TFT_XMLTABLE",
6525 Self::TftJsonTable => "TFT_JSON_TABLE",
6526 }
6527 }
6528 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6530 match value {
6531 "TABLE_FUNC_TYPE_UNDEFINED" => Some(Self::Undefined),
6532 "TFT_XMLTABLE" => Some(Self::TftXmltable),
6533 "TFT_JSON_TABLE" => Some(Self::TftJsonTable),
6534 _ => None,
6535 }
6536 }
6537}
6538#[derive(serde::Serialize)]
6539#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6540#[repr(i32)]
6541pub enum VarReturningType {
6542 Undefined = 0,
6543 VarReturningDefault = 1,
6544 VarReturningOld = 2,
6545 VarReturningNew = 3,
6546}
6547impl VarReturningType {
6548 pub fn as_str_name(&self) -> &'static str {
6553 match self {
6554 Self::Undefined => "VAR_RETURNING_TYPE_UNDEFINED",
6555 Self::VarReturningDefault => "VAR_RETURNING_DEFAULT",
6556 Self::VarReturningOld => "VAR_RETURNING_OLD",
6557 Self::VarReturningNew => "VAR_RETURNING_NEW",
6558 }
6559 }
6560 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6562 match value {
6563 "VAR_RETURNING_TYPE_UNDEFINED" => Some(Self::Undefined),
6564 "VAR_RETURNING_DEFAULT" => Some(Self::VarReturningDefault),
6565 "VAR_RETURNING_OLD" => Some(Self::VarReturningOld),
6566 "VAR_RETURNING_NEW" => Some(Self::VarReturningNew),
6567 _ => None,
6568 }
6569 }
6570}
6571#[derive(serde::Serialize)]
6572#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6573#[repr(i32)]
6574pub enum ParamKind {
6575 Undefined = 0,
6576 ParamExtern = 1,
6577 ParamExec = 2,
6578 ParamSublink = 3,
6579 ParamMultiexpr = 4,
6580}
6581impl ParamKind {
6582 pub fn as_str_name(&self) -> &'static str {
6587 match self {
6588 Self::Undefined => "PARAM_KIND_UNDEFINED",
6589 Self::ParamExtern => "PARAM_EXTERN",
6590 Self::ParamExec => "PARAM_EXEC",
6591 Self::ParamSublink => "PARAM_SUBLINK",
6592 Self::ParamMultiexpr => "PARAM_MULTIEXPR",
6593 }
6594 }
6595 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6597 match value {
6598 "PARAM_KIND_UNDEFINED" => Some(Self::Undefined),
6599 "PARAM_EXTERN" => Some(Self::ParamExtern),
6600 "PARAM_EXEC" => Some(Self::ParamExec),
6601 "PARAM_SUBLINK" => Some(Self::ParamSublink),
6602 "PARAM_MULTIEXPR" => Some(Self::ParamMultiexpr),
6603 _ => None,
6604 }
6605 }
6606}
6607#[derive(serde::Serialize)]
6608#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6609#[repr(i32)]
6610pub enum CoercionContext {
6611 Undefined = 0,
6612 CoercionImplicit = 1,
6613 CoercionAssignment = 2,
6614 CoercionPlpgsql = 3,
6615 CoercionExplicit = 4,
6616}
6617impl CoercionContext {
6618 pub fn as_str_name(&self) -> &'static str {
6623 match self {
6624 Self::Undefined => "COERCION_CONTEXT_UNDEFINED",
6625 Self::CoercionImplicit => "COERCION_IMPLICIT",
6626 Self::CoercionAssignment => "COERCION_ASSIGNMENT",
6627 Self::CoercionPlpgsql => "COERCION_PLPGSQL",
6628 Self::CoercionExplicit => "COERCION_EXPLICIT",
6629 }
6630 }
6631 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6633 match value {
6634 "COERCION_CONTEXT_UNDEFINED" => Some(Self::Undefined),
6635 "COERCION_IMPLICIT" => Some(Self::CoercionImplicit),
6636 "COERCION_ASSIGNMENT" => Some(Self::CoercionAssignment),
6637 "COERCION_PLPGSQL" => Some(Self::CoercionPlpgsql),
6638 "COERCION_EXPLICIT" => Some(Self::CoercionExplicit),
6639 _ => None,
6640 }
6641 }
6642}
6643#[derive(serde::Serialize)]
6644#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6645#[repr(i32)]
6646pub enum CoercionForm {
6647 Undefined = 0,
6648 CoerceExplicitCall = 1,
6649 CoerceExplicitCast = 2,
6650 CoerceImplicitCast = 3,
6651 CoerceSqlSyntax = 4,
6652}
6653impl CoercionForm {
6654 pub fn as_str_name(&self) -> &'static str {
6659 match self {
6660 Self::Undefined => "COERCION_FORM_UNDEFINED",
6661 Self::CoerceExplicitCall => "COERCE_EXPLICIT_CALL",
6662 Self::CoerceExplicitCast => "COERCE_EXPLICIT_CAST",
6663 Self::CoerceImplicitCast => "COERCE_IMPLICIT_CAST",
6664 Self::CoerceSqlSyntax => "COERCE_SQL_SYNTAX",
6665 }
6666 }
6667 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6669 match value {
6670 "COERCION_FORM_UNDEFINED" => Some(Self::Undefined),
6671 "COERCE_EXPLICIT_CALL" => Some(Self::CoerceExplicitCall),
6672 "COERCE_EXPLICIT_CAST" => Some(Self::CoerceExplicitCast),
6673 "COERCE_IMPLICIT_CAST" => Some(Self::CoerceImplicitCast),
6674 "COERCE_SQL_SYNTAX" => Some(Self::CoerceSqlSyntax),
6675 _ => None,
6676 }
6677 }
6678}
6679#[derive(serde::Serialize)]
6680#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6681#[repr(i32)]
6682pub enum BoolExprType {
6683 Undefined = 0,
6684 AndExpr = 1,
6685 OrExpr = 2,
6686 NotExpr = 3,
6687}
6688impl BoolExprType {
6689 pub fn as_str_name(&self) -> &'static str {
6694 match self {
6695 Self::Undefined => "BOOL_EXPR_TYPE_UNDEFINED",
6696 Self::AndExpr => "AND_EXPR",
6697 Self::OrExpr => "OR_EXPR",
6698 Self::NotExpr => "NOT_EXPR",
6699 }
6700 }
6701 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6703 match value {
6704 "BOOL_EXPR_TYPE_UNDEFINED" => Some(Self::Undefined),
6705 "AND_EXPR" => Some(Self::AndExpr),
6706 "OR_EXPR" => Some(Self::OrExpr),
6707 "NOT_EXPR" => Some(Self::NotExpr),
6708 _ => None,
6709 }
6710 }
6711}
6712#[derive(serde::Serialize)]
6713#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6714#[repr(i32)]
6715pub enum SubLinkType {
6716 Undefined = 0,
6717 ExistsSublink = 1,
6718 AllSublink = 2,
6719 AnySublink = 3,
6720 RowcompareSublink = 4,
6721 ExprSublink = 5,
6722 MultiexprSublink = 6,
6723 ArraySublink = 7,
6724 CteSublink = 8,
6725}
6726impl SubLinkType {
6727 pub fn as_str_name(&self) -> &'static str {
6732 match self {
6733 Self::Undefined => "SUB_LINK_TYPE_UNDEFINED",
6734 Self::ExistsSublink => "EXISTS_SUBLINK",
6735 Self::AllSublink => "ALL_SUBLINK",
6736 Self::AnySublink => "ANY_SUBLINK",
6737 Self::RowcompareSublink => "ROWCOMPARE_SUBLINK",
6738 Self::ExprSublink => "EXPR_SUBLINK",
6739 Self::MultiexprSublink => "MULTIEXPR_SUBLINK",
6740 Self::ArraySublink => "ARRAY_SUBLINK",
6741 Self::CteSublink => "CTE_SUBLINK",
6742 }
6743 }
6744 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6746 match value {
6747 "SUB_LINK_TYPE_UNDEFINED" => Some(Self::Undefined),
6748 "EXISTS_SUBLINK" => Some(Self::ExistsSublink),
6749 "ALL_SUBLINK" => Some(Self::AllSublink),
6750 "ANY_SUBLINK" => Some(Self::AnySublink),
6751 "ROWCOMPARE_SUBLINK" => Some(Self::RowcompareSublink),
6752 "EXPR_SUBLINK" => Some(Self::ExprSublink),
6753 "MULTIEXPR_SUBLINK" => Some(Self::MultiexprSublink),
6754 "ARRAY_SUBLINK" => Some(Self::ArraySublink),
6755 "CTE_SUBLINK" => Some(Self::CteSublink),
6756 _ => None,
6757 }
6758 }
6759}
6760#[derive(serde::Serialize)]
6761#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6762#[repr(i32)]
6763pub enum MinMaxOp {
6764 Undefined = 0,
6765 IsGreatest = 1,
6766 IsLeast = 2,
6767}
6768impl MinMaxOp {
6769 pub fn as_str_name(&self) -> &'static str {
6774 match self {
6775 Self::Undefined => "MIN_MAX_OP_UNDEFINED",
6776 Self::IsGreatest => "IS_GREATEST",
6777 Self::IsLeast => "IS_LEAST",
6778 }
6779 }
6780 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6782 match value {
6783 "MIN_MAX_OP_UNDEFINED" => Some(Self::Undefined),
6784 "IS_GREATEST" => Some(Self::IsGreatest),
6785 "IS_LEAST" => Some(Self::IsLeast),
6786 _ => None,
6787 }
6788 }
6789}
6790#[derive(serde::Serialize)]
6791#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6792#[repr(i32)]
6793pub enum SqlValueFunctionOp {
6794 SqlvalueFunctionOpUndefined = 0,
6795 SvfopCurrentDate = 1,
6796 SvfopCurrentTime = 2,
6797 SvfopCurrentTimeN = 3,
6798 SvfopCurrentTimestamp = 4,
6799 SvfopCurrentTimestampN = 5,
6800 SvfopLocaltime = 6,
6801 SvfopLocaltimeN = 7,
6802 SvfopLocaltimestamp = 8,
6803 SvfopLocaltimestampN = 9,
6804 SvfopCurrentRole = 10,
6805 SvfopCurrentUser = 11,
6806 SvfopUser = 12,
6807 SvfopSessionUser = 13,
6808 SvfopCurrentCatalog = 14,
6809 SvfopCurrentSchema = 15,
6810}
6811impl SqlValueFunctionOp {
6812 pub fn as_str_name(&self) -> &'static str {
6817 match self {
6818 Self::SqlvalueFunctionOpUndefined => "SQLVALUE_FUNCTION_OP_UNDEFINED",
6819 Self::SvfopCurrentDate => "SVFOP_CURRENT_DATE",
6820 Self::SvfopCurrentTime => "SVFOP_CURRENT_TIME",
6821 Self::SvfopCurrentTimeN => "SVFOP_CURRENT_TIME_N",
6822 Self::SvfopCurrentTimestamp => "SVFOP_CURRENT_TIMESTAMP",
6823 Self::SvfopCurrentTimestampN => "SVFOP_CURRENT_TIMESTAMP_N",
6824 Self::SvfopLocaltime => "SVFOP_LOCALTIME",
6825 Self::SvfopLocaltimeN => "SVFOP_LOCALTIME_N",
6826 Self::SvfopLocaltimestamp => "SVFOP_LOCALTIMESTAMP",
6827 Self::SvfopLocaltimestampN => "SVFOP_LOCALTIMESTAMP_N",
6828 Self::SvfopCurrentRole => "SVFOP_CURRENT_ROLE",
6829 Self::SvfopCurrentUser => "SVFOP_CURRENT_USER",
6830 Self::SvfopUser => "SVFOP_USER",
6831 Self::SvfopSessionUser => "SVFOP_SESSION_USER",
6832 Self::SvfopCurrentCatalog => "SVFOP_CURRENT_CATALOG",
6833 Self::SvfopCurrentSchema => "SVFOP_CURRENT_SCHEMA",
6834 }
6835 }
6836 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6838 match value {
6839 "SQLVALUE_FUNCTION_OP_UNDEFINED" => Some(Self::SqlvalueFunctionOpUndefined),
6840 "SVFOP_CURRENT_DATE" => Some(Self::SvfopCurrentDate),
6841 "SVFOP_CURRENT_TIME" => Some(Self::SvfopCurrentTime),
6842 "SVFOP_CURRENT_TIME_N" => Some(Self::SvfopCurrentTimeN),
6843 "SVFOP_CURRENT_TIMESTAMP" => Some(Self::SvfopCurrentTimestamp),
6844 "SVFOP_CURRENT_TIMESTAMP_N" => Some(Self::SvfopCurrentTimestampN),
6845 "SVFOP_LOCALTIME" => Some(Self::SvfopLocaltime),
6846 "SVFOP_LOCALTIME_N" => Some(Self::SvfopLocaltimeN),
6847 "SVFOP_LOCALTIMESTAMP" => Some(Self::SvfopLocaltimestamp),
6848 "SVFOP_LOCALTIMESTAMP_N" => Some(Self::SvfopLocaltimestampN),
6849 "SVFOP_CURRENT_ROLE" => Some(Self::SvfopCurrentRole),
6850 "SVFOP_CURRENT_USER" => Some(Self::SvfopCurrentUser),
6851 "SVFOP_USER" => Some(Self::SvfopUser),
6852 "SVFOP_SESSION_USER" => Some(Self::SvfopSessionUser),
6853 "SVFOP_CURRENT_CATALOG" => Some(Self::SvfopCurrentCatalog),
6854 "SVFOP_CURRENT_SCHEMA" => Some(Self::SvfopCurrentSchema),
6855 _ => None,
6856 }
6857 }
6858}
6859#[derive(serde::Serialize)]
6860#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6861#[repr(i32)]
6862pub enum XmlExprOp {
6863 Undefined = 0,
6864 IsXmlconcat = 1,
6865 IsXmlelement = 2,
6866 IsXmlforest = 3,
6867 IsXmlparse = 4,
6868 IsXmlpi = 5,
6869 IsXmlroot = 6,
6870 IsXmlserialize = 7,
6871 IsDocument = 8,
6872}
6873impl XmlExprOp {
6874 pub fn as_str_name(&self) -> &'static str {
6879 match self {
6880 Self::Undefined => "XML_EXPR_OP_UNDEFINED",
6881 Self::IsXmlconcat => "IS_XMLCONCAT",
6882 Self::IsXmlelement => "IS_XMLELEMENT",
6883 Self::IsXmlforest => "IS_XMLFOREST",
6884 Self::IsXmlparse => "IS_XMLPARSE",
6885 Self::IsXmlpi => "IS_XMLPI",
6886 Self::IsXmlroot => "IS_XMLROOT",
6887 Self::IsXmlserialize => "IS_XMLSERIALIZE",
6888 Self::IsDocument => "IS_DOCUMENT",
6889 }
6890 }
6891 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6893 match value {
6894 "XML_EXPR_OP_UNDEFINED" => Some(Self::Undefined),
6895 "IS_XMLCONCAT" => Some(Self::IsXmlconcat),
6896 "IS_XMLELEMENT" => Some(Self::IsXmlelement),
6897 "IS_XMLFOREST" => Some(Self::IsXmlforest),
6898 "IS_XMLPARSE" => Some(Self::IsXmlparse),
6899 "IS_XMLPI" => Some(Self::IsXmlpi),
6900 "IS_XMLROOT" => Some(Self::IsXmlroot),
6901 "IS_XMLSERIALIZE" => Some(Self::IsXmlserialize),
6902 "IS_DOCUMENT" => Some(Self::IsDocument),
6903 _ => None,
6904 }
6905 }
6906}
6907#[derive(serde::Serialize)]
6908#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6909#[repr(i32)]
6910pub enum XmlOptionType {
6911 Undefined = 0,
6912 XmloptionDocument = 1,
6913 XmloptionContent = 2,
6914}
6915impl XmlOptionType {
6916 pub fn as_str_name(&self) -> &'static str {
6921 match self {
6922 Self::Undefined => "XML_OPTION_TYPE_UNDEFINED",
6923 Self::XmloptionDocument => "XMLOPTION_DOCUMENT",
6924 Self::XmloptionContent => "XMLOPTION_CONTENT",
6925 }
6926 }
6927 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6929 match value {
6930 "XML_OPTION_TYPE_UNDEFINED" => Some(Self::Undefined),
6931 "XMLOPTION_DOCUMENT" => Some(Self::XmloptionDocument),
6932 "XMLOPTION_CONTENT" => Some(Self::XmloptionContent),
6933 _ => None,
6934 }
6935 }
6936}
6937#[derive(serde::Serialize)]
6938#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6939#[repr(i32)]
6940pub enum JsonEncoding {
6941 Undefined = 0,
6942 JsEncDefault = 1,
6943 JsEncUtf8 = 2,
6944 JsEncUtf16 = 3,
6945 JsEncUtf32 = 4,
6946}
6947impl JsonEncoding {
6948 pub fn as_str_name(&self) -> &'static str {
6953 match self {
6954 Self::Undefined => "JSON_ENCODING_UNDEFINED",
6955 Self::JsEncDefault => "JS_ENC_DEFAULT",
6956 Self::JsEncUtf8 => "JS_ENC_UTF8",
6957 Self::JsEncUtf16 => "JS_ENC_UTF16",
6958 Self::JsEncUtf32 => "JS_ENC_UTF32",
6959 }
6960 }
6961 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6963 match value {
6964 "JSON_ENCODING_UNDEFINED" => Some(Self::Undefined),
6965 "JS_ENC_DEFAULT" => Some(Self::JsEncDefault),
6966 "JS_ENC_UTF8" => Some(Self::JsEncUtf8),
6967 "JS_ENC_UTF16" => Some(Self::JsEncUtf16),
6968 "JS_ENC_UTF32" => Some(Self::JsEncUtf32),
6969 _ => None,
6970 }
6971 }
6972}
6973#[derive(serde::Serialize)]
6974#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6975#[repr(i32)]
6976pub enum JsonFormatType {
6977 Undefined = 0,
6978 JsFormatDefault = 1,
6979 JsFormatJson = 2,
6980 JsFormatJsonb = 3,
6981}
6982impl JsonFormatType {
6983 pub fn as_str_name(&self) -> &'static str {
6988 match self {
6989 Self::Undefined => "JSON_FORMAT_TYPE_UNDEFINED",
6990 Self::JsFormatDefault => "JS_FORMAT_DEFAULT",
6991 Self::JsFormatJson => "JS_FORMAT_JSON",
6992 Self::JsFormatJsonb => "JS_FORMAT_JSONB",
6993 }
6994 }
6995 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6997 match value {
6998 "JSON_FORMAT_TYPE_UNDEFINED" => Some(Self::Undefined),
6999 "JS_FORMAT_DEFAULT" => Some(Self::JsFormatDefault),
7000 "JS_FORMAT_JSON" => Some(Self::JsFormatJson),
7001 "JS_FORMAT_JSONB" => Some(Self::JsFormatJsonb),
7002 _ => None,
7003 }
7004 }
7005}
7006#[derive(serde::Serialize)]
7007#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7008#[repr(i32)]
7009pub enum JsonConstructorType {
7010 Undefined = 0,
7011 JsctorJsonObject = 1,
7012 JsctorJsonArray = 2,
7013 JsctorJsonObjectagg = 3,
7014 JsctorJsonArrayagg = 4,
7015 JsctorJsonParse = 5,
7016 JsctorJsonScalar = 6,
7017 JsctorJsonSerialize = 7,
7018}
7019impl JsonConstructorType {
7020 pub fn as_str_name(&self) -> &'static str {
7025 match self {
7026 Self::Undefined => "JSON_CONSTRUCTOR_TYPE_UNDEFINED",
7027 Self::JsctorJsonObject => "JSCTOR_JSON_OBJECT",
7028 Self::JsctorJsonArray => "JSCTOR_JSON_ARRAY",
7029 Self::JsctorJsonObjectagg => "JSCTOR_JSON_OBJECTAGG",
7030 Self::JsctorJsonArrayagg => "JSCTOR_JSON_ARRAYAGG",
7031 Self::JsctorJsonParse => "JSCTOR_JSON_PARSE",
7032 Self::JsctorJsonScalar => "JSCTOR_JSON_SCALAR",
7033 Self::JsctorJsonSerialize => "JSCTOR_JSON_SERIALIZE",
7034 }
7035 }
7036 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7038 match value {
7039 "JSON_CONSTRUCTOR_TYPE_UNDEFINED" => Some(Self::Undefined),
7040 "JSCTOR_JSON_OBJECT" => Some(Self::JsctorJsonObject),
7041 "JSCTOR_JSON_ARRAY" => Some(Self::JsctorJsonArray),
7042 "JSCTOR_JSON_OBJECTAGG" => Some(Self::JsctorJsonObjectagg),
7043 "JSCTOR_JSON_ARRAYAGG" => Some(Self::JsctorJsonArrayagg),
7044 "JSCTOR_JSON_PARSE" => Some(Self::JsctorJsonParse),
7045 "JSCTOR_JSON_SCALAR" => Some(Self::JsctorJsonScalar),
7046 "JSCTOR_JSON_SERIALIZE" => Some(Self::JsctorJsonSerialize),
7047 _ => None,
7048 }
7049 }
7050}
7051#[derive(serde::Serialize)]
7052#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7053#[repr(i32)]
7054pub enum JsonValueType {
7055 Undefined = 0,
7056 JsTypeAny = 1,
7057 JsTypeObject = 2,
7058 JsTypeArray = 3,
7059 JsTypeScalar = 4,
7060}
7061impl JsonValueType {
7062 pub fn as_str_name(&self) -> &'static str {
7067 match self {
7068 Self::Undefined => "JSON_VALUE_TYPE_UNDEFINED",
7069 Self::JsTypeAny => "JS_TYPE_ANY",
7070 Self::JsTypeObject => "JS_TYPE_OBJECT",
7071 Self::JsTypeArray => "JS_TYPE_ARRAY",
7072 Self::JsTypeScalar => "JS_TYPE_SCALAR",
7073 }
7074 }
7075 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7077 match value {
7078 "JSON_VALUE_TYPE_UNDEFINED" => Some(Self::Undefined),
7079 "JS_TYPE_ANY" => Some(Self::JsTypeAny),
7080 "JS_TYPE_OBJECT" => Some(Self::JsTypeObject),
7081 "JS_TYPE_ARRAY" => Some(Self::JsTypeArray),
7082 "JS_TYPE_SCALAR" => Some(Self::JsTypeScalar),
7083 _ => None,
7084 }
7085 }
7086}
7087#[derive(serde::Serialize)]
7088#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7089#[repr(i32)]
7090pub enum JsonWrapper {
7091 Undefined = 0,
7092 JswUnspec = 1,
7093 JswNone = 2,
7094 JswConditional = 3,
7095 JswUnconditional = 4,
7096}
7097impl JsonWrapper {
7098 pub fn as_str_name(&self) -> &'static str {
7103 match self {
7104 Self::Undefined => "JSON_WRAPPER_UNDEFINED",
7105 Self::JswUnspec => "JSW_UNSPEC",
7106 Self::JswNone => "JSW_NONE",
7107 Self::JswConditional => "JSW_CONDITIONAL",
7108 Self::JswUnconditional => "JSW_UNCONDITIONAL",
7109 }
7110 }
7111 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7113 match value {
7114 "JSON_WRAPPER_UNDEFINED" => Some(Self::Undefined),
7115 "JSW_UNSPEC" => Some(Self::JswUnspec),
7116 "JSW_NONE" => Some(Self::JswNone),
7117 "JSW_CONDITIONAL" => Some(Self::JswConditional),
7118 "JSW_UNCONDITIONAL" => Some(Self::JswUnconditional),
7119 _ => None,
7120 }
7121 }
7122}
7123#[derive(serde::Serialize)]
7124#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7125#[repr(i32)]
7126pub enum JsonBehaviorType {
7127 Undefined = 0,
7128 JsonBehaviorNull = 1,
7129 JsonBehaviorError = 2,
7130 JsonBehaviorEmpty = 3,
7131 JsonBehaviorTrue = 4,
7132 JsonBehaviorFalse = 5,
7133 JsonBehaviorUnknown = 6,
7134 JsonBehaviorEmptyArray = 7,
7135 JsonBehaviorEmptyObject = 8,
7136 JsonBehaviorDefault = 9,
7137}
7138impl JsonBehaviorType {
7139 pub fn as_str_name(&self) -> &'static str {
7144 match self {
7145 Self::Undefined => "JSON_BEHAVIOR_TYPE_UNDEFINED",
7146 Self::JsonBehaviorNull => "JSON_BEHAVIOR_NULL",
7147 Self::JsonBehaviorError => "JSON_BEHAVIOR_ERROR",
7148 Self::JsonBehaviorEmpty => "JSON_BEHAVIOR_EMPTY",
7149 Self::JsonBehaviorTrue => "JSON_BEHAVIOR_TRUE",
7150 Self::JsonBehaviorFalse => "JSON_BEHAVIOR_FALSE",
7151 Self::JsonBehaviorUnknown => "JSON_BEHAVIOR_UNKNOWN",
7152 Self::JsonBehaviorEmptyArray => "JSON_BEHAVIOR_EMPTY_ARRAY",
7153 Self::JsonBehaviorEmptyObject => "JSON_BEHAVIOR_EMPTY_OBJECT",
7154 Self::JsonBehaviorDefault => "JSON_BEHAVIOR_DEFAULT",
7155 }
7156 }
7157 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7159 match value {
7160 "JSON_BEHAVIOR_TYPE_UNDEFINED" => Some(Self::Undefined),
7161 "JSON_BEHAVIOR_NULL" => Some(Self::JsonBehaviorNull),
7162 "JSON_BEHAVIOR_ERROR" => Some(Self::JsonBehaviorError),
7163 "JSON_BEHAVIOR_EMPTY" => Some(Self::JsonBehaviorEmpty),
7164 "JSON_BEHAVIOR_TRUE" => Some(Self::JsonBehaviorTrue),
7165 "JSON_BEHAVIOR_FALSE" => Some(Self::JsonBehaviorFalse),
7166 "JSON_BEHAVIOR_UNKNOWN" => Some(Self::JsonBehaviorUnknown),
7167 "JSON_BEHAVIOR_EMPTY_ARRAY" => Some(Self::JsonBehaviorEmptyArray),
7168 "JSON_BEHAVIOR_EMPTY_OBJECT" => Some(Self::JsonBehaviorEmptyObject),
7169 "JSON_BEHAVIOR_DEFAULT" => Some(Self::JsonBehaviorDefault),
7170 _ => None,
7171 }
7172 }
7173}
7174#[derive(serde::Serialize)]
7175#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7176#[repr(i32)]
7177pub enum JsonExprOp {
7178 Undefined = 0,
7179 JsonExistsOp = 1,
7180 JsonQueryOp = 2,
7181 JsonValueOp = 3,
7182 JsonTableOp = 4,
7183}
7184impl JsonExprOp {
7185 pub fn as_str_name(&self) -> &'static str {
7190 match self {
7191 Self::Undefined => "JSON_EXPR_OP_UNDEFINED",
7192 Self::JsonExistsOp => "JSON_EXISTS_OP",
7193 Self::JsonQueryOp => "JSON_QUERY_OP",
7194 Self::JsonValueOp => "JSON_VALUE_OP",
7195 Self::JsonTableOp => "JSON_TABLE_OP",
7196 }
7197 }
7198 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7200 match value {
7201 "JSON_EXPR_OP_UNDEFINED" => Some(Self::Undefined),
7202 "JSON_EXISTS_OP" => Some(Self::JsonExistsOp),
7203 "JSON_QUERY_OP" => Some(Self::JsonQueryOp),
7204 "JSON_VALUE_OP" => Some(Self::JsonValueOp),
7205 "JSON_TABLE_OP" => Some(Self::JsonTableOp),
7206 _ => None,
7207 }
7208 }
7209}
7210#[derive(serde::Serialize)]
7211#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7212#[repr(i32)]
7213pub enum NullTestType {
7214 Undefined = 0,
7215 IsNull = 1,
7216 IsNotNull = 2,
7217}
7218impl NullTestType {
7219 pub fn as_str_name(&self) -> &'static str {
7224 match self {
7225 Self::Undefined => "NULL_TEST_TYPE_UNDEFINED",
7226 Self::IsNull => "IS_NULL",
7227 Self::IsNotNull => "IS_NOT_NULL",
7228 }
7229 }
7230 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7232 match value {
7233 "NULL_TEST_TYPE_UNDEFINED" => Some(Self::Undefined),
7234 "IS_NULL" => Some(Self::IsNull),
7235 "IS_NOT_NULL" => Some(Self::IsNotNull),
7236 _ => None,
7237 }
7238 }
7239}
7240#[derive(serde::Serialize)]
7241#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7242#[repr(i32)]
7243pub enum BoolTestType {
7244 Undefined = 0,
7245 IsTrue = 1,
7246 IsNotTrue = 2,
7247 IsFalse = 3,
7248 IsNotFalse = 4,
7249 IsUnknown = 5,
7250 IsNotUnknown = 6,
7251}
7252impl BoolTestType {
7253 pub fn as_str_name(&self) -> &'static str {
7258 match self {
7259 Self::Undefined => "BOOL_TEST_TYPE_UNDEFINED",
7260 Self::IsTrue => "IS_TRUE",
7261 Self::IsNotTrue => "IS_NOT_TRUE",
7262 Self::IsFalse => "IS_FALSE",
7263 Self::IsNotFalse => "IS_NOT_FALSE",
7264 Self::IsUnknown => "IS_UNKNOWN",
7265 Self::IsNotUnknown => "IS_NOT_UNKNOWN",
7266 }
7267 }
7268 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7270 match value {
7271 "BOOL_TEST_TYPE_UNDEFINED" => Some(Self::Undefined),
7272 "IS_TRUE" => Some(Self::IsTrue),
7273 "IS_NOT_TRUE" => Some(Self::IsNotTrue),
7274 "IS_FALSE" => Some(Self::IsFalse),
7275 "IS_NOT_FALSE" => Some(Self::IsNotFalse),
7276 "IS_UNKNOWN" => Some(Self::IsUnknown),
7277 "IS_NOT_UNKNOWN" => Some(Self::IsNotUnknown),
7278 _ => None,
7279 }
7280 }
7281}
7282#[derive(serde::Serialize)]
7283#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7284#[repr(i32)]
7285pub enum MergeMatchKind {
7286 Undefined = 0,
7287 MergeWhenMatched = 1,
7288 MergeWhenNotMatchedBySource = 2,
7289 MergeWhenNotMatchedByTarget = 3,
7290}
7291impl MergeMatchKind {
7292 pub fn as_str_name(&self) -> &'static str {
7297 match self {
7298 Self::Undefined => "MERGE_MATCH_KIND_UNDEFINED",
7299 Self::MergeWhenMatched => "MERGE_WHEN_MATCHED",
7300 Self::MergeWhenNotMatchedBySource => "MERGE_WHEN_NOT_MATCHED_BY_SOURCE",
7301 Self::MergeWhenNotMatchedByTarget => "MERGE_WHEN_NOT_MATCHED_BY_TARGET",
7302 }
7303 }
7304 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7306 match value {
7307 "MERGE_MATCH_KIND_UNDEFINED" => Some(Self::Undefined),
7308 "MERGE_WHEN_MATCHED" => Some(Self::MergeWhenMatched),
7309 "MERGE_WHEN_NOT_MATCHED_BY_SOURCE" => Some(Self::MergeWhenNotMatchedBySource),
7310 "MERGE_WHEN_NOT_MATCHED_BY_TARGET" => Some(Self::MergeWhenNotMatchedByTarget),
7311 _ => None,
7312 }
7313 }
7314}
7315#[derive(serde::Serialize)]
7316#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7317#[repr(i32)]
7318pub enum CmdType {
7319 Undefined = 0,
7320 CmdUnknown = 1,
7321 CmdSelect = 2,
7322 CmdUpdate = 3,
7323 CmdInsert = 4,
7324 CmdDelete = 5,
7325 CmdMerge = 6,
7326 CmdUtility = 7,
7327 CmdNothing = 8,
7328}
7329impl CmdType {
7330 pub fn as_str_name(&self) -> &'static str {
7335 match self {
7336 Self::Undefined => "CMD_TYPE_UNDEFINED",
7337 Self::CmdUnknown => "CMD_UNKNOWN",
7338 Self::CmdSelect => "CMD_SELECT",
7339 Self::CmdUpdate => "CMD_UPDATE",
7340 Self::CmdInsert => "CMD_INSERT",
7341 Self::CmdDelete => "CMD_DELETE",
7342 Self::CmdMerge => "CMD_MERGE",
7343 Self::CmdUtility => "CMD_UTILITY",
7344 Self::CmdNothing => "CMD_NOTHING",
7345 }
7346 }
7347 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7349 match value {
7350 "CMD_TYPE_UNDEFINED" => Some(Self::Undefined),
7351 "CMD_UNKNOWN" => Some(Self::CmdUnknown),
7352 "CMD_SELECT" => Some(Self::CmdSelect),
7353 "CMD_UPDATE" => Some(Self::CmdUpdate),
7354 "CMD_INSERT" => Some(Self::CmdInsert),
7355 "CMD_DELETE" => Some(Self::CmdDelete),
7356 "CMD_MERGE" => Some(Self::CmdMerge),
7357 "CMD_UTILITY" => Some(Self::CmdUtility),
7358 "CMD_NOTHING" => Some(Self::CmdNothing),
7359 _ => None,
7360 }
7361 }
7362}
7363#[derive(serde::Serialize)]
7364#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7365#[repr(i32)]
7366pub enum JoinType {
7367 Undefined = 0,
7368 JoinInner = 1,
7369 JoinLeft = 2,
7370 JoinFull = 3,
7371 JoinRight = 4,
7372 JoinSemi = 5,
7373 JoinAnti = 6,
7374 JoinRightSemi = 7,
7375 JoinRightAnti = 8,
7376 JoinUniqueOuter = 9,
7377 JoinUniqueInner = 10,
7378}
7379impl JoinType {
7380 pub fn as_str_name(&self) -> &'static str {
7385 match self {
7386 Self::Undefined => "JOIN_TYPE_UNDEFINED",
7387 Self::JoinInner => "JOIN_INNER",
7388 Self::JoinLeft => "JOIN_LEFT",
7389 Self::JoinFull => "JOIN_FULL",
7390 Self::JoinRight => "JOIN_RIGHT",
7391 Self::JoinSemi => "JOIN_SEMI",
7392 Self::JoinAnti => "JOIN_ANTI",
7393 Self::JoinRightSemi => "JOIN_RIGHT_SEMI",
7394 Self::JoinRightAnti => "JOIN_RIGHT_ANTI",
7395 Self::JoinUniqueOuter => "JOIN_UNIQUE_OUTER",
7396 Self::JoinUniqueInner => "JOIN_UNIQUE_INNER",
7397 }
7398 }
7399 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7401 match value {
7402 "JOIN_TYPE_UNDEFINED" => Some(Self::Undefined),
7403 "JOIN_INNER" => Some(Self::JoinInner),
7404 "JOIN_LEFT" => Some(Self::JoinLeft),
7405 "JOIN_FULL" => Some(Self::JoinFull),
7406 "JOIN_RIGHT" => Some(Self::JoinRight),
7407 "JOIN_SEMI" => Some(Self::JoinSemi),
7408 "JOIN_ANTI" => Some(Self::JoinAnti),
7409 "JOIN_RIGHT_SEMI" => Some(Self::JoinRightSemi),
7410 "JOIN_RIGHT_ANTI" => Some(Self::JoinRightAnti),
7411 "JOIN_UNIQUE_OUTER" => Some(Self::JoinUniqueOuter),
7412 "JOIN_UNIQUE_INNER" => Some(Self::JoinUniqueInner),
7413 _ => None,
7414 }
7415 }
7416}
7417#[derive(serde::Serialize)]
7418#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7419#[repr(i32)]
7420pub enum AggStrategy {
7421 Undefined = 0,
7422 AggPlain = 1,
7423 AggSorted = 2,
7424 AggHashed = 3,
7425 AggMixed = 4,
7426}
7427impl AggStrategy {
7428 pub fn as_str_name(&self) -> &'static str {
7433 match self {
7434 Self::Undefined => "AGG_STRATEGY_UNDEFINED",
7435 Self::AggPlain => "AGG_PLAIN",
7436 Self::AggSorted => "AGG_SORTED",
7437 Self::AggHashed => "AGG_HASHED",
7438 Self::AggMixed => "AGG_MIXED",
7439 }
7440 }
7441 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7443 match value {
7444 "AGG_STRATEGY_UNDEFINED" => Some(Self::Undefined),
7445 "AGG_PLAIN" => Some(Self::AggPlain),
7446 "AGG_SORTED" => Some(Self::AggSorted),
7447 "AGG_HASHED" => Some(Self::AggHashed),
7448 "AGG_MIXED" => Some(Self::AggMixed),
7449 _ => None,
7450 }
7451 }
7452}
7453#[derive(serde::Serialize)]
7454#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7455#[repr(i32)]
7456pub enum AggSplit {
7457 Undefined = 0,
7458 AggsplitSimple = 1,
7459 AggsplitInitialSerial = 2,
7460 AggsplitFinalDeserial = 3,
7461}
7462impl AggSplit {
7463 pub fn as_str_name(&self) -> &'static str {
7468 match self {
7469 Self::Undefined => "AGG_SPLIT_UNDEFINED",
7470 Self::AggsplitSimple => "AGGSPLIT_SIMPLE",
7471 Self::AggsplitInitialSerial => "AGGSPLIT_INITIAL_SERIAL",
7472 Self::AggsplitFinalDeserial => "AGGSPLIT_FINAL_DESERIAL",
7473 }
7474 }
7475 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7477 match value {
7478 "AGG_SPLIT_UNDEFINED" => Some(Self::Undefined),
7479 "AGGSPLIT_SIMPLE" => Some(Self::AggsplitSimple),
7480 "AGGSPLIT_INITIAL_SERIAL" => Some(Self::AggsplitInitialSerial),
7481 "AGGSPLIT_FINAL_DESERIAL" => Some(Self::AggsplitFinalDeserial),
7482 _ => None,
7483 }
7484 }
7485}
7486#[derive(serde::Serialize)]
7487#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7488#[repr(i32)]
7489pub enum SetOpCmd {
7490 Undefined = 0,
7491 SetopcmdIntersect = 1,
7492 SetopcmdIntersectAll = 2,
7493 SetopcmdExcept = 3,
7494 SetopcmdExceptAll = 4,
7495}
7496impl SetOpCmd {
7497 pub fn as_str_name(&self) -> &'static str {
7502 match self {
7503 Self::Undefined => "SET_OP_CMD_UNDEFINED",
7504 Self::SetopcmdIntersect => "SETOPCMD_INTERSECT",
7505 Self::SetopcmdIntersectAll => "SETOPCMD_INTERSECT_ALL",
7506 Self::SetopcmdExcept => "SETOPCMD_EXCEPT",
7507 Self::SetopcmdExceptAll => "SETOPCMD_EXCEPT_ALL",
7508 }
7509 }
7510 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7512 match value {
7513 "SET_OP_CMD_UNDEFINED" => Some(Self::Undefined),
7514 "SETOPCMD_INTERSECT" => Some(Self::SetopcmdIntersect),
7515 "SETOPCMD_INTERSECT_ALL" => Some(Self::SetopcmdIntersectAll),
7516 "SETOPCMD_EXCEPT" => Some(Self::SetopcmdExcept),
7517 "SETOPCMD_EXCEPT_ALL" => Some(Self::SetopcmdExceptAll),
7518 _ => None,
7519 }
7520 }
7521}
7522#[derive(serde::Serialize)]
7523#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7524#[repr(i32)]
7525pub enum SetOpStrategy {
7526 Undefined = 0,
7527 SetopSorted = 1,
7528 SetopHashed = 2,
7529}
7530impl SetOpStrategy {
7531 pub fn as_str_name(&self) -> &'static str {
7536 match self {
7537 Self::Undefined => "SET_OP_STRATEGY_UNDEFINED",
7538 Self::SetopSorted => "SETOP_SORTED",
7539 Self::SetopHashed => "SETOP_HASHED",
7540 }
7541 }
7542 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7544 match value {
7545 "SET_OP_STRATEGY_UNDEFINED" => Some(Self::Undefined),
7546 "SETOP_SORTED" => Some(Self::SetopSorted),
7547 "SETOP_HASHED" => Some(Self::SetopHashed),
7548 _ => None,
7549 }
7550 }
7551}
7552#[derive(serde::Serialize)]
7553#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7554#[repr(i32)]
7555pub enum OnConflictAction {
7556 Undefined = 0,
7557 OnconflictNone = 1,
7558 OnconflictNothing = 2,
7559 OnconflictUpdate = 3,
7560}
7561impl OnConflictAction {
7562 pub fn as_str_name(&self) -> &'static str {
7567 match self {
7568 Self::Undefined => "ON_CONFLICT_ACTION_UNDEFINED",
7569 Self::OnconflictNone => "ONCONFLICT_NONE",
7570 Self::OnconflictNothing => "ONCONFLICT_NOTHING",
7571 Self::OnconflictUpdate => "ONCONFLICT_UPDATE",
7572 }
7573 }
7574 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7576 match value {
7577 "ON_CONFLICT_ACTION_UNDEFINED" => Some(Self::Undefined),
7578 "ONCONFLICT_NONE" => Some(Self::OnconflictNone),
7579 "ONCONFLICT_NOTHING" => Some(Self::OnconflictNothing),
7580 "ONCONFLICT_UPDATE" => Some(Self::OnconflictUpdate),
7581 _ => None,
7582 }
7583 }
7584}
7585#[derive(serde::Serialize)]
7586#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7587#[repr(i32)]
7588pub enum LimitOption {
7589 Undefined = 0,
7590 Default = 1,
7591 Count = 2,
7592 WithTies = 3,
7593}
7594impl LimitOption {
7595 pub fn as_str_name(&self) -> &'static str {
7600 match self {
7601 Self::Undefined => "LIMIT_OPTION_UNDEFINED",
7602 Self::Default => "LIMIT_OPTION_DEFAULT",
7603 Self::Count => "LIMIT_OPTION_COUNT",
7604 Self::WithTies => "LIMIT_OPTION_WITH_TIES",
7605 }
7606 }
7607 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7609 match value {
7610 "LIMIT_OPTION_UNDEFINED" => Some(Self::Undefined),
7611 "LIMIT_OPTION_DEFAULT" => Some(Self::Default),
7612 "LIMIT_OPTION_COUNT" => Some(Self::Count),
7613 "LIMIT_OPTION_WITH_TIES" => Some(Self::WithTies),
7614 _ => None,
7615 }
7616 }
7617}
7618#[derive(serde::Serialize)]
7619#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7620#[repr(i32)]
7621pub enum LockClauseStrength {
7622 Undefined = 0,
7623 LcsNone = 1,
7624 LcsForkeyshare = 2,
7625 LcsForshare = 3,
7626 LcsFornokeyupdate = 4,
7627 LcsForupdate = 5,
7628}
7629impl LockClauseStrength {
7630 pub fn as_str_name(&self) -> &'static str {
7635 match self {
7636 Self::Undefined => "LOCK_CLAUSE_STRENGTH_UNDEFINED",
7637 Self::LcsNone => "LCS_NONE",
7638 Self::LcsForkeyshare => "LCS_FORKEYSHARE",
7639 Self::LcsForshare => "LCS_FORSHARE",
7640 Self::LcsFornokeyupdate => "LCS_FORNOKEYUPDATE",
7641 Self::LcsForupdate => "LCS_FORUPDATE",
7642 }
7643 }
7644 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7646 match value {
7647 "LOCK_CLAUSE_STRENGTH_UNDEFINED" => Some(Self::Undefined),
7648 "LCS_NONE" => Some(Self::LcsNone),
7649 "LCS_FORKEYSHARE" => Some(Self::LcsForkeyshare),
7650 "LCS_FORSHARE" => Some(Self::LcsForshare),
7651 "LCS_FORNOKEYUPDATE" => Some(Self::LcsFornokeyupdate),
7652 "LCS_FORUPDATE" => Some(Self::LcsForupdate),
7653 _ => None,
7654 }
7655 }
7656}
7657#[derive(serde::Serialize)]
7658#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7659#[repr(i32)]
7660pub enum LockWaitPolicy {
7661 Undefined = 0,
7662 LockWaitBlock = 1,
7663 LockWaitSkip = 2,
7664 LockWaitError = 3,
7665}
7666impl LockWaitPolicy {
7667 pub fn as_str_name(&self) -> &'static str {
7672 match self {
7673 Self::Undefined => "LOCK_WAIT_POLICY_UNDEFINED",
7674 Self::LockWaitBlock => "LockWaitBlock",
7675 Self::LockWaitSkip => "LockWaitSkip",
7676 Self::LockWaitError => "LockWaitError",
7677 }
7678 }
7679 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7681 match value {
7682 "LOCK_WAIT_POLICY_UNDEFINED" => Some(Self::Undefined),
7683 "LockWaitBlock" => Some(Self::LockWaitBlock),
7684 "LockWaitSkip" => Some(Self::LockWaitSkip),
7685 "LockWaitError" => Some(Self::LockWaitError),
7686 _ => None,
7687 }
7688 }
7689}
7690#[derive(serde::Serialize)]
7691#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7692#[repr(i32)]
7693pub enum LockTupleMode {
7694 Undefined = 0,
7695 LockTupleKeyShare = 1,
7696 LockTupleShare = 2,
7697 LockTupleNoKeyExclusive = 3,
7698 LockTupleExclusive = 4,
7699}
7700impl LockTupleMode {
7701 pub fn as_str_name(&self) -> &'static str {
7706 match self {
7707 Self::Undefined => "LOCK_TUPLE_MODE_UNDEFINED",
7708 Self::LockTupleKeyShare => "LockTupleKeyShare",
7709 Self::LockTupleShare => "LockTupleShare",
7710 Self::LockTupleNoKeyExclusive => "LockTupleNoKeyExclusive",
7711 Self::LockTupleExclusive => "LockTupleExclusive",
7712 }
7713 }
7714 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7716 match value {
7717 "LOCK_TUPLE_MODE_UNDEFINED" => Some(Self::Undefined),
7718 "LockTupleKeyShare" => Some(Self::LockTupleKeyShare),
7719 "LockTupleShare" => Some(Self::LockTupleShare),
7720 "LockTupleNoKeyExclusive" => Some(Self::LockTupleNoKeyExclusive),
7721 "LockTupleExclusive" => Some(Self::LockTupleExclusive),
7722 _ => None,
7723 }
7724 }
7725}
7726#[derive(serde::Serialize)]
7727#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7728#[repr(i32)]
7729pub enum CompareType {
7730 Undefined = 0,
7731 CompareInvalid = 1,
7732 CompareLt = 2,
7733 CompareLe = 3,
7734 CompareEq = 4,
7735 CompareGe = 5,
7736 CompareGt = 6,
7737 CompareNe = 7,
7738 CompareOverlap = 8,
7739 CompareContainedBy = 9,
7740}
7741impl CompareType {
7742 pub fn as_str_name(&self) -> &'static str {
7747 match self {
7748 Self::Undefined => "COMPARE_TYPE_UNDEFINED",
7749 Self::CompareInvalid => "COMPARE_INVALID",
7750 Self::CompareLt => "COMPARE_LT",
7751 Self::CompareLe => "COMPARE_LE",
7752 Self::CompareEq => "COMPARE_EQ",
7753 Self::CompareGe => "COMPARE_GE",
7754 Self::CompareGt => "COMPARE_GT",
7755 Self::CompareNe => "COMPARE_NE",
7756 Self::CompareOverlap => "COMPARE_OVERLAP",
7757 Self::CompareContainedBy => "COMPARE_CONTAINED_BY",
7758 }
7759 }
7760 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7762 match value {
7763 "COMPARE_TYPE_UNDEFINED" => Some(Self::Undefined),
7764 "COMPARE_INVALID" => Some(Self::CompareInvalid),
7765 "COMPARE_LT" => Some(Self::CompareLt),
7766 "COMPARE_LE" => Some(Self::CompareLe),
7767 "COMPARE_EQ" => Some(Self::CompareEq),
7768 "COMPARE_GE" => Some(Self::CompareGe),
7769 "COMPARE_GT" => Some(Self::CompareGt),
7770 "COMPARE_NE" => Some(Self::CompareNe),
7771 "COMPARE_OVERLAP" => Some(Self::CompareOverlap),
7772 "COMPARE_CONTAINED_BY" => Some(Self::CompareContainedBy),
7773 _ => None,
7774 }
7775 }
7776}
7777#[derive(serde::Serialize)]
7778#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7779#[repr(i32)]
7780pub enum KeywordKind {
7781 NoKeyword = 0,
7782 UnreservedKeyword = 1,
7783 ColNameKeyword = 2,
7784 TypeFuncNameKeyword = 3,
7785 ReservedKeyword = 4,
7786}
7787impl KeywordKind {
7788 pub fn as_str_name(&self) -> &'static str {
7793 match self {
7794 Self::NoKeyword => "NO_KEYWORD",
7795 Self::UnreservedKeyword => "UNRESERVED_KEYWORD",
7796 Self::ColNameKeyword => "COL_NAME_KEYWORD",
7797 Self::TypeFuncNameKeyword => "TYPE_FUNC_NAME_KEYWORD",
7798 Self::ReservedKeyword => "RESERVED_KEYWORD",
7799 }
7800 }
7801 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7803 match value {
7804 "NO_KEYWORD" => Some(Self::NoKeyword),
7805 "UNRESERVED_KEYWORD" => Some(Self::UnreservedKeyword),
7806 "COL_NAME_KEYWORD" => Some(Self::ColNameKeyword),
7807 "TYPE_FUNC_NAME_KEYWORD" => Some(Self::TypeFuncNameKeyword),
7808 "RESERVED_KEYWORD" => Some(Self::ReservedKeyword),
7809 _ => None,
7810 }
7811 }
7812}
7813#[derive(serde::Serialize)]
7814#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7815#[repr(i32)]
7816pub enum Token {
7817 Nul = 0,
7818 Ascii36 = 36,
7824 Ascii37 = 37,
7826 Ascii40 = 40,
7828 Ascii41 = 41,
7830 Ascii42 = 42,
7832 Ascii43 = 43,
7834 Ascii44 = 44,
7836 Ascii45 = 45,
7838 Ascii46 = 46,
7840 Ascii47 = 47,
7842 Ascii58 = 58,
7844 Ascii59 = 59,
7846 Ascii60 = 60,
7848 Ascii61 = 61,
7850 Ascii62 = 62,
7852 Ascii63 = 63,
7854 Ascii91 = 91,
7856 Ascii92 = 92,
7858 Ascii93 = 93,
7860 Ascii94 = 94,
7862 Ident = 258,
7864 Uident = 259,
7865 Fconst = 260,
7866 Sconst = 261,
7867 Usconst = 262,
7868 Bconst = 263,
7869 Xconst = 264,
7870 Op = 265,
7871 Iconst = 266,
7872 Param = 267,
7873 Typecast = 268,
7874 DotDot = 269,
7875 ColonEquals = 270,
7876 EqualsGreater = 271,
7877 LessEquals = 272,
7878 GreaterEquals = 273,
7879 NotEquals = 274,
7880 SqlComment = 275,
7881 CComment = 276,
7882 AbortP = 277,
7883 Absent = 278,
7884 AbsoluteP = 279,
7885 Access = 280,
7886 Action = 281,
7887 AddP = 282,
7888 Admin = 283,
7889 After = 284,
7890 Aggregate = 285,
7891 All = 286,
7892 Also = 287,
7893 Alter = 288,
7894 Always = 289,
7895 Analyse = 290,
7896 Analyze = 291,
7897 And = 292,
7898 Any = 293,
7899 Array = 294,
7900 As = 295,
7901 Asc = 296,
7902 Asensitive = 297,
7903 Assertion = 298,
7904 Assignment = 299,
7905 Asymmetric = 300,
7906 Atomic = 301,
7907 At = 302,
7908 Attach = 303,
7909 Attribute = 304,
7910 Authorization = 305,
7911 Backward = 306,
7912 Before = 307,
7913 BeginP = 308,
7914 Between = 309,
7915 Bigint = 310,
7916 Binary = 311,
7917 Bit = 312,
7918 BooleanP = 313,
7919 Both = 314,
7920 Breadth = 315,
7921 By = 316,
7922 Cache = 317,
7923 Call = 318,
7924 Called = 319,
7925 Cascade = 320,
7926 Cascaded = 321,
7927 Case = 322,
7928 Cast = 323,
7929 CatalogP = 324,
7930 Chain = 325,
7931 CharP = 326,
7932 Character = 327,
7933 Characteristics = 328,
7934 Check = 329,
7935 Checkpoint = 330,
7936 Class = 331,
7937 Close = 332,
7938 Cluster = 333,
7939 Coalesce = 334,
7940 Collate = 335,
7941 Collation = 336,
7942 Column = 337,
7943 Columns = 338,
7944 Comment = 339,
7945 Comments = 340,
7946 Commit = 341,
7947 Committed = 342,
7948 Compression = 343,
7949 Concurrently = 344,
7950 Conditional = 345,
7951 Configuration = 346,
7952 Conflict = 347,
7953 Connection = 348,
7954 Constraint = 349,
7955 Constraints = 350,
7956 ContentP = 351,
7957 ContinueP = 352,
7958 ConversionP = 353,
7959 Copy = 354,
7960 Cost = 355,
7961 Create = 356,
7962 Cross = 357,
7963 Csv = 358,
7964 Cube = 359,
7965 CurrentP = 360,
7966 CurrentCatalog = 361,
7967 CurrentDate = 362,
7968 CurrentRole = 363,
7969 CurrentSchema = 364,
7970 CurrentTime = 365,
7971 CurrentTimestamp = 366,
7972 CurrentUser = 367,
7973 Cursor = 368,
7974 Cycle = 369,
7975 DataP = 370,
7976 Database = 371,
7977 DayP = 372,
7978 Deallocate = 373,
7979 Dec = 374,
7980 DecimalP = 375,
7981 Declare = 376,
7982 Default = 377,
7983 Defaults = 378,
7984 Deferrable = 379,
7985 Deferred = 380,
7986 Definer = 381,
7987 DeleteP = 382,
7988 Delimiter = 383,
7989 Delimiters = 384,
7990 Depends = 385,
7991 Depth = 386,
7992 Desc = 387,
7993 Detach = 388,
7994 Dictionary = 389,
7995 DisableP = 390,
7996 Discard = 391,
7997 Distinct = 392,
7998 Do = 393,
7999 DocumentP = 394,
8000 DomainP = 395,
8001 DoubleP = 396,
8002 Drop = 397,
8003 Each = 398,
8004 Else = 399,
8005 EmptyP = 400,
8006 EnableP = 401,
8007 Encoding = 402,
8008 Encrypted = 403,
8009 EndP = 404,
8010 Enforced = 405,
8011 EnumP = 406,
8012 ErrorP = 407,
8013 Escape = 408,
8014 Event = 409,
8015 Except = 410,
8016 Exclude = 411,
8017 Excluding = 412,
8018 Exclusive = 413,
8019 Execute = 414,
8020 Exists = 415,
8021 Explain = 416,
8022 Expression = 417,
8023 Extension = 418,
8024 External = 419,
8025 Extract = 420,
8026 FalseP = 421,
8027 Family = 422,
8028 Fetch = 423,
8029 Filter = 424,
8030 Finalize = 425,
8031 FirstP = 426,
8032 FloatP = 427,
8033 Following = 428,
8034 For = 429,
8035 Force = 430,
8036 Foreign = 431,
8037 Format = 432,
8038 Forward = 433,
8039 Freeze = 434,
8040 From = 435,
8041 Full = 436,
8042 Function = 437,
8043 Functions = 438,
8044 Generated = 439,
8045 Global = 440,
8046 Grant = 441,
8047 Granted = 442,
8048 Greatest = 443,
8049 GroupP = 444,
8050 Grouping = 445,
8051 Groups = 446,
8052 Handler = 447,
8053 Having = 448,
8054 HeaderP = 449,
8055 Hold = 450,
8056 HourP = 451,
8057 IdentityP = 452,
8058 IfP = 453,
8059 Ilike = 454,
8060 Immediate = 455,
8061 Immutable = 456,
8062 ImplicitP = 457,
8063 ImportP = 458,
8064 InP = 459,
8065 Include = 460,
8066 Including = 461,
8067 Increment = 462,
8068 Indent = 463,
8069 Index = 464,
8070 Indexes = 465,
8071 Inherit = 466,
8072 Inherits = 467,
8073 Initially = 468,
8074 InlineP = 469,
8075 InnerP = 470,
8076 Inout = 471,
8077 InputP = 472,
8078 Insensitive = 473,
8079 Insert = 474,
8080 Instead = 475,
8081 IntP = 476,
8082 Integer = 477,
8083 Intersect = 478,
8084 Interval = 479,
8085 Into = 480,
8086 Invoker = 481,
8087 Is = 482,
8088 Isnull = 483,
8089 Isolation = 484,
8090 Join = 485,
8091 Json = 486,
8092 JsonArray = 487,
8093 JsonArrayagg = 488,
8094 JsonExists = 489,
8095 JsonObject = 490,
8096 JsonObjectagg = 491,
8097 JsonQuery = 492,
8098 JsonScalar = 493,
8099 JsonSerialize = 494,
8100 JsonTable = 495,
8101 JsonValue = 496,
8102 Keep = 497,
8103 Key = 498,
8104 Keys = 499,
8105 Label = 500,
8106 Language = 501,
8107 LargeP = 502,
8108 LastP = 503,
8109 LateralP = 504,
8110 Leading = 505,
8111 Leakproof = 506,
8112 Least = 507,
8113 Left = 508,
8114 Level = 509,
8115 Like = 510,
8116 Limit = 511,
8117 Listen = 512,
8118 Load = 513,
8119 Local = 514,
8120 Localtime = 515,
8121 Localtimestamp = 516,
8122 Location = 517,
8123 LockP = 518,
8124 Locked = 519,
8125 Logged = 520,
8126 Mapping = 521,
8127 Match = 522,
8128 Matched = 523,
8129 Materialized = 524,
8130 Maxvalue = 525,
8131 Merge = 526,
8132 MergeAction = 527,
8133 Method = 528,
8134 MinuteP = 529,
8135 Minvalue = 530,
8136 Mode = 531,
8137 MonthP = 532,
8138 Move = 533,
8139 NameP = 534,
8140 Names = 535,
8141 National = 536,
8142 Natural = 537,
8143 Nchar = 538,
8144 Nested = 539,
8145 New = 540,
8146 Next = 541,
8147 Nfc = 542,
8148 Nfd = 543,
8149 Nfkc = 544,
8150 Nfkd = 545,
8151 No = 546,
8152 None = 547,
8153 Normalize = 548,
8154 Normalized = 549,
8155 Not = 550,
8156 Nothing = 551,
8157 Notify = 552,
8158 Notnull = 553,
8159 Nowait = 554,
8160 NullP = 555,
8161 Nullif = 556,
8162 NullsP = 557,
8163 Numeric = 558,
8164 ObjectP = 559,
8165 ObjectsP = 560,
8166 Of = 561,
8167 Off = 562,
8168 Offset = 563,
8169 Oids = 564,
8170 Old = 565,
8171 Omit = 566,
8172 On = 567,
8173 Only = 568,
8174 Operator = 569,
8175 Option = 570,
8176 Options = 571,
8177 Or = 572,
8178 Order = 573,
8179 Ordinality = 574,
8180 Others = 575,
8181 OutP = 576,
8182 OuterP = 577,
8183 Over = 578,
8184 Overlaps = 579,
8185 Overlay = 580,
8186 Overriding = 581,
8187 Owned = 582,
8188 Owner = 583,
8189 Parallel = 584,
8190 Parameter = 585,
8191 Parser = 586,
8192 Partial = 587,
8193 Partition = 588,
8194 Passing = 589,
8195 Password = 590,
8196 Path = 591,
8197 Period = 592,
8198 Placing = 593,
8199 Plan = 594,
8200 Plans = 595,
8201 Policy = 596,
8202 Position = 597,
8203 Preceding = 598,
8204 Precision = 599,
8205 Preserve = 600,
8206 Prepare = 601,
8207 Prepared = 602,
8208 Primary = 603,
8209 Prior = 604,
8210 Privileges = 605,
8211 Procedural = 606,
8212 Procedure = 607,
8213 Procedures = 608,
8214 Program = 609,
8215 Publication = 610,
8216 Quote = 611,
8217 Quotes = 612,
8218 Range = 613,
8219 Read = 614,
8220 Real = 615,
8221 Reassign = 616,
8222 Recursive = 617,
8223 RefP = 618,
8224 References = 619,
8225 Referencing = 620,
8226 Refresh = 621,
8227 Reindex = 622,
8228 RelativeP = 623,
8229 Release = 624,
8230 Rename = 625,
8231 Repeatable = 626,
8232 Replace = 627,
8233 Replica = 628,
8234 Reset = 629,
8235 Restart = 630,
8236 Restrict = 631,
8237 Return = 632,
8238 Returning = 633,
8239 Returns = 634,
8240 Revoke = 635,
8241 Right = 636,
8242 Role = 637,
8243 Rollback = 638,
8244 Rollup = 639,
8245 Routine = 640,
8246 Routines = 641,
8247 Row = 642,
8248 Rows = 643,
8249 Rule = 644,
8250 Savepoint = 645,
8251 Scalar = 646,
8252 Schema = 647,
8253 Schemas = 648,
8254 Scroll = 649,
8255 Search = 650,
8256 SecondP = 651,
8257 Security = 652,
8258 Select = 653,
8259 Sequence = 654,
8260 Sequences = 655,
8261 Serializable = 656,
8262 Server = 657,
8263 Session = 658,
8264 SessionUser = 659,
8265 Set = 660,
8266 Sets = 661,
8267 Setof = 662,
8268 Share = 663,
8269 Show = 664,
8270 Similar = 665,
8271 Simple = 666,
8272 Skip = 667,
8273 Smallint = 668,
8274 Snapshot = 669,
8275 Some = 670,
8276 Source = 671,
8277 SqlP = 672,
8278 Stable = 673,
8279 StandaloneP = 674,
8280 Start = 675,
8281 Statement = 676,
8282 Statistics = 677,
8283 Stdin = 678,
8284 Stdout = 679,
8285 Storage = 680,
8286 Stored = 681,
8287 StrictP = 682,
8288 StringP = 683,
8289 StripP = 684,
8290 Subscription = 685,
8291 Substring = 686,
8292 Support = 687,
8293 Symmetric = 688,
8294 Sysid = 689,
8295 SystemP = 690,
8296 SystemUser = 691,
8297 Table = 692,
8298 Tables = 693,
8299 Tablesample = 694,
8300 Tablespace = 695,
8301 Target = 696,
8302 Temp = 697,
8303 Template = 698,
8304 Temporary = 699,
8305 TextP = 700,
8306 Then = 701,
8307 Ties = 702,
8308 Time = 703,
8309 Timestamp = 704,
8310 To = 705,
8311 Trailing = 706,
8312 Transaction = 707,
8313 Transform = 708,
8314 Treat = 709,
8315 Trigger = 710,
8316 Trim = 711,
8317 TrueP = 712,
8318 Truncate = 713,
8319 Trusted = 714,
8320 TypeP = 715,
8321 TypesP = 716,
8322 Uescape = 717,
8323 Unbounded = 718,
8324 Unconditional = 719,
8325 Uncommitted = 720,
8326 Unencrypted = 721,
8327 Union = 722,
8328 Unique = 723,
8329 Unknown = 724,
8330 Unlisten = 725,
8331 Unlogged = 726,
8332 Until = 727,
8333 Update = 728,
8334 User = 729,
8335 Using = 730,
8336 Vacuum = 731,
8337 Valid = 732,
8338 Validate = 733,
8339 Validator = 734,
8340 ValueP = 735,
8341 Values = 736,
8342 Varchar = 737,
8343 Variadic = 738,
8344 Varying = 739,
8345 Verbose = 740,
8346 VersionP = 741,
8347 View = 742,
8348 Views = 743,
8349 Virtual = 744,
8350 Volatile = 745,
8351 When = 746,
8352 Where = 747,
8353 WhitespaceP = 748,
8354 Window = 749,
8355 With = 750,
8356 Within = 751,
8357 Without = 752,
8358 Work = 753,
8359 Wrapper = 754,
8360 Write = 755,
8361 XmlP = 756,
8362 Xmlattributes = 757,
8363 Xmlconcat = 758,
8364 Xmlelement = 759,
8365 Xmlexists = 760,
8366 Xmlforest = 761,
8367 Xmlnamespaces = 762,
8368 Xmlparse = 763,
8369 Xmlpi = 764,
8370 Xmlroot = 765,
8371 Xmlserialize = 766,
8372 Xmltable = 767,
8373 YearP = 768,
8374 YesP = 769,
8375 Zone = 770,
8376 FormatLa = 771,
8377 NotLa = 772,
8378 NullsLa = 773,
8379 WithLa = 774,
8380 WithoutLa = 775,
8381 ModeTypeName = 776,
8382 ModePlpgsqlExpr = 777,
8383 ModePlpgsqlAssign1 = 778,
8384 ModePlpgsqlAssign2 = 779,
8385 ModePlpgsqlAssign3 = 780,
8386 Uminus = 781,
8387}
8388impl Token {
8389 pub fn as_str_name(&self) -> &'static str {
8394 match self {
8395 Self::Nul => "NUL",
8396 Self::Ascii36 => "ASCII_36",
8397 Self::Ascii37 => "ASCII_37",
8398 Self::Ascii40 => "ASCII_40",
8399 Self::Ascii41 => "ASCII_41",
8400 Self::Ascii42 => "ASCII_42",
8401 Self::Ascii43 => "ASCII_43",
8402 Self::Ascii44 => "ASCII_44",
8403 Self::Ascii45 => "ASCII_45",
8404 Self::Ascii46 => "ASCII_46",
8405 Self::Ascii47 => "ASCII_47",
8406 Self::Ascii58 => "ASCII_58",
8407 Self::Ascii59 => "ASCII_59",
8408 Self::Ascii60 => "ASCII_60",
8409 Self::Ascii61 => "ASCII_61",
8410 Self::Ascii62 => "ASCII_62",
8411 Self::Ascii63 => "ASCII_63",
8412 Self::Ascii91 => "ASCII_91",
8413 Self::Ascii92 => "ASCII_92",
8414 Self::Ascii93 => "ASCII_93",
8415 Self::Ascii94 => "ASCII_94",
8416 Self::Ident => "IDENT",
8417 Self::Uident => "UIDENT",
8418 Self::Fconst => "FCONST",
8419 Self::Sconst => "SCONST",
8420 Self::Usconst => "USCONST",
8421 Self::Bconst => "BCONST",
8422 Self::Xconst => "XCONST",
8423 Self::Op => "Op",
8424 Self::Iconst => "ICONST",
8425 Self::Param => "PARAM",
8426 Self::Typecast => "TYPECAST",
8427 Self::DotDot => "DOT_DOT",
8428 Self::ColonEquals => "COLON_EQUALS",
8429 Self::EqualsGreater => "EQUALS_GREATER",
8430 Self::LessEquals => "LESS_EQUALS",
8431 Self::GreaterEquals => "GREATER_EQUALS",
8432 Self::NotEquals => "NOT_EQUALS",
8433 Self::SqlComment => "SQL_COMMENT",
8434 Self::CComment => "C_COMMENT",
8435 Self::AbortP => "ABORT_P",
8436 Self::Absent => "ABSENT",
8437 Self::AbsoluteP => "ABSOLUTE_P",
8438 Self::Access => "ACCESS",
8439 Self::Action => "ACTION",
8440 Self::AddP => "ADD_P",
8441 Self::Admin => "ADMIN",
8442 Self::After => "AFTER",
8443 Self::Aggregate => "AGGREGATE",
8444 Self::All => "ALL",
8445 Self::Also => "ALSO",
8446 Self::Alter => "ALTER",
8447 Self::Always => "ALWAYS",
8448 Self::Analyse => "ANALYSE",
8449 Self::Analyze => "ANALYZE",
8450 Self::And => "AND",
8451 Self::Any => "ANY",
8452 Self::Array => "ARRAY",
8453 Self::As => "AS",
8454 Self::Asc => "ASC",
8455 Self::Asensitive => "ASENSITIVE",
8456 Self::Assertion => "ASSERTION",
8457 Self::Assignment => "ASSIGNMENT",
8458 Self::Asymmetric => "ASYMMETRIC",
8459 Self::Atomic => "ATOMIC",
8460 Self::At => "AT",
8461 Self::Attach => "ATTACH",
8462 Self::Attribute => "ATTRIBUTE",
8463 Self::Authorization => "AUTHORIZATION",
8464 Self::Backward => "BACKWARD",
8465 Self::Before => "BEFORE",
8466 Self::BeginP => "BEGIN_P",
8467 Self::Between => "BETWEEN",
8468 Self::Bigint => "BIGINT",
8469 Self::Binary => "BINARY",
8470 Self::Bit => "BIT",
8471 Self::BooleanP => "BOOLEAN_P",
8472 Self::Both => "BOTH",
8473 Self::Breadth => "BREADTH",
8474 Self::By => "BY",
8475 Self::Cache => "CACHE",
8476 Self::Call => "CALL",
8477 Self::Called => "CALLED",
8478 Self::Cascade => "CASCADE",
8479 Self::Cascaded => "CASCADED",
8480 Self::Case => "CASE",
8481 Self::Cast => "CAST",
8482 Self::CatalogP => "CATALOG_P",
8483 Self::Chain => "CHAIN",
8484 Self::CharP => "CHAR_P",
8485 Self::Character => "CHARACTER",
8486 Self::Characteristics => "CHARACTERISTICS",
8487 Self::Check => "CHECK",
8488 Self::Checkpoint => "CHECKPOINT",
8489 Self::Class => "CLASS",
8490 Self::Close => "CLOSE",
8491 Self::Cluster => "CLUSTER",
8492 Self::Coalesce => "COALESCE",
8493 Self::Collate => "COLLATE",
8494 Self::Collation => "COLLATION",
8495 Self::Column => "COLUMN",
8496 Self::Columns => "COLUMNS",
8497 Self::Comment => "COMMENT",
8498 Self::Comments => "COMMENTS",
8499 Self::Commit => "COMMIT",
8500 Self::Committed => "COMMITTED",
8501 Self::Compression => "COMPRESSION",
8502 Self::Concurrently => "CONCURRENTLY",
8503 Self::Conditional => "CONDITIONAL",
8504 Self::Configuration => "CONFIGURATION",
8505 Self::Conflict => "CONFLICT",
8506 Self::Connection => "CONNECTION",
8507 Self::Constraint => "CONSTRAINT",
8508 Self::Constraints => "CONSTRAINTS",
8509 Self::ContentP => "CONTENT_P",
8510 Self::ContinueP => "CONTINUE_P",
8511 Self::ConversionP => "CONVERSION_P",
8512 Self::Copy => "COPY",
8513 Self::Cost => "COST",
8514 Self::Create => "CREATE",
8515 Self::Cross => "CROSS",
8516 Self::Csv => "CSV",
8517 Self::Cube => "CUBE",
8518 Self::CurrentP => "CURRENT_P",
8519 Self::CurrentCatalog => "CURRENT_CATALOG",
8520 Self::CurrentDate => "CURRENT_DATE",
8521 Self::CurrentRole => "CURRENT_ROLE",
8522 Self::CurrentSchema => "CURRENT_SCHEMA",
8523 Self::CurrentTime => "CURRENT_TIME",
8524 Self::CurrentTimestamp => "CURRENT_TIMESTAMP",
8525 Self::CurrentUser => "CURRENT_USER",
8526 Self::Cursor => "CURSOR",
8527 Self::Cycle => "CYCLE",
8528 Self::DataP => "DATA_P",
8529 Self::Database => "DATABASE",
8530 Self::DayP => "DAY_P",
8531 Self::Deallocate => "DEALLOCATE",
8532 Self::Dec => "DEC",
8533 Self::DecimalP => "DECIMAL_P",
8534 Self::Declare => "DECLARE",
8535 Self::Default => "DEFAULT",
8536 Self::Defaults => "DEFAULTS",
8537 Self::Deferrable => "DEFERRABLE",
8538 Self::Deferred => "DEFERRED",
8539 Self::Definer => "DEFINER",
8540 Self::DeleteP => "DELETE_P",
8541 Self::Delimiter => "DELIMITER",
8542 Self::Delimiters => "DELIMITERS",
8543 Self::Depends => "DEPENDS",
8544 Self::Depth => "DEPTH",
8545 Self::Desc => "DESC",
8546 Self::Detach => "DETACH",
8547 Self::Dictionary => "DICTIONARY",
8548 Self::DisableP => "DISABLE_P",
8549 Self::Discard => "DISCARD",
8550 Self::Distinct => "DISTINCT",
8551 Self::Do => "DO",
8552 Self::DocumentP => "DOCUMENT_P",
8553 Self::DomainP => "DOMAIN_P",
8554 Self::DoubleP => "DOUBLE_P",
8555 Self::Drop => "DROP",
8556 Self::Each => "EACH",
8557 Self::Else => "ELSE",
8558 Self::EmptyP => "EMPTY_P",
8559 Self::EnableP => "ENABLE_P",
8560 Self::Encoding => "ENCODING",
8561 Self::Encrypted => "ENCRYPTED",
8562 Self::EndP => "END_P",
8563 Self::Enforced => "ENFORCED",
8564 Self::EnumP => "ENUM_P",
8565 Self::ErrorP => "ERROR_P",
8566 Self::Escape => "ESCAPE",
8567 Self::Event => "EVENT",
8568 Self::Except => "EXCEPT",
8569 Self::Exclude => "EXCLUDE",
8570 Self::Excluding => "EXCLUDING",
8571 Self::Exclusive => "EXCLUSIVE",
8572 Self::Execute => "EXECUTE",
8573 Self::Exists => "EXISTS",
8574 Self::Explain => "EXPLAIN",
8575 Self::Expression => "EXPRESSION",
8576 Self::Extension => "EXTENSION",
8577 Self::External => "EXTERNAL",
8578 Self::Extract => "EXTRACT",
8579 Self::FalseP => "FALSE_P",
8580 Self::Family => "FAMILY",
8581 Self::Fetch => "FETCH",
8582 Self::Filter => "FILTER",
8583 Self::Finalize => "FINALIZE",
8584 Self::FirstP => "FIRST_P",
8585 Self::FloatP => "FLOAT_P",
8586 Self::Following => "FOLLOWING",
8587 Self::For => "FOR",
8588 Self::Force => "FORCE",
8589 Self::Foreign => "FOREIGN",
8590 Self::Format => "FORMAT",
8591 Self::Forward => "FORWARD",
8592 Self::Freeze => "FREEZE",
8593 Self::From => "FROM",
8594 Self::Full => "FULL",
8595 Self::Function => "FUNCTION",
8596 Self::Functions => "FUNCTIONS",
8597 Self::Generated => "GENERATED",
8598 Self::Global => "GLOBAL",
8599 Self::Grant => "GRANT",
8600 Self::Granted => "GRANTED",
8601 Self::Greatest => "GREATEST",
8602 Self::GroupP => "GROUP_P",
8603 Self::Grouping => "GROUPING",
8604 Self::Groups => "GROUPS",
8605 Self::Handler => "HANDLER",
8606 Self::Having => "HAVING",
8607 Self::HeaderP => "HEADER_P",
8608 Self::Hold => "HOLD",
8609 Self::HourP => "HOUR_P",
8610 Self::IdentityP => "IDENTITY_P",
8611 Self::IfP => "IF_P",
8612 Self::Ilike => "ILIKE",
8613 Self::Immediate => "IMMEDIATE",
8614 Self::Immutable => "IMMUTABLE",
8615 Self::ImplicitP => "IMPLICIT_P",
8616 Self::ImportP => "IMPORT_P",
8617 Self::InP => "IN_P",
8618 Self::Include => "INCLUDE",
8619 Self::Including => "INCLUDING",
8620 Self::Increment => "INCREMENT",
8621 Self::Indent => "INDENT",
8622 Self::Index => "INDEX",
8623 Self::Indexes => "INDEXES",
8624 Self::Inherit => "INHERIT",
8625 Self::Inherits => "INHERITS",
8626 Self::Initially => "INITIALLY",
8627 Self::InlineP => "INLINE_P",
8628 Self::InnerP => "INNER_P",
8629 Self::Inout => "INOUT",
8630 Self::InputP => "INPUT_P",
8631 Self::Insensitive => "INSENSITIVE",
8632 Self::Insert => "INSERT",
8633 Self::Instead => "INSTEAD",
8634 Self::IntP => "INT_P",
8635 Self::Integer => "INTEGER",
8636 Self::Intersect => "INTERSECT",
8637 Self::Interval => "INTERVAL",
8638 Self::Into => "INTO",
8639 Self::Invoker => "INVOKER",
8640 Self::Is => "IS",
8641 Self::Isnull => "ISNULL",
8642 Self::Isolation => "ISOLATION",
8643 Self::Join => "JOIN",
8644 Self::Json => "JSON",
8645 Self::JsonArray => "JSON_ARRAY",
8646 Self::JsonArrayagg => "JSON_ARRAYAGG",
8647 Self::JsonExists => "JSON_EXISTS",
8648 Self::JsonObject => "JSON_OBJECT",
8649 Self::JsonObjectagg => "JSON_OBJECTAGG",
8650 Self::JsonQuery => "JSON_QUERY",
8651 Self::JsonScalar => "JSON_SCALAR",
8652 Self::JsonSerialize => "JSON_SERIALIZE",
8653 Self::JsonTable => "JSON_TABLE",
8654 Self::JsonValue => "JSON_VALUE",
8655 Self::Keep => "KEEP",
8656 Self::Key => "KEY",
8657 Self::Keys => "KEYS",
8658 Self::Label => "LABEL",
8659 Self::Language => "LANGUAGE",
8660 Self::LargeP => "LARGE_P",
8661 Self::LastP => "LAST_P",
8662 Self::LateralP => "LATERAL_P",
8663 Self::Leading => "LEADING",
8664 Self::Leakproof => "LEAKPROOF",
8665 Self::Least => "LEAST",
8666 Self::Left => "LEFT",
8667 Self::Level => "LEVEL",
8668 Self::Like => "LIKE",
8669 Self::Limit => "LIMIT",
8670 Self::Listen => "LISTEN",
8671 Self::Load => "LOAD",
8672 Self::Local => "LOCAL",
8673 Self::Localtime => "LOCALTIME",
8674 Self::Localtimestamp => "LOCALTIMESTAMP",
8675 Self::Location => "LOCATION",
8676 Self::LockP => "LOCK_P",
8677 Self::Locked => "LOCKED",
8678 Self::Logged => "LOGGED",
8679 Self::Mapping => "MAPPING",
8680 Self::Match => "MATCH",
8681 Self::Matched => "MATCHED",
8682 Self::Materialized => "MATERIALIZED",
8683 Self::Maxvalue => "MAXVALUE",
8684 Self::Merge => "MERGE",
8685 Self::MergeAction => "MERGE_ACTION",
8686 Self::Method => "METHOD",
8687 Self::MinuteP => "MINUTE_P",
8688 Self::Minvalue => "MINVALUE",
8689 Self::Mode => "MODE",
8690 Self::MonthP => "MONTH_P",
8691 Self::Move => "MOVE",
8692 Self::NameP => "NAME_P",
8693 Self::Names => "NAMES",
8694 Self::National => "NATIONAL",
8695 Self::Natural => "NATURAL",
8696 Self::Nchar => "NCHAR",
8697 Self::Nested => "NESTED",
8698 Self::New => "NEW",
8699 Self::Next => "NEXT",
8700 Self::Nfc => "NFC",
8701 Self::Nfd => "NFD",
8702 Self::Nfkc => "NFKC",
8703 Self::Nfkd => "NFKD",
8704 Self::No => "NO",
8705 Self::None => "NONE",
8706 Self::Normalize => "NORMALIZE",
8707 Self::Normalized => "NORMALIZED",
8708 Self::Not => "NOT",
8709 Self::Nothing => "NOTHING",
8710 Self::Notify => "NOTIFY",
8711 Self::Notnull => "NOTNULL",
8712 Self::Nowait => "NOWAIT",
8713 Self::NullP => "NULL_P",
8714 Self::Nullif => "NULLIF",
8715 Self::NullsP => "NULLS_P",
8716 Self::Numeric => "NUMERIC",
8717 Self::ObjectP => "OBJECT_P",
8718 Self::ObjectsP => "OBJECTS_P",
8719 Self::Of => "OF",
8720 Self::Off => "OFF",
8721 Self::Offset => "OFFSET",
8722 Self::Oids => "OIDS",
8723 Self::Old => "OLD",
8724 Self::Omit => "OMIT",
8725 Self::On => "ON",
8726 Self::Only => "ONLY",
8727 Self::Operator => "OPERATOR",
8728 Self::Option => "OPTION",
8729 Self::Options => "OPTIONS",
8730 Self::Or => "OR",
8731 Self::Order => "ORDER",
8732 Self::Ordinality => "ORDINALITY",
8733 Self::Others => "OTHERS",
8734 Self::OutP => "OUT_P",
8735 Self::OuterP => "OUTER_P",
8736 Self::Over => "OVER",
8737 Self::Overlaps => "OVERLAPS",
8738 Self::Overlay => "OVERLAY",
8739 Self::Overriding => "OVERRIDING",
8740 Self::Owned => "OWNED",
8741 Self::Owner => "OWNER",
8742 Self::Parallel => "PARALLEL",
8743 Self::Parameter => "PARAMETER",
8744 Self::Parser => "PARSER",
8745 Self::Partial => "PARTIAL",
8746 Self::Partition => "PARTITION",
8747 Self::Passing => "PASSING",
8748 Self::Password => "PASSWORD",
8749 Self::Path => "PATH",
8750 Self::Period => "PERIOD",
8751 Self::Placing => "PLACING",
8752 Self::Plan => "PLAN",
8753 Self::Plans => "PLANS",
8754 Self::Policy => "POLICY",
8755 Self::Position => "POSITION",
8756 Self::Preceding => "PRECEDING",
8757 Self::Precision => "PRECISION",
8758 Self::Preserve => "PRESERVE",
8759 Self::Prepare => "PREPARE",
8760 Self::Prepared => "PREPARED",
8761 Self::Primary => "PRIMARY",
8762 Self::Prior => "PRIOR",
8763 Self::Privileges => "PRIVILEGES",
8764 Self::Procedural => "PROCEDURAL",
8765 Self::Procedure => "PROCEDURE",
8766 Self::Procedures => "PROCEDURES",
8767 Self::Program => "PROGRAM",
8768 Self::Publication => "PUBLICATION",
8769 Self::Quote => "QUOTE",
8770 Self::Quotes => "QUOTES",
8771 Self::Range => "RANGE",
8772 Self::Read => "READ",
8773 Self::Real => "REAL",
8774 Self::Reassign => "REASSIGN",
8775 Self::Recursive => "RECURSIVE",
8776 Self::RefP => "REF_P",
8777 Self::References => "REFERENCES",
8778 Self::Referencing => "REFERENCING",
8779 Self::Refresh => "REFRESH",
8780 Self::Reindex => "REINDEX",
8781 Self::RelativeP => "RELATIVE_P",
8782 Self::Release => "RELEASE",
8783 Self::Rename => "RENAME",
8784 Self::Repeatable => "REPEATABLE",
8785 Self::Replace => "REPLACE",
8786 Self::Replica => "REPLICA",
8787 Self::Reset => "RESET",
8788 Self::Restart => "RESTART",
8789 Self::Restrict => "RESTRICT",
8790 Self::Return => "RETURN",
8791 Self::Returning => "RETURNING",
8792 Self::Returns => "RETURNS",
8793 Self::Revoke => "REVOKE",
8794 Self::Right => "RIGHT",
8795 Self::Role => "ROLE",
8796 Self::Rollback => "ROLLBACK",
8797 Self::Rollup => "ROLLUP",
8798 Self::Routine => "ROUTINE",
8799 Self::Routines => "ROUTINES",
8800 Self::Row => "ROW",
8801 Self::Rows => "ROWS",
8802 Self::Rule => "RULE",
8803 Self::Savepoint => "SAVEPOINT",
8804 Self::Scalar => "SCALAR",
8805 Self::Schema => "SCHEMA",
8806 Self::Schemas => "SCHEMAS",
8807 Self::Scroll => "SCROLL",
8808 Self::Search => "SEARCH",
8809 Self::SecondP => "SECOND_P",
8810 Self::Security => "SECURITY",
8811 Self::Select => "SELECT",
8812 Self::Sequence => "SEQUENCE",
8813 Self::Sequences => "SEQUENCES",
8814 Self::Serializable => "SERIALIZABLE",
8815 Self::Server => "SERVER",
8816 Self::Session => "SESSION",
8817 Self::SessionUser => "SESSION_USER",
8818 Self::Set => "SET",
8819 Self::Sets => "SETS",
8820 Self::Setof => "SETOF",
8821 Self::Share => "SHARE",
8822 Self::Show => "SHOW",
8823 Self::Similar => "SIMILAR",
8824 Self::Simple => "SIMPLE",
8825 Self::Skip => "SKIP",
8826 Self::Smallint => "SMALLINT",
8827 Self::Snapshot => "SNAPSHOT",
8828 Self::Some => "SOME",
8829 Self::Source => "SOURCE",
8830 Self::SqlP => "SQL_P",
8831 Self::Stable => "STABLE",
8832 Self::StandaloneP => "STANDALONE_P",
8833 Self::Start => "START",
8834 Self::Statement => "STATEMENT",
8835 Self::Statistics => "STATISTICS",
8836 Self::Stdin => "STDIN",
8837 Self::Stdout => "STDOUT",
8838 Self::Storage => "STORAGE",
8839 Self::Stored => "STORED",
8840 Self::StrictP => "STRICT_P",
8841 Self::StringP => "STRING_P",
8842 Self::StripP => "STRIP_P",
8843 Self::Subscription => "SUBSCRIPTION",
8844 Self::Substring => "SUBSTRING",
8845 Self::Support => "SUPPORT",
8846 Self::Symmetric => "SYMMETRIC",
8847 Self::Sysid => "SYSID",
8848 Self::SystemP => "SYSTEM_P",
8849 Self::SystemUser => "SYSTEM_USER",
8850 Self::Table => "TABLE",
8851 Self::Tables => "TABLES",
8852 Self::Tablesample => "TABLESAMPLE",
8853 Self::Tablespace => "TABLESPACE",
8854 Self::Target => "TARGET",
8855 Self::Temp => "TEMP",
8856 Self::Template => "TEMPLATE",
8857 Self::Temporary => "TEMPORARY",
8858 Self::TextP => "TEXT_P",
8859 Self::Then => "THEN",
8860 Self::Ties => "TIES",
8861 Self::Time => "TIME",
8862 Self::Timestamp => "TIMESTAMP",
8863 Self::To => "TO",
8864 Self::Trailing => "TRAILING",
8865 Self::Transaction => "TRANSACTION",
8866 Self::Transform => "TRANSFORM",
8867 Self::Treat => "TREAT",
8868 Self::Trigger => "TRIGGER",
8869 Self::Trim => "TRIM",
8870 Self::TrueP => "TRUE_P",
8871 Self::Truncate => "TRUNCATE",
8872 Self::Trusted => "TRUSTED",
8873 Self::TypeP => "TYPE_P",
8874 Self::TypesP => "TYPES_P",
8875 Self::Uescape => "UESCAPE",
8876 Self::Unbounded => "UNBOUNDED",
8877 Self::Unconditional => "UNCONDITIONAL",
8878 Self::Uncommitted => "UNCOMMITTED",
8879 Self::Unencrypted => "UNENCRYPTED",
8880 Self::Union => "UNION",
8881 Self::Unique => "UNIQUE",
8882 Self::Unknown => "UNKNOWN",
8883 Self::Unlisten => "UNLISTEN",
8884 Self::Unlogged => "UNLOGGED",
8885 Self::Until => "UNTIL",
8886 Self::Update => "UPDATE",
8887 Self::User => "USER",
8888 Self::Using => "USING",
8889 Self::Vacuum => "VACUUM",
8890 Self::Valid => "VALID",
8891 Self::Validate => "VALIDATE",
8892 Self::Validator => "VALIDATOR",
8893 Self::ValueP => "VALUE_P",
8894 Self::Values => "VALUES",
8895 Self::Varchar => "VARCHAR",
8896 Self::Variadic => "VARIADIC",
8897 Self::Varying => "VARYING",
8898 Self::Verbose => "VERBOSE",
8899 Self::VersionP => "VERSION_P",
8900 Self::View => "VIEW",
8901 Self::Views => "VIEWS",
8902 Self::Virtual => "VIRTUAL",
8903 Self::Volatile => "VOLATILE",
8904 Self::When => "WHEN",
8905 Self::Where => "WHERE",
8906 Self::WhitespaceP => "WHITESPACE_P",
8907 Self::Window => "WINDOW",
8908 Self::With => "WITH",
8909 Self::Within => "WITHIN",
8910 Self::Without => "WITHOUT",
8911 Self::Work => "WORK",
8912 Self::Wrapper => "WRAPPER",
8913 Self::Write => "WRITE",
8914 Self::XmlP => "XML_P",
8915 Self::Xmlattributes => "XMLATTRIBUTES",
8916 Self::Xmlconcat => "XMLCONCAT",
8917 Self::Xmlelement => "XMLELEMENT",
8918 Self::Xmlexists => "XMLEXISTS",
8919 Self::Xmlforest => "XMLFOREST",
8920 Self::Xmlnamespaces => "XMLNAMESPACES",
8921 Self::Xmlparse => "XMLPARSE",
8922 Self::Xmlpi => "XMLPI",
8923 Self::Xmlroot => "XMLROOT",
8924 Self::Xmlserialize => "XMLSERIALIZE",
8925 Self::Xmltable => "XMLTABLE",
8926 Self::YearP => "YEAR_P",
8927 Self::YesP => "YES_P",
8928 Self::Zone => "ZONE",
8929 Self::FormatLa => "FORMAT_LA",
8930 Self::NotLa => "NOT_LA",
8931 Self::NullsLa => "NULLS_LA",
8932 Self::WithLa => "WITH_LA",
8933 Self::WithoutLa => "WITHOUT_LA",
8934 Self::ModeTypeName => "MODE_TYPE_NAME",
8935 Self::ModePlpgsqlExpr => "MODE_PLPGSQL_EXPR",
8936 Self::ModePlpgsqlAssign1 => "MODE_PLPGSQL_ASSIGN1",
8937 Self::ModePlpgsqlAssign2 => "MODE_PLPGSQL_ASSIGN2",
8938 Self::ModePlpgsqlAssign3 => "MODE_PLPGSQL_ASSIGN3",
8939 Self::Uminus => "UMINUS",
8940 }
8941 }
8942 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
8944 match value {
8945 "NUL" => Some(Self::Nul),
8946 "ASCII_36" => Some(Self::Ascii36),
8947 "ASCII_37" => Some(Self::Ascii37),
8948 "ASCII_40" => Some(Self::Ascii40),
8949 "ASCII_41" => Some(Self::Ascii41),
8950 "ASCII_42" => Some(Self::Ascii42),
8951 "ASCII_43" => Some(Self::Ascii43),
8952 "ASCII_44" => Some(Self::Ascii44),
8953 "ASCII_45" => Some(Self::Ascii45),
8954 "ASCII_46" => Some(Self::Ascii46),
8955 "ASCII_47" => Some(Self::Ascii47),
8956 "ASCII_58" => Some(Self::Ascii58),
8957 "ASCII_59" => Some(Self::Ascii59),
8958 "ASCII_60" => Some(Self::Ascii60),
8959 "ASCII_61" => Some(Self::Ascii61),
8960 "ASCII_62" => Some(Self::Ascii62),
8961 "ASCII_63" => Some(Self::Ascii63),
8962 "ASCII_91" => Some(Self::Ascii91),
8963 "ASCII_92" => Some(Self::Ascii92),
8964 "ASCII_93" => Some(Self::Ascii93),
8965 "ASCII_94" => Some(Self::Ascii94),
8966 "IDENT" => Some(Self::Ident),
8967 "UIDENT" => Some(Self::Uident),
8968 "FCONST" => Some(Self::Fconst),
8969 "SCONST" => Some(Self::Sconst),
8970 "USCONST" => Some(Self::Usconst),
8971 "BCONST" => Some(Self::Bconst),
8972 "XCONST" => Some(Self::Xconst),
8973 "Op" => Some(Self::Op),
8974 "ICONST" => Some(Self::Iconst),
8975 "PARAM" => Some(Self::Param),
8976 "TYPECAST" => Some(Self::Typecast),
8977 "DOT_DOT" => Some(Self::DotDot),
8978 "COLON_EQUALS" => Some(Self::ColonEquals),
8979 "EQUALS_GREATER" => Some(Self::EqualsGreater),
8980 "LESS_EQUALS" => Some(Self::LessEquals),
8981 "GREATER_EQUALS" => Some(Self::GreaterEquals),
8982 "NOT_EQUALS" => Some(Self::NotEquals),
8983 "SQL_COMMENT" => Some(Self::SqlComment),
8984 "C_COMMENT" => Some(Self::CComment),
8985 "ABORT_P" => Some(Self::AbortP),
8986 "ABSENT" => Some(Self::Absent),
8987 "ABSOLUTE_P" => Some(Self::AbsoluteP),
8988 "ACCESS" => Some(Self::Access),
8989 "ACTION" => Some(Self::Action),
8990 "ADD_P" => Some(Self::AddP),
8991 "ADMIN" => Some(Self::Admin),
8992 "AFTER" => Some(Self::After),
8993 "AGGREGATE" => Some(Self::Aggregate),
8994 "ALL" => Some(Self::All),
8995 "ALSO" => Some(Self::Also),
8996 "ALTER" => Some(Self::Alter),
8997 "ALWAYS" => Some(Self::Always),
8998 "ANALYSE" => Some(Self::Analyse),
8999 "ANALYZE" => Some(Self::Analyze),
9000 "AND" => Some(Self::And),
9001 "ANY" => Some(Self::Any),
9002 "ARRAY" => Some(Self::Array),
9003 "AS" => Some(Self::As),
9004 "ASC" => Some(Self::Asc),
9005 "ASENSITIVE" => Some(Self::Asensitive),
9006 "ASSERTION" => Some(Self::Assertion),
9007 "ASSIGNMENT" => Some(Self::Assignment),
9008 "ASYMMETRIC" => Some(Self::Asymmetric),
9009 "ATOMIC" => Some(Self::Atomic),
9010 "AT" => Some(Self::At),
9011 "ATTACH" => Some(Self::Attach),
9012 "ATTRIBUTE" => Some(Self::Attribute),
9013 "AUTHORIZATION" => Some(Self::Authorization),
9014 "BACKWARD" => Some(Self::Backward),
9015 "BEFORE" => Some(Self::Before),
9016 "BEGIN_P" => Some(Self::BeginP),
9017 "BETWEEN" => Some(Self::Between),
9018 "BIGINT" => Some(Self::Bigint),
9019 "BINARY" => Some(Self::Binary),
9020 "BIT" => Some(Self::Bit),
9021 "BOOLEAN_P" => Some(Self::BooleanP),
9022 "BOTH" => Some(Self::Both),
9023 "BREADTH" => Some(Self::Breadth),
9024 "BY" => Some(Self::By),
9025 "CACHE" => Some(Self::Cache),
9026 "CALL" => Some(Self::Call),
9027 "CALLED" => Some(Self::Called),
9028 "CASCADE" => Some(Self::Cascade),
9029 "CASCADED" => Some(Self::Cascaded),
9030 "CASE" => Some(Self::Case),
9031 "CAST" => Some(Self::Cast),
9032 "CATALOG_P" => Some(Self::CatalogP),
9033 "CHAIN" => Some(Self::Chain),
9034 "CHAR_P" => Some(Self::CharP),
9035 "CHARACTER" => Some(Self::Character),
9036 "CHARACTERISTICS" => Some(Self::Characteristics),
9037 "CHECK" => Some(Self::Check),
9038 "CHECKPOINT" => Some(Self::Checkpoint),
9039 "CLASS" => Some(Self::Class),
9040 "CLOSE" => Some(Self::Close),
9041 "CLUSTER" => Some(Self::Cluster),
9042 "COALESCE" => Some(Self::Coalesce),
9043 "COLLATE" => Some(Self::Collate),
9044 "COLLATION" => Some(Self::Collation),
9045 "COLUMN" => Some(Self::Column),
9046 "COLUMNS" => Some(Self::Columns),
9047 "COMMENT" => Some(Self::Comment),
9048 "COMMENTS" => Some(Self::Comments),
9049 "COMMIT" => Some(Self::Commit),
9050 "COMMITTED" => Some(Self::Committed),
9051 "COMPRESSION" => Some(Self::Compression),
9052 "CONCURRENTLY" => Some(Self::Concurrently),
9053 "CONDITIONAL" => Some(Self::Conditional),
9054 "CONFIGURATION" => Some(Self::Configuration),
9055 "CONFLICT" => Some(Self::Conflict),
9056 "CONNECTION" => Some(Self::Connection),
9057 "CONSTRAINT" => Some(Self::Constraint),
9058 "CONSTRAINTS" => Some(Self::Constraints),
9059 "CONTENT_P" => Some(Self::ContentP),
9060 "CONTINUE_P" => Some(Self::ContinueP),
9061 "CONVERSION_P" => Some(Self::ConversionP),
9062 "COPY" => Some(Self::Copy),
9063 "COST" => Some(Self::Cost),
9064 "CREATE" => Some(Self::Create),
9065 "CROSS" => Some(Self::Cross),
9066 "CSV" => Some(Self::Csv),
9067 "CUBE" => Some(Self::Cube),
9068 "CURRENT_P" => Some(Self::CurrentP),
9069 "CURRENT_CATALOG" => Some(Self::CurrentCatalog),
9070 "CURRENT_DATE" => Some(Self::CurrentDate),
9071 "CURRENT_ROLE" => Some(Self::CurrentRole),
9072 "CURRENT_SCHEMA" => Some(Self::CurrentSchema),
9073 "CURRENT_TIME" => Some(Self::CurrentTime),
9074 "CURRENT_TIMESTAMP" => Some(Self::CurrentTimestamp),
9075 "CURRENT_USER" => Some(Self::CurrentUser),
9076 "CURSOR" => Some(Self::Cursor),
9077 "CYCLE" => Some(Self::Cycle),
9078 "DATA_P" => Some(Self::DataP),
9079 "DATABASE" => Some(Self::Database),
9080 "DAY_P" => Some(Self::DayP),
9081 "DEALLOCATE" => Some(Self::Deallocate),
9082 "DEC" => Some(Self::Dec),
9083 "DECIMAL_P" => Some(Self::DecimalP),
9084 "DECLARE" => Some(Self::Declare),
9085 "DEFAULT" => Some(Self::Default),
9086 "DEFAULTS" => Some(Self::Defaults),
9087 "DEFERRABLE" => Some(Self::Deferrable),
9088 "DEFERRED" => Some(Self::Deferred),
9089 "DEFINER" => Some(Self::Definer),
9090 "DELETE_P" => Some(Self::DeleteP),
9091 "DELIMITER" => Some(Self::Delimiter),
9092 "DELIMITERS" => Some(Self::Delimiters),
9093 "DEPENDS" => Some(Self::Depends),
9094 "DEPTH" => Some(Self::Depth),
9095 "DESC" => Some(Self::Desc),
9096 "DETACH" => Some(Self::Detach),
9097 "DICTIONARY" => Some(Self::Dictionary),
9098 "DISABLE_P" => Some(Self::DisableP),
9099 "DISCARD" => Some(Self::Discard),
9100 "DISTINCT" => Some(Self::Distinct),
9101 "DO" => Some(Self::Do),
9102 "DOCUMENT_P" => Some(Self::DocumentP),
9103 "DOMAIN_P" => Some(Self::DomainP),
9104 "DOUBLE_P" => Some(Self::DoubleP),
9105 "DROP" => Some(Self::Drop),
9106 "EACH" => Some(Self::Each),
9107 "ELSE" => Some(Self::Else),
9108 "EMPTY_P" => Some(Self::EmptyP),
9109 "ENABLE_P" => Some(Self::EnableP),
9110 "ENCODING" => Some(Self::Encoding),
9111 "ENCRYPTED" => Some(Self::Encrypted),
9112 "END_P" => Some(Self::EndP),
9113 "ENFORCED" => Some(Self::Enforced),
9114 "ENUM_P" => Some(Self::EnumP),
9115 "ERROR_P" => Some(Self::ErrorP),
9116 "ESCAPE" => Some(Self::Escape),
9117 "EVENT" => Some(Self::Event),
9118 "EXCEPT" => Some(Self::Except),
9119 "EXCLUDE" => Some(Self::Exclude),
9120 "EXCLUDING" => Some(Self::Excluding),
9121 "EXCLUSIVE" => Some(Self::Exclusive),
9122 "EXECUTE" => Some(Self::Execute),
9123 "EXISTS" => Some(Self::Exists),
9124 "EXPLAIN" => Some(Self::Explain),
9125 "EXPRESSION" => Some(Self::Expression),
9126 "EXTENSION" => Some(Self::Extension),
9127 "EXTERNAL" => Some(Self::External),
9128 "EXTRACT" => Some(Self::Extract),
9129 "FALSE_P" => Some(Self::FalseP),
9130 "FAMILY" => Some(Self::Family),
9131 "FETCH" => Some(Self::Fetch),
9132 "FILTER" => Some(Self::Filter),
9133 "FINALIZE" => Some(Self::Finalize),
9134 "FIRST_P" => Some(Self::FirstP),
9135 "FLOAT_P" => Some(Self::FloatP),
9136 "FOLLOWING" => Some(Self::Following),
9137 "FOR" => Some(Self::For),
9138 "FORCE" => Some(Self::Force),
9139 "FOREIGN" => Some(Self::Foreign),
9140 "FORMAT" => Some(Self::Format),
9141 "FORWARD" => Some(Self::Forward),
9142 "FREEZE" => Some(Self::Freeze),
9143 "FROM" => Some(Self::From),
9144 "FULL" => Some(Self::Full),
9145 "FUNCTION" => Some(Self::Function),
9146 "FUNCTIONS" => Some(Self::Functions),
9147 "GENERATED" => Some(Self::Generated),
9148 "GLOBAL" => Some(Self::Global),
9149 "GRANT" => Some(Self::Grant),
9150 "GRANTED" => Some(Self::Granted),
9151 "GREATEST" => Some(Self::Greatest),
9152 "GROUP_P" => Some(Self::GroupP),
9153 "GROUPING" => Some(Self::Grouping),
9154 "GROUPS" => Some(Self::Groups),
9155 "HANDLER" => Some(Self::Handler),
9156 "HAVING" => Some(Self::Having),
9157 "HEADER_P" => Some(Self::HeaderP),
9158 "HOLD" => Some(Self::Hold),
9159 "HOUR_P" => Some(Self::HourP),
9160 "IDENTITY_P" => Some(Self::IdentityP),
9161 "IF_P" => Some(Self::IfP),
9162 "ILIKE" => Some(Self::Ilike),
9163 "IMMEDIATE" => Some(Self::Immediate),
9164 "IMMUTABLE" => Some(Self::Immutable),
9165 "IMPLICIT_P" => Some(Self::ImplicitP),
9166 "IMPORT_P" => Some(Self::ImportP),
9167 "IN_P" => Some(Self::InP),
9168 "INCLUDE" => Some(Self::Include),
9169 "INCLUDING" => Some(Self::Including),
9170 "INCREMENT" => Some(Self::Increment),
9171 "INDENT" => Some(Self::Indent),
9172 "INDEX" => Some(Self::Index),
9173 "INDEXES" => Some(Self::Indexes),
9174 "INHERIT" => Some(Self::Inherit),
9175 "INHERITS" => Some(Self::Inherits),
9176 "INITIALLY" => Some(Self::Initially),
9177 "INLINE_P" => Some(Self::InlineP),
9178 "INNER_P" => Some(Self::InnerP),
9179 "INOUT" => Some(Self::Inout),
9180 "INPUT_P" => Some(Self::InputP),
9181 "INSENSITIVE" => Some(Self::Insensitive),
9182 "INSERT" => Some(Self::Insert),
9183 "INSTEAD" => Some(Self::Instead),
9184 "INT_P" => Some(Self::IntP),
9185 "INTEGER" => Some(Self::Integer),
9186 "INTERSECT" => Some(Self::Intersect),
9187 "INTERVAL" => Some(Self::Interval),
9188 "INTO" => Some(Self::Into),
9189 "INVOKER" => Some(Self::Invoker),
9190 "IS" => Some(Self::Is),
9191 "ISNULL" => Some(Self::Isnull),
9192 "ISOLATION" => Some(Self::Isolation),
9193 "JOIN" => Some(Self::Join),
9194 "JSON" => Some(Self::Json),
9195 "JSON_ARRAY" => Some(Self::JsonArray),
9196 "JSON_ARRAYAGG" => Some(Self::JsonArrayagg),
9197 "JSON_EXISTS" => Some(Self::JsonExists),
9198 "JSON_OBJECT" => Some(Self::JsonObject),
9199 "JSON_OBJECTAGG" => Some(Self::JsonObjectagg),
9200 "JSON_QUERY" => Some(Self::JsonQuery),
9201 "JSON_SCALAR" => Some(Self::JsonScalar),
9202 "JSON_SERIALIZE" => Some(Self::JsonSerialize),
9203 "JSON_TABLE" => Some(Self::JsonTable),
9204 "JSON_VALUE" => Some(Self::JsonValue),
9205 "KEEP" => Some(Self::Keep),
9206 "KEY" => Some(Self::Key),
9207 "KEYS" => Some(Self::Keys),
9208 "LABEL" => Some(Self::Label),
9209 "LANGUAGE" => Some(Self::Language),
9210 "LARGE_P" => Some(Self::LargeP),
9211 "LAST_P" => Some(Self::LastP),
9212 "LATERAL_P" => Some(Self::LateralP),
9213 "LEADING" => Some(Self::Leading),
9214 "LEAKPROOF" => Some(Self::Leakproof),
9215 "LEAST" => Some(Self::Least),
9216 "LEFT" => Some(Self::Left),
9217 "LEVEL" => Some(Self::Level),
9218 "LIKE" => Some(Self::Like),
9219 "LIMIT" => Some(Self::Limit),
9220 "LISTEN" => Some(Self::Listen),
9221 "LOAD" => Some(Self::Load),
9222 "LOCAL" => Some(Self::Local),
9223 "LOCALTIME" => Some(Self::Localtime),
9224 "LOCALTIMESTAMP" => Some(Self::Localtimestamp),
9225 "LOCATION" => Some(Self::Location),
9226 "LOCK_P" => Some(Self::LockP),
9227 "LOCKED" => Some(Self::Locked),
9228 "LOGGED" => Some(Self::Logged),
9229 "MAPPING" => Some(Self::Mapping),
9230 "MATCH" => Some(Self::Match),
9231 "MATCHED" => Some(Self::Matched),
9232 "MATERIALIZED" => Some(Self::Materialized),
9233 "MAXVALUE" => Some(Self::Maxvalue),
9234 "MERGE" => Some(Self::Merge),
9235 "MERGE_ACTION" => Some(Self::MergeAction),
9236 "METHOD" => Some(Self::Method),
9237 "MINUTE_P" => Some(Self::MinuteP),
9238 "MINVALUE" => Some(Self::Minvalue),
9239 "MODE" => Some(Self::Mode),
9240 "MONTH_P" => Some(Self::MonthP),
9241 "MOVE" => Some(Self::Move),
9242 "NAME_P" => Some(Self::NameP),
9243 "NAMES" => Some(Self::Names),
9244 "NATIONAL" => Some(Self::National),
9245 "NATURAL" => Some(Self::Natural),
9246 "NCHAR" => Some(Self::Nchar),
9247 "NESTED" => Some(Self::Nested),
9248 "NEW" => Some(Self::New),
9249 "NEXT" => Some(Self::Next),
9250 "NFC" => Some(Self::Nfc),
9251 "NFD" => Some(Self::Nfd),
9252 "NFKC" => Some(Self::Nfkc),
9253 "NFKD" => Some(Self::Nfkd),
9254 "NO" => Some(Self::No),
9255 "NONE" => Some(Self::None),
9256 "NORMALIZE" => Some(Self::Normalize),
9257 "NORMALIZED" => Some(Self::Normalized),
9258 "NOT" => Some(Self::Not),
9259 "NOTHING" => Some(Self::Nothing),
9260 "NOTIFY" => Some(Self::Notify),
9261 "NOTNULL" => Some(Self::Notnull),
9262 "NOWAIT" => Some(Self::Nowait),
9263 "NULL_P" => Some(Self::NullP),
9264 "NULLIF" => Some(Self::Nullif),
9265 "NULLS_P" => Some(Self::NullsP),
9266 "NUMERIC" => Some(Self::Numeric),
9267 "OBJECT_P" => Some(Self::ObjectP),
9268 "OBJECTS_P" => Some(Self::ObjectsP),
9269 "OF" => Some(Self::Of),
9270 "OFF" => Some(Self::Off),
9271 "OFFSET" => Some(Self::Offset),
9272 "OIDS" => Some(Self::Oids),
9273 "OLD" => Some(Self::Old),
9274 "OMIT" => Some(Self::Omit),
9275 "ON" => Some(Self::On),
9276 "ONLY" => Some(Self::Only),
9277 "OPERATOR" => Some(Self::Operator),
9278 "OPTION" => Some(Self::Option),
9279 "OPTIONS" => Some(Self::Options),
9280 "OR" => Some(Self::Or),
9281 "ORDER" => Some(Self::Order),
9282 "ORDINALITY" => Some(Self::Ordinality),
9283 "OTHERS" => Some(Self::Others),
9284 "OUT_P" => Some(Self::OutP),
9285 "OUTER_P" => Some(Self::OuterP),
9286 "OVER" => Some(Self::Over),
9287 "OVERLAPS" => Some(Self::Overlaps),
9288 "OVERLAY" => Some(Self::Overlay),
9289 "OVERRIDING" => Some(Self::Overriding),
9290 "OWNED" => Some(Self::Owned),
9291 "OWNER" => Some(Self::Owner),
9292 "PARALLEL" => Some(Self::Parallel),
9293 "PARAMETER" => Some(Self::Parameter),
9294 "PARSER" => Some(Self::Parser),
9295 "PARTIAL" => Some(Self::Partial),
9296 "PARTITION" => Some(Self::Partition),
9297 "PASSING" => Some(Self::Passing),
9298 "PASSWORD" => Some(Self::Password),
9299 "PATH" => Some(Self::Path),
9300 "PERIOD" => Some(Self::Period),
9301 "PLACING" => Some(Self::Placing),
9302 "PLAN" => Some(Self::Plan),
9303 "PLANS" => Some(Self::Plans),
9304 "POLICY" => Some(Self::Policy),
9305 "POSITION" => Some(Self::Position),
9306 "PRECEDING" => Some(Self::Preceding),
9307 "PRECISION" => Some(Self::Precision),
9308 "PRESERVE" => Some(Self::Preserve),
9309 "PREPARE" => Some(Self::Prepare),
9310 "PREPARED" => Some(Self::Prepared),
9311 "PRIMARY" => Some(Self::Primary),
9312 "PRIOR" => Some(Self::Prior),
9313 "PRIVILEGES" => Some(Self::Privileges),
9314 "PROCEDURAL" => Some(Self::Procedural),
9315 "PROCEDURE" => Some(Self::Procedure),
9316 "PROCEDURES" => Some(Self::Procedures),
9317 "PROGRAM" => Some(Self::Program),
9318 "PUBLICATION" => Some(Self::Publication),
9319 "QUOTE" => Some(Self::Quote),
9320 "QUOTES" => Some(Self::Quotes),
9321 "RANGE" => Some(Self::Range),
9322 "READ" => Some(Self::Read),
9323 "REAL" => Some(Self::Real),
9324 "REASSIGN" => Some(Self::Reassign),
9325 "RECURSIVE" => Some(Self::Recursive),
9326 "REF_P" => Some(Self::RefP),
9327 "REFERENCES" => Some(Self::References),
9328 "REFERENCING" => Some(Self::Referencing),
9329 "REFRESH" => Some(Self::Refresh),
9330 "REINDEX" => Some(Self::Reindex),
9331 "RELATIVE_P" => Some(Self::RelativeP),
9332 "RELEASE" => Some(Self::Release),
9333 "RENAME" => Some(Self::Rename),
9334 "REPEATABLE" => Some(Self::Repeatable),
9335 "REPLACE" => Some(Self::Replace),
9336 "REPLICA" => Some(Self::Replica),
9337 "RESET" => Some(Self::Reset),
9338 "RESTART" => Some(Self::Restart),
9339 "RESTRICT" => Some(Self::Restrict),
9340 "RETURN" => Some(Self::Return),
9341 "RETURNING" => Some(Self::Returning),
9342 "RETURNS" => Some(Self::Returns),
9343 "REVOKE" => Some(Self::Revoke),
9344 "RIGHT" => Some(Self::Right),
9345 "ROLE" => Some(Self::Role),
9346 "ROLLBACK" => Some(Self::Rollback),
9347 "ROLLUP" => Some(Self::Rollup),
9348 "ROUTINE" => Some(Self::Routine),
9349 "ROUTINES" => Some(Self::Routines),
9350 "ROW" => Some(Self::Row),
9351 "ROWS" => Some(Self::Rows),
9352 "RULE" => Some(Self::Rule),
9353 "SAVEPOINT" => Some(Self::Savepoint),
9354 "SCALAR" => Some(Self::Scalar),
9355 "SCHEMA" => Some(Self::Schema),
9356 "SCHEMAS" => Some(Self::Schemas),
9357 "SCROLL" => Some(Self::Scroll),
9358 "SEARCH" => Some(Self::Search),
9359 "SECOND_P" => Some(Self::SecondP),
9360 "SECURITY" => Some(Self::Security),
9361 "SELECT" => Some(Self::Select),
9362 "SEQUENCE" => Some(Self::Sequence),
9363 "SEQUENCES" => Some(Self::Sequences),
9364 "SERIALIZABLE" => Some(Self::Serializable),
9365 "SERVER" => Some(Self::Server),
9366 "SESSION" => Some(Self::Session),
9367 "SESSION_USER" => Some(Self::SessionUser),
9368 "SET" => Some(Self::Set),
9369 "SETS" => Some(Self::Sets),
9370 "SETOF" => Some(Self::Setof),
9371 "SHARE" => Some(Self::Share),
9372 "SHOW" => Some(Self::Show),
9373 "SIMILAR" => Some(Self::Similar),
9374 "SIMPLE" => Some(Self::Simple),
9375 "SKIP" => Some(Self::Skip),
9376 "SMALLINT" => Some(Self::Smallint),
9377 "SNAPSHOT" => Some(Self::Snapshot),
9378 "SOME" => Some(Self::Some),
9379 "SOURCE" => Some(Self::Source),
9380 "SQL_P" => Some(Self::SqlP),
9381 "STABLE" => Some(Self::Stable),
9382 "STANDALONE_P" => Some(Self::StandaloneP),
9383 "START" => Some(Self::Start),
9384 "STATEMENT" => Some(Self::Statement),
9385 "STATISTICS" => Some(Self::Statistics),
9386 "STDIN" => Some(Self::Stdin),
9387 "STDOUT" => Some(Self::Stdout),
9388 "STORAGE" => Some(Self::Storage),
9389 "STORED" => Some(Self::Stored),
9390 "STRICT_P" => Some(Self::StrictP),
9391 "STRING_P" => Some(Self::StringP),
9392 "STRIP_P" => Some(Self::StripP),
9393 "SUBSCRIPTION" => Some(Self::Subscription),
9394 "SUBSTRING" => Some(Self::Substring),
9395 "SUPPORT" => Some(Self::Support),
9396 "SYMMETRIC" => Some(Self::Symmetric),
9397 "SYSID" => Some(Self::Sysid),
9398 "SYSTEM_P" => Some(Self::SystemP),
9399 "SYSTEM_USER" => Some(Self::SystemUser),
9400 "TABLE" => Some(Self::Table),
9401 "TABLES" => Some(Self::Tables),
9402 "TABLESAMPLE" => Some(Self::Tablesample),
9403 "TABLESPACE" => Some(Self::Tablespace),
9404 "TARGET" => Some(Self::Target),
9405 "TEMP" => Some(Self::Temp),
9406 "TEMPLATE" => Some(Self::Template),
9407 "TEMPORARY" => Some(Self::Temporary),
9408 "TEXT_P" => Some(Self::TextP),
9409 "THEN" => Some(Self::Then),
9410 "TIES" => Some(Self::Ties),
9411 "TIME" => Some(Self::Time),
9412 "TIMESTAMP" => Some(Self::Timestamp),
9413 "TO" => Some(Self::To),
9414 "TRAILING" => Some(Self::Trailing),
9415 "TRANSACTION" => Some(Self::Transaction),
9416 "TRANSFORM" => Some(Self::Transform),
9417 "TREAT" => Some(Self::Treat),
9418 "TRIGGER" => Some(Self::Trigger),
9419 "TRIM" => Some(Self::Trim),
9420 "TRUE_P" => Some(Self::TrueP),
9421 "TRUNCATE" => Some(Self::Truncate),
9422 "TRUSTED" => Some(Self::Trusted),
9423 "TYPE_P" => Some(Self::TypeP),
9424 "TYPES_P" => Some(Self::TypesP),
9425 "UESCAPE" => Some(Self::Uescape),
9426 "UNBOUNDED" => Some(Self::Unbounded),
9427 "UNCONDITIONAL" => Some(Self::Unconditional),
9428 "UNCOMMITTED" => Some(Self::Uncommitted),
9429 "UNENCRYPTED" => Some(Self::Unencrypted),
9430 "UNION" => Some(Self::Union),
9431 "UNIQUE" => Some(Self::Unique),
9432 "UNKNOWN" => Some(Self::Unknown),
9433 "UNLISTEN" => Some(Self::Unlisten),
9434 "UNLOGGED" => Some(Self::Unlogged),
9435 "UNTIL" => Some(Self::Until),
9436 "UPDATE" => Some(Self::Update),
9437 "USER" => Some(Self::User),
9438 "USING" => Some(Self::Using),
9439 "VACUUM" => Some(Self::Vacuum),
9440 "VALID" => Some(Self::Valid),
9441 "VALIDATE" => Some(Self::Validate),
9442 "VALIDATOR" => Some(Self::Validator),
9443 "VALUE_P" => Some(Self::ValueP),
9444 "VALUES" => Some(Self::Values),
9445 "VARCHAR" => Some(Self::Varchar),
9446 "VARIADIC" => Some(Self::Variadic),
9447 "VARYING" => Some(Self::Varying),
9448 "VERBOSE" => Some(Self::Verbose),
9449 "VERSION_P" => Some(Self::VersionP),
9450 "VIEW" => Some(Self::View),
9451 "VIEWS" => Some(Self::Views),
9452 "VIRTUAL" => Some(Self::Virtual),
9453 "VOLATILE" => Some(Self::Volatile),
9454 "WHEN" => Some(Self::When),
9455 "WHERE" => Some(Self::Where),
9456 "WHITESPACE_P" => Some(Self::WhitespaceP),
9457 "WINDOW" => Some(Self::Window),
9458 "WITH" => Some(Self::With),
9459 "WITHIN" => Some(Self::Within),
9460 "WITHOUT" => Some(Self::Without),
9461 "WORK" => Some(Self::Work),
9462 "WRAPPER" => Some(Self::Wrapper),
9463 "WRITE" => Some(Self::Write),
9464 "XML_P" => Some(Self::XmlP),
9465 "XMLATTRIBUTES" => Some(Self::Xmlattributes),
9466 "XMLCONCAT" => Some(Self::Xmlconcat),
9467 "XMLELEMENT" => Some(Self::Xmlelement),
9468 "XMLEXISTS" => Some(Self::Xmlexists),
9469 "XMLFOREST" => Some(Self::Xmlforest),
9470 "XMLNAMESPACES" => Some(Self::Xmlnamespaces),
9471 "XMLPARSE" => Some(Self::Xmlparse),
9472 "XMLPI" => Some(Self::Xmlpi),
9473 "XMLROOT" => Some(Self::Xmlroot),
9474 "XMLSERIALIZE" => Some(Self::Xmlserialize),
9475 "XMLTABLE" => Some(Self::Xmltable),
9476 "YEAR_P" => Some(Self::YearP),
9477 "YES_P" => Some(Self::YesP),
9478 "ZONE" => Some(Self::Zone),
9479 "FORMAT_LA" => Some(Self::FormatLa),
9480 "NOT_LA" => Some(Self::NotLa),
9481 "NULLS_LA" => Some(Self::NullsLa),
9482 "WITH_LA" => Some(Self::WithLa),
9483 "WITHOUT_LA" => Some(Self::WithoutLa),
9484 "MODE_TYPE_NAME" => Some(Self::ModeTypeName),
9485 "MODE_PLPGSQL_EXPR" => Some(Self::ModePlpgsqlExpr),
9486 "MODE_PLPGSQL_ASSIGN1" => Some(Self::ModePlpgsqlAssign1),
9487 "MODE_PLPGSQL_ASSIGN2" => Some(Self::ModePlpgsqlAssign2),
9488 "MODE_PLPGSQL_ASSIGN3" => Some(Self::ModePlpgsqlAssign3),
9489 "UMINUS" => Some(Self::Uminus),
9490 _ => None,
9491 }
9492 }
9493}