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 #[derive(serde::Serialize)]
30 #[derive(Clone, PartialEq, ::prost::Oneof)]
31 pub enum Node {
32 #[prost(message, tag = "1")]
33 Alias(super::Alias),
34 #[prost(message, tag = "2")]
35 RangeVar(super::RangeVar),
36 #[prost(message, tag = "3")]
37 TableFunc(::prost::alloc::boxed::Box<super::TableFunc>),
38 #[prost(message, tag = "4")]
39 IntoClause(::prost::alloc::boxed::Box<super::IntoClause>),
40 #[prost(message, tag = "5")]
41 Var(::prost::alloc::boxed::Box<super::Var>),
42 #[prost(message, tag = "6")]
43 Param(::prost::alloc::boxed::Box<super::Param>),
44 #[prost(message, tag = "7")]
45 Aggref(::prost::alloc::boxed::Box<super::Aggref>),
46 #[prost(message, tag = "8")]
47 GroupingFunc(::prost::alloc::boxed::Box<super::GroupingFunc>),
48 #[prost(message, tag = "9")]
49 WindowFunc(::prost::alloc::boxed::Box<super::WindowFunc>),
50 #[prost(message, tag = "10")]
51 WindowFuncRunCondition(
52 ::prost::alloc::boxed::Box<super::WindowFuncRunCondition>,
53 ),
54 #[prost(message, tag = "11")]
55 MergeSupportFunc(::prost::alloc::boxed::Box<super::MergeSupportFunc>),
56 #[prost(message, tag = "12")]
57 SubscriptingRef(::prost::alloc::boxed::Box<super::SubscriptingRef>),
58 #[prost(message, tag = "13")]
59 FuncExpr(::prost::alloc::boxed::Box<super::FuncExpr>),
60 #[prost(message, tag = "14")]
61 NamedArgExpr(::prost::alloc::boxed::Box<super::NamedArgExpr>),
62 #[prost(message, tag = "15")]
63 OpExpr(::prost::alloc::boxed::Box<super::OpExpr>),
64 #[prost(message, tag = "16")]
65 DistinctExpr(::prost::alloc::boxed::Box<super::DistinctExpr>),
66 #[prost(message, tag = "17")]
67 NullIfExpr(::prost::alloc::boxed::Box<super::NullIfExpr>),
68 #[prost(message, tag = "18")]
69 ScalarArrayOpExpr(::prost::alloc::boxed::Box<super::ScalarArrayOpExpr>),
70 #[prost(message, tag = "19")]
71 BoolExpr(::prost::alloc::boxed::Box<super::BoolExpr>),
72 #[prost(message, tag = "20")]
73 SubLink(::prost::alloc::boxed::Box<super::SubLink>),
74 #[prost(message, tag = "21")]
75 SubPlan(::prost::alloc::boxed::Box<super::SubPlan>),
76 #[prost(message, tag = "22")]
77 AlternativeSubPlan(::prost::alloc::boxed::Box<super::AlternativeSubPlan>),
78 #[prost(message, tag = "23")]
79 FieldSelect(::prost::alloc::boxed::Box<super::FieldSelect>),
80 #[prost(message, tag = "24")]
81 FieldStore(::prost::alloc::boxed::Box<super::FieldStore>),
82 #[prost(message, tag = "25")]
83 RelabelType(::prost::alloc::boxed::Box<super::RelabelType>),
84 #[prost(message, tag = "26")]
85 CoerceViaIo(::prost::alloc::boxed::Box<super::CoerceViaIo>),
86 #[prost(message, tag = "27")]
87 ArrayCoerceExpr(::prost::alloc::boxed::Box<super::ArrayCoerceExpr>),
88 #[prost(message, tag = "28")]
89 ConvertRowtypeExpr(::prost::alloc::boxed::Box<super::ConvertRowtypeExpr>),
90 #[prost(message, tag = "29")]
91 CollateExpr(::prost::alloc::boxed::Box<super::CollateExpr>),
92 #[prost(message, tag = "30")]
93 CaseExpr(::prost::alloc::boxed::Box<super::CaseExpr>),
94 #[prost(message, tag = "31")]
95 CaseWhen(::prost::alloc::boxed::Box<super::CaseWhen>),
96 #[prost(message, tag = "32")]
97 CaseTestExpr(::prost::alloc::boxed::Box<super::CaseTestExpr>),
98 #[prost(message, tag = "33")]
99 ArrayExpr(::prost::alloc::boxed::Box<super::ArrayExpr>),
100 #[prost(message, tag = "34")]
101 RowExpr(::prost::alloc::boxed::Box<super::RowExpr>),
102 #[prost(message, tag = "35")]
103 RowCompareExpr(::prost::alloc::boxed::Box<super::RowCompareExpr>),
104 #[prost(message, tag = "36")]
105 CoalesceExpr(::prost::alloc::boxed::Box<super::CoalesceExpr>),
106 #[prost(message, tag = "37")]
107 MinMaxExpr(::prost::alloc::boxed::Box<super::MinMaxExpr>),
108 #[prost(message, tag = "38")]
109 SqlvalueFunction(::prost::alloc::boxed::Box<super::SqlValueFunction>),
110 #[prost(message, tag = "39")]
111 XmlExpr(::prost::alloc::boxed::Box<super::XmlExpr>),
112 #[prost(message, tag = "40")]
113 JsonFormat(super::JsonFormat),
114 #[prost(message, tag = "41")]
115 JsonReturning(super::JsonReturning),
116 #[prost(message, tag = "42")]
117 JsonValueExpr(::prost::alloc::boxed::Box<super::JsonValueExpr>),
118 #[prost(message, tag = "43")]
119 JsonConstructorExpr(::prost::alloc::boxed::Box<super::JsonConstructorExpr>),
120 #[prost(message, tag = "44")]
121 JsonIsPredicate(::prost::alloc::boxed::Box<super::JsonIsPredicate>),
122 #[prost(message, tag = "45")]
123 JsonBehavior(::prost::alloc::boxed::Box<super::JsonBehavior>),
124 #[prost(message, tag = "46")]
125 JsonExpr(::prost::alloc::boxed::Box<super::JsonExpr>),
126 #[prost(message, tag = "47")]
127 JsonTablePath(super::JsonTablePath),
128 #[prost(message, tag = "48")]
129 JsonTablePathScan(::prost::alloc::boxed::Box<super::JsonTablePathScan>),
130 #[prost(message, tag = "49")]
131 JsonTableSiblingJoin(::prost::alloc::boxed::Box<super::JsonTableSiblingJoin>),
132 #[prost(message, tag = "50")]
133 NullTest(::prost::alloc::boxed::Box<super::NullTest>),
134 #[prost(message, tag = "51")]
135 BooleanTest(::prost::alloc::boxed::Box<super::BooleanTest>),
136 #[prost(message, tag = "52")]
137 MergeAction(::prost::alloc::boxed::Box<super::MergeAction>),
138 #[prost(message, tag = "53")]
139 CoerceToDomain(::prost::alloc::boxed::Box<super::CoerceToDomain>),
140 #[prost(message, tag = "54")]
141 CoerceToDomainValue(::prost::alloc::boxed::Box<super::CoerceToDomainValue>),
142 #[prost(message, tag = "55")]
143 SetToDefault(::prost::alloc::boxed::Box<super::SetToDefault>),
144 #[prost(message, tag = "56")]
145 CurrentOfExpr(::prost::alloc::boxed::Box<super::CurrentOfExpr>),
146 #[prost(message, tag = "57")]
147 NextValueExpr(::prost::alloc::boxed::Box<super::NextValueExpr>),
148 #[prost(message, tag = "58")]
149 InferenceElem(::prost::alloc::boxed::Box<super::InferenceElem>),
150 #[prost(message, tag = "59")]
151 ReturningExpr(::prost::alloc::boxed::Box<super::ReturningExpr>),
152 #[prost(message, tag = "60")]
153 TargetEntry(::prost::alloc::boxed::Box<super::TargetEntry>),
154 #[prost(message, tag = "61")]
155 RangeTblRef(super::RangeTblRef),
156 #[prost(message, tag = "62")]
157 JoinExpr(::prost::alloc::boxed::Box<super::JoinExpr>),
158 #[prost(message, tag = "63")]
159 FromExpr(::prost::alloc::boxed::Box<super::FromExpr>),
160 #[prost(message, tag = "64")]
161 OnConflictExpr(::prost::alloc::boxed::Box<super::OnConflictExpr>),
162 #[prost(message, tag = "65")]
163 Query(::prost::alloc::boxed::Box<super::Query>),
164 #[prost(message, tag = "66")]
165 TypeName(super::TypeName),
166 #[prost(message, tag = "67")]
167 ColumnRef(super::ColumnRef),
168 #[prost(message, tag = "68")]
169 ParamRef(super::ParamRef),
170 #[prost(message, tag = "69")]
171 AExpr(::prost::alloc::boxed::Box<super::AExpr>),
172 #[prost(message, tag = "70")]
173 TypeCast(::prost::alloc::boxed::Box<super::TypeCast>),
174 #[prost(message, tag = "71")]
175 CollateClause(::prost::alloc::boxed::Box<super::CollateClause>),
176 #[prost(message, tag = "72")]
177 RoleSpec(super::RoleSpec),
178 #[prost(message, tag = "73")]
179 FuncCall(::prost::alloc::boxed::Box<super::FuncCall>),
180 #[prost(message, tag = "74")]
181 AStar(super::AStar),
182 #[prost(message, tag = "75")]
183 AIndices(::prost::alloc::boxed::Box<super::AIndices>),
184 #[prost(message, tag = "76")]
185 AIndirection(::prost::alloc::boxed::Box<super::AIndirection>),
186 #[prost(message, tag = "77")]
187 AArrayExpr(super::AArrayExpr),
188 #[prost(message, tag = "78")]
189 ResTarget(::prost::alloc::boxed::Box<super::ResTarget>),
190 #[prost(message, tag = "79")]
191 MultiAssignRef(::prost::alloc::boxed::Box<super::MultiAssignRef>),
192 #[prost(message, tag = "80")]
193 SortBy(::prost::alloc::boxed::Box<super::SortBy>),
194 #[prost(message, tag = "81")]
195 WindowDef(::prost::alloc::boxed::Box<super::WindowDef>),
196 #[prost(message, tag = "82")]
197 RangeSubselect(::prost::alloc::boxed::Box<super::RangeSubselect>),
198 #[prost(message, tag = "83")]
199 RangeFunction(super::RangeFunction),
200 #[prost(message, tag = "84")]
201 RangeTableFunc(::prost::alloc::boxed::Box<super::RangeTableFunc>),
202 #[prost(message, tag = "85")]
203 RangeTableFuncCol(::prost::alloc::boxed::Box<super::RangeTableFuncCol>),
204 #[prost(message, tag = "86")]
205 RangeTableSample(::prost::alloc::boxed::Box<super::RangeTableSample>),
206 #[prost(message, tag = "87")]
207 ColumnDef(::prost::alloc::boxed::Box<super::ColumnDef>),
208 #[prost(message, tag = "88")]
209 TableLikeClause(super::TableLikeClause),
210 #[prost(message, tag = "89")]
211 IndexElem(::prost::alloc::boxed::Box<super::IndexElem>),
212 #[prost(message, tag = "90")]
213 DefElem(::prost::alloc::boxed::Box<super::DefElem>),
214 #[prost(message, tag = "91")]
215 LockingClause(super::LockingClause),
216 #[prost(message, tag = "92")]
217 XmlSerialize(::prost::alloc::boxed::Box<super::XmlSerialize>),
218 #[prost(message, tag = "93")]
219 PartitionElem(::prost::alloc::boxed::Box<super::PartitionElem>),
220 #[prost(message, tag = "94")]
221 PartitionSpec(super::PartitionSpec),
222 #[prost(message, tag = "95")]
223 PartitionBoundSpec(super::PartitionBoundSpec),
224 #[prost(message, tag = "96")]
225 PartitionRangeDatum(::prost::alloc::boxed::Box<super::PartitionRangeDatum>),
226 #[prost(message, tag = "97")]
227 PartitionCmd(super::PartitionCmd),
228 #[prost(message, tag = "98")]
229 RangeTblEntry(::prost::alloc::boxed::Box<super::RangeTblEntry>),
230 #[prost(message, tag = "99")]
231 RtepermissionInfo(super::RtePermissionInfo),
232 #[prost(message, tag = "100")]
233 RangeTblFunction(::prost::alloc::boxed::Box<super::RangeTblFunction>),
234 #[prost(message, tag = "101")]
235 TableSampleClause(::prost::alloc::boxed::Box<super::TableSampleClause>),
236 #[prost(message, tag = "102")]
237 WithCheckOption(::prost::alloc::boxed::Box<super::WithCheckOption>),
238 #[prost(message, tag = "103")]
239 SortGroupClause(super::SortGroupClause),
240 #[prost(message, tag = "104")]
241 GroupingSet(super::GroupingSet),
242 #[prost(message, tag = "105")]
243 WindowClause(::prost::alloc::boxed::Box<super::WindowClause>),
244 #[prost(message, tag = "106")]
245 RowMarkClause(super::RowMarkClause),
246 #[prost(message, tag = "107")]
247 WithClause(super::WithClause),
248 #[prost(message, tag = "108")]
249 InferClause(::prost::alloc::boxed::Box<super::InferClause>),
250 #[prost(message, tag = "109")]
251 OnConflictClause(::prost::alloc::boxed::Box<super::OnConflictClause>),
252 #[prost(message, tag = "110")]
253 CtesearchClause(super::CteSearchClause),
254 #[prost(message, tag = "111")]
255 CtecycleClause(::prost::alloc::boxed::Box<super::CteCycleClause>),
256 #[prost(message, tag = "112")]
257 CommonTableExpr(::prost::alloc::boxed::Box<super::CommonTableExpr>),
258 #[prost(message, tag = "113")]
259 MergeWhenClause(::prost::alloc::boxed::Box<super::MergeWhenClause>),
260 #[prost(message, tag = "114")]
261 ReturningOption(super::ReturningOption),
262 #[prost(message, tag = "115")]
263 ReturningClause(super::ReturningClause),
264 #[prost(message, tag = "116")]
265 TriggerTransition(super::TriggerTransition),
266 #[prost(message, tag = "117")]
267 JsonOutput(super::JsonOutput),
268 #[prost(message, tag = "118")]
269 JsonArgument(::prost::alloc::boxed::Box<super::JsonArgument>),
270 #[prost(message, tag = "119")]
271 JsonFuncExpr(::prost::alloc::boxed::Box<super::JsonFuncExpr>),
272 #[prost(message, tag = "120")]
273 JsonTablePathSpec(::prost::alloc::boxed::Box<super::JsonTablePathSpec>),
274 #[prost(message, tag = "121")]
275 JsonTable(::prost::alloc::boxed::Box<super::JsonTable>),
276 #[prost(message, tag = "122")]
277 JsonTableColumn(::prost::alloc::boxed::Box<super::JsonTableColumn>),
278 #[prost(message, tag = "123")]
279 JsonKeyValue(::prost::alloc::boxed::Box<super::JsonKeyValue>),
280 #[prost(message, tag = "124")]
281 JsonParseExpr(::prost::alloc::boxed::Box<super::JsonParseExpr>),
282 #[prost(message, tag = "125")]
283 JsonScalarExpr(::prost::alloc::boxed::Box<super::JsonScalarExpr>),
284 #[prost(message, tag = "126")]
285 JsonSerializeExpr(::prost::alloc::boxed::Box<super::JsonSerializeExpr>),
286 #[prost(message, tag = "127")]
287 JsonObjectConstructor(super::JsonObjectConstructor),
288 #[prost(message, tag = "128")]
289 JsonArrayConstructor(super::JsonArrayConstructor),
290 #[prost(message, tag = "129")]
291 JsonArrayQueryConstructor(
292 ::prost::alloc::boxed::Box<super::JsonArrayQueryConstructor>,
293 ),
294 #[prost(message, tag = "130")]
295 JsonAggConstructor(::prost::alloc::boxed::Box<super::JsonAggConstructor>),
296 #[prost(message, tag = "131")]
297 JsonObjectAgg(::prost::alloc::boxed::Box<super::JsonObjectAgg>),
298 #[prost(message, tag = "132")]
299 JsonArrayAgg(::prost::alloc::boxed::Box<super::JsonArrayAgg>),
300 #[prost(message, tag = "133")]
301 RawStmt(::prost::alloc::boxed::Box<super::RawStmt>),
302 #[prost(message, tag = "134")]
303 InsertStmt(::prost::alloc::boxed::Box<super::InsertStmt>),
304 #[prost(message, tag = "135")]
305 DeleteStmt(::prost::alloc::boxed::Box<super::DeleteStmt>),
306 #[prost(message, tag = "136")]
307 UpdateStmt(::prost::alloc::boxed::Box<super::UpdateStmt>),
308 #[prost(message, tag = "137")]
309 MergeStmt(::prost::alloc::boxed::Box<super::MergeStmt>),
310 #[prost(message, tag = "138")]
311 SelectStmt(::prost::alloc::boxed::Box<super::SelectStmt>),
312 #[prost(message, tag = "139")]
313 SetOperationStmt(::prost::alloc::boxed::Box<super::SetOperationStmt>),
314 #[prost(message, tag = "140")]
315 ReturnStmt(::prost::alloc::boxed::Box<super::ReturnStmt>),
316 #[prost(message, tag = "141")]
317 PlassignStmt(::prost::alloc::boxed::Box<super::PlAssignStmt>),
318 #[prost(message, tag = "142")]
319 CreateSchemaStmt(super::CreateSchemaStmt),
320 #[prost(message, tag = "143")]
321 AlterTableStmt(super::AlterTableStmt),
322 #[prost(message, tag = "144")]
323 AlterTableCmd(::prost::alloc::boxed::Box<super::AlterTableCmd>),
324 #[prost(message, tag = "145")]
325 AtalterConstraint(super::AtAlterConstraint),
326 #[prost(message, tag = "146")]
327 ReplicaIdentityStmt(super::ReplicaIdentityStmt),
328 #[prost(message, tag = "147")]
329 AlterCollationStmt(super::AlterCollationStmt),
330 #[prost(message, tag = "148")]
331 AlterDomainStmt(::prost::alloc::boxed::Box<super::AlterDomainStmt>),
332 #[prost(message, tag = "149")]
333 GrantStmt(super::GrantStmt),
334 #[prost(message, tag = "150")]
335 ObjectWithArgs(super::ObjectWithArgs),
336 #[prost(message, tag = "151")]
337 AccessPriv(super::AccessPriv),
338 #[prost(message, tag = "152")]
339 GrantRoleStmt(super::GrantRoleStmt),
340 #[prost(message, tag = "153")]
341 AlterDefaultPrivilegesStmt(super::AlterDefaultPrivilegesStmt),
342 #[prost(message, tag = "154")]
343 CopyStmt(::prost::alloc::boxed::Box<super::CopyStmt>),
344 #[prost(message, tag = "155")]
345 VariableSetStmt(super::VariableSetStmt),
346 #[prost(message, tag = "156")]
347 VariableShowStmt(super::VariableShowStmt),
348 #[prost(message, tag = "157")]
349 CreateStmt(super::CreateStmt),
350 #[prost(message, tag = "158")]
351 Constraint(::prost::alloc::boxed::Box<super::Constraint>),
352 #[prost(message, tag = "159")]
353 CreateTableSpaceStmt(super::CreateTableSpaceStmt),
354 #[prost(message, tag = "160")]
355 DropTableSpaceStmt(super::DropTableSpaceStmt),
356 #[prost(message, tag = "161")]
357 AlterTableSpaceOptionsStmt(super::AlterTableSpaceOptionsStmt),
358 #[prost(message, tag = "162")]
359 AlterTableMoveAllStmt(super::AlterTableMoveAllStmt),
360 #[prost(message, tag = "163")]
361 CreateExtensionStmt(super::CreateExtensionStmt),
362 #[prost(message, tag = "164")]
363 AlterExtensionStmt(super::AlterExtensionStmt),
364 #[prost(message, tag = "165")]
365 AlterExtensionContentsStmt(
366 ::prost::alloc::boxed::Box<super::AlterExtensionContentsStmt>,
367 ),
368 #[prost(message, tag = "166")]
369 CreateFdwStmt(super::CreateFdwStmt),
370 #[prost(message, tag = "167")]
371 AlterFdwStmt(super::AlterFdwStmt),
372 #[prost(message, tag = "168")]
373 CreateForeignServerStmt(super::CreateForeignServerStmt),
374 #[prost(message, tag = "169")]
375 AlterForeignServerStmt(super::AlterForeignServerStmt),
376 #[prost(message, tag = "170")]
377 CreateForeignTableStmt(super::CreateForeignTableStmt),
378 #[prost(message, tag = "171")]
379 CreateUserMappingStmt(super::CreateUserMappingStmt),
380 #[prost(message, tag = "172")]
381 AlterUserMappingStmt(super::AlterUserMappingStmt),
382 #[prost(message, tag = "173")]
383 DropUserMappingStmt(super::DropUserMappingStmt),
384 #[prost(message, tag = "174")]
385 ImportForeignSchemaStmt(super::ImportForeignSchemaStmt),
386 #[prost(message, tag = "175")]
387 CreatePolicyStmt(::prost::alloc::boxed::Box<super::CreatePolicyStmt>),
388 #[prost(message, tag = "176")]
389 AlterPolicyStmt(::prost::alloc::boxed::Box<super::AlterPolicyStmt>),
390 #[prost(message, tag = "177")]
391 CreateAmStmt(super::CreateAmStmt),
392 #[prost(message, tag = "178")]
393 CreateTrigStmt(::prost::alloc::boxed::Box<super::CreateTrigStmt>),
394 #[prost(message, tag = "179")]
395 CreateEventTrigStmt(super::CreateEventTrigStmt),
396 #[prost(message, tag = "180")]
397 AlterEventTrigStmt(super::AlterEventTrigStmt),
398 #[prost(message, tag = "181")]
399 CreatePlangStmt(super::CreatePLangStmt),
400 #[prost(message, tag = "182")]
401 CreateRoleStmt(super::CreateRoleStmt),
402 #[prost(message, tag = "183")]
403 AlterRoleStmt(super::AlterRoleStmt),
404 #[prost(message, tag = "184")]
405 AlterRoleSetStmt(super::AlterRoleSetStmt),
406 #[prost(message, tag = "185")]
407 DropRoleStmt(super::DropRoleStmt),
408 #[prost(message, tag = "186")]
409 CreateSeqStmt(super::CreateSeqStmt),
410 #[prost(message, tag = "187")]
411 AlterSeqStmt(super::AlterSeqStmt),
412 #[prost(message, tag = "188")]
413 DefineStmt(super::DefineStmt),
414 #[prost(message, tag = "189")]
415 CreateDomainStmt(::prost::alloc::boxed::Box<super::CreateDomainStmt>),
416 #[prost(message, tag = "190")]
417 CreateOpClassStmt(super::CreateOpClassStmt),
418 #[prost(message, tag = "191")]
419 CreateOpClassItem(super::CreateOpClassItem),
420 #[prost(message, tag = "192")]
421 CreateOpFamilyStmt(super::CreateOpFamilyStmt),
422 #[prost(message, tag = "193")]
423 AlterOpFamilyStmt(super::AlterOpFamilyStmt),
424 #[prost(message, tag = "194")]
425 DropStmt(super::DropStmt),
426 #[prost(message, tag = "195")]
427 TruncateStmt(super::TruncateStmt),
428 #[prost(message, tag = "196")]
429 CommentStmt(::prost::alloc::boxed::Box<super::CommentStmt>),
430 #[prost(message, tag = "197")]
431 SecLabelStmt(::prost::alloc::boxed::Box<super::SecLabelStmt>),
432 #[prost(message, tag = "198")]
433 DeclareCursorStmt(::prost::alloc::boxed::Box<super::DeclareCursorStmt>),
434 #[prost(message, tag = "199")]
435 ClosePortalStmt(super::ClosePortalStmt),
436 #[prost(message, tag = "200")]
437 FetchStmt(super::FetchStmt),
438 #[prost(message, tag = "201")]
439 IndexStmt(::prost::alloc::boxed::Box<super::IndexStmt>),
440 #[prost(message, tag = "202")]
441 CreateStatsStmt(super::CreateStatsStmt),
442 #[prost(message, tag = "203")]
443 StatsElem(::prost::alloc::boxed::Box<super::StatsElem>),
444 #[prost(message, tag = "204")]
445 AlterStatsStmt(::prost::alloc::boxed::Box<super::AlterStatsStmt>),
446 #[prost(message, tag = "205")]
447 CreateFunctionStmt(::prost::alloc::boxed::Box<super::CreateFunctionStmt>),
448 #[prost(message, tag = "206")]
449 FunctionParameter(::prost::alloc::boxed::Box<super::FunctionParameter>),
450 #[prost(message, tag = "207")]
451 AlterFunctionStmt(super::AlterFunctionStmt),
452 #[prost(message, tag = "208")]
453 DoStmt(super::DoStmt),
454 #[prost(message, tag = "209")]
455 InlineCodeBlock(super::InlineCodeBlock),
456 #[prost(message, tag = "210")]
457 CallStmt(::prost::alloc::boxed::Box<super::CallStmt>),
458 #[prost(message, tag = "211")]
459 CallContext(super::CallContext),
460 #[prost(message, tag = "212")]
461 RenameStmt(::prost::alloc::boxed::Box<super::RenameStmt>),
462 #[prost(message, tag = "213")]
463 AlterObjectDependsStmt(
464 ::prost::alloc::boxed::Box<super::AlterObjectDependsStmt>,
465 ),
466 #[prost(message, tag = "214")]
467 AlterObjectSchemaStmt(::prost::alloc::boxed::Box<super::AlterObjectSchemaStmt>),
468 #[prost(message, tag = "215")]
469 AlterOwnerStmt(::prost::alloc::boxed::Box<super::AlterOwnerStmt>),
470 #[prost(message, tag = "216")]
471 AlterOperatorStmt(super::AlterOperatorStmt),
472 #[prost(message, tag = "217")]
473 AlterTypeStmt(super::AlterTypeStmt),
474 #[prost(message, tag = "218")]
475 RuleStmt(::prost::alloc::boxed::Box<super::RuleStmt>),
476 #[prost(message, tag = "219")]
477 NotifyStmt(super::NotifyStmt),
478 #[prost(message, tag = "220")]
479 ListenStmt(super::ListenStmt),
480 #[prost(message, tag = "221")]
481 UnlistenStmt(super::UnlistenStmt),
482 #[prost(message, tag = "222")]
483 TransactionStmt(super::TransactionStmt),
484 #[prost(message, tag = "223")]
485 CompositeTypeStmt(super::CompositeTypeStmt),
486 #[prost(message, tag = "224")]
487 CreateEnumStmt(super::CreateEnumStmt),
488 #[prost(message, tag = "225")]
489 CreateRangeStmt(super::CreateRangeStmt),
490 #[prost(message, tag = "226")]
491 AlterEnumStmt(super::AlterEnumStmt),
492 #[prost(message, tag = "227")]
493 ViewStmt(::prost::alloc::boxed::Box<super::ViewStmt>),
494 #[prost(message, tag = "228")]
495 LoadStmt(super::LoadStmt),
496 #[prost(message, tag = "229")]
497 CreatedbStmt(super::CreatedbStmt),
498 #[prost(message, tag = "230")]
499 AlterDatabaseStmt(super::AlterDatabaseStmt),
500 #[prost(message, tag = "231")]
501 AlterDatabaseRefreshCollStmt(super::AlterDatabaseRefreshCollStmt),
502 #[prost(message, tag = "232")]
503 AlterDatabaseSetStmt(super::AlterDatabaseSetStmt),
504 #[prost(message, tag = "233")]
505 DropdbStmt(super::DropdbStmt),
506 #[prost(message, tag = "234")]
507 AlterSystemStmt(super::AlterSystemStmt),
508 #[prost(message, tag = "235")]
509 ClusterStmt(super::ClusterStmt),
510 #[prost(message, tag = "236")]
511 VacuumStmt(super::VacuumStmt),
512 #[prost(message, tag = "237")]
513 VacuumRelation(super::VacuumRelation),
514 #[prost(message, tag = "238")]
515 ExplainStmt(::prost::alloc::boxed::Box<super::ExplainStmt>),
516 #[prost(message, tag = "239")]
517 CreateTableAsStmt(::prost::alloc::boxed::Box<super::CreateTableAsStmt>),
518 #[prost(message, tag = "240")]
519 RefreshMatViewStmt(super::RefreshMatViewStmt),
520 #[prost(message, tag = "241")]
521 CheckPointStmt(super::CheckPointStmt),
522 #[prost(message, tag = "242")]
523 DiscardStmt(super::DiscardStmt),
524 #[prost(message, tag = "243")]
525 LockStmt(super::LockStmt),
526 #[prost(message, tag = "244")]
527 ConstraintsSetStmt(super::ConstraintsSetStmt),
528 #[prost(message, tag = "245")]
529 ReindexStmt(super::ReindexStmt),
530 #[prost(message, tag = "246")]
531 CreateConversionStmt(super::CreateConversionStmt),
532 #[prost(message, tag = "247")]
533 CreateCastStmt(super::CreateCastStmt),
534 #[prost(message, tag = "248")]
535 CreateTransformStmt(super::CreateTransformStmt),
536 #[prost(message, tag = "249")]
537 PrepareStmt(::prost::alloc::boxed::Box<super::PrepareStmt>),
538 #[prost(message, tag = "250")]
539 ExecuteStmt(super::ExecuteStmt),
540 #[prost(message, tag = "251")]
541 DeallocateStmt(super::DeallocateStmt),
542 #[prost(message, tag = "252")]
543 DropOwnedStmt(super::DropOwnedStmt),
544 #[prost(message, tag = "253")]
545 ReassignOwnedStmt(super::ReassignOwnedStmt),
546 #[prost(message, tag = "254")]
547 AlterTsdictionaryStmt(super::AlterTsDictionaryStmt),
548 #[prost(message, tag = "255")]
549 AlterTsconfigurationStmt(super::AlterTsConfigurationStmt),
550 #[prost(message, tag = "256")]
551 PublicationTable(::prost::alloc::boxed::Box<super::PublicationTable>),
552 #[prost(message, tag = "257")]
553 PublicationObjSpec(::prost::alloc::boxed::Box<super::PublicationObjSpec>),
554 #[prost(message, tag = "258")]
555 CreatePublicationStmt(super::CreatePublicationStmt),
556 #[prost(message, tag = "259")]
557 AlterPublicationStmt(super::AlterPublicationStmt),
558 #[prost(message, tag = "260")]
559 CreateSubscriptionStmt(super::CreateSubscriptionStmt),
560 #[prost(message, tag = "261")]
561 AlterSubscriptionStmt(super::AlterSubscriptionStmt),
562 #[prost(message, tag = "262")]
563 DropSubscriptionStmt(super::DropSubscriptionStmt),
564 #[prost(message, tag = "263")]
565 Integer(super::Integer),
566 #[prost(message, tag = "264")]
567 Float(super::Float),
568 #[prost(message, tag = "265")]
569 Boolean(super::Boolean),
570 #[prost(message, tag = "266")]
571 String(super::String),
572 #[prost(message, tag = "267")]
573 BitString(super::BitString),
574 #[prost(message, tag = "268")]
575 List(super::List),
576 #[prost(message, tag = "269")]
577 IntList(super::IntList),
578 #[prost(message, tag = "270")]
579 OidList(super::OidList),
580 #[prost(message, tag = "271")]
581 AConst(super::AConst),
582 }
583}
584#[derive(serde::Serialize)]
585#[derive(Clone, Copy, PartialEq, ::prost::Message)]
586pub struct Integer {
587 #[prost(int32, tag = "1")]
589 pub ival: i32,
590}
591#[derive(serde::Serialize)]
592#[derive(Clone, PartialEq, ::prost::Message)]
593pub struct Float {
594 #[prost(string, tag = "1")]
596 pub fval: ::prost::alloc::string::String,
597}
598#[derive(serde::Serialize)]
599#[derive(Clone, Copy, PartialEq, ::prost::Message)]
600pub struct Boolean {
601 #[prost(bool, tag = "1")]
602 pub boolval: bool,
603}
604#[derive(serde::Serialize)]
605#[derive(Clone, PartialEq, ::prost::Message)]
606pub struct String {
607 #[prost(string, tag = "1")]
609 pub sval: ::prost::alloc::string::String,
610}
611#[derive(serde::Serialize)]
612#[derive(Clone, PartialEq, ::prost::Message)]
613pub struct BitString {
614 #[prost(string, tag = "1")]
616 pub bsval: ::prost::alloc::string::String,
617}
618#[derive(serde::Serialize)]
619#[derive(Clone, PartialEq, ::prost::Message)]
620pub struct List {
621 #[prost(message, repeated, tag = "1")]
622 pub items: ::prost::alloc::vec::Vec<Node>,
623}
624#[derive(serde::Serialize)]
625#[derive(Clone, PartialEq, ::prost::Message)]
626pub struct OidList {
627 #[prost(message, repeated, tag = "1")]
628 pub items: ::prost::alloc::vec::Vec<Node>,
629}
630#[derive(serde::Serialize)]
631#[derive(Clone, PartialEq, ::prost::Message)]
632pub struct IntList {
633 #[prost(message, repeated, tag = "1")]
634 pub items: ::prost::alloc::vec::Vec<Node>,
635}
636#[derive(serde::Serialize)]
637#[derive(Clone, PartialEq, ::prost::Message)]
638pub struct AConst {
639 #[prost(bool, tag = "10")]
640 pub isnull: bool,
641 #[prost(int32, tag = "11")]
642 pub location: i32,
643 #[prost(oneof = "a_const::Val", tags = "1, 2, 3, 4, 5")]
644 pub val: ::core::option::Option<a_const::Val>,
645}
646pub mod a_const {
648 #[derive(serde::Serialize)]
649 #[derive(Clone, PartialEq, ::prost::Oneof)]
650 pub enum Val {
651 #[prost(message, tag = "1")]
652 Ival(super::Integer),
653 #[prost(message, tag = "2")]
654 Fval(super::Float),
655 #[prost(message, tag = "3")]
656 Boolval(super::Boolean),
657 #[prost(message, tag = "4")]
658 Sval(super::String),
659 #[prost(message, tag = "5")]
660 Bsval(super::BitString),
661 }
662}
663#[derive(serde::Serialize)]
664#[derive(Clone, PartialEq, ::prost::Message)]
665pub struct Alias {
666 #[prost(string, tag = "1")]
667 pub aliasname: ::prost::alloc::string::String,
668 #[prost(message, repeated, tag = "2")]
669 pub colnames: ::prost::alloc::vec::Vec<Node>,
670}
671#[derive(serde::Serialize)]
672#[derive(Clone, PartialEq, ::prost::Message)]
673pub struct RangeVar {
674 #[prost(string, tag = "1")]
675 pub catalogname: ::prost::alloc::string::String,
676 #[prost(string, tag = "2")]
677 pub schemaname: ::prost::alloc::string::String,
678 #[prost(string, tag = "3")]
679 pub relname: ::prost::alloc::string::String,
680 #[prost(bool, tag = "4")]
681 pub inh: bool,
682 #[prost(string, tag = "5")]
683 pub relpersistence: ::prost::alloc::string::String,
684 #[prost(message, optional, tag = "6")]
685 pub alias: ::core::option::Option<Alias>,
686 #[prost(int32, tag = "7")]
687 pub location: i32,
688}
689#[derive(serde::Serialize)]
690#[derive(Clone, PartialEq, ::prost::Message)]
691pub struct TableFunc {
692 #[prost(enumeration = "TableFuncType", tag = "1")]
693 pub functype: i32,
694 #[prost(message, repeated, tag = "2")]
695 pub ns_uris: ::prost::alloc::vec::Vec<Node>,
696 #[prost(message, repeated, tag = "3")]
697 pub ns_names: ::prost::alloc::vec::Vec<Node>,
698 #[prost(message, optional, boxed, tag = "4")]
699 pub docexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
700 #[prost(message, optional, boxed, tag = "5")]
701 pub rowexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
702 #[prost(message, repeated, tag = "6")]
703 pub colnames: ::prost::alloc::vec::Vec<Node>,
704 #[prost(message, repeated, tag = "7")]
705 pub coltypes: ::prost::alloc::vec::Vec<Node>,
706 #[prost(message, repeated, tag = "8")]
707 pub coltypmods: ::prost::alloc::vec::Vec<Node>,
708 #[prost(message, repeated, tag = "9")]
709 pub colcollations: ::prost::alloc::vec::Vec<Node>,
710 #[prost(message, repeated, tag = "10")]
711 pub colexprs: ::prost::alloc::vec::Vec<Node>,
712 #[prost(message, repeated, tag = "11")]
713 pub coldefexprs: ::prost::alloc::vec::Vec<Node>,
714 #[prost(message, repeated, tag = "12")]
715 pub colvalexprs: ::prost::alloc::vec::Vec<Node>,
716 #[prost(message, repeated, tag = "13")]
717 pub passingvalexprs: ::prost::alloc::vec::Vec<Node>,
718 #[prost(uint64, repeated, tag = "14")]
719 pub notnulls: ::prost::alloc::vec::Vec<u64>,
720 #[prost(message, optional, boxed, tag = "15")]
721 pub plan: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
722 #[prost(int32, tag = "16")]
723 pub ordinalitycol: i32,
724 #[prost(int32, tag = "17")]
725 pub location: i32,
726}
727#[derive(serde::Serialize)]
728#[derive(Clone, PartialEq, ::prost::Message)]
729pub struct IntoClause {
730 #[prost(message, optional, tag = "1")]
731 pub rel: ::core::option::Option<RangeVar>,
732 #[prost(message, repeated, tag = "2")]
733 pub col_names: ::prost::alloc::vec::Vec<Node>,
734 #[prost(string, tag = "3")]
735 pub access_method: ::prost::alloc::string::String,
736 #[prost(message, repeated, tag = "4")]
737 pub options: ::prost::alloc::vec::Vec<Node>,
738 #[prost(enumeration = "OnCommitAction", tag = "5")]
739 pub on_commit: i32,
740 #[prost(string, tag = "6")]
741 pub table_space_name: ::prost::alloc::string::String,
742 #[prost(message, optional, boxed, tag = "7")]
743 pub view_query: ::core::option::Option<::prost::alloc::boxed::Box<Query>>,
744 #[prost(bool, tag = "8")]
745 pub skip_data: bool,
746}
747#[derive(serde::Serialize)]
748#[derive(Clone, PartialEq, ::prost::Message)]
749pub struct Var {
750 #[prost(message, optional, boxed, tag = "1")]
751 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
752 #[prost(int32, tag = "2")]
753 pub varno: i32,
754 #[prost(int32, tag = "3")]
755 pub varattno: i32,
756 #[prost(uint32, tag = "4")]
757 pub vartype: u32,
758 #[prost(int32, tag = "5")]
759 pub vartypmod: i32,
760 #[prost(uint32, tag = "6")]
761 pub varcollid: u32,
762 #[prost(uint64, repeated, tag = "7")]
763 pub varnullingrels: ::prost::alloc::vec::Vec<u64>,
764 #[prost(uint32, tag = "8")]
765 pub varlevelsup: u32,
766 #[prost(enumeration = "VarReturningType", tag = "9")]
767 pub varreturningtype: i32,
768 #[prost(int32, tag = "10")]
769 pub location: i32,
770}
771#[derive(serde::Serialize)]
772#[derive(Clone, PartialEq, ::prost::Message)]
773pub struct Param {
774 #[prost(message, optional, boxed, tag = "1")]
775 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
776 #[prost(enumeration = "ParamKind", tag = "2")]
777 pub paramkind: i32,
778 #[prost(int32, tag = "3")]
779 pub paramid: i32,
780 #[prost(uint32, tag = "4")]
781 pub paramtype: u32,
782 #[prost(int32, tag = "5")]
783 pub paramtypmod: i32,
784 #[prost(uint32, tag = "6")]
785 pub paramcollid: u32,
786 #[prost(int32, tag = "7")]
787 pub location: i32,
788}
789#[derive(serde::Serialize)]
790#[derive(Clone, PartialEq, ::prost::Message)]
791pub struct Aggref {
792 #[prost(message, optional, boxed, tag = "1")]
793 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
794 #[prost(uint32, tag = "2")]
795 pub aggfnoid: u32,
796 #[prost(uint32, tag = "3")]
797 pub aggtype: u32,
798 #[prost(uint32, tag = "4")]
799 pub aggcollid: u32,
800 #[prost(uint32, tag = "5")]
801 pub inputcollid: u32,
802 #[prost(message, repeated, tag = "6")]
803 pub aggargtypes: ::prost::alloc::vec::Vec<Node>,
804 #[prost(message, repeated, tag = "7")]
805 pub aggdirectargs: ::prost::alloc::vec::Vec<Node>,
806 #[prost(message, repeated, tag = "8")]
807 pub args: ::prost::alloc::vec::Vec<Node>,
808 #[prost(message, repeated, tag = "9")]
809 pub aggorder: ::prost::alloc::vec::Vec<Node>,
810 #[prost(message, repeated, tag = "10")]
811 pub aggdistinct: ::prost::alloc::vec::Vec<Node>,
812 #[prost(message, optional, boxed, tag = "11")]
813 pub aggfilter: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
814 #[prost(bool, tag = "12")]
815 pub aggstar: bool,
816 #[prost(bool, tag = "13")]
817 pub aggvariadic: bool,
818 #[prost(string, tag = "14")]
819 pub aggkind: ::prost::alloc::string::String,
820 #[prost(uint32, tag = "15")]
821 pub agglevelsup: u32,
822 #[prost(enumeration = "AggSplit", tag = "16")]
823 pub aggsplit: i32,
824 #[prost(int32, tag = "17")]
825 pub aggno: i32,
826 #[prost(int32, tag = "18")]
827 pub aggtransno: i32,
828 #[prost(int32, tag = "19")]
829 pub location: i32,
830}
831#[derive(serde::Serialize)]
832#[derive(Clone, PartialEq, ::prost::Message)]
833pub struct GroupingFunc {
834 #[prost(message, optional, boxed, tag = "1")]
835 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
836 #[prost(message, repeated, tag = "2")]
837 pub args: ::prost::alloc::vec::Vec<Node>,
838 #[prost(message, repeated, tag = "3")]
839 pub refs: ::prost::alloc::vec::Vec<Node>,
840 #[prost(uint32, tag = "4")]
841 pub agglevelsup: u32,
842 #[prost(int32, tag = "5")]
843 pub location: i32,
844}
845#[derive(serde::Serialize)]
846#[derive(Clone, PartialEq, ::prost::Message)]
847pub struct WindowFunc {
848 #[prost(message, optional, boxed, tag = "1")]
849 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
850 #[prost(uint32, tag = "2")]
851 pub winfnoid: u32,
852 #[prost(uint32, tag = "3")]
853 pub wintype: u32,
854 #[prost(uint32, tag = "4")]
855 pub wincollid: u32,
856 #[prost(uint32, tag = "5")]
857 pub inputcollid: u32,
858 #[prost(message, repeated, tag = "6")]
859 pub args: ::prost::alloc::vec::Vec<Node>,
860 #[prost(message, optional, boxed, tag = "7")]
861 pub aggfilter: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
862 #[prost(message, repeated, tag = "8")]
863 pub run_condition: ::prost::alloc::vec::Vec<Node>,
864 #[prost(uint32, tag = "9")]
865 pub winref: u32,
866 #[prost(bool, tag = "10")]
867 pub winstar: bool,
868 #[prost(bool, tag = "11")]
869 pub winagg: bool,
870 #[prost(int32, tag = "12")]
871 pub location: i32,
872}
873#[derive(serde::Serialize)]
874#[derive(Clone, PartialEq, ::prost::Message)]
875pub struct WindowFuncRunCondition {
876 #[prost(message, optional, boxed, tag = "1")]
877 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
878 #[prost(uint32, tag = "2")]
879 pub opno: u32,
880 #[prost(uint32, tag = "3")]
881 pub inputcollid: u32,
882 #[prost(bool, tag = "4")]
883 pub wfunc_left: bool,
884 #[prost(message, optional, boxed, tag = "5")]
885 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
886}
887#[derive(serde::Serialize)]
888#[derive(Clone, PartialEq, ::prost::Message)]
889pub struct MergeSupportFunc {
890 #[prost(message, optional, boxed, tag = "1")]
891 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
892 #[prost(uint32, tag = "2")]
893 pub msftype: u32,
894 #[prost(uint32, tag = "3")]
895 pub msfcollid: u32,
896 #[prost(int32, tag = "4")]
897 pub location: i32,
898}
899#[derive(serde::Serialize)]
900#[derive(Clone, PartialEq, ::prost::Message)]
901pub struct SubscriptingRef {
902 #[prost(message, optional, boxed, tag = "1")]
903 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
904 #[prost(uint32, tag = "2")]
905 pub refcontainertype: u32,
906 #[prost(uint32, tag = "3")]
907 pub refelemtype: u32,
908 #[prost(uint32, tag = "4")]
909 pub refrestype: u32,
910 #[prost(int32, tag = "5")]
911 pub reftypmod: i32,
912 #[prost(uint32, tag = "6")]
913 pub refcollid: u32,
914 #[prost(message, repeated, tag = "7")]
915 pub refupperindexpr: ::prost::alloc::vec::Vec<Node>,
916 #[prost(message, repeated, tag = "8")]
917 pub reflowerindexpr: ::prost::alloc::vec::Vec<Node>,
918 #[prost(message, optional, boxed, tag = "9")]
919 pub refexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
920 #[prost(message, optional, boxed, tag = "10")]
921 pub refassgnexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
922}
923#[derive(serde::Serialize)]
924#[derive(Clone, PartialEq, ::prost::Message)]
925pub struct FuncExpr {
926 #[prost(message, optional, boxed, tag = "1")]
927 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
928 #[prost(uint32, tag = "2")]
929 pub funcid: u32,
930 #[prost(uint32, tag = "3")]
931 pub funcresulttype: u32,
932 #[prost(bool, tag = "4")]
933 pub funcretset: bool,
934 #[prost(bool, tag = "5")]
935 pub funcvariadic: bool,
936 #[prost(enumeration = "CoercionForm", tag = "6")]
937 pub funcformat: i32,
938 #[prost(uint32, tag = "7")]
939 pub funccollid: u32,
940 #[prost(uint32, tag = "8")]
941 pub inputcollid: u32,
942 #[prost(message, repeated, tag = "9")]
943 pub args: ::prost::alloc::vec::Vec<Node>,
944 #[prost(int32, tag = "10")]
945 pub location: i32,
946}
947#[derive(serde::Serialize)]
948#[derive(Clone, PartialEq, ::prost::Message)]
949pub struct NamedArgExpr {
950 #[prost(message, optional, boxed, tag = "1")]
951 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
952 #[prost(message, optional, boxed, tag = "2")]
953 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
954 #[prost(string, tag = "3")]
955 pub name: ::prost::alloc::string::String,
956 #[prost(int32, tag = "4")]
957 pub argnumber: i32,
958 #[prost(int32, tag = "5")]
959 pub location: i32,
960}
961#[derive(serde::Serialize)]
962#[derive(Clone, PartialEq, ::prost::Message)]
963pub struct OpExpr {
964 #[prost(message, optional, boxed, tag = "1")]
965 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
966 #[prost(uint32, tag = "2")]
967 pub opno: u32,
968 #[prost(uint32, tag = "3")]
969 pub opresulttype: u32,
970 #[prost(bool, tag = "4")]
971 pub opretset: bool,
972 #[prost(uint32, tag = "5")]
973 pub opcollid: u32,
974 #[prost(uint32, tag = "6")]
975 pub inputcollid: u32,
976 #[prost(message, repeated, tag = "7")]
977 pub args: ::prost::alloc::vec::Vec<Node>,
978 #[prost(int32, tag = "8")]
979 pub location: i32,
980}
981#[derive(serde::Serialize)]
982#[derive(Clone, PartialEq, ::prost::Message)]
983pub struct DistinctExpr {
984 #[prost(message, optional, boxed, tag = "1")]
985 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
986 #[prost(uint32, tag = "2")]
987 pub opno: u32,
988 #[prost(uint32, tag = "3")]
989 pub opresulttype: u32,
990 #[prost(bool, tag = "4")]
991 pub opretset: bool,
992 #[prost(uint32, tag = "5")]
993 pub opcollid: u32,
994 #[prost(uint32, tag = "6")]
995 pub inputcollid: u32,
996 #[prost(message, repeated, tag = "7")]
997 pub args: ::prost::alloc::vec::Vec<Node>,
998 #[prost(int32, tag = "8")]
999 pub location: i32,
1000}
1001#[derive(serde::Serialize)]
1002#[derive(Clone, PartialEq, ::prost::Message)]
1003pub struct NullIfExpr {
1004 #[prost(message, optional, boxed, tag = "1")]
1005 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1006 #[prost(uint32, tag = "2")]
1007 pub opno: u32,
1008 #[prost(uint32, tag = "3")]
1009 pub opresulttype: u32,
1010 #[prost(bool, tag = "4")]
1011 pub opretset: bool,
1012 #[prost(uint32, tag = "5")]
1013 pub opcollid: u32,
1014 #[prost(uint32, tag = "6")]
1015 pub inputcollid: u32,
1016 #[prost(message, repeated, tag = "7")]
1017 pub args: ::prost::alloc::vec::Vec<Node>,
1018 #[prost(int32, tag = "8")]
1019 pub location: i32,
1020}
1021#[derive(serde::Serialize)]
1022#[derive(Clone, PartialEq, ::prost::Message)]
1023pub struct ScalarArrayOpExpr {
1024 #[prost(message, optional, boxed, tag = "1")]
1025 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1026 #[prost(uint32, tag = "2")]
1027 pub opno: u32,
1028 #[prost(bool, tag = "3")]
1029 pub use_or: bool,
1030 #[prost(uint32, tag = "4")]
1031 pub inputcollid: u32,
1032 #[prost(message, repeated, tag = "5")]
1033 pub args: ::prost::alloc::vec::Vec<Node>,
1034 #[prost(int32, tag = "6")]
1035 pub location: i32,
1036}
1037#[derive(serde::Serialize)]
1038#[derive(Clone, PartialEq, ::prost::Message)]
1039pub struct BoolExpr {
1040 #[prost(message, optional, boxed, tag = "1")]
1041 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1042 #[prost(enumeration = "BoolExprType", tag = "2")]
1043 pub boolop: i32,
1044 #[prost(message, repeated, tag = "3")]
1045 pub args: ::prost::alloc::vec::Vec<Node>,
1046 #[prost(int32, tag = "4")]
1047 pub location: i32,
1048}
1049#[derive(serde::Serialize)]
1050#[derive(Clone, PartialEq, ::prost::Message)]
1051pub struct SubLink {
1052 #[prost(message, optional, boxed, tag = "1")]
1053 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1054 #[prost(enumeration = "SubLinkType", tag = "2")]
1055 pub sub_link_type: i32,
1056 #[prost(int32, tag = "3")]
1057 pub sub_link_id: i32,
1058 #[prost(message, optional, boxed, tag = "4")]
1059 pub testexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1060 #[prost(message, repeated, tag = "5")]
1061 pub oper_name: ::prost::alloc::vec::Vec<Node>,
1062 #[prost(message, optional, boxed, tag = "6")]
1063 pub subselect: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1064 #[prost(int32, tag = "7")]
1065 pub location: i32,
1066}
1067#[derive(serde::Serialize)]
1068#[derive(Clone, PartialEq, ::prost::Message)]
1069pub struct SubPlan {
1070 #[prost(message, optional, boxed, tag = "1")]
1071 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1072 #[prost(enumeration = "SubLinkType", tag = "2")]
1073 pub sub_link_type: i32,
1074 #[prost(message, optional, boxed, tag = "3")]
1075 pub testexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1076 #[prost(message, repeated, tag = "4")]
1077 pub param_ids: ::prost::alloc::vec::Vec<Node>,
1078 #[prost(int32, tag = "5")]
1079 pub plan_id: i32,
1080 #[prost(string, tag = "6")]
1081 pub plan_name: ::prost::alloc::string::String,
1082 #[prost(uint32, tag = "7")]
1083 pub first_col_type: u32,
1084 #[prost(int32, tag = "8")]
1085 pub first_col_typmod: i32,
1086 #[prost(uint32, tag = "9")]
1087 pub first_col_collation: u32,
1088 #[prost(bool, tag = "10")]
1089 pub use_hash_table: bool,
1090 #[prost(bool, tag = "11")]
1091 pub unknown_eq_false: bool,
1092 #[prost(bool, tag = "12")]
1093 pub parallel_safe: bool,
1094 #[prost(message, repeated, tag = "13")]
1095 pub set_param: ::prost::alloc::vec::Vec<Node>,
1096 #[prost(message, repeated, tag = "14")]
1097 pub par_param: ::prost::alloc::vec::Vec<Node>,
1098 #[prost(message, repeated, tag = "15")]
1099 pub args: ::prost::alloc::vec::Vec<Node>,
1100 #[prost(double, tag = "16")]
1101 pub startup_cost: f64,
1102 #[prost(double, tag = "17")]
1103 pub per_call_cost: f64,
1104}
1105#[derive(serde::Serialize)]
1106#[derive(Clone, PartialEq, ::prost::Message)]
1107pub struct AlternativeSubPlan {
1108 #[prost(message, optional, boxed, tag = "1")]
1109 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1110 #[prost(message, repeated, tag = "2")]
1111 pub subplans: ::prost::alloc::vec::Vec<Node>,
1112}
1113#[derive(serde::Serialize)]
1114#[derive(Clone, PartialEq, ::prost::Message)]
1115pub struct FieldSelect {
1116 #[prost(message, optional, boxed, tag = "1")]
1117 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1118 #[prost(message, optional, boxed, tag = "2")]
1119 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1120 #[prost(int32, tag = "3")]
1121 pub fieldnum: i32,
1122 #[prost(uint32, tag = "4")]
1123 pub resulttype: u32,
1124 #[prost(int32, tag = "5")]
1125 pub resulttypmod: i32,
1126 #[prost(uint32, tag = "6")]
1127 pub resultcollid: u32,
1128}
1129#[derive(serde::Serialize)]
1130#[derive(Clone, PartialEq, ::prost::Message)]
1131pub struct FieldStore {
1132 #[prost(message, optional, boxed, tag = "1")]
1133 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1134 #[prost(message, optional, boxed, tag = "2")]
1135 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1136 #[prost(message, repeated, tag = "3")]
1137 pub newvals: ::prost::alloc::vec::Vec<Node>,
1138 #[prost(message, repeated, tag = "4")]
1139 pub fieldnums: ::prost::alloc::vec::Vec<Node>,
1140 #[prost(uint32, tag = "5")]
1141 pub resulttype: u32,
1142}
1143#[derive(serde::Serialize)]
1144#[derive(Clone, PartialEq, ::prost::Message)]
1145pub struct RelabelType {
1146 #[prost(message, optional, boxed, tag = "1")]
1147 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1148 #[prost(message, optional, boxed, tag = "2")]
1149 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1150 #[prost(uint32, tag = "3")]
1151 pub resulttype: u32,
1152 #[prost(int32, tag = "4")]
1153 pub resulttypmod: i32,
1154 #[prost(uint32, tag = "5")]
1155 pub resultcollid: u32,
1156 #[prost(enumeration = "CoercionForm", tag = "6")]
1157 pub relabelformat: i32,
1158 #[prost(int32, tag = "7")]
1159 pub location: i32,
1160}
1161#[derive(serde::Serialize)]
1162#[derive(Clone, PartialEq, ::prost::Message)]
1163pub struct CoerceViaIo {
1164 #[prost(message, optional, boxed, tag = "1")]
1165 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1166 #[prost(message, optional, boxed, tag = "2")]
1167 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1168 #[prost(uint32, tag = "3")]
1169 pub resulttype: u32,
1170 #[prost(uint32, tag = "4")]
1171 pub resultcollid: u32,
1172 #[prost(enumeration = "CoercionForm", tag = "5")]
1173 pub coerceformat: i32,
1174 #[prost(int32, tag = "6")]
1175 pub location: i32,
1176}
1177#[derive(serde::Serialize)]
1178#[derive(Clone, PartialEq, ::prost::Message)]
1179pub struct ArrayCoerceExpr {
1180 #[prost(message, optional, boxed, tag = "1")]
1181 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1182 #[prost(message, optional, boxed, tag = "2")]
1183 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1184 #[prost(message, optional, boxed, tag = "3")]
1185 pub elemexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1186 #[prost(uint32, tag = "4")]
1187 pub resulttype: u32,
1188 #[prost(int32, tag = "5")]
1189 pub resulttypmod: i32,
1190 #[prost(uint32, tag = "6")]
1191 pub resultcollid: u32,
1192 #[prost(enumeration = "CoercionForm", tag = "7")]
1193 pub coerceformat: i32,
1194 #[prost(int32, tag = "8")]
1195 pub location: i32,
1196}
1197#[derive(serde::Serialize)]
1198#[derive(Clone, PartialEq, ::prost::Message)]
1199pub struct ConvertRowtypeExpr {
1200 #[prost(message, optional, boxed, tag = "1")]
1201 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1202 #[prost(message, optional, boxed, tag = "2")]
1203 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1204 #[prost(uint32, tag = "3")]
1205 pub resulttype: u32,
1206 #[prost(enumeration = "CoercionForm", tag = "4")]
1207 pub convertformat: i32,
1208 #[prost(int32, tag = "5")]
1209 pub location: i32,
1210}
1211#[derive(serde::Serialize)]
1212#[derive(Clone, PartialEq, ::prost::Message)]
1213pub struct CollateExpr {
1214 #[prost(message, optional, boxed, tag = "1")]
1215 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1216 #[prost(message, optional, boxed, tag = "2")]
1217 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1218 #[prost(uint32, tag = "3")]
1219 pub coll_oid: u32,
1220 #[prost(int32, tag = "4")]
1221 pub location: i32,
1222}
1223#[derive(serde::Serialize)]
1224#[derive(Clone, PartialEq, ::prost::Message)]
1225pub struct CaseExpr {
1226 #[prost(message, optional, boxed, tag = "1")]
1227 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1228 #[prost(uint32, tag = "2")]
1229 pub casetype: u32,
1230 #[prost(uint32, tag = "3")]
1231 pub casecollid: u32,
1232 #[prost(message, optional, boxed, tag = "4")]
1233 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1234 #[prost(message, repeated, tag = "5")]
1235 pub args: ::prost::alloc::vec::Vec<Node>,
1236 #[prost(message, optional, boxed, tag = "6")]
1237 pub defresult: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1238 #[prost(int32, tag = "7")]
1239 pub location: i32,
1240}
1241#[derive(serde::Serialize)]
1242#[derive(Clone, PartialEq, ::prost::Message)]
1243pub struct CaseWhen {
1244 #[prost(message, optional, boxed, tag = "1")]
1245 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1246 #[prost(message, optional, boxed, tag = "2")]
1247 pub expr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1248 #[prost(message, optional, boxed, tag = "3")]
1249 pub result: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1250 #[prost(int32, tag = "4")]
1251 pub location: i32,
1252}
1253#[derive(serde::Serialize)]
1254#[derive(Clone, PartialEq, ::prost::Message)]
1255pub struct CaseTestExpr {
1256 #[prost(message, optional, boxed, tag = "1")]
1257 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1258 #[prost(uint32, tag = "2")]
1259 pub type_id: u32,
1260 #[prost(int32, tag = "3")]
1261 pub type_mod: i32,
1262 #[prost(uint32, tag = "4")]
1263 pub collation: u32,
1264}
1265#[derive(serde::Serialize)]
1266#[derive(Clone, PartialEq, ::prost::Message)]
1267pub struct ArrayExpr {
1268 #[prost(message, optional, boxed, tag = "1")]
1269 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1270 #[prost(uint32, tag = "2")]
1271 pub array_typeid: u32,
1272 #[prost(uint32, tag = "3")]
1273 pub array_collid: u32,
1274 #[prost(uint32, tag = "4")]
1275 pub element_typeid: u32,
1276 #[prost(message, repeated, tag = "5")]
1277 pub elements: ::prost::alloc::vec::Vec<Node>,
1278 #[prost(bool, tag = "6")]
1279 pub multidims: bool,
1280 #[prost(int32, tag = "7")]
1281 pub list_start: i32,
1282 #[prost(int32, tag = "8")]
1283 pub list_end: i32,
1284 #[prost(int32, tag = "9")]
1285 pub location: i32,
1286}
1287#[derive(serde::Serialize)]
1288#[derive(Clone, PartialEq, ::prost::Message)]
1289pub struct RowExpr {
1290 #[prost(message, optional, boxed, tag = "1")]
1291 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1292 #[prost(message, repeated, tag = "2")]
1293 pub args: ::prost::alloc::vec::Vec<Node>,
1294 #[prost(uint32, tag = "3")]
1295 pub row_typeid: u32,
1296 #[prost(enumeration = "CoercionForm", tag = "4")]
1297 pub row_format: i32,
1298 #[prost(message, repeated, tag = "5")]
1299 pub colnames: ::prost::alloc::vec::Vec<Node>,
1300 #[prost(int32, tag = "6")]
1301 pub location: i32,
1302}
1303#[derive(serde::Serialize)]
1304#[derive(Clone, PartialEq, ::prost::Message)]
1305pub struct RowCompareExpr {
1306 #[prost(message, optional, boxed, tag = "1")]
1307 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1308 #[prost(enumeration = "CompareType", tag = "2")]
1309 pub cmptype: i32,
1310 #[prost(message, repeated, tag = "3")]
1311 pub opnos: ::prost::alloc::vec::Vec<Node>,
1312 #[prost(message, repeated, tag = "4")]
1313 pub opfamilies: ::prost::alloc::vec::Vec<Node>,
1314 #[prost(message, repeated, tag = "5")]
1315 pub inputcollids: ::prost::alloc::vec::Vec<Node>,
1316 #[prost(message, repeated, tag = "6")]
1317 pub largs: ::prost::alloc::vec::Vec<Node>,
1318 #[prost(message, repeated, tag = "7")]
1319 pub rargs: ::prost::alloc::vec::Vec<Node>,
1320}
1321#[derive(serde::Serialize)]
1322#[derive(Clone, PartialEq, ::prost::Message)]
1323pub struct CoalesceExpr {
1324 #[prost(message, optional, boxed, tag = "1")]
1325 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1326 #[prost(uint32, tag = "2")]
1327 pub coalescetype: u32,
1328 #[prost(uint32, tag = "3")]
1329 pub coalescecollid: u32,
1330 #[prost(message, repeated, tag = "4")]
1331 pub args: ::prost::alloc::vec::Vec<Node>,
1332 #[prost(int32, tag = "5")]
1333 pub location: i32,
1334}
1335#[derive(serde::Serialize)]
1336#[derive(Clone, PartialEq, ::prost::Message)]
1337pub struct MinMaxExpr {
1338 #[prost(message, optional, boxed, tag = "1")]
1339 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1340 #[prost(uint32, tag = "2")]
1341 pub minmaxtype: u32,
1342 #[prost(uint32, tag = "3")]
1343 pub minmaxcollid: u32,
1344 #[prost(uint32, tag = "4")]
1345 pub inputcollid: u32,
1346 #[prost(enumeration = "MinMaxOp", tag = "5")]
1347 pub op: i32,
1348 #[prost(message, repeated, tag = "6")]
1349 pub args: ::prost::alloc::vec::Vec<Node>,
1350 #[prost(int32, tag = "7")]
1351 pub location: i32,
1352}
1353#[derive(serde::Serialize)]
1354#[derive(Clone, PartialEq, ::prost::Message)]
1355pub struct SqlValueFunction {
1356 #[prost(message, optional, boxed, tag = "1")]
1357 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1358 #[prost(enumeration = "SqlValueFunctionOp", tag = "2")]
1359 pub op: i32,
1360 #[prost(uint32, tag = "3")]
1361 pub r#type: u32,
1362 #[prost(int32, tag = "4")]
1363 pub typmod: i32,
1364 #[prost(int32, tag = "5")]
1365 pub location: i32,
1366}
1367#[derive(serde::Serialize)]
1368#[derive(Clone, PartialEq, ::prost::Message)]
1369pub struct XmlExpr {
1370 #[prost(message, optional, boxed, tag = "1")]
1371 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1372 #[prost(enumeration = "XmlExprOp", tag = "2")]
1373 pub op: i32,
1374 #[prost(string, tag = "3")]
1375 pub name: ::prost::alloc::string::String,
1376 #[prost(message, repeated, tag = "4")]
1377 pub named_args: ::prost::alloc::vec::Vec<Node>,
1378 #[prost(message, repeated, tag = "5")]
1379 pub arg_names: ::prost::alloc::vec::Vec<Node>,
1380 #[prost(message, repeated, tag = "6")]
1381 pub args: ::prost::alloc::vec::Vec<Node>,
1382 #[prost(enumeration = "XmlOptionType", tag = "7")]
1383 pub xmloption: i32,
1384 #[prost(bool, tag = "8")]
1385 pub indent: bool,
1386 #[prost(uint32, tag = "9")]
1387 pub r#type: u32,
1388 #[prost(int32, tag = "10")]
1389 pub typmod: i32,
1390 #[prost(int32, tag = "11")]
1391 pub location: i32,
1392}
1393#[derive(serde::Serialize)]
1394#[derive(Clone, Copy, PartialEq, ::prost::Message)]
1395pub struct JsonFormat {
1396 #[prost(enumeration = "JsonFormatType", tag = "1")]
1397 pub format_type: i32,
1398 #[prost(enumeration = "JsonEncoding", tag = "2")]
1399 pub encoding: i32,
1400 #[prost(int32, tag = "3")]
1401 pub location: i32,
1402}
1403#[derive(serde::Serialize)]
1404#[derive(Clone, Copy, PartialEq, ::prost::Message)]
1405pub struct JsonReturning {
1406 #[prost(message, optional, tag = "1")]
1407 pub format: ::core::option::Option<JsonFormat>,
1408 #[prost(uint32, tag = "2")]
1409 pub typid: u32,
1410 #[prost(int32, tag = "3")]
1411 pub typmod: i32,
1412}
1413#[derive(serde::Serialize)]
1414#[derive(Clone, PartialEq, ::prost::Message)]
1415pub struct JsonValueExpr {
1416 #[prost(message, optional, boxed, tag = "1")]
1417 pub raw_expr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1418 #[prost(message, optional, boxed, tag = "2")]
1419 pub formatted_expr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1420 #[prost(message, optional, tag = "3")]
1421 pub format: ::core::option::Option<JsonFormat>,
1422}
1423#[derive(serde::Serialize)]
1424#[derive(Clone, PartialEq, ::prost::Message)]
1425pub struct JsonConstructorExpr {
1426 #[prost(message, optional, boxed, tag = "1")]
1427 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1428 #[prost(enumeration = "JsonConstructorType", tag = "2")]
1429 pub r#type: i32,
1430 #[prost(message, repeated, tag = "3")]
1431 pub args: ::prost::alloc::vec::Vec<Node>,
1432 #[prost(message, optional, boxed, tag = "4")]
1433 pub func: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1434 #[prost(message, optional, boxed, tag = "5")]
1435 pub coercion: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1436 #[prost(message, optional, tag = "6")]
1437 pub returning: ::core::option::Option<JsonReturning>,
1438 #[prost(bool, tag = "7")]
1439 pub absent_on_null: bool,
1440 #[prost(bool, tag = "8")]
1441 pub unique: bool,
1442 #[prost(int32, tag = "9")]
1443 pub location: i32,
1444}
1445#[derive(serde::Serialize)]
1446#[derive(Clone, PartialEq, ::prost::Message)]
1447pub struct JsonIsPredicate {
1448 #[prost(message, optional, boxed, tag = "1")]
1449 pub expr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1450 #[prost(message, optional, tag = "2")]
1451 pub format: ::core::option::Option<JsonFormat>,
1452 #[prost(enumeration = "JsonValueType", tag = "3")]
1453 pub item_type: i32,
1454 #[prost(bool, tag = "4")]
1455 pub unique_keys: bool,
1456 #[prost(int32, tag = "5")]
1457 pub location: i32,
1458}
1459#[derive(serde::Serialize)]
1460#[derive(Clone, PartialEq, ::prost::Message)]
1461pub struct JsonBehavior {
1462 #[prost(enumeration = "JsonBehaviorType", tag = "1")]
1463 pub btype: i32,
1464 #[prost(message, optional, boxed, tag = "2")]
1465 pub expr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1466 #[prost(bool, tag = "3")]
1467 pub coerce: bool,
1468 #[prost(int32, tag = "4")]
1469 pub location: i32,
1470}
1471#[derive(serde::Serialize)]
1472#[derive(Clone, PartialEq, ::prost::Message)]
1473pub struct JsonExpr {
1474 #[prost(message, optional, boxed, tag = "1")]
1475 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1476 #[prost(enumeration = "JsonExprOp", tag = "2")]
1477 pub op: i32,
1478 #[prost(string, tag = "3")]
1479 pub column_name: ::prost::alloc::string::String,
1480 #[prost(message, optional, boxed, tag = "4")]
1481 pub formatted_expr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1482 #[prost(message, optional, tag = "5")]
1483 pub format: ::core::option::Option<JsonFormat>,
1484 #[prost(message, optional, boxed, tag = "6")]
1485 pub path_spec: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1486 #[prost(message, optional, tag = "7")]
1487 pub returning: ::core::option::Option<JsonReturning>,
1488 #[prost(message, repeated, tag = "8")]
1489 pub passing_names: ::prost::alloc::vec::Vec<Node>,
1490 #[prost(message, repeated, tag = "9")]
1491 pub passing_values: ::prost::alloc::vec::Vec<Node>,
1492 #[prost(message, optional, boxed, tag = "10")]
1493 pub on_empty: ::core::option::Option<::prost::alloc::boxed::Box<JsonBehavior>>,
1494 #[prost(message, optional, boxed, tag = "11")]
1495 pub on_error: ::core::option::Option<::prost::alloc::boxed::Box<JsonBehavior>>,
1496 #[prost(bool, tag = "12")]
1497 pub use_io_coercion: bool,
1498 #[prost(bool, tag = "13")]
1499 pub use_json_coercion: bool,
1500 #[prost(enumeration = "JsonWrapper", tag = "14")]
1501 pub wrapper: i32,
1502 #[prost(bool, tag = "15")]
1503 pub omit_quotes: bool,
1504 #[prost(uint32, tag = "16")]
1505 pub collation: u32,
1506 #[prost(int32, tag = "17")]
1507 pub location: i32,
1508}
1509#[derive(serde::Serialize)]
1510#[derive(Clone, PartialEq, ::prost::Message)]
1511pub struct JsonTablePath {
1512 #[prost(string, tag = "1")]
1513 pub name: ::prost::alloc::string::String,
1514}
1515#[derive(serde::Serialize)]
1516#[derive(Clone, PartialEq, ::prost::Message)]
1517pub struct JsonTablePathScan {
1518 #[prost(message, optional, boxed, tag = "1")]
1519 pub plan: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1520 #[prost(message, optional, tag = "2")]
1521 pub path: ::core::option::Option<JsonTablePath>,
1522 #[prost(bool, tag = "3")]
1523 pub error_on_error: bool,
1524 #[prost(message, optional, boxed, tag = "4")]
1525 pub child: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1526 #[prost(int32, tag = "5")]
1527 pub col_min: i32,
1528 #[prost(int32, tag = "6")]
1529 pub col_max: i32,
1530}
1531#[derive(serde::Serialize)]
1532#[derive(Clone, PartialEq, ::prost::Message)]
1533pub struct JsonTableSiblingJoin {
1534 #[prost(message, optional, boxed, tag = "1")]
1535 pub plan: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1536 #[prost(message, optional, boxed, tag = "2")]
1537 pub lplan: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1538 #[prost(message, optional, boxed, tag = "3")]
1539 pub rplan: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1540}
1541#[derive(serde::Serialize)]
1542#[derive(Clone, PartialEq, ::prost::Message)]
1543pub struct NullTest {
1544 #[prost(message, optional, boxed, tag = "1")]
1545 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1546 #[prost(message, optional, boxed, tag = "2")]
1547 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1548 #[prost(enumeration = "NullTestType", tag = "3")]
1549 pub nulltesttype: i32,
1550 #[prost(bool, tag = "4")]
1551 pub argisrow: bool,
1552 #[prost(int32, tag = "5")]
1553 pub location: i32,
1554}
1555#[derive(serde::Serialize)]
1556#[derive(Clone, PartialEq, ::prost::Message)]
1557pub struct BooleanTest {
1558 #[prost(message, optional, boxed, tag = "1")]
1559 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1560 #[prost(message, optional, boxed, tag = "2")]
1561 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1562 #[prost(enumeration = "BoolTestType", tag = "3")]
1563 pub booltesttype: i32,
1564 #[prost(int32, tag = "4")]
1565 pub location: i32,
1566}
1567#[derive(serde::Serialize)]
1568#[derive(Clone, PartialEq, ::prost::Message)]
1569pub struct MergeAction {
1570 #[prost(enumeration = "MergeMatchKind", tag = "1")]
1571 pub match_kind: i32,
1572 #[prost(enumeration = "CmdType", tag = "2")]
1573 pub command_type: i32,
1574 #[prost(enumeration = "OverridingKind", tag = "3")]
1575 pub r#override: i32,
1576 #[prost(message, optional, boxed, tag = "4")]
1577 pub qual: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1578 #[prost(message, repeated, tag = "5")]
1579 pub target_list: ::prost::alloc::vec::Vec<Node>,
1580 #[prost(message, repeated, tag = "6")]
1581 pub update_colnos: ::prost::alloc::vec::Vec<Node>,
1582}
1583#[derive(serde::Serialize)]
1584#[derive(Clone, PartialEq, ::prost::Message)]
1585pub struct CoerceToDomain {
1586 #[prost(message, optional, boxed, tag = "1")]
1587 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1588 #[prost(message, optional, boxed, tag = "2")]
1589 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1590 #[prost(uint32, tag = "3")]
1591 pub resulttype: u32,
1592 #[prost(int32, tag = "4")]
1593 pub resulttypmod: i32,
1594 #[prost(uint32, tag = "5")]
1595 pub resultcollid: u32,
1596 #[prost(enumeration = "CoercionForm", tag = "6")]
1597 pub coercionformat: i32,
1598 #[prost(int32, tag = "7")]
1599 pub location: i32,
1600}
1601#[derive(serde::Serialize)]
1602#[derive(Clone, PartialEq, ::prost::Message)]
1603pub struct CoerceToDomainValue {
1604 #[prost(message, optional, boxed, tag = "1")]
1605 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1606 #[prost(uint32, tag = "2")]
1607 pub type_id: u32,
1608 #[prost(int32, tag = "3")]
1609 pub type_mod: i32,
1610 #[prost(uint32, tag = "4")]
1611 pub collation: u32,
1612 #[prost(int32, tag = "5")]
1613 pub location: i32,
1614}
1615#[derive(serde::Serialize)]
1616#[derive(Clone, PartialEq, ::prost::Message)]
1617pub struct SetToDefault {
1618 #[prost(message, optional, boxed, tag = "1")]
1619 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1620 #[prost(uint32, tag = "2")]
1621 pub type_id: u32,
1622 #[prost(int32, tag = "3")]
1623 pub type_mod: i32,
1624 #[prost(uint32, tag = "4")]
1625 pub collation: u32,
1626 #[prost(int32, tag = "5")]
1627 pub location: i32,
1628}
1629#[derive(serde::Serialize)]
1630#[derive(Clone, PartialEq, ::prost::Message)]
1631pub struct CurrentOfExpr {
1632 #[prost(message, optional, boxed, tag = "1")]
1633 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1634 #[prost(uint32, tag = "2")]
1635 pub cvarno: u32,
1636 #[prost(string, tag = "3")]
1637 pub cursor_name: ::prost::alloc::string::String,
1638 #[prost(int32, tag = "4")]
1639 pub cursor_param: i32,
1640}
1641#[derive(serde::Serialize)]
1642#[derive(Clone, PartialEq, ::prost::Message)]
1643pub struct NextValueExpr {
1644 #[prost(message, optional, boxed, tag = "1")]
1645 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1646 #[prost(uint32, tag = "2")]
1647 pub seqid: u32,
1648 #[prost(uint32, tag = "3")]
1649 pub type_id: u32,
1650}
1651#[derive(serde::Serialize)]
1652#[derive(Clone, PartialEq, ::prost::Message)]
1653pub struct InferenceElem {
1654 #[prost(message, optional, boxed, tag = "1")]
1655 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1656 #[prost(message, optional, boxed, tag = "2")]
1657 pub expr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1658 #[prost(uint32, tag = "3")]
1659 pub infercollid: u32,
1660 #[prost(uint32, tag = "4")]
1661 pub inferopclass: u32,
1662}
1663#[derive(serde::Serialize)]
1664#[derive(Clone, PartialEq, ::prost::Message)]
1665pub struct ReturningExpr {
1666 #[prost(message, optional, boxed, tag = "1")]
1667 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1668 #[prost(int32, tag = "2")]
1669 pub retlevelsup: i32,
1670 #[prost(bool, tag = "3")]
1671 pub retold: bool,
1672 #[prost(message, optional, boxed, tag = "4")]
1673 pub retexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1674}
1675#[derive(serde::Serialize)]
1676#[derive(Clone, PartialEq, ::prost::Message)]
1677pub struct TargetEntry {
1678 #[prost(message, optional, boxed, tag = "1")]
1679 pub xpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1680 #[prost(message, optional, boxed, tag = "2")]
1681 pub expr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1682 #[prost(int32, tag = "3")]
1683 pub resno: i32,
1684 #[prost(string, tag = "4")]
1685 pub resname: ::prost::alloc::string::String,
1686 #[prost(uint32, tag = "5")]
1687 pub ressortgroupref: u32,
1688 #[prost(uint32, tag = "6")]
1689 pub resorigtbl: u32,
1690 #[prost(int32, tag = "7")]
1691 pub resorigcol: i32,
1692 #[prost(bool, tag = "8")]
1693 pub resjunk: bool,
1694}
1695#[derive(serde::Serialize)]
1696#[derive(Clone, Copy, PartialEq, ::prost::Message)]
1697pub struct RangeTblRef {
1698 #[prost(int32, tag = "1")]
1699 pub rtindex: i32,
1700}
1701#[derive(serde::Serialize)]
1702#[derive(Clone, PartialEq, ::prost::Message)]
1703pub struct JoinExpr {
1704 #[prost(enumeration = "JoinType", tag = "1")]
1705 pub jointype: i32,
1706 #[prost(bool, tag = "2")]
1707 pub is_natural: bool,
1708 #[prost(message, optional, boxed, tag = "3")]
1709 pub larg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1710 #[prost(message, optional, boxed, tag = "4")]
1711 pub rarg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1712 #[prost(message, repeated, tag = "5")]
1713 pub using_clause: ::prost::alloc::vec::Vec<Node>,
1714 #[prost(message, optional, tag = "6")]
1715 pub join_using_alias: ::core::option::Option<Alias>,
1716 #[prost(message, optional, boxed, tag = "7")]
1717 pub quals: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1718 #[prost(message, optional, tag = "8")]
1719 pub alias: ::core::option::Option<Alias>,
1720 #[prost(int32, tag = "9")]
1721 pub rtindex: i32,
1722}
1723#[derive(serde::Serialize)]
1724#[derive(Clone, PartialEq, ::prost::Message)]
1725pub struct FromExpr {
1726 #[prost(message, repeated, tag = "1")]
1727 pub fromlist: ::prost::alloc::vec::Vec<Node>,
1728 #[prost(message, optional, boxed, tag = "2")]
1729 pub quals: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1730}
1731#[derive(serde::Serialize)]
1732#[derive(Clone, PartialEq, ::prost::Message)]
1733pub struct OnConflictExpr {
1734 #[prost(enumeration = "OnConflictAction", tag = "1")]
1735 pub action: i32,
1736 #[prost(message, repeated, tag = "2")]
1737 pub arbiter_elems: ::prost::alloc::vec::Vec<Node>,
1738 #[prost(message, optional, boxed, tag = "3")]
1739 pub arbiter_where: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1740 #[prost(uint32, tag = "4")]
1741 pub constraint: u32,
1742 #[prost(message, repeated, tag = "5")]
1743 pub on_conflict_set: ::prost::alloc::vec::Vec<Node>,
1744 #[prost(message, optional, boxed, tag = "6")]
1745 pub on_conflict_where: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1746 #[prost(int32, tag = "7")]
1747 pub excl_rel_index: i32,
1748 #[prost(message, repeated, tag = "8")]
1749 pub excl_rel_tlist: ::prost::alloc::vec::Vec<Node>,
1750}
1751#[derive(serde::Serialize)]
1752#[derive(Clone, PartialEq, ::prost::Message)]
1753pub struct Query {
1754 #[prost(enumeration = "CmdType", tag = "1")]
1755 pub command_type: i32,
1756 #[prost(enumeration = "QuerySource", tag = "2")]
1757 pub query_source: i32,
1758 #[prost(bool, tag = "3")]
1759 pub can_set_tag: bool,
1760 #[prost(message, optional, boxed, tag = "4")]
1761 pub utility_stmt: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1762 #[prost(int32, tag = "5")]
1763 pub result_relation: i32,
1764 #[prost(bool, tag = "6")]
1765 pub has_aggs: bool,
1766 #[prost(bool, tag = "7")]
1767 pub has_window_funcs: bool,
1768 #[prost(bool, tag = "8")]
1769 pub has_target_srfs: bool,
1770 #[prost(bool, tag = "9")]
1771 pub has_sub_links: bool,
1772 #[prost(bool, tag = "10")]
1773 pub has_distinct_on: bool,
1774 #[prost(bool, tag = "11")]
1775 pub has_recursive: bool,
1776 #[prost(bool, tag = "12")]
1777 pub has_modifying_cte: bool,
1778 #[prost(bool, tag = "13")]
1779 pub has_for_update: bool,
1780 #[prost(bool, tag = "14")]
1781 pub has_row_security: bool,
1782 #[prost(bool, tag = "15")]
1783 pub has_group_rte: bool,
1784 #[prost(bool, tag = "16")]
1785 pub is_return: bool,
1786 #[prost(message, repeated, tag = "17")]
1787 pub cte_list: ::prost::alloc::vec::Vec<Node>,
1788 #[prost(message, repeated, tag = "18")]
1789 pub rtable: ::prost::alloc::vec::Vec<Node>,
1790 #[prost(message, repeated, tag = "19")]
1791 pub rteperminfos: ::prost::alloc::vec::Vec<Node>,
1792 #[prost(message, optional, boxed, tag = "20")]
1793 pub jointree: ::core::option::Option<::prost::alloc::boxed::Box<FromExpr>>,
1794 #[prost(message, repeated, tag = "21")]
1795 pub merge_action_list: ::prost::alloc::vec::Vec<Node>,
1796 #[prost(int32, tag = "22")]
1797 pub merge_target_relation: i32,
1798 #[prost(message, optional, boxed, tag = "23")]
1799 pub merge_join_condition: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1800 #[prost(message, repeated, tag = "24")]
1801 pub target_list: ::prost::alloc::vec::Vec<Node>,
1802 #[prost(enumeration = "OverridingKind", tag = "25")]
1803 pub r#override: i32,
1804 #[prost(message, optional, boxed, tag = "26")]
1805 pub on_conflict: ::core::option::Option<::prost::alloc::boxed::Box<OnConflictExpr>>,
1806 #[prost(string, tag = "27")]
1807 pub returning_old_alias: ::prost::alloc::string::String,
1808 #[prost(string, tag = "28")]
1809 pub returning_new_alias: ::prost::alloc::string::String,
1810 #[prost(message, repeated, tag = "29")]
1811 pub returning_list: ::prost::alloc::vec::Vec<Node>,
1812 #[prost(message, repeated, tag = "30")]
1813 pub group_clause: ::prost::alloc::vec::Vec<Node>,
1814 #[prost(bool, tag = "31")]
1815 pub group_distinct: bool,
1816 #[prost(message, repeated, tag = "32")]
1817 pub grouping_sets: ::prost::alloc::vec::Vec<Node>,
1818 #[prost(message, optional, boxed, tag = "33")]
1819 pub having_qual: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1820 #[prost(message, repeated, tag = "34")]
1821 pub window_clause: ::prost::alloc::vec::Vec<Node>,
1822 #[prost(message, repeated, tag = "35")]
1823 pub distinct_clause: ::prost::alloc::vec::Vec<Node>,
1824 #[prost(message, repeated, tag = "36")]
1825 pub sort_clause: ::prost::alloc::vec::Vec<Node>,
1826 #[prost(message, optional, boxed, tag = "37")]
1827 pub limit_offset: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1828 #[prost(message, optional, boxed, tag = "38")]
1829 pub limit_count: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1830 #[prost(enumeration = "LimitOption", tag = "39")]
1831 pub limit_option: i32,
1832 #[prost(message, repeated, tag = "40")]
1833 pub row_marks: ::prost::alloc::vec::Vec<Node>,
1834 #[prost(message, optional, boxed, tag = "41")]
1835 pub set_operations: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1836 #[prost(message, repeated, tag = "42")]
1837 pub constraint_deps: ::prost::alloc::vec::Vec<Node>,
1838 #[prost(message, repeated, tag = "43")]
1839 pub with_check_options: ::prost::alloc::vec::Vec<Node>,
1840 #[prost(int32, tag = "44")]
1841 pub stmt_location: i32,
1842 #[prost(int32, tag = "45")]
1843 pub stmt_len: i32,
1844}
1845#[derive(serde::Serialize)]
1846#[derive(Clone, PartialEq, ::prost::Message)]
1847pub struct TypeName {
1848 #[prost(message, repeated, tag = "1")]
1849 pub names: ::prost::alloc::vec::Vec<Node>,
1850 #[prost(uint32, tag = "2")]
1851 pub type_oid: u32,
1852 #[prost(bool, tag = "3")]
1853 pub setof: bool,
1854 #[prost(bool, tag = "4")]
1855 pub pct_type: bool,
1856 #[prost(message, repeated, tag = "5")]
1857 pub typmods: ::prost::alloc::vec::Vec<Node>,
1858 #[prost(int32, tag = "6")]
1859 pub typemod: i32,
1860 #[prost(message, repeated, tag = "7")]
1861 pub array_bounds: ::prost::alloc::vec::Vec<Node>,
1862 #[prost(int32, tag = "8")]
1863 pub location: i32,
1864}
1865#[derive(serde::Serialize)]
1866#[derive(Clone, PartialEq, ::prost::Message)]
1867pub struct ColumnRef {
1868 #[prost(message, repeated, tag = "1")]
1869 pub fields: ::prost::alloc::vec::Vec<Node>,
1870 #[prost(int32, tag = "2")]
1871 pub location: i32,
1872}
1873#[derive(serde::Serialize)]
1874#[derive(Clone, Copy, PartialEq, ::prost::Message)]
1875pub struct ParamRef {
1876 #[prost(int32, tag = "1")]
1877 pub number: i32,
1878 #[prost(int32, tag = "2")]
1879 pub location: i32,
1880}
1881#[derive(serde::Serialize)]
1882#[derive(Clone, PartialEq, ::prost::Message)]
1883pub struct AExpr {
1884 #[prost(enumeration = "AExprKind", tag = "1")]
1885 pub kind: i32,
1886 #[prost(message, repeated, tag = "2")]
1887 pub name: ::prost::alloc::vec::Vec<Node>,
1888 #[prost(message, optional, boxed, tag = "3")]
1889 pub lexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1890 #[prost(message, optional, boxed, tag = "4")]
1891 pub rexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1892 #[prost(int32, tag = "5")]
1893 pub rexpr_list_start: i32,
1894 #[prost(int32, tag = "6")]
1895 pub rexpr_list_end: i32,
1896 #[prost(int32, tag = "7")]
1897 pub location: i32,
1898}
1899#[derive(serde::Serialize)]
1900#[derive(Clone, PartialEq, ::prost::Message)]
1901pub struct TypeCast {
1902 #[prost(message, optional, boxed, tag = "1")]
1903 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1904 #[prost(message, optional, tag = "2")]
1905 pub type_name: ::core::option::Option<TypeName>,
1906 #[prost(int32, tag = "3")]
1907 pub location: i32,
1908}
1909#[derive(serde::Serialize)]
1910#[derive(Clone, PartialEq, ::prost::Message)]
1911pub struct CollateClause {
1912 #[prost(message, optional, boxed, tag = "1")]
1913 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1914 #[prost(message, repeated, tag = "2")]
1915 pub collname: ::prost::alloc::vec::Vec<Node>,
1916 #[prost(int32, tag = "3")]
1917 pub location: i32,
1918}
1919#[derive(serde::Serialize)]
1920#[derive(Clone, PartialEq, ::prost::Message)]
1921pub struct RoleSpec {
1922 #[prost(enumeration = "RoleSpecType", tag = "1")]
1923 pub roletype: i32,
1924 #[prost(string, tag = "2")]
1925 pub rolename: ::prost::alloc::string::String,
1926 #[prost(int32, tag = "3")]
1927 pub location: i32,
1928}
1929#[derive(serde::Serialize)]
1930#[derive(Clone, PartialEq, ::prost::Message)]
1931pub struct FuncCall {
1932 #[prost(message, repeated, tag = "1")]
1933 pub funcname: ::prost::alloc::vec::Vec<Node>,
1934 #[prost(message, repeated, tag = "2")]
1935 pub args: ::prost::alloc::vec::Vec<Node>,
1936 #[prost(message, repeated, tag = "3")]
1937 pub agg_order: ::prost::alloc::vec::Vec<Node>,
1938 #[prost(message, optional, boxed, tag = "4")]
1939 pub agg_filter: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1940 #[prost(message, optional, boxed, tag = "5")]
1941 pub over: ::core::option::Option<::prost::alloc::boxed::Box<WindowDef>>,
1942 #[prost(bool, tag = "6")]
1943 pub agg_within_group: bool,
1944 #[prost(bool, tag = "7")]
1945 pub agg_star: bool,
1946 #[prost(bool, tag = "8")]
1947 pub agg_distinct: bool,
1948 #[prost(bool, tag = "9")]
1949 pub func_variadic: bool,
1950 #[prost(enumeration = "CoercionForm", tag = "10")]
1951 pub funcformat: i32,
1952 #[prost(int32, tag = "11")]
1953 pub location: i32,
1954}
1955#[derive(serde::Serialize)]
1956#[derive(Clone, Copy, PartialEq, ::prost::Message)]
1957pub struct AStar {}
1958#[derive(serde::Serialize)]
1959#[derive(Clone, PartialEq, ::prost::Message)]
1960pub struct AIndices {
1961 #[prost(bool, tag = "1")]
1962 pub is_slice: bool,
1963 #[prost(message, optional, boxed, tag = "2")]
1964 pub lidx: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1965 #[prost(message, optional, boxed, tag = "3")]
1966 pub uidx: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1967}
1968#[derive(serde::Serialize)]
1969#[derive(Clone, PartialEq, ::prost::Message)]
1970pub struct AIndirection {
1971 #[prost(message, optional, boxed, tag = "1")]
1972 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1973 #[prost(message, repeated, tag = "2")]
1974 pub indirection: ::prost::alloc::vec::Vec<Node>,
1975}
1976#[derive(serde::Serialize)]
1977#[derive(Clone, PartialEq, ::prost::Message)]
1978pub struct AArrayExpr {
1979 #[prost(message, repeated, tag = "1")]
1980 pub elements: ::prost::alloc::vec::Vec<Node>,
1981 #[prost(int32, tag = "2")]
1982 pub list_start: i32,
1983 #[prost(int32, tag = "3")]
1984 pub list_end: i32,
1985 #[prost(int32, tag = "4")]
1986 pub location: i32,
1987}
1988#[derive(serde::Serialize)]
1989#[derive(Clone, PartialEq, ::prost::Message)]
1990pub struct ResTarget {
1991 #[prost(string, tag = "1")]
1992 pub name: ::prost::alloc::string::String,
1993 #[prost(message, repeated, tag = "2")]
1994 pub indirection: ::prost::alloc::vec::Vec<Node>,
1995 #[prost(message, optional, boxed, tag = "3")]
1996 pub val: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
1997 #[prost(int32, tag = "4")]
1998 pub location: i32,
1999}
2000#[derive(serde::Serialize)]
2001#[derive(Clone, PartialEq, ::prost::Message)]
2002pub struct MultiAssignRef {
2003 #[prost(message, optional, boxed, tag = "1")]
2004 pub source: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2005 #[prost(int32, tag = "2")]
2006 pub colno: i32,
2007 #[prost(int32, tag = "3")]
2008 pub ncolumns: i32,
2009}
2010#[derive(serde::Serialize)]
2011#[derive(Clone, PartialEq, ::prost::Message)]
2012pub struct SortBy {
2013 #[prost(message, optional, boxed, tag = "1")]
2014 pub node: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2015 #[prost(enumeration = "SortByDir", tag = "2")]
2016 pub sortby_dir: i32,
2017 #[prost(enumeration = "SortByNulls", tag = "3")]
2018 pub sortby_nulls: i32,
2019 #[prost(message, repeated, tag = "4")]
2020 pub use_op: ::prost::alloc::vec::Vec<Node>,
2021 #[prost(int32, tag = "5")]
2022 pub location: i32,
2023}
2024#[derive(serde::Serialize)]
2025#[derive(Clone, PartialEq, ::prost::Message)]
2026pub struct WindowDef {
2027 #[prost(string, tag = "1")]
2028 pub name: ::prost::alloc::string::String,
2029 #[prost(string, tag = "2")]
2030 pub refname: ::prost::alloc::string::String,
2031 #[prost(message, repeated, tag = "3")]
2032 pub partition_clause: ::prost::alloc::vec::Vec<Node>,
2033 #[prost(message, repeated, tag = "4")]
2034 pub order_clause: ::prost::alloc::vec::Vec<Node>,
2035 #[prost(int32, tag = "5")]
2036 pub frame_options: i32,
2037 #[prost(message, optional, boxed, tag = "6")]
2038 pub start_offset: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2039 #[prost(message, optional, boxed, tag = "7")]
2040 pub end_offset: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2041 #[prost(int32, tag = "8")]
2042 pub location: i32,
2043}
2044#[derive(serde::Serialize)]
2045#[derive(Clone, PartialEq, ::prost::Message)]
2046pub struct RangeSubselect {
2047 #[prost(bool, tag = "1")]
2048 pub lateral: bool,
2049 #[prost(message, optional, boxed, tag = "2")]
2050 pub subquery: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2051 #[prost(message, optional, tag = "3")]
2052 pub alias: ::core::option::Option<Alias>,
2053}
2054#[derive(serde::Serialize)]
2055#[derive(Clone, PartialEq, ::prost::Message)]
2056pub struct RangeFunction {
2057 #[prost(bool, tag = "1")]
2058 pub lateral: bool,
2059 #[prost(bool, tag = "2")]
2060 pub ordinality: bool,
2061 #[prost(bool, tag = "3")]
2062 pub is_rowsfrom: bool,
2063 #[prost(message, repeated, tag = "4")]
2064 pub functions: ::prost::alloc::vec::Vec<Node>,
2065 #[prost(message, optional, tag = "5")]
2066 pub alias: ::core::option::Option<Alias>,
2067 #[prost(message, repeated, tag = "6")]
2068 pub coldeflist: ::prost::alloc::vec::Vec<Node>,
2069}
2070#[derive(serde::Serialize)]
2071#[derive(Clone, PartialEq, ::prost::Message)]
2072pub struct RangeTableFunc {
2073 #[prost(bool, tag = "1")]
2074 pub lateral: bool,
2075 #[prost(message, optional, boxed, tag = "2")]
2076 pub docexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2077 #[prost(message, optional, boxed, tag = "3")]
2078 pub rowexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2079 #[prost(message, repeated, tag = "4")]
2080 pub namespaces: ::prost::alloc::vec::Vec<Node>,
2081 #[prost(message, repeated, tag = "5")]
2082 pub columns: ::prost::alloc::vec::Vec<Node>,
2083 #[prost(message, optional, tag = "6")]
2084 pub alias: ::core::option::Option<Alias>,
2085 #[prost(int32, tag = "7")]
2086 pub location: i32,
2087}
2088#[derive(serde::Serialize)]
2089#[derive(Clone, PartialEq, ::prost::Message)]
2090pub struct RangeTableFuncCol {
2091 #[prost(string, tag = "1")]
2092 pub colname: ::prost::alloc::string::String,
2093 #[prost(message, optional, tag = "2")]
2094 pub type_name: ::core::option::Option<TypeName>,
2095 #[prost(bool, tag = "3")]
2096 pub for_ordinality: bool,
2097 #[prost(bool, tag = "4")]
2098 pub is_not_null: bool,
2099 #[prost(message, optional, boxed, tag = "5")]
2100 pub colexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2101 #[prost(message, optional, boxed, tag = "6")]
2102 pub coldefexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2103 #[prost(int32, tag = "7")]
2104 pub location: i32,
2105}
2106#[derive(serde::Serialize)]
2107#[derive(Clone, PartialEq, ::prost::Message)]
2108pub struct RangeTableSample {
2109 #[prost(message, optional, boxed, tag = "1")]
2110 pub relation: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2111 #[prost(message, repeated, tag = "2")]
2112 pub method: ::prost::alloc::vec::Vec<Node>,
2113 #[prost(message, repeated, tag = "3")]
2114 pub args: ::prost::alloc::vec::Vec<Node>,
2115 #[prost(message, optional, boxed, tag = "4")]
2116 pub repeatable: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2117 #[prost(int32, tag = "5")]
2118 pub location: i32,
2119}
2120#[derive(serde::Serialize)]
2121#[derive(Clone, PartialEq, ::prost::Message)]
2122pub struct ColumnDef {
2123 #[prost(string, tag = "1")]
2124 pub colname: ::prost::alloc::string::String,
2125 #[prost(message, optional, tag = "2")]
2126 pub type_name: ::core::option::Option<TypeName>,
2127 #[prost(string, tag = "3")]
2128 pub compression: ::prost::alloc::string::String,
2129 #[prost(int32, tag = "4")]
2130 pub inhcount: i32,
2131 #[prost(bool, tag = "5")]
2132 pub is_local: bool,
2133 #[prost(bool, tag = "6")]
2134 pub is_not_null: bool,
2135 #[prost(bool, tag = "7")]
2136 pub is_from_type: bool,
2137 #[prost(string, tag = "8")]
2138 pub storage: ::prost::alloc::string::String,
2139 #[prost(string, tag = "9")]
2140 pub storage_name: ::prost::alloc::string::String,
2141 #[prost(message, optional, boxed, tag = "10")]
2142 pub raw_default: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2143 #[prost(message, optional, boxed, tag = "11")]
2144 pub cooked_default: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2145 #[prost(string, tag = "12")]
2146 pub identity: ::prost::alloc::string::String,
2147 #[prost(message, optional, tag = "13")]
2148 pub identity_sequence: ::core::option::Option<RangeVar>,
2149 #[prost(string, tag = "14")]
2150 pub generated: ::prost::alloc::string::String,
2151 #[prost(message, optional, boxed, tag = "15")]
2152 pub coll_clause: ::core::option::Option<::prost::alloc::boxed::Box<CollateClause>>,
2153 #[prost(uint32, tag = "16")]
2154 pub coll_oid: u32,
2155 #[prost(message, repeated, tag = "17")]
2156 pub constraints: ::prost::alloc::vec::Vec<Node>,
2157 #[prost(message, repeated, tag = "18")]
2158 pub fdwoptions: ::prost::alloc::vec::Vec<Node>,
2159 #[prost(int32, tag = "19")]
2160 pub location: i32,
2161}
2162#[derive(serde::Serialize)]
2163#[derive(Clone, PartialEq, ::prost::Message)]
2164pub struct TableLikeClause {
2165 #[prost(message, optional, tag = "1")]
2166 pub relation: ::core::option::Option<RangeVar>,
2167 #[prost(uint32, tag = "2")]
2168 pub options: u32,
2169 #[prost(uint32, tag = "3")]
2170 pub relation_oid: u32,
2171}
2172#[derive(serde::Serialize)]
2173#[derive(Clone, PartialEq, ::prost::Message)]
2174pub struct IndexElem {
2175 #[prost(string, tag = "1")]
2176 pub name: ::prost::alloc::string::String,
2177 #[prost(message, optional, boxed, tag = "2")]
2178 pub expr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2179 #[prost(string, tag = "3")]
2180 pub indexcolname: ::prost::alloc::string::String,
2181 #[prost(message, repeated, tag = "4")]
2182 pub collation: ::prost::alloc::vec::Vec<Node>,
2183 #[prost(message, repeated, tag = "5")]
2184 pub opclass: ::prost::alloc::vec::Vec<Node>,
2185 #[prost(message, repeated, tag = "6")]
2186 pub opclassopts: ::prost::alloc::vec::Vec<Node>,
2187 #[prost(enumeration = "SortByDir", tag = "7")]
2188 pub ordering: i32,
2189 #[prost(enumeration = "SortByNulls", tag = "8")]
2190 pub nulls_ordering: i32,
2191}
2192#[derive(serde::Serialize)]
2193#[derive(Clone, PartialEq, ::prost::Message)]
2194pub struct DefElem {
2195 #[prost(string, tag = "1")]
2196 pub defnamespace: ::prost::alloc::string::String,
2197 #[prost(string, tag = "2")]
2198 pub defname: ::prost::alloc::string::String,
2199 #[prost(message, optional, boxed, tag = "3")]
2200 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2201 #[prost(enumeration = "DefElemAction", tag = "4")]
2202 pub defaction: i32,
2203 #[prost(int32, tag = "5")]
2204 pub location: i32,
2205}
2206#[derive(serde::Serialize)]
2207#[derive(Clone, PartialEq, ::prost::Message)]
2208pub struct LockingClause {
2209 #[prost(message, repeated, tag = "1")]
2210 pub locked_rels: ::prost::alloc::vec::Vec<Node>,
2211 #[prost(enumeration = "LockClauseStrength", tag = "2")]
2212 pub strength: i32,
2213 #[prost(enumeration = "LockWaitPolicy", tag = "3")]
2214 pub wait_policy: i32,
2215}
2216#[derive(serde::Serialize)]
2217#[derive(Clone, PartialEq, ::prost::Message)]
2218pub struct XmlSerialize {
2219 #[prost(enumeration = "XmlOptionType", tag = "1")]
2220 pub xmloption: i32,
2221 #[prost(message, optional, boxed, tag = "2")]
2222 pub expr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2223 #[prost(message, optional, tag = "3")]
2224 pub type_name: ::core::option::Option<TypeName>,
2225 #[prost(bool, tag = "4")]
2226 pub indent: bool,
2227 #[prost(int32, tag = "5")]
2228 pub location: i32,
2229}
2230#[derive(serde::Serialize)]
2231#[derive(Clone, PartialEq, ::prost::Message)]
2232pub struct PartitionElem {
2233 #[prost(string, tag = "1")]
2234 pub name: ::prost::alloc::string::String,
2235 #[prost(message, optional, boxed, tag = "2")]
2236 pub expr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2237 #[prost(message, repeated, tag = "3")]
2238 pub collation: ::prost::alloc::vec::Vec<Node>,
2239 #[prost(message, repeated, tag = "4")]
2240 pub opclass: ::prost::alloc::vec::Vec<Node>,
2241 #[prost(int32, tag = "5")]
2242 pub location: i32,
2243}
2244#[derive(serde::Serialize)]
2245#[derive(Clone, PartialEq, ::prost::Message)]
2246pub struct PartitionSpec {
2247 #[prost(enumeration = "PartitionStrategy", tag = "1")]
2248 pub strategy: i32,
2249 #[prost(message, repeated, tag = "2")]
2250 pub part_params: ::prost::alloc::vec::Vec<Node>,
2251 #[prost(int32, tag = "3")]
2252 pub location: i32,
2253}
2254#[derive(serde::Serialize)]
2255#[derive(Clone, PartialEq, ::prost::Message)]
2256pub struct PartitionBoundSpec {
2257 #[prost(string, tag = "1")]
2258 pub strategy: ::prost::alloc::string::String,
2259 #[prost(bool, tag = "2")]
2260 pub is_default: bool,
2261 #[prost(int32, tag = "3")]
2262 pub modulus: i32,
2263 #[prost(int32, tag = "4")]
2264 pub remainder: i32,
2265 #[prost(message, repeated, tag = "5")]
2266 pub listdatums: ::prost::alloc::vec::Vec<Node>,
2267 #[prost(message, repeated, tag = "6")]
2268 pub lowerdatums: ::prost::alloc::vec::Vec<Node>,
2269 #[prost(message, repeated, tag = "7")]
2270 pub upperdatums: ::prost::alloc::vec::Vec<Node>,
2271 #[prost(int32, tag = "8")]
2272 pub location: i32,
2273}
2274#[derive(serde::Serialize)]
2275#[derive(Clone, PartialEq, ::prost::Message)]
2276pub struct PartitionRangeDatum {
2277 #[prost(enumeration = "PartitionRangeDatumKind", tag = "1")]
2278 pub kind: i32,
2279 #[prost(message, optional, boxed, tag = "2")]
2280 pub value: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2281 #[prost(int32, tag = "3")]
2282 pub location: i32,
2283}
2284#[derive(serde::Serialize)]
2285#[derive(Clone, PartialEq, ::prost::Message)]
2286pub struct PartitionCmd {
2287 #[prost(message, optional, tag = "1")]
2288 pub name: ::core::option::Option<RangeVar>,
2289 #[prost(message, optional, tag = "2")]
2290 pub bound: ::core::option::Option<PartitionBoundSpec>,
2291 #[prost(bool, tag = "3")]
2292 pub concurrent: bool,
2293}
2294#[derive(serde::Serialize)]
2295#[derive(Clone, PartialEq, ::prost::Message)]
2296pub struct RangeTblEntry {
2297 #[prost(message, optional, tag = "1")]
2298 pub alias: ::core::option::Option<Alias>,
2299 #[prost(message, optional, tag = "2")]
2300 pub eref: ::core::option::Option<Alias>,
2301 #[prost(enumeration = "RteKind", tag = "3")]
2302 pub rtekind: i32,
2303 #[prost(uint32, tag = "4")]
2304 pub relid: u32,
2305 #[prost(bool, tag = "5")]
2306 pub inh: bool,
2307 #[prost(string, tag = "6")]
2308 pub relkind: ::prost::alloc::string::String,
2309 #[prost(int32, tag = "7")]
2310 pub rellockmode: i32,
2311 #[prost(uint32, tag = "8")]
2312 pub perminfoindex: u32,
2313 #[prost(message, optional, boxed, tag = "9")]
2314 pub tablesample: ::core::option::Option<
2315 ::prost::alloc::boxed::Box<TableSampleClause>,
2316 >,
2317 #[prost(message, optional, boxed, tag = "10")]
2318 pub subquery: ::core::option::Option<::prost::alloc::boxed::Box<Query>>,
2319 #[prost(bool, tag = "11")]
2320 pub security_barrier: bool,
2321 #[prost(enumeration = "JoinType", tag = "12")]
2322 pub jointype: i32,
2323 #[prost(int32, tag = "13")]
2324 pub joinmergedcols: i32,
2325 #[prost(message, repeated, tag = "14")]
2326 pub joinaliasvars: ::prost::alloc::vec::Vec<Node>,
2327 #[prost(message, repeated, tag = "15")]
2328 pub joinleftcols: ::prost::alloc::vec::Vec<Node>,
2329 #[prost(message, repeated, tag = "16")]
2330 pub joinrightcols: ::prost::alloc::vec::Vec<Node>,
2331 #[prost(message, optional, tag = "17")]
2332 pub join_using_alias: ::core::option::Option<Alias>,
2333 #[prost(message, repeated, tag = "18")]
2334 pub functions: ::prost::alloc::vec::Vec<Node>,
2335 #[prost(bool, tag = "19")]
2336 pub funcordinality: bool,
2337 #[prost(message, optional, boxed, tag = "20")]
2338 pub tablefunc: ::core::option::Option<::prost::alloc::boxed::Box<TableFunc>>,
2339 #[prost(message, repeated, tag = "21")]
2340 pub values_lists: ::prost::alloc::vec::Vec<Node>,
2341 #[prost(string, tag = "22")]
2342 pub ctename: ::prost::alloc::string::String,
2343 #[prost(uint32, tag = "23")]
2344 pub ctelevelsup: u32,
2345 #[prost(bool, tag = "24")]
2346 pub self_reference: bool,
2347 #[prost(message, repeated, tag = "25")]
2348 pub coltypes: ::prost::alloc::vec::Vec<Node>,
2349 #[prost(message, repeated, tag = "26")]
2350 pub coltypmods: ::prost::alloc::vec::Vec<Node>,
2351 #[prost(message, repeated, tag = "27")]
2352 pub colcollations: ::prost::alloc::vec::Vec<Node>,
2353 #[prost(string, tag = "28")]
2354 pub enrname: ::prost::alloc::string::String,
2355 #[prost(double, tag = "29")]
2356 pub enrtuples: f64,
2357 #[prost(message, repeated, tag = "30")]
2358 pub groupexprs: ::prost::alloc::vec::Vec<Node>,
2359 #[prost(bool, tag = "31")]
2360 pub lateral: bool,
2361 #[prost(bool, tag = "32")]
2362 pub in_from_cl: bool,
2363 #[prost(message, repeated, tag = "33")]
2364 pub security_quals: ::prost::alloc::vec::Vec<Node>,
2365}
2366#[derive(serde::Serialize)]
2367#[derive(Clone, PartialEq, ::prost::Message)]
2368pub struct RtePermissionInfo {
2369 #[prost(uint32, tag = "1")]
2370 pub relid: u32,
2371 #[prost(bool, tag = "2")]
2372 pub inh: bool,
2373 #[prost(uint64, tag = "3")]
2374 pub required_perms: u64,
2375 #[prost(uint32, tag = "4")]
2376 pub check_as_user: u32,
2377 #[prost(uint64, repeated, tag = "5")]
2378 pub selected_cols: ::prost::alloc::vec::Vec<u64>,
2379 #[prost(uint64, repeated, tag = "6")]
2380 pub inserted_cols: ::prost::alloc::vec::Vec<u64>,
2381 #[prost(uint64, repeated, tag = "7")]
2382 pub updated_cols: ::prost::alloc::vec::Vec<u64>,
2383}
2384#[derive(serde::Serialize)]
2385#[derive(Clone, PartialEq, ::prost::Message)]
2386pub struct RangeTblFunction {
2387 #[prost(message, optional, boxed, tag = "1")]
2388 pub funcexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2389 #[prost(int32, tag = "2")]
2390 pub funccolcount: i32,
2391 #[prost(message, repeated, tag = "3")]
2392 pub funccolnames: ::prost::alloc::vec::Vec<Node>,
2393 #[prost(message, repeated, tag = "4")]
2394 pub funccoltypes: ::prost::alloc::vec::Vec<Node>,
2395 #[prost(message, repeated, tag = "5")]
2396 pub funccoltypmods: ::prost::alloc::vec::Vec<Node>,
2397 #[prost(message, repeated, tag = "6")]
2398 pub funccolcollations: ::prost::alloc::vec::Vec<Node>,
2399 #[prost(uint64, repeated, tag = "7")]
2400 pub funcparams: ::prost::alloc::vec::Vec<u64>,
2401}
2402#[derive(serde::Serialize)]
2403#[derive(Clone, PartialEq, ::prost::Message)]
2404pub struct TableSampleClause {
2405 #[prost(uint32, tag = "1")]
2406 pub tsmhandler: u32,
2407 #[prost(message, repeated, tag = "2")]
2408 pub args: ::prost::alloc::vec::Vec<Node>,
2409 #[prost(message, optional, boxed, tag = "3")]
2410 pub repeatable: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2411}
2412#[derive(serde::Serialize)]
2413#[derive(Clone, PartialEq, ::prost::Message)]
2414pub struct WithCheckOption {
2415 #[prost(enumeration = "WcoKind", tag = "1")]
2416 pub kind: i32,
2417 #[prost(string, tag = "2")]
2418 pub relname: ::prost::alloc::string::String,
2419 #[prost(string, tag = "3")]
2420 pub polname: ::prost::alloc::string::String,
2421 #[prost(message, optional, boxed, tag = "4")]
2422 pub qual: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2423 #[prost(bool, tag = "5")]
2424 pub cascaded: bool,
2425}
2426#[derive(serde::Serialize)]
2427#[derive(Clone, Copy, PartialEq, ::prost::Message)]
2428pub struct SortGroupClause {
2429 #[prost(uint32, tag = "1")]
2430 pub tle_sort_group_ref: u32,
2431 #[prost(uint32, tag = "2")]
2432 pub eqop: u32,
2433 #[prost(uint32, tag = "3")]
2434 pub sortop: u32,
2435 #[prost(bool, tag = "4")]
2436 pub reverse_sort: bool,
2437 #[prost(bool, tag = "5")]
2438 pub nulls_first: bool,
2439 #[prost(bool, tag = "6")]
2440 pub hashable: bool,
2441}
2442#[derive(serde::Serialize)]
2443#[derive(Clone, PartialEq, ::prost::Message)]
2444pub struct GroupingSet {
2445 #[prost(enumeration = "GroupingSetKind", tag = "1")]
2446 pub kind: i32,
2447 #[prost(message, repeated, tag = "2")]
2448 pub content: ::prost::alloc::vec::Vec<Node>,
2449 #[prost(int32, tag = "3")]
2450 pub location: i32,
2451}
2452#[derive(serde::Serialize)]
2453#[derive(Clone, PartialEq, ::prost::Message)]
2454pub struct WindowClause {
2455 #[prost(string, tag = "1")]
2456 pub name: ::prost::alloc::string::String,
2457 #[prost(string, tag = "2")]
2458 pub refname: ::prost::alloc::string::String,
2459 #[prost(message, repeated, tag = "3")]
2460 pub partition_clause: ::prost::alloc::vec::Vec<Node>,
2461 #[prost(message, repeated, tag = "4")]
2462 pub order_clause: ::prost::alloc::vec::Vec<Node>,
2463 #[prost(int32, tag = "5")]
2464 pub frame_options: i32,
2465 #[prost(message, optional, boxed, tag = "6")]
2466 pub start_offset: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2467 #[prost(message, optional, boxed, tag = "7")]
2468 pub end_offset: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2469 #[prost(uint32, tag = "8")]
2470 pub start_in_range_func: u32,
2471 #[prost(uint32, tag = "9")]
2472 pub end_in_range_func: u32,
2473 #[prost(uint32, tag = "10")]
2474 pub in_range_coll: u32,
2475 #[prost(bool, tag = "11")]
2476 pub in_range_asc: bool,
2477 #[prost(bool, tag = "12")]
2478 pub in_range_nulls_first: bool,
2479 #[prost(uint32, tag = "13")]
2480 pub winref: u32,
2481 #[prost(bool, tag = "14")]
2482 pub copied_order: bool,
2483}
2484#[derive(serde::Serialize)]
2485#[derive(Clone, Copy, PartialEq, ::prost::Message)]
2486pub struct RowMarkClause {
2487 #[prost(uint32, tag = "1")]
2488 pub rti: u32,
2489 #[prost(enumeration = "LockClauseStrength", tag = "2")]
2490 pub strength: i32,
2491 #[prost(enumeration = "LockWaitPolicy", tag = "3")]
2492 pub wait_policy: i32,
2493 #[prost(bool, tag = "4")]
2494 pub pushed_down: bool,
2495}
2496#[derive(serde::Serialize)]
2497#[derive(Clone, PartialEq, ::prost::Message)]
2498pub struct WithClause {
2499 #[prost(message, repeated, tag = "1")]
2500 pub ctes: ::prost::alloc::vec::Vec<Node>,
2501 #[prost(bool, tag = "2")]
2502 pub recursive: bool,
2503 #[prost(int32, tag = "3")]
2504 pub location: i32,
2505}
2506#[derive(serde::Serialize)]
2507#[derive(Clone, PartialEq, ::prost::Message)]
2508pub struct InferClause {
2509 #[prost(message, repeated, tag = "1")]
2510 pub index_elems: ::prost::alloc::vec::Vec<Node>,
2511 #[prost(message, optional, boxed, tag = "2")]
2512 pub where_clause: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2513 #[prost(string, tag = "3")]
2514 pub conname: ::prost::alloc::string::String,
2515 #[prost(int32, tag = "4")]
2516 pub location: i32,
2517}
2518#[derive(serde::Serialize)]
2519#[derive(Clone, PartialEq, ::prost::Message)]
2520pub struct OnConflictClause {
2521 #[prost(enumeration = "OnConflictAction", tag = "1")]
2522 pub action: i32,
2523 #[prost(message, optional, boxed, tag = "2")]
2524 pub infer: ::core::option::Option<::prost::alloc::boxed::Box<InferClause>>,
2525 #[prost(message, repeated, tag = "3")]
2526 pub target_list: ::prost::alloc::vec::Vec<Node>,
2527 #[prost(message, optional, boxed, tag = "4")]
2528 pub where_clause: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2529 #[prost(int32, tag = "5")]
2530 pub location: i32,
2531}
2532#[derive(serde::Serialize)]
2533#[derive(Clone, PartialEq, ::prost::Message)]
2534pub struct CteSearchClause {
2535 #[prost(message, repeated, tag = "1")]
2536 pub search_col_list: ::prost::alloc::vec::Vec<Node>,
2537 #[prost(bool, tag = "2")]
2538 pub search_breadth_first: bool,
2539 #[prost(string, tag = "3")]
2540 pub search_seq_column: ::prost::alloc::string::String,
2541 #[prost(int32, tag = "4")]
2542 pub location: i32,
2543}
2544#[derive(serde::Serialize)]
2545#[derive(Clone, PartialEq, ::prost::Message)]
2546pub struct CteCycleClause {
2547 #[prost(message, repeated, tag = "1")]
2548 pub cycle_col_list: ::prost::alloc::vec::Vec<Node>,
2549 #[prost(string, tag = "2")]
2550 pub cycle_mark_column: ::prost::alloc::string::String,
2551 #[prost(message, optional, boxed, tag = "3")]
2552 pub cycle_mark_value: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2553 #[prost(message, optional, boxed, tag = "4")]
2554 pub cycle_mark_default: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2555 #[prost(string, tag = "5")]
2556 pub cycle_path_column: ::prost::alloc::string::String,
2557 #[prost(int32, tag = "6")]
2558 pub location: i32,
2559 #[prost(uint32, tag = "7")]
2560 pub cycle_mark_type: u32,
2561 #[prost(int32, tag = "8")]
2562 pub cycle_mark_typmod: i32,
2563 #[prost(uint32, tag = "9")]
2564 pub cycle_mark_collation: u32,
2565 #[prost(uint32, tag = "10")]
2566 pub cycle_mark_neop: u32,
2567}
2568#[derive(serde::Serialize)]
2569#[derive(Clone, PartialEq, ::prost::Message)]
2570pub struct CommonTableExpr {
2571 #[prost(string, tag = "1")]
2572 pub ctename: ::prost::alloc::string::String,
2573 #[prost(message, repeated, tag = "2")]
2574 pub aliascolnames: ::prost::alloc::vec::Vec<Node>,
2575 #[prost(enumeration = "CteMaterialize", tag = "3")]
2576 pub ctematerialized: i32,
2577 #[prost(message, optional, boxed, tag = "4")]
2578 pub ctequery: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2579 #[prost(message, optional, tag = "5")]
2580 pub search_clause: ::core::option::Option<CteSearchClause>,
2581 #[prost(message, optional, boxed, tag = "6")]
2582 pub cycle_clause: ::core::option::Option<::prost::alloc::boxed::Box<CteCycleClause>>,
2583 #[prost(int32, tag = "7")]
2584 pub location: i32,
2585 #[prost(bool, tag = "8")]
2586 pub cterecursive: bool,
2587 #[prost(int32, tag = "9")]
2588 pub cterefcount: i32,
2589 #[prost(message, repeated, tag = "10")]
2590 pub ctecolnames: ::prost::alloc::vec::Vec<Node>,
2591 #[prost(message, repeated, tag = "11")]
2592 pub ctecoltypes: ::prost::alloc::vec::Vec<Node>,
2593 #[prost(message, repeated, tag = "12")]
2594 pub ctecoltypmods: ::prost::alloc::vec::Vec<Node>,
2595 #[prost(message, repeated, tag = "13")]
2596 pub ctecolcollations: ::prost::alloc::vec::Vec<Node>,
2597}
2598#[derive(serde::Serialize)]
2599#[derive(Clone, PartialEq, ::prost::Message)]
2600pub struct MergeWhenClause {
2601 #[prost(enumeration = "MergeMatchKind", tag = "1")]
2602 pub match_kind: i32,
2603 #[prost(enumeration = "CmdType", tag = "2")]
2604 pub command_type: i32,
2605 #[prost(enumeration = "OverridingKind", tag = "3")]
2606 pub r#override: i32,
2607 #[prost(message, optional, boxed, tag = "4")]
2608 pub condition: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2609 #[prost(message, repeated, tag = "5")]
2610 pub target_list: ::prost::alloc::vec::Vec<Node>,
2611 #[prost(message, repeated, tag = "6")]
2612 pub values: ::prost::alloc::vec::Vec<Node>,
2613}
2614#[derive(serde::Serialize)]
2615#[derive(Clone, PartialEq, ::prost::Message)]
2616pub struct ReturningOption {
2617 #[prost(enumeration = "ReturningOptionKind", tag = "1")]
2618 pub option: i32,
2619 #[prost(string, tag = "2")]
2620 pub value: ::prost::alloc::string::String,
2621 #[prost(int32, tag = "3")]
2622 pub location: i32,
2623}
2624#[derive(serde::Serialize)]
2625#[derive(Clone, PartialEq, ::prost::Message)]
2626pub struct ReturningClause {
2627 #[prost(message, repeated, tag = "1")]
2628 pub options: ::prost::alloc::vec::Vec<Node>,
2629 #[prost(message, repeated, tag = "2")]
2630 pub exprs: ::prost::alloc::vec::Vec<Node>,
2631}
2632#[derive(serde::Serialize)]
2633#[derive(Clone, PartialEq, ::prost::Message)]
2634pub struct TriggerTransition {
2635 #[prost(string, tag = "1")]
2636 pub name: ::prost::alloc::string::String,
2637 #[prost(bool, tag = "2")]
2638 pub is_new: bool,
2639 #[prost(bool, tag = "3")]
2640 pub is_table: bool,
2641}
2642#[derive(serde::Serialize)]
2643#[derive(Clone, PartialEq, ::prost::Message)]
2644pub struct JsonOutput {
2645 #[prost(message, optional, tag = "1")]
2646 pub type_name: ::core::option::Option<TypeName>,
2647 #[prost(message, optional, tag = "2")]
2648 pub returning: ::core::option::Option<JsonReturning>,
2649}
2650#[derive(serde::Serialize)]
2651#[derive(Clone, PartialEq, ::prost::Message)]
2652pub struct JsonArgument {
2653 #[prost(message, optional, boxed, tag = "1")]
2654 pub val: ::core::option::Option<::prost::alloc::boxed::Box<JsonValueExpr>>,
2655 #[prost(string, tag = "2")]
2656 pub name: ::prost::alloc::string::String,
2657}
2658#[derive(serde::Serialize)]
2659#[derive(Clone, PartialEq, ::prost::Message)]
2660pub struct JsonFuncExpr {
2661 #[prost(enumeration = "JsonExprOp", tag = "1")]
2662 pub op: i32,
2663 #[prost(string, tag = "2")]
2664 pub column_name: ::prost::alloc::string::String,
2665 #[prost(message, optional, boxed, tag = "3")]
2666 pub context_item: ::core::option::Option<::prost::alloc::boxed::Box<JsonValueExpr>>,
2667 #[prost(message, optional, boxed, tag = "4")]
2668 pub pathspec: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2669 #[prost(message, repeated, tag = "5")]
2670 pub passing: ::prost::alloc::vec::Vec<Node>,
2671 #[prost(message, optional, tag = "6")]
2672 pub output: ::core::option::Option<JsonOutput>,
2673 #[prost(message, optional, boxed, tag = "7")]
2674 pub on_empty: ::core::option::Option<::prost::alloc::boxed::Box<JsonBehavior>>,
2675 #[prost(message, optional, boxed, tag = "8")]
2676 pub on_error: ::core::option::Option<::prost::alloc::boxed::Box<JsonBehavior>>,
2677 #[prost(enumeration = "JsonWrapper", tag = "9")]
2678 pub wrapper: i32,
2679 #[prost(enumeration = "JsonQuotes", tag = "10")]
2680 pub quotes: i32,
2681 #[prost(int32, tag = "11")]
2682 pub location: i32,
2683}
2684#[derive(serde::Serialize)]
2685#[derive(Clone, PartialEq, ::prost::Message)]
2686pub struct JsonTablePathSpec {
2687 #[prost(message, optional, boxed, tag = "1")]
2688 pub string: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2689 #[prost(string, tag = "2")]
2690 pub name: ::prost::alloc::string::String,
2691 #[prost(int32, tag = "3")]
2692 pub name_location: i32,
2693 #[prost(int32, tag = "4")]
2694 pub location: i32,
2695}
2696#[derive(serde::Serialize)]
2697#[derive(Clone, PartialEq, ::prost::Message)]
2698pub struct JsonTable {
2699 #[prost(message, optional, boxed, tag = "1")]
2700 pub context_item: ::core::option::Option<::prost::alloc::boxed::Box<JsonValueExpr>>,
2701 #[prost(message, optional, boxed, tag = "2")]
2702 pub pathspec: ::core::option::Option<::prost::alloc::boxed::Box<JsonTablePathSpec>>,
2703 #[prost(message, repeated, tag = "3")]
2704 pub passing: ::prost::alloc::vec::Vec<Node>,
2705 #[prost(message, repeated, tag = "4")]
2706 pub columns: ::prost::alloc::vec::Vec<Node>,
2707 #[prost(message, optional, boxed, tag = "5")]
2708 pub on_error: ::core::option::Option<::prost::alloc::boxed::Box<JsonBehavior>>,
2709 #[prost(message, optional, tag = "6")]
2710 pub alias: ::core::option::Option<Alias>,
2711 #[prost(bool, tag = "7")]
2712 pub lateral: bool,
2713 #[prost(int32, tag = "8")]
2714 pub location: i32,
2715}
2716#[derive(serde::Serialize)]
2717#[derive(Clone, PartialEq, ::prost::Message)]
2718pub struct JsonTableColumn {
2719 #[prost(enumeration = "JsonTableColumnType", tag = "1")]
2720 pub coltype: i32,
2721 #[prost(string, tag = "2")]
2722 pub name: ::prost::alloc::string::String,
2723 #[prost(message, optional, tag = "3")]
2724 pub type_name: ::core::option::Option<TypeName>,
2725 #[prost(message, optional, boxed, tag = "4")]
2726 pub pathspec: ::core::option::Option<::prost::alloc::boxed::Box<JsonTablePathSpec>>,
2727 #[prost(message, optional, tag = "5")]
2728 pub format: ::core::option::Option<JsonFormat>,
2729 #[prost(enumeration = "JsonWrapper", tag = "6")]
2730 pub wrapper: i32,
2731 #[prost(enumeration = "JsonQuotes", tag = "7")]
2732 pub quotes: i32,
2733 #[prost(message, repeated, tag = "8")]
2734 pub columns: ::prost::alloc::vec::Vec<Node>,
2735 #[prost(message, optional, boxed, tag = "9")]
2736 pub on_empty: ::core::option::Option<::prost::alloc::boxed::Box<JsonBehavior>>,
2737 #[prost(message, optional, boxed, tag = "10")]
2738 pub on_error: ::core::option::Option<::prost::alloc::boxed::Box<JsonBehavior>>,
2739 #[prost(int32, tag = "11")]
2740 pub location: i32,
2741}
2742#[derive(serde::Serialize)]
2743#[derive(Clone, PartialEq, ::prost::Message)]
2744pub struct JsonKeyValue {
2745 #[prost(message, optional, boxed, tag = "1")]
2746 pub key: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2747 #[prost(message, optional, boxed, tag = "2")]
2748 pub value: ::core::option::Option<::prost::alloc::boxed::Box<JsonValueExpr>>,
2749}
2750#[derive(serde::Serialize)]
2751#[derive(Clone, PartialEq, ::prost::Message)]
2752pub struct JsonParseExpr {
2753 #[prost(message, optional, boxed, tag = "1")]
2754 pub expr: ::core::option::Option<::prost::alloc::boxed::Box<JsonValueExpr>>,
2755 #[prost(message, optional, tag = "2")]
2756 pub output: ::core::option::Option<JsonOutput>,
2757 #[prost(bool, tag = "3")]
2758 pub unique_keys: bool,
2759 #[prost(int32, tag = "4")]
2760 pub location: i32,
2761}
2762#[derive(serde::Serialize)]
2763#[derive(Clone, PartialEq, ::prost::Message)]
2764pub struct JsonScalarExpr {
2765 #[prost(message, optional, boxed, tag = "1")]
2766 pub expr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2767 #[prost(message, optional, tag = "2")]
2768 pub output: ::core::option::Option<JsonOutput>,
2769 #[prost(int32, tag = "3")]
2770 pub location: i32,
2771}
2772#[derive(serde::Serialize)]
2773#[derive(Clone, PartialEq, ::prost::Message)]
2774pub struct JsonSerializeExpr {
2775 #[prost(message, optional, boxed, tag = "1")]
2776 pub expr: ::core::option::Option<::prost::alloc::boxed::Box<JsonValueExpr>>,
2777 #[prost(message, optional, tag = "2")]
2778 pub output: ::core::option::Option<JsonOutput>,
2779 #[prost(int32, tag = "3")]
2780 pub location: i32,
2781}
2782#[derive(serde::Serialize)]
2783#[derive(Clone, PartialEq, ::prost::Message)]
2784pub struct JsonObjectConstructor {
2785 #[prost(message, repeated, tag = "1")]
2786 pub exprs: ::prost::alloc::vec::Vec<Node>,
2787 #[prost(message, optional, tag = "2")]
2788 pub output: ::core::option::Option<JsonOutput>,
2789 #[prost(bool, tag = "3")]
2790 pub absent_on_null: bool,
2791 #[prost(bool, tag = "4")]
2792 pub unique: bool,
2793 #[prost(int32, tag = "5")]
2794 pub location: i32,
2795}
2796#[derive(serde::Serialize)]
2797#[derive(Clone, PartialEq, ::prost::Message)]
2798pub struct JsonArrayConstructor {
2799 #[prost(message, repeated, tag = "1")]
2800 pub exprs: ::prost::alloc::vec::Vec<Node>,
2801 #[prost(message, optional, tag = "2")]
2802 pub output: ::core::option::Option<JsonOutput>,
2803 #[prost(bool, tag = "3")]
2804 pub absent_on_null: bool,
2805 #[prost(int32, tag = "4")]
2806 pub location: i32,
2807}
2808#[derive(serde::Serialize)]
2809#[derive(Clone, PartialEq, ::prost::Message)]
2810pub struct JsonArrayQueryConstructor {
2811 #[prost(message, optional, boxed, tag = "1")]
2812 pub query: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2813 #[prost(message, optional, tag = "2")]
2814 pub output: ::core::option::Option<JsonOutput>,
2815 #[prost(message, optional, tag = "3")]
2816 pub format: ::core::option::Option<JsonFormat>,
2817 #[prost(bool, tag = "4")]
2818 pub absent_on_null: bool,
2819 #[prost(int32, tag = "5")]
2820 pub location: i32,
2821}
2822#[derive(serde::Serialize)]
2823#[derive(Clone, PartialEq, ::prost::Message)]
2824pub struct JsonAggConstructor {
2825 #[prost(message, optional, tag = "1")]
2826 pub output: ::core::option::Option<JsonOutput>,
2827 #[prost(message, optional, boxed, tag = "2")]
2828 pub agg_filter: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2829 #[prost(message, repeated, tag = "3")]
2830 pub agg_order: ::prost::alloc::vec::Vec<Node>,
2831 #[prost(message, optional, boxed, tag = "4")]
2832 pub over: ::core::option::Option<::prost::alloc::boxed::Box<WindowDef>>,
2833 #[prost(int32, tag = "5")]
2834 pub location: i32,
2835}
2836#[derive(serde::Serialize)]
2837#[derive(Clone, PartialEq, ::prost::Message)]
2838pub struct JsonObjectAgg {
2839 #[prost(message, optional, boxed, tag = "1")]
2840 pub constructor: ::core::option::Option<
2841 ::prost::alloc::boxed::Box<JsonAggConstructor>,
2842 >,
2843 #[prost(message, optional, boxed, tag = "2")]
2844 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<JsonKeyValue>>,
2845 #[prost(bool, tag = "3")]
2846 pub absent_on_null: bool,
2847 #[prost(bool, tag = "4")]
2848 pub unique: bool,
2849}
2850#[derive(serde::Serialize)]
2851#[derive(Clone, PartialEq, ::prost::Message)]
2852pub struct JsonArrayAgg {
2853 #[prost(message, optional, boxed, tag = "1")]
2854 pub constructor: ::core::option::Option<
2855 ::prost::alloc::boxed::Box<JsonAggConstructor>,
2856 >,
2857 #[prost(message, optional, boxed, tag = "2")]
2858 pub arg: ::core::option::Option<::prost::alloc::boxed::Box<JsonValueExpr>>,
2859 #[prost(bool, tag = "3")]
2860 pub absent_on_null: bool,
2861}
2862#[derive(serde::Serialize)]
2863#[derive(Clone, PartialEq, ::prost::Message)]
2864pub struct RawStmt {
2865 #[prost(message, optional, boxed, tag = "1")]
2866 pub stmt: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2867 #[prost(int32, tag = "2")]
2868 pub stmt_location: i32,
2869 #[prost(int32, tag = "3")]
2870 pub stmt_len: i32,
2871}
2872#[derive(serde::Serialize)]
2873#[derive(Clone, PartialEq, ::prost::Message)]
2874pub struct InsertStmt {
2875 #[prost(message, optional, tag = "1")]
2876 pub relation: ::core::option::Option<RangeVar>,
2877 #[prost(message, repeated, tag = "2")]
2878 pub cols: ::prost::alloc::vec::Vec<Node>,
2879 #[prost(message, optional, boxed, tag = "3")]
2880 pub select_stmt: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2881 #[prost(message, optional, boxed, tag = "4")]
2882 pub on_conflict_clause: ::core::option::Option<
2883 ::prost::alloc::boxed::Box<OnConflictClause>,
2884 >,
2885 #[prost(message, optional, tag = "5")]
2886 pub returning_clause: ::core::option::Option<ReturningClause>,
2887 #[prost(message, optional, tag = "6")]
2888 pub with_clause: ::core::option::Option<WithClause>,
2889 #[prost(enumeration = "OverridingKind", tag = "7")]
2890 pub r#override: i32,
2891}
2892#[derive(serde::Serialize)]
2893#[derive(Clone, PartialEq, ::prost::Message)]
2894pub struct DeleteStmt {
2895 #[prost(message, optional, tag = "1")]
2896 pub relation: ::core::option::Option<RangeVar>,
2897 #[prost(message, repeated, tag = "2")]
2898 pub using_clause: ::prost::alloc::vec::Vec<Node>,
2899 #[prost(message, optional, boxed, tag = "3")]
2900 pub where_clause: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2901 #[prost(message, optional, tag = "4")]
2902 pub returning_clause: ::core::option::Option<ReturningClause>,
2903 #[prost(message, optional, tag = "5")]
2904 pub with_clause: ::core::option::Option<WithClause>,
2905}
2906#[derive(serde::Serialize)]
2907#[derive(Clone, PartialEq, ::prost::Message)]
2908pub struct UpdateStmt {
2909 #[prost(message, optional, tag = "1")]
2910 pub relation: ::core::option::Option<RangeVar>,
2911 #[prost(message, repeated, tag = "2")]
2912 pub target_list: ::prost::alloc::vec::Vec<Node>,
2913 #[prost(message, optional, boxed, tag = "3")]
2914 pub where_clause: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2915 #[prost(message, repeated, tag = "4")]
2916 pub from_clause: ::prost::alloc::vec::Vec<Node>,
2917 #[prost(message, optional, tag = "5")]
2918 pub returning_clause: ::core::option::Option<ReturningClause>,
2919 #[prost(message, optional, tag = "6")]
2920 pub with_clause: ::core::option::Option<WithClause>,
2921}
2922#[derive(serde::Serialize)]
2923#[derive(Clone, PartialEq, ::prost::Message)]
2924pub struct MergeStmt {
2925 #[prost(message, optional, tag = "1")]
2926 pub relation: ::core::option::Option<RangeVar>,
2927 #[prost(message, optional, boxed, tag = "2")]
2928 pub source_relation: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2929 #[prost(message, optional, boxed, tag = "3")]
2930 pub join_condition: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2931 #[prost(message, repeated, tag = "4")]
2932 pub merge_when_clauses: ::prost::alloc::vec::Vec<Node>,
2933 #[prost(message, optional, tag = "5")]
2934 pub returning_clause: ::core::option::Option<ReturningClause>,
2935 #[prost(message, optional, tag = "6")]
2936 pub with_clause: ::core::option::Option<WithClause>,
2937}
2938#[derive(serde::Serialize)]
2939#[derive(Clone, PartialEq, ::prost::Message)]
2940pub struct SelectStmt {
2941 #[prost(message, repeated, tag = "1")]
2942 pub distinct_clause: ::prost::alloc::vec::Vec<Node>,
2943 #[prost(message, optional, boxed, tag = "2")]
2944 pub into_clause: ::core::option::Option<::prost::alloc::boxed::Box<IntoClause>>,
2945 #[prost(message, repeated, tag = "3")]
2946 pub target_list: ::prost::alloc::vec::Vec<Node>,
2947 #[prost(message, repeated, tag = "4")]
2948 pub from_clause: ::prost::alloc::vec::Vec<Node>,
2949 #[prost(message, optional, boxed, tag = "5")]
2950 pub where_clause: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2951 #[prost(message, repeated, tag = "6")]
2952 pub group_clause: ::prost::alloc::vec::Vec<Node>,
2953 #[prost(bool, tag = "7")]
2954 pub group_distinct: bool,
2955 #[prost(message, optional, boxed, tag = "8")]
2956 pub having_clause: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2957 #[prost(message, repeated, tag = "9")]
2958 pub window_clause: ::prost::alloc::vec::Vec<Node>,
2959 #[prost(message, repeated, tag = "10")]
2960 pub values_lists: ::prost::alloc::vec::Vec<Node>,
2961 #[prost(message, repeated, tag = "11")]
2962 pub sort_clause: ::prost::alloc::vec::Vec<Node>,
2963 #[prost(message, optional, boxed, tag = "12")]
2964 pub limit_offset: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2965 #[prost(message, optional, boxed, tag = "13")]
2966 pub limit_count: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2967 #[prost(enumeration = "LimitOption", tag = "14")]
2968 pub limit_option: i32,
2969 #[prost(message, repeated, tag = "15")]
2970 pub locking_clause: ::prost::alloc::vec::Vec<Node>,
2971 #[prost(message, optional, tag = "16")]
2972 pub with_clause: ::core::option::Option<WithClause>,
2973 #[prost(enumeration = "SetOperation", tag = "17")]
2974 pub op: i32,
2975 #[prost(bool, tag = "18")]
2976 pub all: bool,
2977 #[prost(message, optional, boxed, tag = "19")]
2978 pub larg: ::core::option::Option<::prost::alloc::boxed::Box<SelectStmt>>,
2979 #[prost(message, optional, boxed, tag = "20")]
2980 pub rarg: ::core::option::Option<::prost::alloc::boxed::Box<SelectStmt>>,
2981}
2982#[derive(serde::Serialize)]
2983#[derive(Clone, PartialEq, ::prost::Message)]
2984pub struct SetOperationStmt {
2985 #[prost(enumeration = "SetOperation", tag = "1")]
2986 pub op: i32,
2987 #[prost(bool, tag = "2")]
2988 pub all: bool,
2989 #[prost(message, optional, boxed, tag = "3")]
2990 pub larg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2991 #[prost(message, optional, boxed, tag = "4")]
2992 pub rarg: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
2993 #[prost(message, repeated, tag = "5")]
2994 pub col_types: ::prost::alloc::vec::Vec<Node>,
2995 #[prost(message, repeated, tag = "6")]
2996 pub col_typmods: ::prost::alloc::vec::Vec<Node>,
2997 #[prost(message, repeated, tag = "7")]
2998 pub col_collations: ::prost::alloc::vec::Vec<Node>,
2999 #[prost(message, repeated, tag = "8")]
3000 pub group_clauses: ::prost::alloc::vec::Vec<Node>,
3001}
3002#[derive(serde::Serialize)]
3003#[derive(Clone, PartialEq, ::prost::Message)]
3004pub struct ReturnStmt {
3005 #[prost(message, optional, boxed, tag = "1")]
3006 pub returnval: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3007}
3008#[derive(serde::Serialize)]
3009#[derive(Clone, PartialEq, ::prost::Message)]
3010pub struct PlAssignStmt {
3011 #[prost(string, tag = "1")]
3012 pub name: ::prost::alloc::string::String,
3013 #[prost(message, repeated, tag = "2")]
3014 pub indirection: ::prost::alloc::vec::Vec<Node>,
3015 #[prost(int32, tag = "3")]
3016 pub nnames: i32,
3017 #[prost(message, optional, boxed, tag = "4")]
3018 pub val: ::core::option::Option<::prost::alloc::boxed::Box<SelectStmt>>,
3019 #[prost(int32, tag = "5")]
3020 pub location: i32,
3021}
3022#[derive(serde::Serialize)]
3023#[derive(Clone, PartialEq, ::prost::Message)]
3024pub struct CreateSchemaStmt {
3025 #[prost(string, tag = "1")]
3026 pub schemaname: ::prost::alloc::string::String,
3027 #[prost(message, optional, tag = "2")]
3028 pub authrole: ::core::option::Option<RoleSpec>,
3029 #[prost(message, repeated, tag = "3")]
3030 pub schema_elts: ::prost::alloc::vec::Vec<Node>,
3031 #[prost(bool, tag = "4")]
3032 pub if_not_exists: bool,
3033}
3034#[derive(serde::Serialize)]
3035#[derive(Clone, PartialEq, ::prost::Message)]
3036pub struct AlterTableStmt {
3037 #[prost(message, optional, tag = "1")]
3038 pub relation: ::core::option::Option<RangeVar>,
3039 #[prost(message, repeated, tag = "2")]
3040 pub cmds: ::prost::alloc::vec::Vec<Node>,
3041 #[prost(enumeration = "ObjectType", tag = "3")]
3042 pub objtype: i32,
3043 #[prost(bool, tag = "4")]
3044 pub missing_ok: bool,
3045}
3046#[derive(serde::Serialize)]
3047#[derive(Clone, PartialEq, ::prost::Message)]
3048pub struct AlterTableCmd {
3049 #[prost(enumeration = "AlterTableType", tag = "1")]
3050 pub subtype: i32,
3051 #[prost(string, tag = "2")]
3052 pub name: ::prost::alloc::string::String,
3053 #[prost(int32, tag = "3")]
3054 pub num: i32,
3055 #[prost(message, optional, tag = "4")]
3056 pub newowner: ::core::option::Option<RoleSpec>,
3057 #[prost(message, optional, boxed, tag = "5")]
3058 pub def: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3059 #[prost(enumeration = "DropBehavior", tag = "6")]
3060 pub behavior: i32,
3061 #[prost(bool, tag = "7")]
3062 pub missing_ok: bool,
3063 #[prost(bool, tag = "8")]
3064 pub recurse: bool,
3065}
3066#[derive(serde::Serialize)]
3067#[derive(Clone, PartialEq, ::prost::Message)]
3068pub struct AtAlterConstraint {
3069 #[prost(string, tag = "1")]
3070 pub conname: ::prost::alloc::string::String,
3071 #[prost(bool, tag = "2")]
3072 pub alter_enforceability: bool,
3073 #[prost(bool, tag = "3")]
3074 pub is_enforced: bool,
3075 #[prost(bool, tag = "4")]
3076 pub alter_deferrability: bool,
3077 #[prost(bool, tag = "5")]
3078 pub deferrable: bool,
3079 #[prost(bool, tag = "6")]
3080 pub initdeferred: bool,
3081 #[prost(bool, tag = "7")]
3082 pub alter_inheritability: bool,
3083 #[prost(bool, tag = "8")]
3084 pub noinherit: bool,
3085}
3086#[derive(serde::Serialize)]
3087#[derive(Clone, PartialEq, ::prost::Message)]
3088pub struct ReplicaIdentityStmt {
3089 #[prost(string, tag = "1")]
3090 pub identity_type: ::prost::alloc::string::String,
3091 #[prost(string, tag = "2")]
3092 pub name: ::prost::alloc::string::String,
3093}
3094#[derive(serde::Serialize)]
3095#[derive(Clone, PartialEq, ::prost::Message)]
3096pub struct AlterCollationStmt {
3097 #[prost(message, repeated, tag = "1")]
3098 pub collname: ::prost::alloc::vec::Vec<Node>,
3099}
3100#[derive(serde::Serialize)]
3101#[derive(Clone, PartialEq, ::prost::Message)]
3102pub struct AlterDomainStmt {
3103 #[prost(string, tag = "1")]
3104 pub subtype: ::prost::alloc::string::String,
3105 #[prost(message, repeated, tag = "2")]
3106 pub type_name: ::prost::alloc::vec::Vec<Node>,
3107 #[prost(string, tag = "3")]
3108 pub name: ::prost::alloc::string::String,
3109 #[prost(message, optional, boxed, tag = "4")]
3110 pub def: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3111 #[prost(enumeration = "DropBehavior", tag = "5")]
3112 pub behavior: i32,
3113 #[prost(bool, tag = "6")]
3114 pub missing_ok: bool,
3115}
3116#[derive(serde::Serialize)]
3117#[derive(Clone, PartialEq, ::prost::Message)]
3118pub struct GrantStmt {
3119 #[prost(bool, tag = "1")]
3120 pub is_grant: bool,
3121 #[prost(enumeration = "GrantTargetType", tag = "2")]
3122 pub targtype: i32,
3123 #[prost(enumeration = "ObjectType", tag = "3")]
3124 pub objtype: i32,
3125 #[prost(message, repeated, tag = "4")]
3126 pub objects: ::prost::alloc::vec::Vec<Node>,
3127 #[prost(message, repeated, tag = "5")]
3128 pub privileges: ::prost::alloc::vec::Vec<Node>,
3129 #[prost(message, repeated, tag = "6")]
3130 pub grantees: ::prost::alloc::vec::Vec<Node>,
3131 #[prost(bool, tag = "7")]
3132 pub grant_option: bool,
3133 #[prost(message, optional, tag = "8")]
3134 pub grantor: ::core::option::Option<RoleSpec>,
3135 #[prost(enumeration = "DropBehavior", tag = "9")]
3136 pub behavior: i32,
3137}
3138#[derive(serde::Serialize)]
3139#[derive(Clone, PartialEq, ::prost::Message)]
3140pub struct ObjectWithArgs {
3141 #[prost(message, repeated, tag = "1")]
3142 pub objname: ::prost::alloc::vec::Vec<Node>,
3143 #[prost(message, repeated, tag = "2")]
3144 pub objargs: ::prost::alloc::vec::Vec<Node>,
3145 #[prost(message, repeated, tag = "3")]
3146 pub objfuncargs: ::prost::alloc::vec::Vec<Node>,
3147 #[prost(bool, tag = "4")]
3148 pub args_unspecified: bool,
3149}
3150#[derive(serde::Serialize)]
3151#[derive(Clone, PartialEq, ::prost::Message)]
3152pub struct AccessPriv {
3153 #[prost(string, tag = "1")]
3154 pub priv_name: ::prost::alloc::string::String,
3155 #[prost(message, repeated, tag = "2")]
3156 pub cols: ::prost::alloc::vec::Vec<Node>,
3157}
3158#[derive(serde::Serialize)]
3159#[derive(Clone, PartialEq, ::prost::Message)]
3160pub struct GrantRoleStmt {
3161 #[prost(message, repeated, tag = "1")]
3162 pub granted_roles: ::prost::alloc::vec::Vec<Node>,
3163 #[prost(message, repeated, tag = "2")]
3164 pub grantee_roles: ::prost::alloc::vec::Vec<Node>,
3165 #[prost(bool, tag = "3")]
3166 pub is_grant: bool,
3167 #[prost(message, repeated, tag = "4")]
3168 pub opt: ::prost::alloc::vec::Vec<Node>,
3169 #[prost(message, optional, tag = "5")]
3170 pub grantor: ::core::option::Option<RoleSpec>,
3171 #[prost(enumeration = "DropBehavior", tag = "6")]
3172 pub behavior: i32,
3173}
3174#[derive(serde::Serialize)]
3175#[derive(Clone, PartialEq, ::prost::Message)]
3176pub struct AlterDefaultPrivilegesStmt {
3177 #[prost(message, repeated, tag = "1")]
3178 pub options: ::prost::alloc::vec::Vec<Node>,
3179 #[prost(message, optional, tag = "2")]
3180 pub action: ::core::option::Option<GrantStmt>,
3181}
3182#[derive(serde::Serialize)]
3183#[derive(Clone, PartialEq, ::prost::Message)]
3184pub struct CopyStmt {
3185 #[prost(message, optional, tag = "1")]
3186 pub relation: ::core::option::Option<RangeVar>,
3187 #[prost(message, optional, boxed, tag = "2")]
3188 pub query: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3189 #[prost(message, repeated, tag = "3")]
3190 pub attlist: ::prost::alloc::vec::Vec<Node>,
3191 #[prost(bool, tag = "4")]
3192 pub is_from: bool,
3193 #[prost(bool, tag = "5")]
3194 pub is_program: bool,
3195 #[prost(string, tag = "6")]
3196 pub filename: ::prost::alloc::string::String,
3197 #[prost(message, repeated, tag = "7")]
3198 pub options: ::prost::alloc::vec::Vec<Node>,
3199 #[prost(message, optional, boxed, tag = "8")]
3200 pub where_clause: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3201}
3202#[derive(serde::Serialize)]
3203#[derive(Clone, PartialEq, ::prost::Message)]
3204pub struct VariableSetStmt {
3205 #[prost(enumeration = "VariableSetKind", tag = "1")]
3206 pub kind: i32,
3207 #[prost(string, tag = "2")]
3208 pub name: ::prost::alloc::string::String,
3209 #[prost(message, repeated, tag = "3")]
3210 pub args: ::prost::alloc::vec::Vec<Node>,
3211 #[prost(bool, tag = "4")]
3212 pub jumble_args: bool,
3213 #[prost(bool, tag = "5")]
3214 pub is_local: bool,
3215 #[prost(int32, tag = "6")]
3216 pub location: i32,
3217}
3218#[derive(serde::Serialize)]
3219#[derive(Clone, PartialEq, ::prost::Message)]
3220pub struct VariableShowStmt {
3221 #[prost(string, tag = "1")]
3222 pub name: ::prost::alloc::string::String,
3223}
3224#[derive(serde::Serialize)]
3225#[derive(Clone, PartialEq, ::prost::Message)]
3226pub struct CreateStmt {
3227 #[prost(message, optional, tag = "1")]
3228 pub relation: ::core::option::Option<RangeVar>,
3229 #[prost(message, repeated, tag = "2")]
3230 pub table_elts: ::prost::alloc::vec::Vec<Node>,
3231 #[prost(message, repeated, tag = "3")]
3232 pub inh_relations: ::prost::alloc::vec::Vec<Node>,
3233 #[prost(message, optional, tag = "4")]
3234 pub partbound: ::core::option::Option<PartitionBoundSpec>,
3235 #[prost(message, optional, tag = "5")]
3236 pub partspec: ::core::option::Option<PartitionSpec>,
3237 #[prost(message, optional, tag = "6")]
3238 pub of_typename: ::core::option::Option<TypeName>,
3239 #[prost(message, repeated, tag = "7")]
3240 pub constraints: ::prost::alloc::vec::Vec<Node>,
3241 #[prost(message, repeated, tag = "8")]
3242 pub nnconstraints: ::prost::alloc::vec::Vec<Node>,
3243 #[prost(message, repeated, tag = "9")]
3244 pub options: ::prost::alloc::vec::Vec<Node>,
3245 #[prost(enumeration = "OnCommitAction", tag = "10")]
3246 pub oncommit: i32,
3247 #[prost(string, tag = "11")]
3248 pub tablespacename: ::prost::alloc::string::String,
3249 #[prost(string, tag = "12")]
3250 pub access_method: ::prost::alloc::string::String,
3251 #[prost(bool, tag = "13")]
3252 pub if_not_exists: bool,
3253}
3254#[derive(serde::Serialize)]
3255#[derive(Clone, PartialEq, ::prost::Message)]
3256pub struct Constraint {
3257 #[prost(enumeration = "ConstrType", tag = "1")]
3258 pub contype: i32,
3259 #[prost(string, tag = "2")]
3260 pub conname: ::prost::alloc::string::String,
3261 #[prost(bool, tag = "3")]
3262 pub deferrable: bool,
3263 #[prost(bool, tag = "4")]
3264 pub initdeferred: bool,
3265 #[prost(bool, tag = "5")]
3266 pub is_enforced: bool,
3267 #[prost(bool, tag = "6")]
3268 pub skip_validation: bool,
3269 #[prost(bool, tag = "7")]
3270 pub initially_valid: bool,
3271 #[prost(bool, tag = "8")]
3272 pub is_no_inherit: bool,
3273 #[prost(message, optional, boxed, tag = "9")]
3274 pub raw_expr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3275 #[prost(string, tag = "10")]
3276 pub cooked_expr: ::prost::alloc::string::String,
3277 #[prost(string, tag = "11")]
3278 pub generated_when: ::prost::alloc::string::String,
3279 #[prost(string, tag = "12")]
3280 pub generated_kind: ::prost::alloc::string::String,
3281 #[prost(bool, tag = "13")]
3282 pub nulls_not_distinct: bool,
3283 #[prost(message, repeated, tag = "14")]
3284 pub keys: ::prost::alloc::vec::Vec<Node>,
3285 #[prost(bool, tag = "15")]
3286 pub without_overlaps: bool,
3287 #[prost(message, repeated, tag = "16")]
3288 pub including: ::prost::alloc::vec::Vec<Node>,
3289 #[prost(message, repeated, tag = "17")]
3290 pub exclusions: ::prost::alloc::vec::Vec<Node>,
3291 #[prost(message, repeated, tag = "18")]
3292 pub options: ::prost::alloc::vec::Vec<Node>,
3293 #[prost(string, tag = "19")]
3294 pub indexname: ::prost::alloc::string::String,
3295 #[prost(string, tag = "20")]
3296 pub indexspace: ::prost::alloc::string::String,
3297 #[prost(bool, tag = "21")]
3298 pub reset_default_tblspc: bool,
3299 #[prost(string, tag = "22")]
3300 pub access_method: ::prost::alloc::string::String,
3301 #[prost(message, optional, boxed, tag = "23")]
3302 pub where_clause: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3303 #[prost(message, optional, tag = "24")]
3304 pub pktable: ::core::option::Option<RangeVar>,
3305 #[prost(message, repeated, tag = "25")]
3306 pub fk_attrs: ::prost::alloc::vec::Vec<Node>,
3307 #[prost(message, repeated, tag = "26")]
3308 pub pk_attrs: ::prost::alloc::vec::Vec<Node>,
3309 #[prost(bool, tag = "27")]
3310 pub fk_with_period: bool,
3311 #[prost(bool, tag = "28")]
3312 pub pk_with_period: bool,
3313 #[prost(string, tag = "29")]
3314 pub fk_matchtype: ::prost::alloc::string::String,
3315 #[prost(string, tag = "30")]
3316 pub fk_upd_action: ::prost::alloc::string::String,
3317 #[prost(string, tag = "31")]
3318 pub fk_del_action: ::prost::alloc::string::String,
3319 #[prost(message, repeated, tag = "32")]
3320 pub fk_del_set_cols: ::prost::alloc::vec::Vec<Node>,
3321 #[prost(message, repeated, tag = "33")]
3322 pub old_conpfeqop: ::prost::alloc::vec::Vec<Node>,
3323 #[prost(uint32, tag = "34")]
3324 pub old_pktable_oid: u32,
3325 #[prost(int32, tag = "35")]
3326 pub location: i32,
3327}
3328#[derive(serde::Serialize)]
3329#[derive(Clone, PartialEq, ::prost::Message)]
3330pub struct CreateTableSpaceStmt {
3331 #[prost(string, tag = "1")]
3332 pub tablespacename: ::prost::alloc::string::String,
3333 #[prost(message, optional, tag = "2")]
3334 pub owner: ::core::option::Option<RoleSpec>,
3335 #[prost(string, tag = "3")]
3336 pub location: ::prost::alloc::string::String,
3337 #[prost(message, repeated, tag = "4")]
3338 pub options: ::prost::alloc::vec::Vec<Node>,
3339}
3340#[derive(serde::Serialize)]
3341#[derive(Clone, PartialEq, ::prost::Message)]
3342pub struct DropTableSpaceStmt {
3343 #[prost(string, tag = "1")]
3344 pub tablespacename: ::prost::alloc::string::String,
3345 #[prost(bool, tag = "2")]
3346 pub missing_ok: bool,
3347}
3348#[derive(serde::Serialize)]
3349#[derive(Clone, PartialEq, ::prost::Message)]
3350pub struct AlterTableSpaceOptionsStmt {
3351 #[prost(string, tag = "1")]
3352 pub tablespacename: ::prost::alloc::string::String,
3353 #[prost(message, repeated, tag = "2")]
3354 pub options: ::prost::alloc::vec::Vec<Node>,
3355 #[prost(bool, tag = "3")]
3356 pub is_reset: bool,
3357}
3358#[derive(serde::Serialize)]
3359#[derive(Clone, PartialEq, ::prost::Message)]
3360pub struct AlterTableMoveAllStmt {
3361 #[prost(string, tag = "1")]
3362 pub orig_tablespacename: ::prost::alloc::string::String,
3363 #[prost(enumeration = "ObjectType", tag = "2")]
3364 pub objtype: i32,
3365 #[prost(message, repeated, tag = "3")]
3366 pub roles: ::prost::alloc::vec::Vec<Node>,
3367 #[prost(string, tag = "4")]
3368 pub new_tablespacename: ::prost::alloc::string::String,
3369 #[prost(bool, tag = "5")]
3370 pub nowait: bool,
3371}
3372#[derive(serde::Serialize)]
3373#[derive(Clone, PartialEq, ::prost::Message)]
3374pub struct CreateExtensionStmt {
3375 #[prost(string, tag = "1")]
3376 pub extname: ::prost::alloc::string::String,
3377 #[prost(bool, tag = "2")]
3378 pub if_not_exists: bool,
3379 #[prost(message, repeated, tag = "3")]
3380 pub options: ::prost::alloc::vec::Vec<Node>,
3381}
3382#[derive(serde::Serialize)]
3383#[derive(Clone, PartialEq, ::prost::Message)]
3384pub struct AlterExtensionStmt {
3385 #[prost(string, tag = "1")]
3386 pub extname: ::prost::alloc::string::String,
3387 #[prost(message, repeated, tag = "2")]
3388 pub options: ::prost::alloc::vec::Vec<Node>,
3389}
3390#[derive(serde::Serialize)]
3391#[derive(Clone, PartialEq, ::prost::Message)]
3392pub struct AlterExtensionContentsStmt {
3393 #[prost(string, tag = "1")]
3394 pub extname: ::prost::alloc::string::String,
3395 #[prost(int32, tag = "2")]
3396 pub action: i32,
3397 #[prost(enumeration = "ObjectType", tag = "3")]
3398 pub objtype: i32,
3399 #[prost(message, optional, boxed, tag = "4")]
3400 pub object: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3401}
3402#[derive(serde::Serialize)]
3403#[derive(Clone, PartialEq, ::prost::Message)]
3404pub struct CreateFdwStmt {
3405 #[prost(string, tag = "1")]
3406 pub fdwname: ::prost::alloc::string::String,
3407 #[prost(message, repeated, tag = "2")]
3408 pub func_options: ::prost::alloc::vec::Vec<Node>,
3409 #[prost(message, repeated, tag = "3")]
3410 pub options: ::prost::alloc::vec::Vec<Node>,
3411}
3412#[derive(serde::Serialize)]
3413#[derive(Clone, PartialEq, ::prost::Message)]
3414pub struct AlterFdwStmt {
3415 #[prost(string, tag = "1")]
3416 pub fdwname: ::prost::alloc::string::String,
3417 #[prost(message, repeated, tag = "2")]
3418 pub func_options: ::prost::alloc::vec::Vec<Node>,
3419 #[prost(message, repeated, tag = "3")]
3420 pub options: ::prost::alloc::vec::Vec<Node>,
3421}
3422#[derive(serde::Serialize)]
3423#[derive(Clone, PartialEq, ::prost::Message)]
3424pub struct CreateForeignServerStmt {
3425 #[prost(string, tag = "1")]
3426 pub servername: ::prost::alloc::string::String,
3427 #[prost(string, tag = "2")]
3428 pub servertype: ::prost::alloc::string::String,
3429 #[prost(string, tag = "3")]
3430 pub version: ::prost::alloc::string::String,
3431 #[prost(string, tag = "4")]
3432 pub fdwname: ::prost::alloc::string::String,
3433 #[prost(bool, tag = "5")]
3434 pub if_not_exists: bool,
3435 #[prost(message, repeated, tag = "6")]
3436 pub options: ::prost::alloc::vec::Vec<Node>,
3437}
3438#[derive(serde::Serialize)]
3439#[derive(Clone, PartialEq, ::prost::Message)]
3440pub struct AlterForeignServerStmt {
3441 #[prost(string, tag = "1")]
3442 pub servername: ::prost::alloc::string::String,
3443 #[prost(string, tag = "2")]
3444 pub version: ::prost::alloc::string::String,
3445 #[prost(message, repeated, tag = "3")]
3446 pub options: ::prost::alloc::vec::Vec<Node>,
3447 #[prost(bool, tag = "4")]
3448 pub has_version: bool,
3449}
3450#[derive(serde::Serialize)]
3451#[derive(Clone, PartialEq, ::prost::Message)]
3452pub struct CreateForeignTableStmt {
3453 #[prost(message, optional, tag = "1")]
3454 pub base_stmt: ::core::option::Option<CreateStmt>,
3455 #[prost(string, tag = "2")]
3456 pub servername: ::prost::alloc::string::String,
3457 #[prost(message, repeated, tag = "3")]
3458 pub options: ::prost::alloc::vec::Vec<Node>,
3459}
3460#[derive(serde::Serialize)]
3461#[derive(Clone, PartialEq, ::prost::Message)]
3462pub struct CreateUserMappingStmt {
3463 #[prost(message, optional, tag = "1")]
3464 pub user: ::core::option::Option<RoleSpec>,
3465 #[prost(string, tag = "2")]
3466 pub servername: ::prost::alloc::string::String,
3467 #[prost(bool, tag = "3")]
3468 pub if_not_exists: bool,
3469 #[prost(message, repeated, tag = "4")]
3470 pub options: ::prost::alloc::vec::Vec<Node>,
3471}
3472#[derive(serde::Serialize)]
3473#[derive(Clone, PartialEq, ::prost::Message)]
3474pub struct AlterUserMappingStmt {
3475 #[prost(message, optional, tag = "1")]
3476 pub user: ::core::option::Option<RoleSpec>,
3477 #[prost(string, tag = "2")]
3478 pub servername: ::prost::alloc::string::String,
3479 #[prost(message, repeated, tag = "3")]
3480 pub options: ::prost::alloc::vec::Vec<Node>,
3481}
3482#[derive(serde::Serialize)]
3483#[derive(Clone, PartialEq, ::prost::Message)]
3484pub struct DropUserMappingStmt {
3485 #[prost(message, optional, tag = "1")]
3486 pub user: ::core::option::Option<RoleSpec>,
3487 #[prost(string, tag = "2")]
3488 pub servername: ::prost::alloc::string::String,
3489 #[prost(bool, tag = "3")]
3490 pub missing_ok: bool,
3491}
3492#[derive(serde::Serialize)]
3493#[derive(Clone, PartialEq, ::prost::Message)]
3494pub struct ImportForeignSchemaStmt {
3495 #[prost(string, tag = "1")]
3496 pub server_name: ::prost::alloc::string::String,
3497 #[prost(string, tag = "2")]
3498 pub remote_schema: ::prost::alloc::string::String,
3499 #[prost(string, tag = "3")]
3500 pub local_schema: ::prost::alloc::string::String,
3501 #[prost(enumeration = "ImportForeignSchemaType", tag = "4")]
3502 pub list_type: i32,
3503 #[prost(message, repeated, tag = "5")]
3504 pub table_list: ::prost::alloc::vec::Vec<Node>,
3505 #[prost(message, repeated, tag = "6")]
3506 pub options: ::prost::alloc::vec::Vec<Node>,
3507}
3508#[derive(serde::Serialize)]
3509#[derive(Clone, PartialEq, ::prost::Message)]
3510pub struct CreatePolicyStmt {
3511 #[prost(string, tag = "1")]
3512 pub policy_name: ::prost::alloc::string::String,
3513 #[prost(message, optional, tag = "2")]
3514 pub table: ::core::option::Option<RangeVar>,
3515 #[prost(string, tag = "3")]
3516 pub cmd_name: ::prost::alloc::string::String,
3517 #[prost(bool, tag = "4")]
3518 pub permissive: bool,
3519 #[prost(message, repeated, tag = "5")]
3520 pub roles: ::prost::alloc::vec::Vec<Node>,
3521 #[prost(message, optional, boxed, tag = "6")]
3522 pub qual: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3523 #[prost(message, optional, boxed, tag = "7")]
3524 pub with_check: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3525}
3526#[derive(serde::Serialize)]
3527#[derive(Clone, PartialEq, ::prost::Message)]
3528pub struct AlterPolicyStmt {
3529 #[prost(string, tag = "1")]
3530 pub policy_name: ::prost::alloc::string::String,
3531 #[prost(message, optional, tag = "2")]
3532 pub table: ::core::option::Option<RangeVar>,
3533 #[prost(message, repeated, tag = "3")]
3534 pub roles: ::prost::alloc::vec::Vec<Node>,
3535 #[prost(message, optional, boxed, tag = "4")]
3536 pub qual: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3537 #[prost(message, optional, boxed, tag = "5")]
3538 pub with_check: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3539}
3540#[derive(serde::Serialize)]
3541#[derive(Clone, PartialEq, ::prost::Message)]
3542pub struct CreateAmStmt {
3543 #[prost(string, tag = "1")]
3544 pub amname: ::prost::alloc::string::String,
3545 #[prost(message, repeated, tag = "2")]
3546 pub handler_name: ::prost::alloc::vec::Vec<Node>,
3547 #[prost(string, tag = "3")]
3548 pub amtype: ::prost::alloc::string::String,
3549}
3550#[derive(serde::Serialize)]
3551#[derive(Clone, PartialEq, ::prost::Message)]
3552pub struct CreateTrigStmt {
3553 #[prost(bool, tag = "1")]
3554 pub replace: bool,
3555 #[prost(bool, tag = "2")]
3556 pub isconstraint: bool,
3557 #[prost(string, tag = "3")]
3558 pub trigname: ::prost::alloc::string::String,
3559 #[prost(message, optional, tag = "4")]
3560 pub relation: ::core::option::Option<RangeVar>,
3561 #[prost(message, repeated, tag = "5")]
3562 pub funcname: ::prost::alloc::vec::Vec<Node>,
3563 #[prost(message, repeated, tag = "6")]
3564 pub args: ::prost::alloc::vec::Vec<Node>,
3565 #[prost(bool, tag = "7")]
3566 pub row: bool,
3567 #[prost(int32, tag = "8")]
3568 pub timing: i32,
3569 #[prost(int32, tag = "9")]
3570 pub events: i32,
3571 #[prost(message, repeated, tag = "10")]
3572 pub columns: ::prost::alloc::vec::Vec<Node>,
3573 #[prost(message, optional, boxed, tag = "11")]
3574 pub when_clause: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3575 #[prost(message, repeated, tag = "12")]
3576 pub transition_rels: ::prost::alloc::vec::Vec<Node>,
3577 #[prost(bool, tag = "13")]
3578 pub deferrable: bool,
3579 #[prost(bool, tag = "14")]
3580 pub initdeferred: bool,
3581 #[prost(message, optional, tag = "15")]
3582 pub constrrel: ::core::option::Option<RangeVar>,
3583}
3584#[derive(serde::Serialize)]
3585#[derive(Clone, PartialEq, ::prost::Message)]
3586pub struct CreateEventTrigStmt {
3587 #[prost(string, tag = "1")]
3588 pub trigname: ::prost::alloc::string::String,
3589 #[prost(string, tag = "2")]
3590 pub eventname: ::prost::alloc::string::String,
3591 #[prost(message, repeated, tag = "3")]
3592 pub whenclause: ::prost::alloc::vec::Vec<Node>,
3593 #[prost(message, repeated, tag = "4")]
3594 pub funcname: ::prost::alloc::vec::Vec<Node>,
3595}
3596#[derive(serde::Serialize)]
3597#[derive(Clone, PartialEq, ::prost::Message)]
3598pub struct AlterEventTrigStmt {
3599 #[prost(string, tag = "1")]
3600 pub trigname: ::prost::alloc::string::String,
3601 #[prost(string, tag = "2")]
3602 pub tgenabled: ::prost::alloc::string::String,
3603}
3604#[derive(serde::Serialize)]
3605#[derive(Clone, PartialEq, ::prost::Message)]
3606pub struct CreatePLangStmt {
3607 #[prost(bool, tag = "1")]
3608 pub replace: bool,
3609 #[prost(string, tag = "2")]
3610 pub plname: ::prost::alloc::string::String,
3611 #[prost(message, repeated, tag = "3")]
3612 pub plhandler: ::prost::alloc::vec::Vec<Node>,
3613 #[prost(message, repeated, tag = "4")]
3614 pub plinline: ::prost::alloc::vec::Vec<Node>,
3615 #[prost(message, repeated, tag = "5")]
3616 pub plvalidator: ::prost::alloc::vec::Vec<Node>,
3617 #[prost(bool, tag = "6")]
3618 pub pltrusted: bool,
3619}
3620#[derive(serde::Serialize)]
3621#[derive(Clone, PartialEq, ::prost::Message)]
3622pub struct CreateRoleStmt {
3623 #[prost(enumeration = "RoleStmtType", tag = "1")]
3624 pub stmt_type: i32,
3625 #[prost(string, tag = "2")]
3626 pub role: ::prost::alloc::string::String,
3627 #[prost(message, repeated, tag = "3")]
3628 pub options: ::prost::alloc::vec::Vec<Node>,
3629}
3630#[derive(serde::Serialize)]
3631#[derive(Clone, PartialEq, ::prost::Message)]
3632pub struct AlterRoleStmt {
3633 #[prost(message, optional, tag = "1")]
3634 pub role: ::core::option::Option<RoleSpec>,
3635 #[prost(message, repeated, tag = "2")]
3636 pub options: ::prost::alloc::vec::Vec<Node>,
3637 #[prost(int32, tag = "3")]
3638 pub action: i32,
3639}
3640#[derive(serde::Serialize)]
3641#[derive(Clone, PartialEq, ::prost::Message)]
3642pub struct AlterRoleSetStmt {
3643 #[prost(message, optional, tag = "1")]
3644 pub role: ::core::option::Option<RoleSpec>,
3645 #[prost(string, tag = "2")]
3646 pub database: ::prost::alloc::string::String,
3647 #[prost(message, optional, tag = "3")]
3648 pub setstmt: ::core::option::Option<VariableSetStmt>,
3649}
3650#[derive(serde::Serialize)]
3651#[derive(Clone, PartialEq, ::prost::Message)]
3652pub struct DropRoleStmt {
3653 #[prost(message, repeated, tag = "1")]
3654 pub roles: ::prost::alloc::vec::Vec<Node>,
3655 #[prost(bool, tag = "2")]
3656 pub missing_ok: bool,
3657}
3658#[derive(serde::Serialize)]
3659#[derive(Clone, PartialEq, ::prost::Message)]
3660pub struct CreateSeqStmt {
3661 #[prost(message, optional, tag = "1")]
3662 pub sequence: ::core::option::Option<RangeVar>,
3663 #[prost(message, repeated, tag = "2")]
3664 pub options: ::prost::alloc::vec::Vec<Node>,
3665 #[prost(uint32, tag = "3")]
3666 pub owner_id: u32,
3667 #[prost(bool, tag = "4")]
3668 pub for_identity: bool,
3669 #[prost(bool, tag = "5")]
3670 pub if_not_exists: bool,
3671}
3672#[derive(serde::Serialize)]
3673#[derive(Clone, PartialEq, ::prost::Message)]
3674pub struct AlterSeqStmt {
3675 #[prost(message, optional, tag = "1")]
3676 pub sequence: ::core::option::Option<RangeVar>,
3677 #[prost(message, repeated, tag = "2")]
3678 pub options: ::prost::alloc::vec::Vec<Node>,
3679 #[prost(bool, tag = "3")]
3680 pub for_identity: bool,
3681 #[prost(bool, tag = "4")]
3682 pub missing_ok: bool,
3683}
3684#[derive(serde::Serialize)]
3685#[derive(Clone, PartialEq, ::prost::Message)]
3686pub struct DefineStmt {
3687 #[prost(enumeration = "ObjectType", tag = "1")]
3688 pub kind: i32,
3689 #[prost(bool, tag = "2")]
3690 pub oldstyle: bool,
3691 #[prost(message, repeated, tag = "3")]
3692 pub defnames: ::prost::alloc::vec::Vec<Node>,
3693 #[prost(message, repeated, tag = "4")]
3694 pub args: ::prost::alloc::vec::Vec<Node>,
3695 #[prost(message, repeated, tag = "5")]
3696 pub definition: ::prost::alloc::vec::Vec<Node>,
3697 #[prost(bool, tag = "6")]
3698 pub if_not_exists: bool,
3699 #[prost(bool, tag = "7")]
3700 pub replace: bool,
3701}
3702#[derive(serde::Serialize)]
3703#[derive(Clone, PartialEq, ::prost::Message)]
3704pub struct CreateDomainStmt {
3705 #[prost(message, repeated, tag = "1")]
3706 pub domainname: ::prost::alloc::vec::Vec<Node>,
3707 #[prost(message, optional, tag = "2")]
3708 pub type_name: ::core::option::Option<TypeName>,
3709 #[prost(message, optional, boxed, tag = "3")]
3710 pub coll_clause: ::core::option::Option<::prost::alloc::boxed::Box<CollateClause>>,
3711 #[prost(message, repeated, tag = "4")]
3712 pub constraints: ::prost::alloc::vec::Vec<Node>,
3713}
3714#[derive(serde::Serialize)]
3715#[derive(Clone, PartialEq, ::prost::Message)]
3716pub struct CreateOpClassStmt {
3717 #[prost(message, repeated, tag = "1")]
3718 pub opclassname: ::prost::alloc::vec::Vec<Node>,
3719 #[prost(message, repeated, tag = "2")]
3720 pub opfamilyname: ::prost::alloc::vec::Vec<Node>,
3721 #[prost(string, tag = "3")]
3722 pub amname: ::prost::alloc::string::String,
3723 #[prost(message, optional, tag = "4")]
3724 pub datatype: ::core::option::Option<TypeName>,
3725 #[prost(message, repeated, tag = "5")]
3726 pub items: ::prost::alloc::vec::Vec<Node>,
3727 #[prost(bool, tag = "6")]
3728 pub is_default: bool,
3729}
3730#[derive(serde::Serialize)]
3731#[derive(Clone, PartialEq, ::prost::Message)]
3732pub struct CreateOpClassItem {
3733 #[prost(int32, tag = "1")]
3734 pub itemtype: i32,
3735 #[prost(message, optional, tag = "2")]
3736 pub name: ::core::option::Option<ObjectWithArgs>,
3737 #[prost(int32, tag = "3")]
3738 pub number: i32,
3739 #[prost(message, repeated, tag = "4")]
3740 pub order_family: ::prost::alloc::vec::Vec<Node>,
3741 #[prost(message, repeated, tag = "5")]
3742 pub class_args: ::prost::alloc::vec::Vec<Node>,
3743 #[prost(message, optional, tag = "6")]
3744 pub storedtype: ::core::option::Option<TypeName>,
3745}
3746#[derive(serde::Serialize)]
3747#[derive(Clone, PartialEq, ::prost::Message)]
3748pub struct CreateOpFamilyStmt {
3749 #[prost(message, repeated, tag = "1")]
3750 pub opfamilyname: ::prost::alloc::vec::Vec<Node>,
3751 #[prost(string, tag = "2")]
3752 pub amname: ::prost::alloc::string::String,
3753}
3754#[derive(serde::Serialize)]
3755#[derive(Clone, PartialEq, ::prost::Message)]
3756pub struct AlterOpFamilyStmt {
3757 #[prost(message, repeated, tag = "1")]
3758 pub opfamilyname: ::prost::alloc::vec::Vec<Node>,
3759 #[prost(string, tag = "2")]
3760 pub amname: ::prost::alloc::string::String,
3761 #[prost(bool, tag = "3")]
3762 pub is_drop: bool,
3763 #[prost(message, repeated, tag = "4")]
3764 pub items: ::prost::alloc::vec::Vec<Node>,
3765}
3766#[derive(serde::Serialize)]
3767#[derive(Clone, PartialEq, ::prost::Message)]
3768pub struct DropStmt {
3769 #[prost(message, repeated, tag = "1")]
3770 pub objects: ::prost::alloc::vec::Vec<Node>,
3771 #[prost(enumeration = "ObjectType", tag = "2")]
3772 pub remove_type: i32,
3773 #[prost(enumeration = "DropBehavior", tag = "3")]
3774 pub behavior: i32,
3775 #[prost(bool, tag = "4")]
3776 pub missing_ok: bool,
3777 #[prost(bool, tag = "5")]
3778 pub concurrent: bool,
3779}
3780#[derive(serde::Serialize)]
3781#[derive(Clone, PartialEq, ::prost::Message)]
3782pub struct TruncateStmt {
3783 #[prost(message, repeated, tag = "1")]
3784 pub relations: ::prost::alloc::vec::Vec<Node>,
3785 #[prost(bool, tag = "2")]
3786 pub restart_seqs: bool,
3787 #[prost(enumeration = "DropBehavior", tag = "3")]
3788 pub behavior: i32,
3789}
3790#[derive(serde::Serialize)]
3791#[derive(Clone, PartialEq, ::prost::Message)]
3792pub struct CommentStmt {
3793 #[prost(enumeration = "ObjectType", tag = "1")]
3794 pub objtype: i32,
3795 #[prost(message, optional, boxed, tag = "2")]
3796 pub object: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3797 #[prost(string, tag = "3")]
3798 pub comment: ::prost::alloc::string::String,
3799}
3800#[derive(serde::Serialize)]
3801#[derive(Clone, PartialEq, ::prost::Message)]
3802pub struct SecLabelStmt {
3803 #[prost(enumeration = "ObjectType", tag = "1")]
3804 pub objtype: i32,
3805 #[prost(message, optional, boxed, tag = "2")]
3806 pub object: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3807 #[prost(string, tag = "3")]
3808 pub provider: ::prost::alloc::string::String,
3809 #[prost(string, tag = "4")]
3810 pub label: ::prost::alloc::string::String,
3811}
3812#[derive(serde::Serialize)]
3813#[derive(Clone, PartialEq, ::prost::Message)]
3814pub struct DeclareCursorStmt {
3815 #[prost(string, tag = "1")]
3816 pub portalname: ::prost::alloc::string::String,
3817 #[prost(int32, tag = "2")]
3818 pub options: i32,
3819 #[prost(message, optional, boxed, tag = "3")]
3820 pub query: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3821}
3822#[derive(serde::Serialize)]
3823#[derive(Clone, PartialEq, ::prost::Message)]
3824pub struct ClosePortalStmt {
3825 #[prost(string, tag = "1")]
3826 pub portalname: ::prost::alloc::string::String,
3827}
3828#[derive(serde::Serialize)]
3829#[derive(Clone, PartialEq, ::prost::Message)]
3830pub struct FetchStmt {
3831 #[prost(enumeration = "FetchDirection", tag = "1")]
3832 pub direction: i32,
3833 #[prost(int64, tag = "2")]
3834 pub how_many: i64,
3835 #[prost(string, tag = "3")]
3836 pub portalname: ::prost::alloc::string::String,
3837 #[prost(bool, tag = "4")]
3838 pub ismove: bool,
3839}
3840#[derive(serde::Serialize)]
3841#[derive(Clone, PartialEq, ::prost::Message)]
3842pub struct IndexStmt {
3843 #[prost(string, tag = "1")]
3844 pub idxname: ::prost::alloc::string::String,
3845 #[prost(message, optional, tag = "2")]
3846 pub relation: ::core::option::Option<RangeVar>,
3847 #[prost(string, tag = "3")]
3848 pub access_method: ::prost::alloc::string::String,
3849 #[prost(string, tag = "4")]
3850 pub table_space: ::prost::alloc::string::String,
3851 #[prost(message, repeated, tag = "5")]
3852 pub index_params: ::prost::alloc::vec::Vec<Node>,
3853 #[prost(message, repeated, tag = "6")]
3854 pub index_including_params: ::prost::alloc::vec::Vec<Node>,
3855 #[prost(message, repeated, tag = "7")]
3856 pub options: ::prost::alloc::vec::Vec<Node>,
3857 #[prost(message, optional, boxed, tag = "8")]
3858 pub where_clause: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3859 #[prost(message, repeated, tag = "9")]
3860 pub exclude_op_names: ::prost::alloc::vec::Vec<Node>,
3861 #[prost(string, tag = "10")]
3862 pub idxcomment: ::prost::alloc::string::String,
3863 #[prost(uint32, tag = "11")]
3864 pub index_oid: u32,
3865 #[prost(uint32, tag = "12")]
3866 pub old_number: u32,
3867 #[prost(uint32, tag = "13")]
3868 pub old_create_subid: u32,
3869 #[prost(uint32, tag = "14")]
3870 pub old_first_relfilelocator_subid: u32,
3871 #[prost(bool, tag = "15")]
3872 pub unique: bool,
3873 #[prost(bool, tag = "16")]
3874 pub nulls_not_distinct: bool,
3875 #[prost(bool, tag = "17")]
3876 pub primary: bool,
3877 #[prost(bool, tag = "18")]
3878 pub isconstraint: bool,
3879 #[prost(bool, tag = "19")]
3880 pub iswithoutoverlaps: bool,
3881 #[prost(bool, tag = "20")]
3882 pub deferrable: bool,
3883 #[prost(bool, tag = "21")]
3884 pub initdeferred: bool,
3885 #[prost(bool, tag = "22")]
3886 pub transformed: bool,
3887 #[prost(bool, tag = "23")]
3888 pub concurrent: bool,
3889 #[prost(bool, tag = "24")]
3890 pub if_not_exists: bool,
3891 #[prost(bool, tag = "25")]
3892 pub reset_default_tblspc: bool,
3893}
3894#[derive(serde::Serialize)]
3895#[derive(Clone, PartialEq, ::prost::Message)]
3896pub struct CreateStatsStmt {
3897 #[prost(message, repeated, tag = "1")]
3898 pub defnames: ::prost::alloc::vec::Vec<Node>,
3899 #[prost(message, repeated, tag = "2")]
3900 pub stat_types: ::prost::alloc::vec::Vec<Node>,
3901 #[prost(message, repeated, tag = "3")]
3902 pub exprs: ::prost::alloc::vec::Vec<Node>,
3903 #[prost(message, repeated, tag = "4")]
3904 pub relations: ::prost::alloc::vec::Vec<Node>,
3905 #[prost(string, tag = "5")]
3906 pub stxcomment: ::prost::alloc::string::String,
3907 #[prost(bool, tag = "6")]
3908 pub transformed: bool,
3909 #[prost(bool, tag = "7")]
3910 pub if_not_exists: bool,
3911}
3912#[derive(serde::Serialize)]
3913#[derive(Clone, PartialEq, ::prost::Message)]
3914pub struct StatsElem {
3915 #[prost(string, tag = "1")]
3916 pub name: ::prost::alloc::string::String,
3917 #[prost(message, optional, boxed, tag = "2")]
3918 pub expr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3919}
3920#[derive(serde::Serialize)]
3921#[derive(Clone, PartialEq, ::prost::Message)]
3922pub struct AlterStatsStmt {
3923 #[prost(message, repeated, tag = "1")]
3924 pub defnames: ::prost::alloc::vec::Vec<Node>,
3925 #[prost(message, optional, boxed, tag = "2")]
3926 pub stxstattarget: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3927 #[prost(bool, tag = "3")]
3928 pub missing_ok: bool,
3929}
3930#[derive(serde::Serialize)]
3931#[derive(Clone, PartialEq, ::prost::Message)]
3932pub struct CreateFunctionStmt {
3933 #[prost(bool, tag = "1")]
3934 pub is_procedure: bool,
3935 #[prost(bool, tag = "2")]
3936 pub replace: bool,
3937 #[prost(message, repeated, tag = "3")]
3938 pub funcname: ::prost::alloc::vec::Vec<Node>,
3939 #[prost(message, repeated, tag = "4")]
3940 pub parameters: ::prost::alloc::vec::Vec<Node>,
3941 #[prost(message, optional, tag = "5")]
3942 pub return_type: ::core::option::Option<TypeName>,
3943 #[prost(message, repeated, tag = "6")]
3944 pub options: ::prost::alloc::vec::Vec<Node>,
3945 #[prost(message, optional, boxed, tag = "7")]
3946 pub sql_body: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3947}
3948#[derive(serde::Serialize)]
3949#[derive(Clone, PartialEq, ::prost::Message)]
3950pub struct FunctionParameter {
3951 #[prost(string, tag = "1")]
3952 pub name: ::prost::alloc::string::String,
3953 #[prost(message, optional, tag = "2")]
3954 pub arg_type: ::core::option::Option<TypeName>,
3955 #[prost(enumeration = "FunctionParameterMode", tag = "3")]
3956 pub mode: i32,
3957 #[prost(message, optional, boxed, tag = "4")]
3958 pub defexpr: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
3959 #[prost(int32, tag = "5")]
3960 pub location: i32,
3961}
3962#[derive(serde::Serialize)]
3963#[derive(Clone, PartialEq, ::prost::Message)]
3964pub struct AlterFunctionStmt {
3965 #[prost(enumeration = "ObjectType", tag = "1")]
3966 pub objtype: i32,
3967 #[prost(message, optional, tag = "2")]
3968 pub func: ::core::option::Option<ObjectWithArgs>,
3969 #[prost(message, repeated, tag = "3")]
3970 pub actions: ::prost::alloc::vec::Vec<Node>,
3971}
3972#[derive(serde::Serialize)]
3973#[derive(Clone, PartialEq, ::prost::Message)]
3974pub struct DoStmt {
3975 #[prost(message, repeated, tag = "1")]
3976 pub args: ::prost::alloc::vec::Vec<Node>,
3977}
3978#[derive(serde::Serialize)]
3979#[derive(Clone, PartialEq, ::prost::Message)]
3980pub struct InlineCodeBlock {
3981 #[prost(string, tag = "1")]
3982 pub source_text: ::prost::alloc::string::String,
3983 #[prost(uint32, tag = "2")]
3984 pub lang_oid: u32,
3985 #[prost(bool, tag = "3")]
3986 pub lang_is_trusted: bool,
3987 #[prost(bool, tag = "4")]
3988 pub atomic: bool,
3989}
3990#[derive(serde::Serialize)]
3991#[derive(Clone, PartialEq, ::prost::Message)]
3992pub struct CallStmt {
3993 #[prost(message, optional, boxed, tag = "1")]
3994 pub funccall: ::core::option::Option<::prost::alloc::boxed::Box<FuncCall>>,
3995 #[prost(message, optional, boxed, tag = "2")]
3996 pub funcexpr: ::core::option::Option<::prost::alloc::boxed::Box<FuncExpr>>,
3997 #[prost(message, repeated, tag = "3")]
3998 pub outargs: ::prost::alloc::vec::Vec<Node>,
3999}
4000#[derive(serde::Serialize)]
4001#[derive(Clone, Copy, PartialEq, ::prost::Message)]
4002pub struct CallContext {
4003 #[prost(bool, tag = "1")]
4004 pub atomic: bool,
4005}
4006#[derive(serde::Serialize)]
4007#[derive(Clone, PartialEq, ::prost::Message)]
4008pub struct RenameStmt {
4009 #[prost(enumeration = "ObjectType", tag = "1")]
4010 pub rename_type: i32,
4011 #[prost(enumeration = "ObjectType", tag = "2")]
4012 pub relation_type: i32,
4013 #[prost(message, optional, tag = "3")]
4014 pub relation: ::core::option::Option<RangeVar>,
4015 #[prost(message, optional, boxed, tag = "4")]
4016 pub object: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
4017 #[prost(string, tag = "5")]
4018 pub subname: ::prost::alloc::string::String,
4019 #[prost(string, tag = "6")]
4020 pub newname: ::prost::alloc::string::String,
4021 #[prost(enumeration = "DropBehavior", tag = "7")]
4022 pub behavior: i32,
4023 #[prost(bool, tag = "8")]
4024 pub missing_ok: bool,
4025}
4026#[derive(serde::Serialize)]
4027#[derive(Clone, PartialEq, ::prost::Message)]
4028pub struct AlterObjectDependsStmt {
4029 #[prost(enumeration = "ObjectType", tag = "1")]
4030 pub object_type: i32,
4031 #[prost(message, optional, tag = "2")]
4032 pub relation: ::core::option::Option<RangeVar>,
4033 #[prost(message, optional, boxed, tag = "3")]
4034 pub object: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
4035 #[prost(message, optional, tag = "4")]
4036 pub extname: ::core::option::Option<String>,
4037 #[prost(bool, tag = "5")]
4038 pub remove: bool,
4039}
4040#[derive(serde::Serialize)]
4041#[derive(Clone, PartialEq, ::prost::Message)]
4042pub struct AlterObjectSchemaStmt {
4043 #[prost(enumeration = "ObjectType", tag = "1")]
4044 pub object_type: i32,
4045 #[prost(message, optional, tag = "2")]
4046 pub relation: ::core::option::Option<RangeVar>,
4047 #[prost(message, optional, boxed, tag = "3")]
4048 pub object: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
4049 #[prost(string, tag = "4")]
4050 pub newschema: ::prost::alloc::string::String,
4051 #[prost(bool, tag = "5")]
4052 pub missing_ok: bool,
4053}
4054#[derive(serde::Serialize)]
4055#[derive(Clone, PartialEq, ::prost::Message)]
4056pub struct AlterOwnerStmt {
4057 #[prost(enumeration = "ObjectType", tag = "1")]
4058 pub object_type: i32,
4059 #[prost(message, optional, tag = "2")]
4060 pub relation: ::core::option::Option<RangeVar>,
4061 #[prost(message, optional, boxed, tag = "3")]
4062 pub object: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
4063 #[prost(message, optional, tag = "4")]
4064 pub newowner: ::core::option::Option<RoleSpec>,
4065}
4066#[derive(serde::Serialize)]
4067#[derive(Clone, PartialEq, ::prost::Message)]
4068pub struct AlterOperatorStmt {
4069 #[prost(message, optional, tag = "1")]
4070 pub opername: ::core::option::Option<ObjectWithArgs>,
4071 #[prost(message, repeated, tag = "2")]
4072 pub options: ::prost::alloc::vec::Vec<Node>,
4073}
4074#[derive(serde::Serialize)]
4075#[derive(Clone, PartialEq, ::prost::Message)]
4076pub struct AlterTypeStmt {
4077 #[prost(message, repeated, tag = "1")]
4078 pub type_name: ::prost::alloc::vec::Vec<Node>,
4079 #[prost(message, repeated, tag = "2")]
4080 pub options: ::prost::alloc::vec::Vec<Node>,
4081}
4082#[derive(serde::Serialize)]
4083#[derive(Clone, PartialEq, ::prost::Message)]
4084pub struct RuleStmt {
4085 #[prost(message, optional, tag = "1")]
4086 pub relation: ::core::option::Option<RangeVar>,
4087 #[prost(string, tag = "2")]
4088 pub rulename: ::prost::alloc::string::String,
4089 #[prost(message, optional, boxed, tag = "3")]
4090 pub where_clause: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
4091 #[prost(enumeration = "CmdType", tag = "4")]
4092 pub event: i32,
4093 #[prost(bool, tag = "5")]
4094 pub instead: bool,
4095 #[prost(message, repeated, tag = "6")]
4096 pub actions: ::prost::alloc::vec::Vec<Node>,
4097 #[prost(bool, tag = "7")]
4098 pub replace: bool,
4099}
4100#[derive(serde::Serialize)]
4101#[derive(Clone, PartialEq, ::prost::Message)]
4102pub struct NotifyStmt {
4103 #[prost(string, tag = "1")]
4104 pub conditionname: ::prost::alloc::string::String,
4105 #[prost(string, tag = "2")]
4106 pub payload: ::prost::alloc::string::String,
4107}
4108#[derive(serde::Serialize)]
4109#[derive(Clone, PartialEq, ::prost::Message)]
4110pub struct ListenStmt {
4111 #[prost(string, tag = "1")]
4112 pub conditionname: ::prost::alloc::string::String,
4113}
4114#[derive(serde::Serialize)]
4115#[derive(Clone, PartialEq, ::prost::Message)]
4116pub struct UnlistenStmt {
4117 #[prost(string, tag = "1")]
4118 pub conditionname: ::prost::alloc::string::String,
4119}
4120#[derive(serde::Serialize)]
4121#[derive(Clone, PartialEq, ::prost::Message)]
4122pub struct TransactionStmt {
4123 #[prost(enumeration = "TransactionStmtKind", tag = "1")]
4124 pub kind: i32,
4125 #[prost(message, repeated, tag = "2")]
4126 pub options: ::prost::alloc::vec::Vec<Node>,
4127 #[prost(string, tag = "3")]
4128 pub savepoint_name: ::prost::alloc::string::String,
4129 #[prost(string, tag = "4")]
4130 pub gid: ::prost::alloc::string::String,
4131 #[prost(bool, tag = "5")]
4132 pub chain: bool,
4133 #[prost(int32, tag = "6")]
4134 pub location: i32,
4135}
4136#[derive(serde::Serialize)]
4137#[derive(Clone, PartialEq, ::prost::Message)]
4138pub struct CompositeTypeStmt {
4139 #[prost(message, optional, tag = "1")]
4140 pub typevar: ::core::option::Option<RangeVar>,
4141 #[prost(message, repeated, tag = "2")]
4142 pub coldeflist: ::prost::alloc::vec::Vec<Node>,
4143}
4144#[derive(serde::Serialize)]
4145#[derive(Clone, PartialEq, ::prost::Message)]
4146pub struct CreateEnumStmt {
4147 #[prost(message, repeated, tag = "1")]
4148 pub type_name: ::prost::alloc::vec::Vec<Node>,
4149 #[prost(message, repeated, tag = "2")]
4150 pub vals: ::prost::alloc::vec::Vec<Node>,
4151}
4152#[derive(serde::Serialize)]
4153#[derive(Clone, PartialEq, ::prost::Message)]
4154pub struct CreateRangeStmt {
4155 #[prost(message, repeated, tag = "1")]
4156 pub type_name: ::prost::alloc::vec::Vec<Node>,
4157 #[prost(message, repeated, tag = "2")]
4158 pub params: ::prost::alloc::vec::Vec<Node>,
4159}
4160#[derive(serde::Serialize)]
4161#[derive(Clone, PartialEq, ::prost::Message)]
4162pub struct AlterEnumStmt {
4163 #[prost(message, repeated, tag = "1")]
4164 pub type_name: ::prost::alloc::vec::Vec<Node>,
4165 #[prost(string, tag = "2")]
4166 pub old_val: ::prost::alloc::string::String,
4167 #[prost(string, tag = "3")]
4168 pub new_val: ::prost::alloc::string::String,
4169 #[prost(string, tag = "4")]
4170 pub new_val_neighbor: ::prost::alloc::string::String,
4171 #[prost(bool, tag = "5")]
4172 pub new_val_is_after: bool,
4173 #[prost(bool, tag = "6")]
4174 pub skip_if_new_val_exists: bool,
4175}
4176#[derive(serde::Serialize)]
4177#[derive(Clone, PartialEq, ::prost::Message)]
4178pub struct ViewStmt {
4179 #[prost(message, optional, tag = "1")]
4180 pub view: ::core::option::Option<RangeVar>,
4181 #[prost(message, repeated, tag = "2")]
4182 pub aliases: ::prost::alloc::vec::Vec<Node>,
4183 #[prost(message, optional, boxed, tag = "3")]
4184 pub query: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
4185 #[prost(bool, tag = "4")]
4186 pub replace: bool,
4187 #[prost(message, repeated, tag = "5")]
4188 pub options: ::prost::alloc::vec::Vec<Node>,
4189 #[prost(enumeration = "ViewCheckOption", tag = "6")]
4190 pub with_check_option: i32,
4191}
4192#[derive(serde::Serialize)]
4193#[derive(Clone, PartialEq, ::prost::Message)]
4194pub struct LoadStmt {
4195 #[prost(string, tag = "1")]
4196 pub filename: ::prost::alloc::string::String,
4197}
4198#[derive(serde::Serialize)]
4199#[derive(Clone, PartialEq, ::prost::Message)]
4200pub struct CreatedbStmt {
4201 #[prost(string, tag = "1")]
4202 pub dbname: ::prost::alloc::string::String,
4203 #[prost(message, repeated, tag = "2")]
4204 pub options: ::prost::alloc::vec::Vec<Node>,
4205}
4206#[derive(serde::Serialize)]
4207#[derive(Clone, PartialEq, ::prost::Message)]
4208pub struct AlterDatabaseStmt {
4209 #[prost(string, tag = "1")]
4210 pub dbname: ::prost::alloc::string::String,
4211 #[prost(message, repeated, tag = "2")]
4212 pub options: ::prost::alloc::vec::Vec<Node>,
4213}
4214#[derive(serde::Serialize)]
4215#[derive(Clone, PartialEq, ::prost::Message)]
4216pub struct AlterDatabaseRefreshCollStmt {
4217 #[prost(string, tag = "1")]
4218 pub dbname: ::prost::alloc::string::String,
4219}
4220#[derive(serde::Serialize)]
4221#[derive(Clone, PartialEq, ::prost::Message)]
4222pub struct AlterDatabaseSetStmt {
4223 #[prost(string, tag = "1")]
4224 pub dbname: ::prost::alloc::string::String,
4225 #[prost(message, optional, tag = "2")]
4226 pub setstmt: ::core::option::Option<VariableSetStmt>,
4227}
4228#[derive(serde::Serialize)]
4229#[derive(Clone, PartialEq, ::prost::Message)]
4230pub struct DropdbStmt {
4231 #[prost(string, tag = "1")]
4232 pub dbname: ::prost::alloc::string::String,
4233 #[prost(bool, tag = "2")]
4234 pub missing_ok: bool,
4235 #[prost(message, repeated, tag = "3")]
4236 pub options: ::prost::alloc::vec::Vec<Node>,
4237}
4238#[derive(serde::Serialize)]
4239#[derive(Clone, PartialEq, ::prost::Message)]
4240pub struct AlterSystemStmt {
4241 #[prost(message, optional, tag = "1")]
4242 pub setstmt: ::core::option::Option<VariableSetStmt>,
4243}
4244#[derive(serde::Serialize)]
4245#[derive(Clone, PartialEq, ::prost::Message)]
4246pub struct ClusterStmt {
4247 #[prost(message, optional, tag = "1")]
4248 pub relation: ::core::option::Option<RangeVar>,
4249 #[prost(string, tag = "2")]
4250 pub indexname: ::prost::alloc::string::String,
4251 #[prost(message, repeated, tag = "3")]
4252 pub params: ::prost::alloc::vec::Vec<Node>,
4253}
4254#[derive(serde::Serialize)]
4255#[derive(Clone, PartialEq, ::prost::Message)]
4256pub struct VacuumStmt {
4257 #[prost(message, repeated, tag = "1")]
4258 pub options: ::prost::alloc::vec::Vec<Node>,
4259 #[prost(message, repeated, tag = "2")]
4260 pub rels: ::prost::alloc::vec::Vec<Node>,
4261 #[prost(bool, tag = "3")]
4262 pub is_vacuumcmd: bool,
4263}
4264#[derive(serde::Serialize)]
4265#[derive(Clone, PartialEq, ::prost::Message)]
4266pub struct VacuumRelation {
4267 #[prost(message, optional, tag = "1")]
4268 pub relation: ::core::option::Option<RangeVar>,
4269 #[prost(uint32, tag = "2")]
4270 pub oid: u32,
4271 #[prost(message, repeated, tag = "3")]
4272 pub va_cols: ::prost::alloc::vec::Vec<Node>,
4273}
4274#[derive(serde::Serialize)]
4275#[derive(Clone, PartialEq, ::prost::Message)]
4276pub struct ExplainStmt {
4277 #[prost(message, optional, boxed, tag = "1")]
4278 pub query: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
4279 #[prost(message, repeated, tag = "2")]
4280 pub options: ::prost::alloc::vec::Vec<Node>,
4281}
4282#[derive(serde::Serialize)]
4283#[derive(Clone, PartialEq, ::prost::Message)]
4284pub struct CreateTableAsStmt {
4285 #[prost(message, optional, boxed, tag = "1")]
4286 pub query: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
4287 #[prost(message, optional, boxed, tag = "2")]
4288 pub into: ::core::option::Option<::prost::alloc::boxed::Box<IntoClause>>,
4289 #[prost(enumeration = "ObjectType", tag = "3")]
4290 pub objtype: i32,
4291 #[prost(bool, tag = "4")]
4292 pub is_select_into: bool,
4293 #[prost(bool, tag = "5")]
4294 pub if_not_exists: bool,
4295}
4296#[derive(serde::Serialize)]
4297#[derive(Clone, PartialEq, ::prost::Message)]
4298pub struct RefreshMatViewStmt {
4299 #[prost(bool, tag = "1")]
4300 pub concurrent: bool,
4301 #[prost(bool, tag = "2")]
4302 pub skip_data: bool,
4303 #[prost(message, optional, tag = "3")]
4304 pub relation: ::core::option::Option<RangeVar>,
4305}
4306#[derive(serde::Serialize)]
4307#[derive(Clone, Copy, PartialEq, ::prost::Message)]
4308pub struct CheckPointStmt {}
4309#[derive(serde::Serialize)]
4310#[derive(Clone, Copy, PartialEq, ::prost::Message)]
4311pub struct DiscardStmt {
4312 #[prost(enumeration = "DiscardMode", tag = "1")]
4313 pub target: i32,
4314}
4315#[derive(serde::Serialize)]
4316#[derive(Clone, PartialEq, ::prost::Message)]
4317pub struct LockStmt {
4318 #[prost(message, repeated, tag = "1")]
4319 pub relations: ::prost::alloc::vec::Vec<Node>,
4320 #[prost(int32, tag = "2")]
4321 pub mode: i32,
4322 #[prost(bool, tag = "3")]
4323 pub nowait: bool,
4324}
4325#[derive(serde::Serialize)]
4326#[derive(Clone, PartialEq, ::prost::Message)]
4327pub struct ConstraintsSetStmt {
4328 #[prost(message, repeated, tag = "1")]
4329 pub constraints: ::prost::alloc::vec::Vec<Node>,
4330 #[prost(bool, tag = "2")]
4331 pub deferred: bool,
4332}
4333#[derive(serde::Serialize)]
4334#[derive(Clone, PartialEq, ::prost::Message)]
4335pub struct ReindexStmt {
4336 #[prost(enumeration = "ReindexObjectType", tag = "1")]
4337 pub kind: i32,
4338 #[prost(message, optional, tag = "2")]
4339 pub relation: ::core::option::Option<RangeVar>,
4340 #[prost(string, tag = "3")]
4341 pub name: ::prost::alloc::string::String,
4342 #[prost(message, repeated, tag = "4")]
4343 pub params: ::prost::alloc::vec::Vec<Node>,
4344}
4345#[derive(serde::Serialize)]
4346#[derive(Clone, PartialEq, ::prost::Message)]
4347pub struct CreateConversionStmt {
4348 #[prost(message, repeated, tag = "1")]
4349 pub conversion_name: ::prost::alloc::vec::Vec<Node>,
4350 #[prost(string, tag = "2")]
4351 pub for_encoding_name: ::prost::alloc::string::String,
4352 #[prost(string, tag = "3")]
4353 pub to_encoding_name: ::prost::alloc::string::String,
4354 #[prost(message, repeated, tag = "4")]
4355 pub func_name: ::prost::alloc::vec::Vec<Node>,
4356 #[prost(bool, tag = "5")]
4357 pub def: bool,
4358}
4359#[derive(serde::Serialize)]
4360#[derive(Clone, PartialEq, ::prost::Message)]
4361pub struct CreateCastStmt {
4362 #[prost(message, optional, tag = "1")]
4363 pub sourcetype: ::core::option::Option<TypeName>,
4364 #[prost(message, optional, tag = "2")]
4365 pub targettype: ::core::option::Option<TypeName>,
4366 #[prost(message, optional, tag = "3")]
4367 pub func: ::core::option::Option<ObjectWithArgs>,
4368 #[prost(enumeration = "CoercionContext", tag = "4")]
4369 pub context: i32,
4370 #[prost(bool, tag = "5")]
4371 pub inout: bool,
4372}
4373#[derive(serde::Serialize)]
4374#[derive(Clone, PartialEq, ::prost::Message)]
4375pub struct CreateTransformStmt {
4376 #[prost(bool, tag = "1")]
4377 pub replace: bool,
4378 #[prost(message, optional, tag = "2")]
4379 pub type_name: ::core::option::Option<TypeName>,
4380 #[prost(string, tag = "3")]
4381 pub lang: ::prost::alloc::string::String,
4382 #[prost(message, optional, tag = "4")]
4383 pub fromsql: ::core::option::Option<ObjectWithArgs>,
4384 #[prost(message, optional, tag = "5")]
4385 pub tosql: ::core::option::Option<ObjectWithArgs>,
4386}
4387#[derive(serde::Serialize)]
4388#[derive(Clone, PartialEq, ::prost::Message)]
4389pub struct PrepareStmt {
4390 #[prost(string, tag = "1")]
4391 pub name: ::prost::alloc::string::String,
4392 #[prost(message, repeated, tag = "2")]
4393 pub argtypes: ::prost::alloc::vec::Vec<Node>,
4394 #[prost(message, optional, boxed, tag = "3")]
4395 pub query: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
4396}
4397#[derive(serde::Serialize)]
4398#[derive(Clone, PartialEq, ::prost::Message)]
4399pub struct ExecuteStmt {
4400 #[prost(string, tag = "1")]
4401 pub name: ::prost::alloc::string::String,
4402 #[prost(message, repeated, tag = "2")]
4403 pub params: ::prost::alloc::vec::Vec<Node>,
4404}
4405#[derive(serde::Serialize)]
4406#[derive(Clone, PartialEq, ::prost::Message)]
4407pub struct DeallocateStmt {
4408 #[prost(string, tag = "1")]
4409 pub name: ::prost::alloc::string::String,
4410 #[prost(bool, tag = "2")]
4411 pub isall: bool,
4412 #[prost(int32, tag = "3")]
4413 pub location: i32,
4414}
4415#[derive(serde::Serialize)]
4416#[derive(Clone, PartialEq, ::prost::Message)]
4417pub struct DropOwnedStmt {
4418 #[prost(message, repeated, tag = "1")]
4419 pub roles: ::prost::alloc::vec::Vec<Node>,
4420 #[prost(enumeration = "DropBehavior", tag = "2")]
4421 pub behavior: i32,
4422}
4423#[derive(serde::Serialize)]
4424#[derive(Clone, PartialEq, ::prost::Message)]
4425pub struct ReassignOwnedStmt {
4426 #[prost(message, repeated, tag = "1")]
4427 pub roles: ::prost::alloc::vec::Vec<Node>,
4428 #[prost(message, optional, tag = "2")]
4429 pub newrole: ::core::option::Option<RoleSpec>,
4430}
4431#[derive(serde::Serialize)]
4432#[derive(Clone, PartialEq, ::prost::Message)]
4433pub struct AlterTsDictionaryStmt {
4434 #[prost(message, repeated, tag = "1")]
4435 pub dictname: ::prost::alloc::vec::Vec<Node>,
4436 #[prost(message, repeated, tag = "2")]
4437 pub options: ::prost::alloc::vec::Vec<Node>,
4438}
4439#[derive(serde::Serialize)]
4440#[derive(Clone, PartialEq, ::prost::Message)]
4441pub struct AlterTsConfigurationStmt {
4442 #[prost(enumeration = "AlterTsConfigType", tag = "1")]
4443 pub kind: i32,
4444 #[prost(message, repeated, tag = "2")]
4445 pub cfgname: ::prost::alloc::vec::Vec<Node>,
4446 #[prost(message, repeated, tag = "3")]
4447 pub tokentype: ::prost::alloc::vec::Vec<Node>,
4448 #[prost(message, repeated, tag = "4")]
4449 pub dicts: ::prost::alloc::vec::Vec<Node>,
4450 #[prost(bool, tag = "5")]
4451 pub r#override: bool,
4452 #[prost(bool, tag = "6")]
4453 pub replace: bool,
4454 #[prost(bool, tag = "7")]
4455 pub missing_ok: bool,
4456}
4457#[derive(serde::Serialize)]
4458#[derive(Clone, PartialEq, ::prost::Message)]
4459pub struct PublicationTable {
4460 #[prost(message, optional, tag = "1")]
4461 pub relation: ::core::option::Option<RangeVar>,
4462 #[prost(message, optional, boxed, tag = "2")]
4463 pub where_clause: ::core::option::Option<::prost::alloc::boxed::Box<Node>>,
4464 #[prost(message, repeated, tag = "3")]
4465 pub columns: ::prost::alloc::vec::Vec<Node>,
4466}
4467#[derive(serde::Serialize)]
4468#[derive(Clone, PartialEq, ::prost::Message)]
4469pub struct PublicationObjSpec {
4470 #[prost(enumeration = "PublicationObjSpecType", tag = "1")]
4471 pub pubobjtype: i32,
4472 #[prost(string, tag = "2")]
4473 pub name: ::prost::alloc::string::String,
4474 #[prost(message, optional, boxed, tag = "3")]
4475 pub pubtable: ::core::option::Option<::prost::alloc::boxed::Box<PublicationTable>>,
4476 #[prost(int32, tag = "4")]
4477 pub location: i32,
4478}
4479#[derive(serde::Serialize)]
4480#[derive(Clone, PartialEq, ::prost::Message)]
4481pub struct CreatePublicationStmt {
4482 #[prost(string, tag = "1")]
4483 pub pubname: ::prost::alloc::string::String,
4484 #[prost(message, repeated, tag = "2")]
4485 pub options: ::prost::alloc::vec::Vec<Node>,
4486 #[prost(message, repeated, tag = "3")]
4487 pub pubobjects: ::prost::alloc::vec::Vec<Node>,
4488 #[prost(bool, tag = "4")]
4489 pub for_all_tables: bool,
4490}
4491#[derive(serde::Serialize)]
4492#[derive(Clone, PartialEq, ::prost::Message)]
4493pub struct AlterPublicationStmt {
4494 #[prost(string, tag = "1")]
4495 pub pubname: ::prost::alloc::string::String,
4496 #[prost(message, repeated, tag = "2")]
4497 pub options: ::prost::alloc::vec::Vec<Node>,
4498 #[prost(message, repeated, tag = "3")]
4499 pub pubobjects: ::prost::alloc::vec::Vec<Node>,
4500 #[prost(bool, tag = "4")]
4501 pub for_all_tables: bool,
4502 #[prost(enumeration = "AlterPublicationAction", tag = "5")]
4503 pub action: i32,
4504}
4505#[derive(serde::Serialize)]
4506#[derive(Clone, PartialEq, ::prost::Message)]
4507pub struct CreateSubscriptionStmt {
4508 #[prost(string, tag = "1")]
4509 pub subname: ::prost::alloc::string::String,
4510 #[prost(string, tag = "2")]
4511 pub conninfo: ::prost::alloc::string::String,
4512 #[prost(message, repeated, tag = "3")]
4513 pub publication: ::prost::alloc::vec::Vec<Node>,
4514 #[prost(message, repeated, tag = "4")]
4515 pub options: ::prost::alloc::vec::Vec<Node>,
4516}
4517#[derive(serde::Serialize)]
4518#[derive(Clone, PartialEq, ::prost::Message)]
4519pub struct AlterSubscriptionStmt {
4520 #[prost(enumeration = "AlterSubscriptionType", tag = "1")]
4521 pub kind: i32,
4522 #[prost(string, tag = "2")]
4523 pub subname: ::prost::alloc::string::String,
4524 #[prost(string, tag = "3")]
4525 pub conninfo: ::prost::alloc::string::String,
4526 #[prost(message, repeated, tag = "4")]
4527 pub publication: ::prost::alloc::vec::Vec<Node>,
4528 #[prost(message, repeated, tag = "5")]
4529 pub options: ::prost::alloc::vec::Vec<Node>,
4530}
4531#[derive(serde::Serialize)]
4532#[derive(Clone, PartialEq, ::prost::Message)]
4533pub struct DropSubscriptionStmt {
4534 #[prost(string, tag = "1")]
4535 pub subname: ::prost::alloc::string::String,
4536 #[prost(bool, tag = "2")]
4537 pub missing_ok: bool,
4538 #[prost(enumeration = "DropBehavior", tag = "3")]
4539 pub behavior: i32,
4540}
4541#[derive(serde::Serialize)]
4542#[derive(Clone, Copy, PartialEq, ::prost::Message)]
4543pub struct ScanToken {
4544 #[prost(int32, tag = "1")]
4545 pub start: i32,
4546 #[prost(int32, tag = "2")]
4547 pub end: i32,
4548 #[prost(enumeration = "Token", tag = "4")]
4549 pub token: i32,
4550 #[prost(enumeration = "KeywordKind", tag = "5")]
4551 pub keyword_kind: i32,
4552}
4553#[derive(serde::Serialize)]
4560#[derive(Clone, PartialEq, ::prost::Message)]
4561pub struct SummaryResult {
4562 #[prost(message, repeated, tag = "1")]
4563 pub tables: ::prost::alloc::vec::Vec<summary_result::Table>,
4564 #[prost(map = "string, string", tag = "2")]
4566 pub aliases: ::std::collections::HashMap<
4567 ::prost::alloc::string::String,
4568 ::prost::alloc::string::String,
4569 >,
4570 #[prost(string, repeated, tag = "3")]
4571 pub cte_names: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
4572 #[prost(message, repeated, tag = "4")]
4573 pub functions: ::prost::alloc::vec::Vec<summary_result::Function>,
4574 #[prost(message, repeated, tag = "5")]
4575 pub filter_columns: ::prost::alloc::vec::Vec<summary_result::FilterColumn>,
4576 #[prost(string, repeated, tag = "6")]
4577 pub statement_types: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
4578 #[prost(string, tag = "7")]
4580 pub truncated_query: ::prost::alloc::string::String,
4581}
4582pub mod summary_result {
4584 #[derive(serde::Serialize)]
4585 #[derive(Clone, PartialEq, ::prost::Message)]
4586 pub struct Table {
4587 #[prost(string, tag = "1")]
4588 pub name: ::prost::alloc::string::String,
4589 #[prost(string, tag = "2")]
4590 pub schema_name: ::prost::alloc::string::String,
4591 #[prost(string, tag = "3")]
4592 pub table_name: ::prost::alloc::string::String,
4593 #[prost(enumeration = "Context", tag = "4")]
4594 pub context: i32,
4595 }
4596 #[derive(serde::Serialize)]
4597 #[derive(Clone, PartialEq, ::prost::Message)]
4598 pub struct Function {
4599 #[prost(string, tag = "1")]
4600 pub name: ::prost::alloc::string::String,
4601 #[prost(string, tag = "2")]
4602 pub function_name: ::prost::alloc::string::String,
4603 #[prost(string, tag = "3")]
4605 pub schema_name: ::prost::alloc::string::String,
4606 #[prost(enumeration = "Context", tag = "4")]
4607 pub context: i32,
4608 }
4609 #[derive(serde::Serialize)]
4610 #[derive(Clone, PartialEq, ::prost::Message)]
4611 pub struct FilterColumn {
4612 #[prost(string, tag = "1")]
4614 pub schema_name: ::prost::alloc::string::String,
4615 #[prost(string, tag = "2")]
4617 pub table_name: ::prost::alloc::string::String,
4618 #[prost(string, tag = "3")]
4619 pub column: ::prost::alloc::string::String,
4620 }
4621 #[derive(serde::Serialize)]
4622 #[derive(
4623 Clone,
4624 Copy,
4625 Debug,
4626 PartialEq,
4627 Eq,
4628 Hash,
4629 PartialOrd,
4630 Ord,
4631 ::prost::Enumeration
4632 )]
4633 #[repr(i32)]
4634 pub enum Context {
4635 None = 0,
4636 Select = 1,
4637 Dml = 2,
4638 Ddl = 3,
4639 Call = 4,
4640 }
4641 impl Context {
4642 pub fn as_str_name(&self) -> &'static str {
4647 match self {
4648 Self::None => "None",
4649 Self::Select => "Select",
4650 Self::Dml => "DML",
4651 Self::Ddl => "DDL",
4652 Self::Call => "Call",
4653 }
4654 }
4655 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
4657 match value {
4658 "None" => Some(Self::None),
4659 "Select" => Some(Self::Select),
4660 "DML" => Some(Self::Dml),
4661 "DDL" => Some(Self::Ddl),
4662 "Call" => Some(Self::Call),
4663 _ => None,
4664 }
4665 }
4666 }
4667}
4668#[derive(serde::Serialize)]
4669#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
4670#[repr(i32)]
4671pub enum QuerySource {
4672 Undefined = 0,
4673 QsrcOriginal = 1,
4674 QsrcParser = 2,
4675 QsrcInsteadRule = 3,
4676 QsrcQualInsteadRule = 4,
4677 QsrcNonInsteadRule = 5,
4678}
4679impl QuerySource {
4680 pub fn as_str_name(&self) -> &'static str {
4685 match self {
4686 Self::Undefined => "QUERY_SOURCE_UNDEFINED",
4687 Self::QsrcOriginal => "QSRC_ORIGINAL",
4688 Self::QsrcParser => "QSRC_PARSER",
4689 Self::QsrcInsteadRule => "QSRC_INSTEAD_RULE",
4690 Self::QsrcQualInsteadRule => "QSRC_QUAL_INSTEAD_RULE",
4691 Self::QsrcNonInsteadRule => "QSRC_NON_INSTEAD_RULE",
4692 }
4693 }
4694 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
4696 match value {
4697 "QUERY_SOURCE_UNDEFINED" => Some(Self::Undefined),
4698 "QSRC_ORIGINAL" => Some(Self::QsrcOriginal),
4699 "QSRC_PARSER" => Some(Self::QsrcParser),
4700 "QSRC_INSTEAD_RULE" => Some(Self::QsrcInsteadRule),
4701 "QSRC_QUAL_INSTEAD_RULE" => Some(Self::QsrcQualInsteadRule),
4702 "QSRC_NON_INSTEAD_RULE" => Some(Self::QsrcNonInsteadRule),
4703 _ => None,
4704 }
4705 }
4706}
4707#[derive(serde::Serialize)]
4708#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
4709#[repr(i32)]
4710pub enum SortByDir {
4711 Undefined = 0,
4712 SortbyDefault = 1,
4713 SortbyAsc = 2,
4714 SortbyDesc = 3,
4715 SortbyUsing = 4,
4716}
4717impl SortByDir {
4718 pub fn as_str_name(&self) -> &'static str {
4723 match self {
4724 Self::Undefined => "SORT_BY_DIR_UNDEFINED",
4725 Self::SortbyDefault => "SORTBY_DEFAULT",
4726 Self::SortbyAsc => "SORTBY_ASC",
4727 Self::SortbyDesc => "SORTBY_DESC",
4728 Self::SortbyUsing => "SORTBY_USING",
4729 }
4730 }
4731 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
4733 match value {
4734 "SORT_BY_DIR_UNDEFINED" => Some(Self::Undefined),
4735 "SORTBY_DEFAULT" => Some(Self::SortbyDefault),
4736 "SORTBY_ASC" => Some(Self::SortbyAsc),
4737 "SORTBY_DESC" => Some(Self::SortbyDesc),
4738 "SORTBY_USING" => Some(Self::SortbyUsing),
4739 _ => None,
4740 }
4741 }
4742}
4743#[derive(serde::Serialize)]
4744#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
4745#[repr(i32)]
4746pub enum SortByNulls {
4747 Undefined = 0,
4748 SortbyNullsDefault = 1,
4749 SortbyNullsFirst = 2,
4750 SortbyNullsLast = 3,
4751}
4752impl SortByNulls {
4753 pub fn as_str_name(&self) -> &'static str {
4758 match self {
4759 Self::Undefined => "SORT_BY_NULLS_UNDEFINED",
4760 Self::SortbyNullsDefault => "SORTBY_NULLS_DEFAULT",
4761 Self::SortbyNullsFirst => "SORTBY_NULLS_FIRST",
4762 Self::SortbyNullsLast => "SORTBY_NULLS_LAST",
4763 }
4764 }
4765 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
4767 match value {
4768 "SORT_BY_NULLS_UNDEFINED" => Some(Self::Undefined),
4769 "SORTBY_NULLS_DEFAULT" => Some(Self::SortbyNullsDefault),
4770 "SORTBY_NULLS_FIRST" => Some(Self::SortbyNullsFirst),
4771 "SORTBY_NULLS_LAST" => Some(Self::SortbyNullsLast),
4772 _ => None,
4773 }
4774 }
4775}
4776#[derive(serde::Serialize)]
4777#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
4778#[repr(i32)]
4779pub enum SetQuantifier {
4780 Undefined = 0,
4781 Default = 1,
4782 All = 2,
4783 Distinct = 3,
4784}
4785impl SetQuantifier {
4786 pub fn as_str_name(&self) -> &'static str {
4791 match self {
4792 Self::Undefined => "SET_QUANTIFIER_UNDEFINED",
4793 Self::Default => "SET_QUANTIFIER_DEFAULT",
4794 Self::All => "SET_QUANTIFIER_ALL",
4795 Self::Distinct => "SET_QUANTIFIER_DISTINCT",
4796 }
4797 }
4798 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
4800 match value {
4801 "SET_QUANTIFIER_UNDEFINED" => Some(Self::Undefined),
4802 "SET_QUANTIFIER_DEFAULT" => Some(Self::Default),
4803 "SET_QUANTIFIER_ALL" => Some(Self::All),
4804 "SET_QUANTIFIER_DISTINCT" => Some(Self::Distinct),
4805 _ => None,
4806 }
4807 }
4808}
4809#[derive(serde::Serialize)]
4810#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
4811#[repr(i32)]
4812pub enum AExprKind {
4813 Undefined = 0,
4814 AexprOp = 1,
4815 AexprOpAny = 2,
4816 AexprOpAll = 3,
4817 AexprDistinct = 4,
4818 AexprNotDistinct = 5,
4819 AexprNullif = 6,
4820 AexprIn = 7,
4821 AexprLike = 8,
4822 AexprIlike = 9,
4823 AexprSimilar = 10,
4824 AexprBetween = 11,
4825 AexprNotBetween = 12,
4826 AexprBetweenSym = 13,
4827 AexprNotBetweenSym = 14,
4828}
4829impl AExprKind {
4830 pub fn as_str_name(&self) -> &'static str {
4835 match self {
4836 Self::Undefined => "A_EXPR_KIND_UNDEFINED",
4837 Self::AexprOp => "AEXPR_OP",
4838 Self::AexprOpAny => "AEXPR_OP_ANY",
4839 Self::AexprOpAll => "AEXPR_OP_ALL",
4840 Self::AexprDistinct => "AEXPR_DISTINCT",
4841 Self::AexprNotDistinct => "AEXPR_NOT_DISTINCT",
4842 Self::AexprNullif => "AEXPR_NULLIF",
4843 Self::AexprIn => "AEXPR_IN",
4844 Self::AexprLike => "AEXPR_LIKE",
4845 Self::AexprIlike => "AEXPR_ILIKE",
4846 Self::AexprSimilar => "AEXPR_SIMILAR",
4847 Self::AexprBetween => "AEXPR_BETWEEN",
4848 Self::AexprNotBetween => "AEXPR_NOT_BETWEEN",
4849 Self::AexprBetweenSym => "AEXPR_BETWEEN_SYM",
4850 Self::AexprNotBetweenSym => "AEXPR_NOT_BETWEEN_SYM",
4851 }
4852 }
4853 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
4855 match value {
4856 "A_EXPR_KIND_UNDEFINED" => Some(Self::Undefined),
4857 "AEXPR_OP" => Some(Self::AexprOp),
4858 "AEXPR_OP_ANY" => Some(Self::AexprOpAny),
4859 "AEXPR_OP_ALL" => Some(Self::AexprOpAll),
4860 "AEXPR_DISTINCT" => Some(Self::AexprDistinct),
4861 "AEXPR_NOT_DISTINCT" => Some(Self::AexprNotDistinct),
4862 "AEXPR_NULLIF" => Some(Self::AexprNullif),
4863 "AEXPR_IN" => Some(Self::AexprIn),
4864 "AEXPR_LIKE" => Some(Self::AexprLike),
4865 "AEXPR_ILIKE" => Some(Self::AexprIlike),
4866 "AEXPR_SIMILAR" => Some(Self::AexprSimilar),
4867 "AEXPR_BETWEEN" => Some(Self::AexprBetween),
4868 "AEXPR_NOT_BETWEEN" => Some(Self::AexprNotBetween),
4869 "AEXPR_BETWEEN_SYM" => Some(Self::AexprBetweenSym),
4870 "AEXPR_NOT_BETWEEN_SYM" => Some(Self::AexprNotBetweenSym),
4871 _ => None,
4872 }
4873 }
4874}
4875#[derive(serde::Serialize)]
4876#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
4877#[repr(i32)]
4878pub enum RoleSpecType {
4879 Undefined = 0,
4880 RolespecCstring = 1,
4881 RolespecCurrentRole = 2,
4882 RolespecCurrentUser = 3,
4883 RolespecSessionUser = 4,
4884 RolespecPublic = 5,
4885}
4886impl RoleSpecType {
4887 pub fn as_str_name(&self) -> &'static str {
4892 match self {
4893 Self::Undefined => "ROLE_SPEC_TYPE_UNDEFINED",
4894 Self::RolespecCstring => "ROLESPEC_CSTRING",
4895 Self::RolespecCurrentRole => "ROLESPEC_CURRENT_ROLE",
4896 Self::RolespecCurrentUser => "ROLESPEC_CURRENT_USER",
4897 Self::RolespecSessionUser => "ROLESPEC_SESSION_USER",
4898 Self::RolespecPublic => "ROLESPEC_PUBLIC",
4899 }
4900 }
4901 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
4903 match value {
4904 "ROLE_SPEC_TYPE_UNDEFINED" => Some(Self::Undefined),
4905 "ROLESPEC_CSTRING" => Some(Self::RolespecCstring),
4906 "ROLESPEC_CURRENT_ROLE" => Some(Self::RolespecCurrentRole),
4907 "ROLESPEC_CURRENT_USER" => Some(Self::RolespecCurrentUser),
4908 "ROLESPEC_SESSION_USER" => Some(Self::RolespecSessionUser),
4909 "ROLESPEC_PUBLIC" => Some(Self::RolespecPublic),
4910 _ => None,
4911 }
4912 }
4913}
4914#[derive(serde::Serialize)]
4915#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
4916#[repr(i32)]
4917pub enum TableLikeOption {
4918 Undefined = 0,
4919 CreateTableLikeComments = 1,
4920 CreateTableLikeCompression = 2,
4921 CreateTableLikeConstraints = 3,
4922 CreateTableLikeDefaults = 4,
4923 CreateTableLikeGenerated = 5,
4924 CreateTableLikeIdentity = 6,
4925 CreateTableLikeIndexes = 7,
4926 CreateTableLikeStatistics = 8,
4927 CreateTableLikeStorage = 9,
4928 CreateTableLikeAll = 10,
4929}
4930impl TableLikeOption {
4931 pub fn as_str_name(&self) -> &'static str {
4936 match self {
4937 Self::Undefined => "TABLE_LIKE_OPTION_UNDEFINED",
4938 Self::CreateTableLikeComments => "CREATE_TABLE_LIKE_COMMENTS",
4939 Self::CreateTableLikeCompression => "CREATE_TABLE_LIKE_COMPRESSION",
4940 Self::CreateTableLikeConstraints => "CREATE_TABLE_LIKE_CONSTRAINTS",
4941 Self::CreateTableLikeDefaults => "CREATE_TABLE_LIKE_DEFAULTS",
4942 Self::CreateTableLikeGenerated => "CREATE_TABLE_LIKE_GENERATED",
4943 Self::CreateTableLikeIdentity => "CREATE_TABLE_LIKE_IDENTITY",
4944 Self::CreateTableLikeIndexes => "CREATE_TABLE_LIKE_INDEXES",
4945 Self::CreateTableLikeStatistics => "CREATE_TABLE_LIKE_STATISTICS",
4946 Self::CreateTableLikeStorage => "CREATE_TABLE_LIKE_STORAGE",
4947 Self::CreateTableLikeAll => "CREATE_TABLE_LIKE_ALL",
4948 }
4949 }
4950 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
4952 match value {
4953 "TABLE_LIKE_OPTION_UNDEFINED" => Some(Self::Undefined),
4954 "CREATE_TABLE_LIKE_COMMENTS" => Some(Self::CreateTableLikeComments),
4955 "CREATE_TABLE_LIKE_COMPRESSION" => Some(Self::CreateTableLikeCompression),
4956 "CREATE_TABLE_LIKE_CONSTRAINTS" => Some(Self::CreateTableLikeConstraints),
4957 "CREATE_TABLE_LIKE_DEFAULTS" => Some(Self::CreateTableLikeDefaults),
4958 "CREATE_TABLE_LIKE_GENERATED" => Some(Self::CreateTableLikeGenerated),
4959 "CREATE_TABLE_LIKE_IDENTITY" => Some(Self::CreateTableLikeIdentity),
4960 "CREATE_TABLE_LIKE_INDEXES" => Some(Self::CreateTableLikeIndexes),
4961 "CREATE_TABLE_LIKE_STATISTICS" => Some(Self::CreateTableLikeStatistics),
4962 "CREATE_TABLE_LIKE_STORAGE" => Some(Self::CreateTableLikeStorage),
4963 "CREATE_TABLE_LIKE_ALL" => Some(Self::CreateTableLikeAll),
4964 _ => None,
4965 }
4966 }
4967}
4968#[derive(serde::Serialize)]
4969#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
4970#[repr(i32)]
4971pub enum DefElemAction {
4972 Undefined = 0,
4973 DefelemUnspec = 1,
4974 DefelemSet = 2,
4975 DefelemAdd = 3,
4976 DefelemDrop = 4,
4977}
4978impl DefElemAction {
4979 pub fn as_str_name(&self) -> &'static str {
4984 match self {
4985 Self::Undefined => "DEF_ELEM_ACTION_UNDEFINED",
4986 Self::DefelemUnspec => "DEFELEM_UNSPEC",
4987 Self::DefelemSet => "DEFELEM_SET",
4988 Self::DefelemAdd => "DEFELEM_ADD",
4989 Self::DefelemDrop => "DEFELEM_DROP",
4990 }
4991 }
4992 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
4994 match value {
4995 "DEF_ELEM_ACTION_UNDEFINED" => Some(Self::Undefined),
4996 "DEFELEM_UNSPEC" => Some(Self::DefelemUnspec),
4997 "DEFELEM_SET" => Some(Self::DefelemSet),
4998 "DEFELEM_ADD" => Some(Self::DefelemAdd),
4999 "DEFELEM_DROP" => Some(Self::DefelemDrop),
5000 _ => None,
5001 }
5002 }
5003}
5004#[derive(serde::Serialize)]
5005#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5006#[repr(i32)]
5007pub enum PartitionStrategy {
5008 Undefined = 0,
5009 List = 1,
5010 Range = 2,
5011 Hash = 3,
5012}
5013impl PartitionStrategy {
5014 pub fn as_str_name(&self) -> &'static str {
5019 match self {
5020 Self::Undefined => "PARTITION_STRATEGY_UNDEFINED",
5021 Self::List => "PARTITION_STRATEGY_LIST",
5022 Self::Range => "PARTITION_STRATEGY_RANGE",
5023 Self::Hash => "PARTITION_STRATEGY_HASH",
5024 }
5025 }
5026 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5028 match value {
5029 "PARTITION_STRATEGY_UNDEFINED" => Some(Self::Undefined),
5030 "PARTITION_STRATEGY_LIST" => Some(Self::List),
5031 "PARTITION_STRATEGY_RANGE" => Some(Self::Range),
5032 "PARTITION_STRATEGY_HASH" => Some(Self::Hash),
5033 _ => None,
5034 }
5035 }
5036}
5037#[derive(serde::Serialize)]
5038#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5039#[repr(i32)]
5040pub enum PartitionRangeDatumKind {
5041 Undefined = 0,
5042 PartitionRangeDatumMinvalue = 1,
5043 PartitionRangeDatumValue = 2,
5044 PartitionRangeDatumMaxvalue = 3,
5045}
5046impl PartitionRangeDatumKind {
5047 pub fn as_str_name(&self) -> &'static str {
5052 match self {
5053 Self::Undefined => "PARTITION_RANGE_DATUM_KIND_UNDEFINED",
5054 Self::PartitionRangeDatumMinvalue => "PARTITION_RANGE_DATUM_MINVALUE",
5055 Self::PartitionRangeDatumValue => "PARTITION_RANGE_DATUM_VALUE",
5056 Self::PartitionRangeDatumMaxvalue => "PARTITION_RANGE_DATUM_MAXVALUE",
5057 }
5058 }
5059 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5061 match value {
5062 "PARTITION_RANGE_DATUM_KIND_UNDEFINED" => Some(Self::Undefined),
5063 "PARTITION_RANGE_DATUM_MINVALUE" => Some(Self::PartitionRangeDatumMinvalue),
5064 "PARTITION_RANGE_DATUM_VALUE" => Some(Self::PartitionRangeDatumValue),
5065 "PARTITION_RANGE_DATUM_MAXVALUE" => Some(Self::PartitionRangeDatumMaxvalue),
5066 _ => None,
5067 }
5068 }
5069}
5070#[derive(serde::Serialize)]
5071#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5072#[repr(i32)]
5073pub enum RteKind {
5074 RtekindUndefined = 0,
5075 RteRelation = 1,
5076 RteSubquery = 2,
5077 RteJoin = 3,
5078 RteFunction = 4,
5079 RteTablefunc = 5,
5080 RteValues = 6,
5081 RteCte = 7,
5082 RteNamedtuplestore = 8,
5083 RteResult = 9,
5084 RteGroup = 10,
5085}
5086impl RteKind {
5087 pub fn as_str_name(&self) -> &'static str {
5092 match self {
5093 Self::RtekindUndefined => "RTEKIND_UNDEFINED",
5094 Self::RteRelation => "RTE_RELATION",
5095 Self::RteSubquery => "RTE_SUBQUERY",
5096 Self::RteJoin => "RTE_JOIN",
5097 Self::RteFunction => "RTE_FUNCTION",
5098 Self::RteTablefunc => "RTE_TABLEFUNC",
5099 Self::RteValues => "RTE_VALUES",
5100 Self::RteCte => "RTE_CTE",
5101 Self::RteNamedtuplestore => "RTE_NAMEDTUPLESTORE",
5102 Self::RteResult => "RTE_RESULT",
5103 Self::RteGroup => "RTE_GROUP",
5104 }
5105 }
5106 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5108 match value {
5109 "RTEKIND_UNDEFINED" => Some(Self::RtekindUndefined),
5110 "RTE_RELATION" => Some(Self::RteRelation),
5111 "RTE_SUBQUERY" => Some(Self::RteSubquery),
5112 "RTE_JOIN" => Some(Self::RteJoin),
5113 "RTE_FUNCTION" => Some(Self::RteFunction),
5114 "RTE_TABLEFUNC" => Some(Self::RteTablefunc),
5115 "RTE_VALUES" => Some(Self::RteValues),
5116 "RTE_CTE" => Some(Self::RteCte),
5117 "RTE_NAMEDTUPLESTORE" => Some(Self::RteNamedtuplestore),
5118 "RTE_RESULT" => Some(Self::RteResult),
5119 "RTE_GROUP" => Some(Self::RteGroup),
5120 _ => None,
5121 }
5122 }
5123}
5124#[derive(serde::Serialize)]
5125#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5126#[repr(i32)]
5127pub enum WcoKind {
5128 WcokindUndefined = 0,
5129 WcoViewCheck = 1,
5130 WcoRlsInsertCheck = 2,
5131 WcoRlsUpdateCheck = 3,
5132 WcoRlsConflictCheck = 4,
5133 WcoRlsMergeUpdateCheck = 5,
5134 WcoRlsMergeDeleteCheck = 6,
5135}
5136impl WcoKind {
5137 pub fn as_str_name(&self) -> &'static str {
5142 match self {
5143 Self::WcokindUndefined => "WCOKIND_UNDEFINED",
5144 Self::WcoViewCheck => "WCO_VIEW_CHECK",
5145 Self::WcoRlsInsertCheck => "WCO_RLS_INSERT_CHECK",
5146 Self::WcoRlsUpdateCheck => "WCO_RLS_UPDATE_CHECK",
5147 Self::WcoRlsConflictCheck => "WCO_RLS_CONFLICT_CHECK",
5148 Self::WcoRlsMergeUpdateCheck => "WCO_RLS_MERGE_UPDATE_CHECK",
5149 Self::WcoRlsMergeDeleteCheck => "WCO_RLS_MERGE_DELETE_CHECK",
5150 }
5151 }
5152 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5154 match value {
5155 "WCOKIND_UNDEFINED" => Some(Self::WcokindUndefined),
5156 "WCO_VIEW_CHECK" => Some(Self::WcoViewCheck),
5157 "WCO_RLS_INSERT_CHECK" => Some(Self::WcoRlsInsertCheck),
5158 "WCO_RLS_UPDATE_CHECK" => Some(Self::WcoRlsUpdateCheck),
5159 "WCO_RLS_CONFLICT_CHECK" => Some(Self::WcoRlsConflictCheck),
5160 "WCO_RLS_MERGE_UPDATE_CHECK" => Some(Self::WcoRlsMergeUpdateCheck),
5161 "WCO_RLS_MERGE_DELETE_CHECK" => Some(Self::WcoRlsMergeDeleteCheck),
5162 _ => None,
5163 }
5164 }
5165}
5166#[derive(serde::Serialize)]
5167#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5168#[repr(i32)]
5169pub enum GroupingSetKind {
5170 Undefined = 0,
5171 GroupingSetEmpty = 1,
5172 GroupingSetSimple = 2,
5173 GroupingSetRollup = 3,
5174 GroupingSetCube = 4,
5175 GroupingSetSets = 5,
5176}
5177impl GroupingSetKind {
5178 pub fn as_str_name(&self) -> &'static str {
5183 match self {
5184 Self::Undefined => "GROUPING_SET_KIND_UNDEFINED",
5185 Self::GroupingSetEmpty => "GROUPING_SET_EMPTY",
5186 Self::GroupingSetSimple => "GROUPING_SET_SIMPLE",
5187 Self::GroupingSetRollup => "GROUPING_SET_ROLLUP",
5188 Self::GroupingSetCube => "GROUPING_SET_CUBE",
5189 Self::GroupingSetSets => "GROUPING_SET_SETS",
5190 }
5191 }
5192 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5194 match value {
5195 "GROUPING_SET_KIND_UNDEFINED" => Some(Self::Undefined),
5196 "GROUPING_SET_EMPTY" => Some(Self::GroupingSetEmpty),
5197 "GROUPING_SET_SIMPLE" => Some(Self::GroupingSetSimple),
5198 "GROUPING_SET_ROLLUP" => Some(Self::GroupingSetRollup),
5199 "GROUPING_SET_CUBE" => Some(Self::GroupingSetCube),
5200 "GROUPING_SET_SETS" => Some(Self::GroupingSetSets),
5201 _ => None,
5202 }
5203 }
5204}
5205#[derive(serde::Serialize)]
5206#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5207#[repr(i32)]
5208pub enum CteMaterialize {
5209 CtematerializeUndefined = 0,
5210 Default = 1,
5211 Always = 2,
5212 Never = 3,
5213}
5214impl CteMaterialize {
5215 pub fn as_str_name(&self) -> &'static str {
5220 match self {
5221 Self::CtematerializeUndefined => "CTEMATERIALIZE_UNDEFINED",
5222 Self::Default => "CTEMaterializeDefault",
5223 Self::Always => "CTEMaterializeAlways",
5224 Self::Never => "CTEMaterializeNever",
5225 }
5226 }
5227 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5229 match value {
5230 "CTEMATERIALIZE_UNDEFINED" => Some(Self::CtematerializeUndefined),
5231 "CTEMaterializeDefault" => Some(Self::Default),
5232 "CTEMaterializeAlways" => Some(Self::Always),
5233 "CTEMaterializeNever" => Some(Self::Never),
5234 _ => None,
5235 }
5236 }
5237}
5238#[derive(serde::Serialize)]
5239#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5240#[repr(i32)]
5241pub enum ReturningOptionKind {
5242 Undefined = 0,
5243 ReturningOptionOld = 1,
5244 ReturningOptionNew = 2,
5245}
5246impl ReturningOptionKind {
5247 pub fn as_str_name(&self) -> &'static str {
5252 match self {
5253 Self::Undefined => "RETURNING_OPTION_KIND_UNDEFINED",
5254 Self::ReturningOptionOld => "RETURNING_OPTION_OLD",
5255 Self::ReturningOptionNew => "RETURNING_OPTION_NEW",
5256 }
5257 }
5258 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5260 match value {
5261 "RETURNING_OPTION_KIND_UNDEFINED" => Some(Self::Undefined),
5262 "RETURNING_OPTION_OLD" => Some(Self::ReturningOptionOld),
5263 "RETURNING_OPTION_NEW" => Some(Self::ReturningOptionNew),
5264 _ => None,
5265 }
5266 }
5267}
5268#[derive(serde::Serialize)]
5269#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5270#[repr(i32)]
5271pub enum JsonQuotes {
5272 Undefined = 0,
5273 JsQuotesUnspec = 1,
5274 JsQuotesKeep = 2,
5275 JsQuotesOmit = 3,
5276}
5277impl JsonQuotes {
5278 pub fn as_str_name(&self) -> &'static str {
5283 match self {
5284 Self::Undefined => "JSON_QUOTES_UNDEFINED",
5285 Self::JsQuotesUnspec => "JS_QUOTES_UNSPEC",
5286 Self::JsQuotesKeep => "JS_QUOTES_KEEP",
5287 Self::JsQuotesOmit => "JS_QUOTES_OMIT",
5288 }
5289 }
5290 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5292 match value {
5293 "JSON_QUOTES_UNDEFINED" => Some(Self::Undefined),
5294 "JS_QUOTES_UNSPEC" => Some(Self::JsQuotesUnspec),
5295 "JS_QUOTES_KEEP" => Some(Self::JsQuotesKeep),
5296 "JS_QUOTES_OMIT" => Some(Self::JsQuotesOmit),
5297 _ => None,
5298 }
5299 }
5300}
5301#[derive(serde::Serialize)]
5302#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5303#[repr(i32)]
5304pub enum JsonTableColumnType {
5305 Undefined = 0,
5306 JtcForOrdinality = 1,
5307 JtcRegular = 2,
5308 JtcExists = 3,
5309 JtcFormatted = 4,
5310 JtcNested = 5,
5311}
5312impl JsonTableColumnType {
5313 pub fn as_str_name(&self) -> &'static str {
5318 match self {
5319 Self::Undefined => "JSON_TABLE_COLUMN_TYPE_UNDEFINED",
5320 Self::JtcForOrdinality => "JTC_FOR_ORDINALITY",
5321 Self::JtcRegular => "JTC_REGULAR",
5322 Self::JtcExists => "JTC_EXISTS",
5323 Self::JtcFormatted => "JTC_FORMATTED",
5324 Self::JtcNested => "JTC_NESTED",
5325 }
5326 }
5327 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5329 match value {
5330 "JSON_TABLE_COLUMN_TYPE_UNDEFINED" => Some(Self::Undefined),
5331 "JTC_FOR_ORDINALITY" => Some(Self::JtcForOrdinality),
5332 "JTC_REGULAR" => Some(Self::JtcRegular),
5333 "JTC_EXISTS" => Some(Self::JtcExists),
5334 "JTC_FORMATTED" => Some(Self::JtcFormatted),
5335 "JTC_NESTED" => Some(Self::JtcNested),
5336 _ => None,
5337 }
5338 }
5339}
5340#[derive(serde::Serialize)]
5341#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5342#[repr(i32)]
5343pub enum SetOperation {
5344 Undefined = 0,
5345 SetopNone = 1,
5346 SetopUnion = 2,
5347 SetopIntersect = 3,
5348 SetopExcept = 4,
5349}
5350impl SetOperation {
5351 pub fn as_str_name(&self) -> &'static str {
5356 match self {
5357 Self::Undefined => "SET_OPERATION_UNDEFINED",
5358 Self::SetopNone => "SETOP_NONE",
5359 Self::SetopUnion => "SETOP_UNION",
5360 Self::SetopIntersect => "SETOP_INTERSECT",
5361 Self::SetopExcept => "SETOP_EXCEPT",
5362 }
5363 }
5364 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5366 match value {
5367 "SET_OPERATION_UNDEFINED" => Some(Self::Undefined),
5368 "SETOP_NONE" => Some(Self::SetopNone),
5369 "SETOP_UNION" => Some(Self::SetopUnion),
5370 "SETOP_INTERSECT" => Some(Self::SetopIntersect),
5371 "SETOP_EXCEPT" => Some(Self::SetopExcept),
5372 _ => None,
5373 }
5374 }
5375}
5376#[derive(serde::Serialize)]
5377#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5378#[repr(i32)]
5379pub enum ObjectType {
5380 Undefined = 0,
5381 ObjectAccessMethod = 1,
5382 ObjectAggregate = 2,
5383 ObjectAmop = 3,
5384 ObjectAmproc = 4,
5385 ObjectAttribute = 5,
5386 ObjectCast = 6,
5387 ObjectColumn = 7,
5388 ObjectCollation = 8,
5389 ObjectConversion = 9,
5390 ObjectDatabase = 10,
5391 ObjectDefault = 11,
5392 ObjectDefacl = 12,
5393 ObjectDomain = 13,
5394 ObjectDomconstraint = 14,
5395 ObjectEventTrigger = 15,
5396 ObjectExtension = 16,
5397 ObjectFdw = 17,
5398 ObjectForeignServer = 18,
5399 ObjectForeignTable = 19,
5400 ObjectFunction = 20,
5401 ObjectIndex = 21,
5402 ObjectLanguage = 22,
5403 ObjectLargeobject = 23,
5404 ObjectMatview = 24,
5405 ObjectOpclass = 25,
5406 ObjectOperator = 26,
5407 ObjectOpfamily = 27,
5408 ObjectParameterAcl = 28,
5409 ObjectPolicy = 29,
5410 ObjectProcedure = 30,
5411 ObjectPublication = 31,
5412 ObjectPublicationNamespace = 32,
5413 ObjectPublicationRel = 33,
5414 ObjectRole = 34,
5415 ObjectRoutine = 35,
5416 ObjectRule = 36,
5417 ObjectSchema = 37,
5418 ObjectSequence = 38,
5419 ObjectSubscription = 39,
5420 ObjectStatisticExt = 40,
5421 ObjectTabconstraint = 41,
5422 ObjectTable = 42,
5423 ObjectTablespace = 43,
5424 ObjectTransform = 44,
5425 ObjectTrigger = 45,
5426 ObjectTsconfiguration = 46,
5427 ObjectTsdictionary = 47,
5428 ObjectTsparser = 48,
5429 ObjectTstemplate = 49,
5430 ObjectType = 50,
5431 ObjectUserMapping = 51,
5432 ObjectView = 52,
5433}
5434impl ObjectType {
5435 pub fn as_str_name(&self) -> &'static str {
5440 match self {
5441 Self::Undefined => "OBJECT_TYPE_UNDEFINED",
5442 Self::ObjectAccessMethod => "OBJECT_ACCESS_METHOD",
5443 Self::ObjectAggregate => "OBJECT_AGGREGATE",
5444 Self::ObjectAmop => "OBJECT_AMOP",
5445 Self::ObjectAmproc => "OBJECT_AMPROC",
5446 Self::ObjectAttribute => "OBJECT_ATTRIBUTE",
5447 Self::ObjectCast => "OBJECT_CAST",
5448 Self::ObjectColumn => "OBJECT_COLUMN",
5449 Self::ObjectCollation => "OBJECT_COLLATION",
5450 Self::ObjectConversion => "OBJECT_CONVERSION",
5451 Self::ObjectDatabase => "OBJECT_DATABASE",
5452 Self::ObjectDefault => "OBJECT_DEFAULT",
5453 Self::ObjectDefacl => "OBJECT_DEFACL",
5454 Self::ObjectDomain => "OBJECT_DOMAIN",
5455 Self::ObjectDomconstraint => "OBJECT_DOMCONSTRAINT",
5456 Self::ObjectEventTrigger => "OBJECT_EVENT_TRIGGER",
5457 Self::ObjectExtension => "OBJECT_EXTENSION",
5458 Self::ObjectFdw => "OBJECT_FDW",
5459 Self::ObjectForeignServer => "OBJECT_FOREIGN_SERVER",
5460 Self::ObjectForeignTable => "OBJECT_FOREIGN_TABLE",
5461 Self::ObjectFunction => "OBJECT_FUNCTION",
5462 Self::ObjectIndex => "OBJECT_INDEX",
5463 Self::ObjectLanguage => "OBJECT_LANGUAGE",
5464 Self::ObjectLargeobject => "OBJECT_LARGEOBJECT",
5465 Self::ObjectMatview => "OBJECT_MATVIEW",
5466 Self::ObjectOpclass => "OBJECT_OPCLASS",
5467 Self::ObjectOperator => "OBJECT_OPERATOR",
5468 Self::ObjectOpfamily => "OBJECT_OPFAMILY",
5469 Self::ObjectParameterAcl => "OBJECT_PARAMETER_ACL",
5470 Self::ObjectPolicy => "OBJECT_POLICY",
5471 Self::ObjectProcedure => "OBJECT_PROCEDURE",
5472 Self::ObjectPublication => "OBJECT_PUBLICATION",
5473 Self::ObjectPublicationNamespace => "OBJECT_PUBLICATION_NAMESPACE",
5474 Self::ObjectPublicationRel => "OBJECT_PUBLICATION_REL",
5475 Self::ObjectRole => "OBJECT_ROLE",
5476 Self::ObjectRoutine => "OBJECT_ROUTINE",
5477 Self::ObjectRule => "OBJECT_RULE",
5478 Self::ObjectSchema => "OBJECT_SCHEMA",
5479 Self::ObjectSequence => "OBJECT_SEQUENCE",
5480 Self::ObjectSubscription => "OBJECT_SUBSCRIPTION",
5481 Self::ObjectStatisticExt => "OBJECT_STATISTIC_EXT",
5482 Self::ObjectTabconstraint => "OBJECT_TABCONSTRAINT",
5483 Self::ObjectTable => "OBJECT_TABLE",
5484 Self::ObjectTablespace => "OBJECT_TABLESPACE",
5485 Self::ObjectTransform => "OBJECT_TRANSFORM",
5486 Self::ObjectTrigger => "OBJECT_TRIGGER",
5487 Self::ObjectTsconfiguration => "OBJECT_TSCONFIGURATION",
5488 Self::ObjectTsdictionary => "OBJECT_TSDICTIONARY",
5489 Self::ObjectTsparser => "OBJECT_TSPARSER",
5490 Self::ObjectTstemplate => "OBJECT_TSTEMPLATE",
5491 Self::ObjectType => "OBJECT_TYPE",
5492 Self::ObjectUserMapping => "OBJECT_USER_MAPPING",
5493 Self::ObjectView => "OBJECT_VIEW",
5494 }
5495 }
5496 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5498 match value {
5499 "OBJECT_TYPE_UNDEFINED" => Some(Self::Undefined),
5500 "OBJECT_ACCESS_METHOD" => Some(Self::ObjectAccessMethod),
5501 "OBJECT_AGGREGATE" => Some(Self::ObjectAggregate),
5502 "OBJECT_AMOP" => Some(Self::ObjectAmop),
5503 "OBJECT_AMPROC" => Some(Self::ObjectAmproc),
5504 "OBJECT_ATTRIBUTE" => Some(Self::ObjectAttribute),
5505 "OBJECT_CAST" => Some(Self::ObjectCast),
5506 "OBJECT_COLUMN" => Some(Self::ObjectColumn),
5507 "OBJECT_COLLATION" => Some(Self::ObjectCollation),
5508 "OBJECT_CONVERSION" => Some(Self::ObjectConversion),
5509 "OBJECT_DATABASE" => Some(Self::ObjectDatabase),
5510 "OBJECT_DEFAULT" => Some(Self::ObjectDefault),
5511 "OBJECT_DEFACL" => Some(Self::ObjectDefacl),
5512 "OBJECT_DOMAIN" => Some(Self::ObjectDomain),
5513 "OBJECT_DOMCONSTRAINT" => Some(Self::ObjectDomconstraint),
5514 "OBJECT_EVENT_TRIGGER" => Some(Self::ObjectEventTrigger),
5515 "OBJECT_EXTENSION" => Some(Self::ObjectExtension),
5516 "OBJECT_FDW" => Some(Self::ObjectFdw),
5517 "OBJECT_FOREIGN_SERVER" => Some(Self::ObjectForeignServer),
5518 "OBJECT_FOREIGN_TABLE" => Some(Self::ObjectForeignTable),
5519 "OBJECT_FUNCTION" => Some(Self::ObjectFunction),
5520 "OBJECT_INDEX" => Some(Self::ObjectIndex),
5521 "OBJECT_LANGUAGE" => Some(Self::ObjectLanguage),
5522 "OBJECT_LARGEOBJECT" => Some(Self::ObjectLargeobject),
5523 "OBJECT_MATVIEW" => Some(Self::ObjectMatview),
5524 "OBJECT_OPCLASS" => Some(Self::ObjectOpclass),
5525 "OBJECT_OPERATOR" => Some(Self::ObjectOperator),
5526 "OBJECT_OPFAMILY" => Some(Self::ObjectOpfamily),
5527 "OBJECT_PARAMETER_ACL" => Some(Self::ObjectParameterAcl),
5528 "OBJECT_POLICY" => Some(Self::ObjectPolicy),
5529 "OBJECT_PROCEDURE" => Some(Self::ObjectProcedure),
5530 "OBJECT_PUBLICATION" => Some(Self::ObjectPublication),
5531 "OBJECT_PUBLICATION_NAMESPACE" => Some(Self::ObjectPublicationNamespace),
5532 "OBJECT_PUBLICATION_REL" => Some(Self::ObjectPublicationRel),
5533 "OBJECT_ROLE" => Some(Self::ObjectRole),
5534 "OBJECT_ROUTINE" => Some(Self::ObjectRoutine),
5535 "OBJECT_RULE" => Some(Self::ObjectRule),
5536 "OBJECT_SCHEMA" => Some(Self::ObjectSchema),
5537 "OBJECT_SEQUENCE" => Some(Self::ObjectSequence),
5538 "OBJECT_SUBSCRIPTION" => Some(Self::ObjectSubscription),
5539 "OBJECT_STATISTIC_EXT" => Some(Self::ObjectStatisticExt),
5540 "OBJECT_TABCONSTRAINT" => Some(Self::ObjectTabconstraint),
5541 "OBJECT_TABLE" => Some(Self::ObjectTable),
5542 "OBJECT_TABLESPACE" => Some(Self::ObjectTablespace),
5543 "OBJECT_TRANSFORM" => Some(Self::ObjectTransform),
5544 "OBJECT_TRIGGER" => Some(Self::ObjectTrigger),
5545 "OBJECT_TSCONFIGURATION" => Some(Self::ObjectTsconfiguration),
5546 "OBJECT_TSDICTIONARY" => Some(Self::ObjectTsdictionary),
5547 "OBJECT_TSPARSER" => Some(Self::ObjectTsparser),
5548 "OBJECT_TSTEMPLATE" => Some(Self::ObjectTstemplate),
5549 "OBJECT_TYPE" => Some(Self::ObjectType),
5550 "OBJECT_USER_MAPPING" => Some(Self::ObjectUserMapping),
5551 "OBJECT_VIEW" => Some(Self::ObjectView),
5552 _ => None,
5553 }
5554 }
5555}
5556#[derive(serde::Serialize)]
5557#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5558#[repr(i32)]
5559pub enum DropBehavior {
5560 Undefined = 0,
5561 DropRestrict = 1,
5562 DropCascade = 2,
5563}
5564impl DropBehavior {
5565 pub fn as_str_name(&self) -> &'static str {
5570 match self {
5571 Self::Undefined => "DROP_BEHAVIOR_UNDEFINED",
5572 Self::DropRestrict => "DROP_RESTRICT",
5573 Self::DropCascade => "DROP_CASCADE",
5574 }
5575 }
5576 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5578 match value {
5579 "DROP_BEHAVIOR_UNDEFINED" => Some(Self::Undefined),
5580 "DROP_RESTRICT" => Some(Self::DropRestrict),
5581 "DROP_CASCADE" => Some(Self::DropCascade),
5582 _ => None,
5583 }
5584 }
5585}
5586#[derive(serde::Serialize)]
5587#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5588#[repr(i32)]
5589pub enum AlterTableType {
5590 Undefined = 0,
5591 AtAddColumn = 1,
5592 AtAddColumnToView = 2,
5593 AtColumnDefault = 3,
5594 AtCookedColumnDefault = 4,
5595 AtDropNotNull = 5,
5596 AtSetNotNull = 6,
5597 AtSetExpression = 7,
5598 AtDropExpression = 8,
5599 AtSetStatistics = 9,
5600 AtSetOptions = 10,
5601 AtResetOptions = 11,
5602 AtSetStorage = 12,
5603 AtSetCompression = 13,
5604 AtDropColumn = 14,
5605 AtAddIndex = 15,
5606 AtReAddIndex = 16,
5607 AtAddConstraint = 17,
5608 AtReAddConstraint = 18,
5609 AtReAddDomainConstraint = 19,
5610 AtAlterConstraint = 20,
5611 AtValidateConstraint = 21,
5612 AtAddIndexConstraint = 22,
5613 AtDropConstraint = 23,
5614 AtReAddComment = 24,
5615 AtAlterColumnType = 25,
5616 AtAlterColumnGenericOptions = 26,
5617 AtChangeOwner = 27,
5618 AtClusterOn = 28,
5619 AtDropCluster = 29,
5620 AtSetLogged = 30,
5621 AtSetUnLogged = 31,
5622 AtDropOids = 32,
5623 AtSetAccessMethod = 33,
5624 AtSetTableSpace = 34,
5625 AtSetRelOptions = 35,
5626 AtResetRelOptions = 36,
5627 AtReplaceRelOptions = 37,
5628 AtEnableTrig = 38,
5629 AtEnableAlwaysTrig = 39,
5630 AtEnableReplicaTrig = 40,
5631 AtDisableTrig = 41,
5632 AtEnableTrigAll = 42,
5633 AtDisableTrigAll = 43,
5634 AtEnableTrigUser = 44,
5635 AtDisableTrigUser = 45,
5636 AtEnableRule = 46,
5637 AtEnableAlwaysRule = 47,
5638 AtEnableReplicaRule = 48,
5639 AtDisableRule = 49,
5640 AtAddInherit = 50,
5641 AtDropInherit = 51,
5642 AtAddOf = 52,
5643 AtDropOf = 53,
5644 AtReplicaIdentity = 54,
5645 AtEnableRowSecurity = 55,
5646 AtDisableRowSecurity = 56,
5647 AtForceRowSecurity = 57,
5648 AtNoForceRowSecurity = 58,
5649 AtGenericOptions = 59,
5650 AtAttachPartition = 60,
5651 AtDetachPartition = 61,
5652 AtDetachPartitionFinalize = 62,
5653 AtAddIdentity = 63,
5654 AtSetIdentity = 64,
5655 AtDropIdentity = 65,
5656 AtReAddStatistics = 66,
5657}
5658impl AlterTableType {
5659 pub fn as_str_name(&self) -> &'static str {
5664 match self {
5665 Self::Undefined => "ALTER_TABLE_TYPE_UNDEFINED",
5666 Self::AtAddColumn => "AT_AddColumn",
5667 Self::AtAddColumnToView => "AT_AddColumnToView",
5668 Self::AtColumnDefault => "AT_ColumnDefault",
5669 Self::AtCookedColumnDefault => "AT_CookedColumnDefault",
5670 Self::AtDropNotNull => "AT_DropNotNull",
5671 Self::AtSetNotNull => "AT_SetNotNull",
5672 Self::AtSetExpression => "AT_SetExpression",
5673 Self::AtDropExpression => "AT_DropExpression",
5674 Self::AtSetStatistics => "AT_SetStatistics",
5675 Self::AtSetOptions => "AT_SetOptions",
5676 Self::AtResetOptions => "AT_ResetOptions",
5677 Self::AtSetStorage => "AT_SetStorage",
5678 Self::AtSetCompression => "AT_SetCompression",
5679 Self::AtDropColumn => "AT_DropColumn",
5680 Self::AtAddIndex => "AT_AddIndex",
5681 Self::AtReAddIndex => "AT_ReAddIndex",
5682 Self::AtAddConstraint => "AT_AddConstraint",
5683 Self::AtReAddConstraint => "AT_ReAddConstraint",
5684 Self::AtReAddDomainConstraint => "AT_ReAddDomainConstraint",
5685 Self::AtAlterConstraint => "AT_AlterConstraint",
5686 Self::AtValidateConstraint => "AT_ValidateConstraint",
5687 Self::AtAddIndexConstraint => "AT_AddIndexConstraint",
5688 Self::AtDropConstraint => "AT_DropConstraint",
5689 Self::AtReAddComment => "AT_ReAddComment",
5690 Self::AtAlterColumnType => "AT_AlterColumnType",
5691 Self::AtAlterColumnGenericOptions => "AT_AlterColumnGenericOptions",
5692 Self::AtChangeOwner => "AT_ChangeOwner",
5693 Self::AtClusterOn => "AT_ClusterOn",
5694 Self::AtDropCluster => "AT_DropCluster",
5695 Self::AtSetLogged => "AT_SetLogged",
5696 Self::AtSetUnLogged => "AT_SetUnLogged",
5697 Self::AtDropOids => "AT_DropOids",
5698 Self::AtSetAccessMethod => "AT_SetAccessMethod",
5699 Self::AtSetTableSpace => "AT_SetTableSpace",
5700 Self::AtSetRelOptions => "AT_SetRelOptions",
5701 Self::AtResetRelOptions => "AT_ResetRelOptions",
5702 Self::AtReplaceRelOptions => "AT_ReplaceRelOptions",
5703 Self::AtEnableTrig => "AT_EnableTrig",
5704 Self::AtEnableAlwaysTrig => "AT_EnableAlwaysTrig",
5705 Self::AtEnableReplicaTrig => "AT_EnableReplicaTrig",
5706 Self::AtDisableTrig => "AT_DisableTrig",
5707 Self::AtEnableTrigAll => "AT_EnableTrigAll",
5708 Self::AtDisableTrigAll => "AT_DisableTrigAll",
5709 Self::AtEnableTrigUser => "AT_EnableTrigUser",
5710 Self::AtDisableTrigUser => "AT_DisableTrigUser",
5711 Self::AtEnableRule => "AT_EnableRule",
5712 Self::AtEnableAlwaysRule => "AT_EnableAlwaysRule",
5713 Self::AtEnableReplicaRule => "AT_EnableReplicaRule",
5714 Self::AtDisableRule => "AT_DisableRule",
5715 Self::AtAddInherit => "AT_AddInherit",
5716 Self::AtDropInherit => "AT_DropInherit",
5717 Self::AtAddOf => "AT_AddOf",
5718 Self::AtDropOf => "AT_DropOf",
5719 Self::AtReplicaIdentity => "AT_ReplicaIdentity",
5720 Self::AtEnableRowSecurity => "AT_EnableRowSecurity",
5721 Self::AtDisableRowSecurity => "AT_DisableRowSecurity",
5722 Self::AtForceRowSecurity => "AT_ForceRowSecurity",
5723 Self::AtNoForceRowSecurity => "AT_NoForceRowSecurity",
5724 Self::AtGenericOptions => "AT_GenericOptions",
5725 Self::AtAttachPartition => "AT_AttachPartition",
5726 Self::AtDetachPartition => "AT_DetachPartition",
5727 Self::AtDetachPartitionFinalize => "AT_DetachPartitionFinalize",
5728 Self::AtAddIdentity => "AT_AddIdentity",
5729 Self::AtSetIdentity => "AT_SetIdentity",
5730 Self::AtDropIdentity => "AT_DropIdentity",
5731 Self::AtReAddStatistics => "AT_ReAddStatistics",
5732 }
5733 }
5734 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5736 match value {
5737 "ALTER_TABLE_TYPE_UNDEFINED" => Some(Self::Undefined),
5738 "AT_AddColumn" => Some(Self::AtAddColumn),
5739 "AT_AddColumnToView" => Some(Self::AtAddColumnToView),
5740 "AT_ColumnDefault" => Some(Self::AtColumnDefault),
5741 "AT_CookedColumnDefault" => Some(Self::AtCookedColumnDefault),
5742 "AT_DropNotNull" => Some(Self::AtDropNotNull),
5743 "AT_SetNotNull" => Some(Self::AtSetNotNull),
5744 "AT_SetExpression" => Some(Self::AtSetExpression),
5745 "AT_DropExpression" => Some(Self::AtDropExpression),
5746 "AT_SetStatistics" => Some(Self::AtSetStatistics),
5747 "AT_SetOptions" => Some(Self::AtSetOptions),
5748 "AT_ResetOptions" => Some(Self::AtResetOptions),
5749 "AT_SetStorage" => Some(Self::AtSetStorage),
5750 "AT_SetCompression" => Some(Self::AtSetCompression),
5751 "AT_DropColumn" => Some(Self::AtDropColumn),
5752 "AT_AddIndex" => Some(Self::AtAddIndex),
5753 "AT_ReAddIndex" => Some(Self::AtReAddIndex),
5754 "AT_AddConstraint" => Some(Self::AtAddConstraint),
5755 "AT_ReAddConstraint" => Some(Self::AtReAddConstraint),
5756 "AT_ReAddDomainConstraint" => Some(Self::AtReAddDomainConstraint),
5757 "AT_AlterConstraint" => Some(Self::AtAlterConstraint),
5758 "AT_ValidateConstraint" => Some(Self::AtValidateConstraint),
5759 "AT_AddIndexConstraint" => Some(Self::AtAddIndexConstraint),
5760 "AT_DropConstraint" => Some(Self::AtDropConstraint),
5761 "AT_ReAddComment" => Some(Self::AtReAddComment),
5762 "AT_AlterColumnType" => Some(Self::AtAlterColumnType),
5763 "AT_AlterColumnGenericOptions" => Some(Self::AtAlterColumnGenericOptions),
5764 "AT_ChangeOwner" => Some(Self::AtChangeOwner),
5765 "AT_ClusterOn" => Some(Self::AtClusterOn),
5766 "AT_DropCluster" => Some(Self::AtDropCluster),
5767 "AT_SetLogged" => Some(Self::AtSetLogged),
5768 "AT_SetUnLogged" => Some(Self::AtSetUnLogged),
5769 "AT_DropOids" => Some(Self::AtDropOids),
5770 "AT_SetAccessMethod" => Some(Self::AtSetAccessMethod),
5771 "AT_SetTableSpace" => Some(Self::AtSetTableSpace),
5772 "AT_SetRelOptions" => Some(Self::AtSetRelOptions),
5773 "AT_ResetRelOptions" => Some(Self::AtResetRelOptions),
5774 "AT_ReplaceRelOptions" => Some(Self::AtReplaceRelOptions),
5775 "AT_EnableTrig" => Some(Self::AtEnableTrig),
5776 "AT_EnableAlwaysTrig" => Some(Self::AtEnableAlwaysTrig),
5777 "AT_EnableReplicaTrig" => Some(Self::AtEnableReplicaTrig),
5778 "AT_DisableTrig" => Some(Self::AtDisableTrig),
5779 "AT_EnableTrigAll" => Some(Self::AtEnableTrigAll),
5780 "AT_DisableTrigAll" => Some(Self::AtDisableTrigAll),
5781 "AT_EnableTrigUser" => Some(Self::AtEnableTrigUser),
5782 "AT_DisableTrigUser" => Some(Self::AtDisableTrigUser),
5783 "AT_EnableRule" => Some(Self::AtEnableRule),
5784 "AT_EnableAlwaysRule" => Some(Self::AtEnableAlwaysRule),
5785 "AT_EnableReplicaRule" => Some(Self::AtEnableReplicaRule),
5786 "AT_DisableRule" => Some(Self::AtDisableRule),
5787 "AT_AddInherit" => Some(Self::AtAddInherit),
5788 "AT_DropInherit" => Some(Self::AtDropInherit),
5789 "AT_AddOf" => Some(Self::AtAddOf),
5790 "AT_DropOf" => Some(Self::AtDropOf),
5791 "AT_ReplicaIdentity" => Some(Self::AtReplicaIdentity),
5792 "AT_EnableRowSecurity" => Some(Self::AtEnableRowSecurity),
5793 "AT_DisableRowSecurity" => Some(Self::AtDisableRowSecurity),
5794 "AT_ForceRowSecurity" => Some(Self::AtForceRowSecurity),
5795 "AT_NoForceRowSecurity" => Some(Self::AtNoForceRowSecurity),
5796 "AT_GenericOptions" => Some(Self::AtGenericOptions),
5797 "AT_AttachPartition" => Some(Self::AtAttachPartition),
5798 "AT_DetachPartition" => Some(Self::AtDetachPartition),
5799 "AT_DetachPartitionFinalize" => Some(Self::AtDetachPartitionFinalize),
5800 "AT_AddIdentity" => Some(Self::AtAddIdentity),
5801 "AT_SetIdentity" => Some(Self::AtSetIdentity),
5802 "AT_DropIdentity" => Some(Self::AtDropIdentity),
5803 "AT_ReAddStatistics" => Some(Self::AtReAddStatistics),
5804 _ => None,
5805 }
5806 }
5807}
5808#[derive(serde::Serialize)]
5809#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5810#[repr(i32)]
5811pub enum GrantTargetType {
5812 Undefined = 0,
5813 AclTargetObject = 1,
5814 AclTargetAllInSchema = 2,
5815 AclTargetDefaults = 3,
5816}
5817impl GrantTargetType {
5818 pub fn as_str_name(&self) -> &'static str {
5823 match self {
5824 Self::Undefined => "GRANT_TARGET_TYPE_UNDEFINED",
5825 Self::AclTargetObject => "ACL_TARGET_OBJECT",
5826 Self::AclTargetAllInSchema => "ACL_TARGET_ALL_IN_SCHEMA",
5827 Self::AclTargetDefaults => "ACL_TARGET_DEFAULTS",
5828 }
5829 }
5830 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5832 match value {
5833 "GRANT_TARGET_TYPE_UNDEFINED" => Some(Self::Undefined),
5834 "ACL_TARGET_OBJECT" => Some(Self::AclTargetObject),
5835 "ACL_TARGET_ALL_IN_SCHEMA" => Some(Self::AclTargetAllInSchema),
5836 "ACL_TARGET_DEFAULTS" => Some(Self::AclTargetDefaults),
5837 _ => None,
5838 }
5839 }
5840}
5841#[derive(serde::Serialize)]
5842#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5843#[repr(i32)]
5844pub enum VariableSetKind {
5845 Undefined = 0,
5846 VarSetValue = 1,
5847 VarSetDefault = 2,
5848 VarSetCurrent = 3,
5849 VarSetMulti = 4,
5850 VarReset = 5,
5851 VarResetAll = 6,
5852}
5853impl VariableSetKind {
5854 pub fn as_str_name(&self) -> &'static str {
5859 match self {
5860 Self::Undefined => "VARIABLE_SET_KIND_UNDEFINED",
5861 Self::VarSetValue => "VAR_SET_VALUE",
5862 Self::VarSetDefault => "VAR_SET_DEFAULT",
5863 Self::VarSetCurrent => "VAR_SET_CURRENT",
5864 Self::VarSetMulti => "VAR_SET_MULTI",
5865 Self::VarReset => "VAR_RESET",
5866 Self::VarResetAll => "VAR_RESET_ALL",
5867 }
5868 }
5869 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5871 match value {
5872 "VARIABLE_SET_KIND_UNDEFINED" => Some(Self::Undefined),
5873 "VAR_SET_VALUE" => Some(Self::VarSetValue),
5874 "VAR_SET_DEFAULT" => Some(Self::VarSetDefault),
5875 "VAR_SET_CURRENT" => Some(Self::VarSetCurrent),
5876 "VAR_SET_MULTI" => Some(Self::VarSetMulti),
5877 "VAR_RESET" => Some(Self::VarReset),
5878 "VAR_RESET_ALL" => Some(Self::VarResetAll),
5879 _ => None,
5880 }
5881 }
5882}
5883#[derive(serde::Serialize)]
5884#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5885#[repr(i32)]
5886pub enum ConstrType {
5887 Undefined = 0,
5888 ConstrNull = 1,
5889 ConstrNotnull = 2,
5890 ConstrDefault = 3,
5891 ConstrIdentity = 4,
5892 ConstrGenerated = 5,
5893 ConstrCheck = 6,
5894 ConstrPrimary = 7,
5895 ConstrUnique = 8,
5896 ConstrExclusion = 9,
5897 ConstrForeign = 10,
5898 ConstrAttrDeferrable = 11,
5899 ConstrAttrNotDeferrable = 12,
5900 ConstrAttrDeferred = 13,
5901 ConstrAttrImmediate = 14,
5902 ConstrAttrEnforced = 15,
5903 ConstrAttrNotEnforced = 16,
5904}
5905impl ConstrType {
5906 pub fn as_str_name(&self) -> &'static str {
5911 match self {
5912 Self::Undefined => "CONSTR_TYPE_UNDEFINED",
5913 Self::ConstrNull => "CONSTR_NULL",
5914 Self::ConstrNotnull => "CONSTR_NOTNULL",
5915 Self::ConstrDefault => "CONSTR_DEFAULT",
5916 Self::ConstrIdentity => "CONSTR_IDENTITY",
5917 Self::ConstrGenerated => "CONSTR_GENERATED",
5918 Self::ConstrCheck => "CONSTR_CHECK",
5919 Self::ConstrPrimary => "CONSTR_PRIMARY",
5920 Self::ConstrUnique => "CONSTR_UNIQUE",
5921 Self::ConstrExclusion => "CONSTR_EXCLUSION",
5922 Self::ConstrForeign => "CONSTR_FOREIGN",
5923 Self::ConstrAttrDeferrable => "CONSTR_ATTR_DEFERRABLE",
5924 Self::ConstrAttrNotDeferrable => "CONSTR_ATTR_NOT_DEFERRABLE",
5925 Self::ConstrAttrDeferred => "CONSTR_ATTR_DEFERRED",
5926 Self::ConstrAttrImmediate => "CONSTR_ATTR_IMMEDIATE",
5927 Self::ConstrAttrEnforced => "CONSTR_ATTR_ENFORCED",
5928 Self::ConstrAttrNotEnforced => "CONSTR_ATTR_NOT_ENFORCED",
5929 }
5930 }
5931 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5933 match value {
5934 "CONSTR_TYPE_UNDEFINED" => Some(Self::Undefined),
5935 "CONSTR_NULL" => Some(Self::ConstrNull),
5936 "CONSTR_NOTNULL" => Some(Self::ConstrNotnull),
5937 "CONSTR_DEFAULT" => Some(Self::ConstrDefault),
5938 "CONSTR_IDENTITY" => Some(Self::ConstrIdentity),
5939 "CONSTR_GENERATED" => Some(Self::ConstrGenerated),
5940 "CONSTR_CHECK" => Some(Self::ConstrCheck),
5941 "CONSTR_PRIMARY" => Some(Self::ConstrPrimary),
5942 "CONSTR_UNIQUE" => Some(Self::ConstrUnique),
5943 "CONSTR_EXCLUSION" => Some(Self::ConstrExclusion),
5944 "CONSTR_FOREIGN" => Some(Self::ConstrForeign),
5945 "CONSTR_ATTR_DEFERRABLE" => Some(Self::ConstrAttrDeferrable),
5946 "CONSTR_ATTR_NOT_DEFERRABLE" => Some(Self::ConstrAttrNotDeferrable),
5947 "CONSTR_ATTR_DEFERRED" => Some(Self::ConstrAttrDeferred),
5948 "CONSTR_ATTR_IMMEDIATE" => Some(Self::ConstrAttrImmediate),
5949 "CONSTR_ATTR_ENFORCED" => Some(Self::ConstrAttrEnforced),
5950 "CONSTR_ATTR_NOT_ENFORCED" => Some(Self::ConstrAttrNotEnforced),
5951 _ => None,
5952 }
5953 }
5954}
5955#[derive(serde::Serialize)]
5956#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5957#[repr(i32)]
5958pub enum ImportForeignSchemaType {
5959 Undefined = 0,
5960 FdwImportSchemaAll = 1,
5961 FdwImportSchemaLimitTo = 2,
5962 FdwImportSchemaExcept = 3,
5963}
5964impl ImportForeignSchemaType {
5965 pub fn as_str_name(&self) -> &'static str {
5970 match self {
5971 Self::Undefined => "IMPORT_FOREIGN_SCHEMA_TYPE_UNDEFINED",
5972 Self::FdwImportSchemaAll => "FDW_IMPORT_SCHEMA_ALL",
5973 Self::FdwImportSchemaLimitTo => "FDW_IMPORT_SCHEMA_LIMIT_TO",
5974 Self::FdwImportSchemaExcept => "FDW_IMPORT_SCHEMA_EXCEPT",
5975 }
5976 }
5977 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
5979 match value {
5980 "IMPORT_FOREIGN_SCHEMA_TYPE_UNDEFINED" => Some(Self::Undefined),
5981 "FDW_IMPORT_SCHEMA_ALL" => Some(Self::FdwImportSchemaAll),
5982 "FDW_IMPORT_SCHEMA_LIMIT_TO" => Some(Self::FdwImportSchemaLimitTo),
5983 "FDW_IMPORT_SCHEMA_EXCEPT" => Some(Self::FdwImportSchemaExcept),
5984 _ => None,
5985 }
5986 }
5987}
5988#[derive(serde::Serialize)]
5989#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
5990#[repr(i32)]
5991pub enum RoleStmtType {
5992 Undefined = 0,
5993 RolestmtRole = 1,
5994 RolestmtUser = 2,
5995 RolestmtGroup = 3,
5996}
5997impl RoleStmtType {
5998 pub fn as_str_name(&self) -> &'static str {
6003 match self {
6004 Self::Undefined => "ROLE_STMT_TYPE_UNDEFINED",
6005 Self::RolestmtRole => "ROLESTMT_ROLE",
6006 Self::RolestmtUser => "ROLESTMT_USER",
6007 Self::RolestmtGroup => "ROLESTMT_GROUP",
6008 }
6009 }
6010 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6012 match value {
6013 "ROLE_STMT_TYPE_UNDEFINED" => Some(Self::Undefined),
6014 "ROLESTMT_ROLE" => Some(Self::RolestmtRole),
6015 "ROLESTMT_USER" => Some(Self::RolestmtUser),
6016 "ROLESTMT_GROUP" => Some(Self::RolestmtGroup),
6017 _ => None,
6018 }
6019 }
6020}
6021#[derive(serde::Serialize)]
6022#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6023#[repr(i32)]
6024pub enum FetchDirection {
6025 Undefined = 0,
6026 FetchForward = 1,
6027 FetchBackward = 2,
6028 FetchAbsolute = 3,
6029 FetchRelative = 4,
6030}
6031impl FetchDirection {
6032 pub fn as_str_name(&self) -> &'static str {
6037 match self {
6038 Self::Undefined => "FETCH_DIRECTION_UNDEFINED",
6039 Self::FetchForward => "FETCH_FORWARD",
6040 Self::FetchBackward => "FETCH_BACKWARD",
6041 Self::FetchAbsolute => "FETCH_ABSOLUTE",
6042 Self::FetchRelative => "FETCH_RELATIVE",
6043 }
6044 }
6045 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6047 match value {
6048 "FETCH_DIRECTION_UNDEFINED" => Some(Self::Undefined),
6049 "FETCH_FORWARD" => Some(Self::FetchForward),
6050 "FETCH_BACKWARD" => Some(Self::FetchBackward),
6051 "FETCH_ABSOLUTE" => Some(Self::FetchAbsolute),
6052 "FETCH_RELATIVE" => Some(Self::FetchRelative),
6053 _ => None,
6054 }
6055 }
6056}
6057#[derive(serde::Serialize)]
6058#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6059#[repr(i32)]
6060pub enum FunctionParameterMode {
6061 Undefined = 0,
6062 FuncParamIn = 1,
6063 FuncParamOut = 2,
6064 FuncParamInout = 3,
6065 FuncParamVariadic = 4,
6066 FuncParamTable = 5,
6067 FuncParamDefault = 6,
6068}
6069impl FunctionParameterMode {
6070 pub fn as_str_name(&self) -> &'static str {
6075 match self {
6076 Self::Undefined => "FUNCTION_PARAMETER_MODE_UNDEFINED",
6077 Self::FuncParamIn => "FUNC_PARAM_IN",
6078 Self::FuncParamOut => "FUNC_PARAM_OUT",
6079 Self::FuncParamInout => "FUNC_PARAM_INOUT",
6080 Self::FuncParamVariadic => "FUNC_PARAM_VARIADIC",
6081 Self::FuncParamTable => "FUNC_PARAM_TABLE",
6082 Self::FuncParamDefault => "FUNC_PARAM_DEFAULT",
6083 }
6084 }
6085 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6087 match value {
6088 "FUNCTION_PARAMETER_MODE_UNDEFINED" => Some(Self::Undefined),
6089 "FUNC_PARAM_IN" => Some(Self::FuncParamIn),
6090 "FUNC_PARAM_OUT" => Some(Self::FuncParamOut),
6091 "FUNC_PARAM_INOUT" => Some(Self::FuncParamInout),
6092 "FUNC_PARAM_VARIADIC" => Some(Self::FuncParamVariadic),
6093 "FUNC_PARAM_TABLE" => Some(Self::FuncParamTable),
6094 "FUNC_PARAM_DEFAULT" => Some(Self::FuncParamDefault),
6095 _ => None,
6096 }
6097 }
6098}
6099#[derive(serde::Serialize)]
6100#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6101#[repr(i32)]
6102pub enum TransactionStmtKind {
6103 Undefined = 0,
6104 TransStmtBegin = 1,
6105 TransStmtStart = 2,
6106 TransStmtCommit = 3,
6107 TransStmtRollback = 4,
6108 TransStmtSavepoint = 5,
6109 TransStmtRelease = 6,
6110 TransStmtRollbackTo = 7,
6111 TransStmtPrepare = 8,
6112 TransStmtCommitPrepared = 9,
6113 TransStmtRollbackPrepared = 10,
6114}
6115impl TransactionStmtKind {
6116 pub fn as_str_name(&self) -> &'static str {
6121 match self {
6122 Self::Undefined => "TRANSACTION_STMT_KIND_UNDEFINED",
6123 Self::TransStmtBegin => "TRANS_STMT_BEGIN",
6124 Self::TransStmtStart => "TRANS_STMT_START",
6125 Self::TransStmtCommit => "TRANS_STMT_COMMIT",
6126 Self::TransStmtRollback => "TRANS_STMT_ROLLBACK",
6127 Self::TransStmtSavepoint => "TRANS_STMT_SAVEPOINT",
6128 Self::TransStmtRelease => "TRANS_STMT_RELEASE",
6129 Self::TransStmtRollbackTo => "TRANS_STMT_ROLLBACK_TO",
6130 Self::TransStmtPrepare => "TRANS_STMT_PREPARE",
6131 Self::TransStmtCommitPrepared => "TRANS_STMT_COMMIT_PREPARED",
6132 Self::TransStmtRollbackPrepared => "TRANS_STMT_ROLLBACK_PREPARED",
6133 }
6134 }
6135 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6137 match value {
6138 "TRANSACTION_STMT_KIND_UNDEFINED" => Some(Self::Undefined),
6139 "TRANS_STMT_BEGIN" => Some(Self::TransStmtBegin),
6140 "TRANS_STMT_START" => Some(Self::TransStmtStart),
6141 "TRANS_STMT_COMMIT" => Some(Self::TransStmtCommit),
6142 "TRANS_STMT_ROLLBACK" => Some(Self::TransStmtRollback),
6143 "TRANS_STMT_SAVEPOINT" => Some(Self::TransStmtSavepoint),
6144 "TRANS_STMT_RELEASE" => Some(Self::TransStmtRelease),
6145 "TRANS_STMT_ROLLBACK_TO" => Some(Self::TransStmtRollbackTo),
6146 "TRANS_STMT_PREPARE" => Some(Self::TransStmtPrepare),
6147 "TRANS_STMT_COMMIT_PREPARED" => Some(Self::TransStmtCommitPrepared),
6148 "TRANS_STMT_ROLLBACK_PREPARED" => Some(Self::TransStmtRollbackPrepared),
6149 _ => None,
6150 }
6151 }
6152}
6153#[derive(serde::Serialize)]
6154#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6155#[repr(i32)]
6156pub enum ViewCheckOption {
6157 Undefined = 0,
6158 NoCheckOption = 1,
6159 LocalCheckOption = 2,
6160 CascadedCheckOption = 3,
6161}
6162impl ViewCheckOption {
6163 pub fn as_str_name(&self) -> &'static str {
6168 match self {
6169 Self::Undefined => "VIEW_CHECK_OPTION_UNDEFINED",
6170 Self::NoCheckOption => "NO_CHECK_OPTION",
6171 Self::LocalCheckOption => "LOCAL_CHECK_OPTION",
6172 Self::CascadedCheckOption => "CASCADED_CHECK_OPTION",
6173 }
6174 }
6175 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6177 match value {
6178 "VIEW_CHECK_OPTION_UNDEFINED" => Some(Self::Undefined),
6179 "NO_CHECK_OPTION" => Some(Self::NoCheckOption),
6180 "LOCAL_CHECK_OPTION" => Some(Self::LocalCheckOption),
6181 "CASCADED_CHECK_OPTION" => Some(Self::CascadedCheckOption),
6182 _ => None,
6183 }
6184 }
6185}
6186#[derive(serde::Serialize)]
6187#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6188#[repr(i32)]
6189pub enum DiscardMode {
6190 Undefined = 0,
6191 DiscardAll = 1,
6192 DiscardPlans = 2,
6193 DiscardSequences = 3,
6194 DiscardTemp = 4,
6195}
6196impl DiscardMode {
6197 pub fn as_str_name(&self) -> &'static str {
6202 match self {
6203 Self::Undefined => "DISCARD_MODE_UNDEFINED",
6204 Self::DiscardAll => "DISCARD_ALL",
6205 Self::DiscardPlans => "DISCARD_PLANS",
6206 Self::DiscardSequences => "DISCARD_SEQUENCES",
6207 Self::DiscardTemp => "DISCARD_TEMP",
6208 }
6209 }
6210 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6212 match value {
6213 "DISCARD_MODE_UNDEFINED" => Some(Self::Undefined),
6214 "DISCARD_ALL" => Some(Self::DiscardAll),
6215 "DISCARD_PLANS" => Some(Self::DiscardPlans),
6216 "DISCARD_SEQUENCES" => Some(Self::DiscardSequences),
6217 "DISCARD_TEMP" => Some(Self::DiscardTemp),
6218 _ => None,
6219 }
6220 }
6221}
6222#[derive(serde::Serialize)]
6223#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6224#[repr(i32)]
6225pub enum ReindexObjectType {
6226 Undefined = 0,
6227 ReindexObjectIndex = 1,
6228 ReindexObjectTable = 2,
6229 ReindexObjectSchema = 3,
6230 ReindexObjectSystem = 4,
6231 ReindexObjectDatabase = 5,
6232}
6233impl ReindexObjectType {
6234 pub fn as_str_name(&self) -> &'static str {
6239 match self {
6240 Self::Undefined => "REINDEX_OBJECT_TYPE_UNDEFINED",
6241 Self::ReindexObjectIndex => "REINDEX_OBJECT_INDEX",
6242 Self::ReindexObjectTable => "REINDEX_OBJECT_TABLE",
6243 Self::ReindexObjectSchema => "REINDEX_OBJECT_SCHEMA",
6244 Self::ReindexObjectSystem => "REINDEX_OBJECT_SYSTEM",
6245 Self::ReindexObjectDatabase => "REINDEX_OBJECT_DATABASE",
6246 }
6247 }
6248 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6250 match value {
6251 "REINDEX_OBJECT_TYPE_UNDEFINED" => Some(Self::Undefined),
6252 "REINDEX_OBJECT_INDEX" => Some(Self::ReindexObjectIndex),
6253 "REINDEX_OBJECT_TABLE" => Some(Self::ReindexObjectTable),
6254 "REINDEX_OBJECT_SCHEMA" => Some(Self::ReindexObjectSchema),
6255 "REINDEX_OBJECT_SYSTEM" => Some(Self::ReindexObjectSystem),
6256 "REINDEX_OBJECT_DATABASE" => Some(Self::ReindexObjectDatabase),
6257 _ => None,
6258 }
6259 }
6260}
6261#[derive(serde::Serialize)]
6262#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6263#[repr(i32)]
6264pub enum AlterTsConfigType {
6265 AlterTsconfigTypeUndefined = 0,
6266 AlterTsconfigAddMapping = 1,
6267 AlterTsconfigAlterMappingForToken = 2,
6268 AlterTsconfigReplaceDict = 3,
6269 AlterTsconfigReplaceDictForToken = 4,
6270 AlterTsconfigDropMapping = 5,
6271}
6272impl AlterTsConfigType {
6273 pub fn as_str_name(&self) -> &'static str {
6278 match self {
6279 Self::AlterTsconfigTypeUndefined => "ALTER_TSCONFIG_TYPE_UNDEFINED",
6280 Self::AlterTsconfigAddMapping => "ALTER_TSCONFIG_ADD_MAPPING",
6281 Self::AlterTsconfigAlterMappingForToken => {
6282 "ALTER_TSCONFIG_ALTER_MAPPING_FOR_TOKEN"
6283 }
6284 Self::AlterTsconfigReplaceDict => "ALTER_TSCONFIG_REPLACE_DICT",
6285 Self::AlterTsconfigReplaceDictForToken => {
6286 "ALTER_TSCONFIG_REPLACE_DICT_FOR_TOKEN"
6287 }
6288 Self::AlterTsconfigDropMapping => "ALTER_TSCONFIG_DROP_MAPPING",
6289 }
6290 }
6291 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6293 match value {
6294 "ALTER_TSCONFIG_TYPE_UNDEFINED" => Some(Self::AlterTsconfigTypeUndefined),
6295 "ALTER_TSCONFIG_ADD_MAPPING" => Some(Self::AlterTsconfigAddMapping),
6296 "ALTER_TSCONFIG_ALTER_MAPPING_FOR_TOKEN" => {
6297 Some(Self::AlterTsconfigAlterMappingForToken)
6298 }
6299 "ALTER_TSCONFIG_REPLACE_DICT" => Some(Self::AlterTsconfigReplaceDict),
6300 "ALTER_TSCONFIG_REPLACE_DICT_FOR_TOKEN" => {
6301 Some(Self::AlterTsconfigReplaceDictForToken)
6302 }
6303 "ALTER_TSCONFIG_DROP_MAPPING" => Some(Self::AlterTsconfigDropMapping),
6304 _ => None,
6305 }
6306 }
6307}
6308#[derive(serde::Serialize)]
6309#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6310#[repr(i32)]
6311pub enum PublicationObjSpecType {
6312 Undefined = 0,
6313 PublicationobjTable = 1,
6314 PublicationobjTablesInSchema = 2,
6315 PublicationobjTablesInCurSchema = 3,
6316 PublicationobjContinuation = 4,
6317}
6318impl PublicationObjSpecType {
6319 pub fn as_str_name(&self) -> &'static str {
6324 match self {
6325 Self::Undefined => "PUBLICATION_OBJ_SPEC_TYPE_UNDEFINED",
6326 Self::PublicationobjTable => "PUBLICATIONOBJ_TABLE",
6327 Self::PublicationobjTablesInSchema => "PUBLICATIONOBJ_TABLES_IN_SCHEMA",
6328 Self::PublicationobjTablesInCurSchema => {
6329 "PUBLICATIONOBJ_TABLES_IN_CUR_SCHEMA"
6330 }
6331 Self::PublicationobjContinuation => "PUBLICATIONOBJ_CONTINUATION",
6332 }
6333 }
6334 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6336 match value {
6337 "PUBLICATION_OBJ_SPEC_TYPE_UNDEFINED" => Some(Self::Undefined),
6338 "PUBLICATIONOBJ_TABLE" => Some(Self::PublicationobjTable),
6339 "PUBLICATIONOBJ_TABLES_IN_SCHEMA" => Some(Self::PublicationobjTablesInSchema),
6340 "PUBLICATIONOBJ_TABLES_IN_CUR_SCHEMA" => {
6341 Some(Self::PublicationobjTablesInCurSchema)
6342 }
6343 "PUBLICATIONOBJ_CONTINUATION" => Some(Self::PublicationobjContinuation),
6344 _ => None,
6345 }
6346 }
6347}
6348#[derive(serde::Serialize)]
6349#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6350#[repr(i32)]
6351pub enum AlterPublicationAction {
6352 Undefined = 0,
6353 ApAddObjects = 1,
6354 ApDropObjects = 2,
6355 ApSetObjects = 3,
6356}
6357impl AlterPublicationAction {
6358 pub fn as_str_name(&self) -> &'static str {
6363 match self {
6364 Self::Undefined => "ALTER_PUBLICATION_ACTION_UNDEFINED",
6365 Self::ApAddObjects => "AP_AddObjects",
6366 Self::ApDropObjects => "AP_DropObjects",
6367 Self::ApSetObjects => "AP_SetObjects",
6368 }
6369 }
6370 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6372 match value {
6373 "ALTER_PUBLICATION_ACTION_UNDEFINED" => Some(Self::Undefined),
6374 "AP_AddObjects" => Some(Self::ApAddObjects),
6375 "AP_DropObjects" => Some(Self::ApDropObjects),
6376 "AP_SetObjects" => Some(Self::ApSetObjects),
6377 _ => None,
6378 }
6379 }
6380}
6381#[derive(serde::Serialize)]
6382#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6383#[repr(i32)]
6384pub enum AlterSubscriptionType {
6385 Undefined = 0,
6386 AlterSubscriptionOptions = 1,
6387 AlterSubscriptionConnection = 2,
6388 AlterSubscriptionSetPublication = 3,
6389 AlterSubscriptionAddPublication = 4,
6390 AlterSubscriptionDropPublication = 5,
6391 AlterSubscriptionRefresh = 6,
6392 AlterSubscriptionEnabled = 7,
6393 AlterSubscriptionSkip = 8,
6394}
6395impl AlterSubscriptionType {
6396 pub fn as_str_name(&self) -> &'static str {
6401 match self {
6402 Self::Undefined => "ALTER_SUBSCRIPTION_TYPE_UNDEFINED",
6403 Self::AlterSubscriptionOptions => "ALTER_SUBSCRIPTION_OPTIONS",
6404 Self::AlterSubscriptionConnection => "ALTER_SUBSCRIPTION_CONNECTION",
6405 Self::AlterSubscriptionSetPublication => "ALTER_SUBSCRIPTION_SET_PUBLICATION",
6406 Self::AlterSubscriptionAddPublication => "ALTER_SUBSCRIPTION_ADD_PUBLICATION",
6407 Self::AlterSubscriptionDropPublication => {
6408 "ALTER_SUBSCRIPTION_DROP_PUBLICATION"
6409 }
6410 Self::AlterSubscriptionRefresh => "ALTER_SUBSCRIPTION_REFRESH",
6411 Self::AlterSubscriptionEnabled => "ALTER_SUBSCRIPTION_ENABLED",
6412 Self::AlterSubscriptionSkip => "ALTER_SUBSCRIPTION_SKIP",
6413 }
6414 }
6415 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6417 match value {
6418 "ALTER_SUBSCRIPTION_TYPE_UNDEFINED" => Some(Self::Undefined),
6419 "ALTER_SUBSCRIPTION_OPTIONS" => Some(Self::AlterSubscriptionOptions),
6420 "ALTER_SUBSCRIPTION_CONNECTION" => Some(Self::AlterSubscriptionConnection),
6421 "ALTER_SUBSCRIPTION_SET_PUBLICATION" => {
6422 Some(Self::AlterSubscriptionSetPublication)
6423 }
6424 "ALTER_SUBSCRIPTION_ADD_PUBLICATION" => {
6425 Some(Self::AlterSubscriptionAddPublication)
6426 }
6427 "ALTER_SUBSCRIPTION_DROP_PUBLICATION" => {
6428 Some(Self::AlterSubscriptionDropPublication)
6429 }
6430 "ALTER_SUBSCRIPTION_REFRESH" => Some(Self::AlterSubscriptionRefresh),
6431 "ALTER_SUBSCRIPTION_ENABLED" => Some(Self::AlterSubscriptionEnabled),
6432 "ALTER_SUBSCRIPTION_SKIP" => Some(Self::AlterSubscriptionSkip),
6433 _ => None,
6434 }
6435 }
6436}
6437#[derive(serde::Serialize)]
6438#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6439#[repr(i32)]
6440pub enum OverridingKind {
6441 Undefined = 0,
6442 OverridingNotSet = 1,
6443 OverridingUserValue = 2,
6444 OverridingSystemValue = 3,
6445}
6446impl OverridingKind {
6447 pub fn as_str_name(&self) -> &'static str {
6452 match self {
6453 Self::Undefined => "OVERRIDING_KIND_UNDEFINED",
6454 Self::OverridingNotSet => "OVERRIDING_NOT_SET",
6455 Self::OverridingUserValue => "OVERRIDING_USER_VALUE",
6456 Self::OverridingSystemValue => "OVERRIDING_SYSTEM_VALUE",
6457 }
6458 }
6459 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6461 match value {
6462 "OVERRIDING_KIND_UNDEFINED" => Some(Self::Undefined),
6463 "OVERRIDING_NOT_SET" => Some(Self::OverridingNotSet),
6464 "OVERRIDING_USER_VALUE" => Some(Self::OverridingUserValue),
6465 "OVERRIDING_SYSTEM_VALUE" => Some(Self::OverridingSystemValue),
6466 _ => None,
6467 }
6468 }
6469}
6470#[derive(serde::Serialize)]
6471#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6472#[repr(i32)]
6473pub enum OnCommitAction {
6474 Undefined = 0,
6475 OncommitNoop = 1,
6476 OncommitPreserveRows = 2,
6477 OncommitDeleteRows = 3,
6478 OncommitDrop = 4,
6479}
6480impl OnCommitAction {
6481 pub fn as_str_name(&self) -> &'static str {
6486 match self {
6487 Self::Undefined => "ON_COMMIT_ACTION_UNDEFINED",
6488 Self::OncommitNoop => "ONCOMMIT_NOOP",
6489 Self::OncommitPreserveRows => "ONCOMMIT_PRESERVE_ROWS",
6490 Self::OncommitDeleteRows => "ONCOMMIT_DELETE_ROWS",
6491 Self::OncommitDrop => "ONCOMMIT_DROP",
6492 }
6493 }
6494 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6496 match value {
6497 "ON_COMMIT_ACTION_UNDEFINED" => Some(Self::Undefined),
6498 "ONCOMMIT_NOOP" => Some(Self::OncommitNoop),
6499 "ONCOMMIT_PRESERVE_ROWS" => Some(Self::OncommitPreserveRows),
6500 "ONCOMMIT_DELETE_ROWS" => Some(Self::OncommitDeleteRows),
6501 "ONCOMMIT_DROP" => Some(Self::OncommitDrop),
6502 _ => None,
6503 }
6504 }
6505}
6506#[derive(serde::Serialize)]
6507#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6508#[repr(i32)]
6509pub enum TableFuncType {
6510 Undefined = 0,
6511 TftXmltable = 1,
6512 TftJsonTable = 2,
6513}
6514impl TableFuncType {
6515 pub fn as_str_name(&self) -> &'static str {
6520 match self {
6521 Self::Undefined => "TABLE_FUNC_TYPE_UNDEFINED",
6522 Self::TftXmltable => "TFT_XMLTABLE",
6523 Self::TftJsonTable => "TFT_JSON_TABLE",
6524 }
6525 }
6526 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6528 match value {
6529 "TABLE_FUNC_TYPE_UNDEFINED" => Some(Self::Undefined),
6530 "TFT_XMLTABLE" => Some(Self::TftXmltable),
6531 "TFT_JSON_TABLE" => Some(Self::TftJsonTable),
6532 _ => None,
6533 }
6534 }
6535}
6536#[derive(serde::Serialize)]
6537#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6538#[repr(i32)]
6539pub enum VarReturningType {
6540 Undefined = 0,
6541 VarReturningDefault = 1,
6542 VarReturningOld = 2,
6543 VarReturningNew = 3,
6544}
6545impl VarReturningType {
6546 pub fn as_str_name(&self) -> &'static str {
6551 match self {
6552 Self::Undefined => "VAR_RETURNING_TYPE_UNDEFINED",
6553 Self::VarReturningDefault => "VAR_RETURNING_DEFAULT",
6554 Self::VarReturningOld => "VAR_RETURNING_OLD",
6555 Self::VarReturningNew => "VAR_RETURNING_NEW",
6556 }
6557 }
6558 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6560 match value {
6561 "VAR_RETURNING_TYPE_UNDEFINED" => Some(Self::Undefined),
6562 "VAR_RETURNING_DEFAULT" => Some(Self::VarReturningDefault),
6563 "VAR_RETURNING_OLD" => Some(Self::VarReturningOld),
6564 "VAR_RETURNING_NEW" => Some(Self::VarReturningNew),
6565 _ => None,
6566 }
6567 }
6568}
6569#[derive(serde::Serialize)]
6570#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6571#[repr(i32)]
6572pub enum ParamKind {
6573 Undefined = 0,
6574 ParamExtern = 1,
6575 ParamExec = 2,
6576 ParamSublink = 3,
6577 ParamMultiexpr = 4,
6578}
6579impl ParamKind {
6580 pub fn as_str_name(&self) -> &'static str {
6585 match self {
6586 Self::Undefined => "PARAM_KIND_UNDEFINED",
6587 Self::ParamExtern => "PARAM_EXTERN",
6588 Self::ParamExec => "PARAM_EXEC",
6589 Self::ParamSublink => "PARAM_SUBLINK",
6590 Self::ParamMultiexpr => "PARAM_MULTIEXPR",
6591 }
6592 }
6593 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6595 match value {
6596 "PARAM_KIND_UNDEFINED" => Some(Self::Undefined),
6597 "PARAM_EXTERN" => Some(Self::ParamExtern),
6598 "PARAM_EXEC" => Some(Self::ParamExec),
6599 "PARAM_SUBLINK" => Some(Self::ParamSublink),
6600 "PARAM_MULTIEXPR" => Some(Self::ParamMultiexpr),
6601 _ => None,
6602 }
6603 }
6604}
6605#[derive(serde::Serialize)]
6606#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6607#[repr(i32)]
6608pub enum CoercionContext {
6609 Undefined = 0,
6610 CoercionImplicit = 1,
6611 CoercionAssignment = 2,
6612 CoercionPlpgsql = 3,
6613 CoercionExplicit = 4,
6614}
6615impl CoercionContext {
6616 pub fn as_str_name(&self) -> &'static str {
6621 match self {
6622 Self::Undefined => "COERCION_CONTEXT_UNDEFINED",
6623 Self::CoercionImplicit => "COERCION_IMPLICIT",
6624 Self::CoercionAssignment => "COERCION_ASSIGNMENT",
6625 Self::CoercionPlpgsql => "COERCION_PLPGSQL",
6626 Self::CoercionExplicit => "COERCION_EXPLICIT",
6627 }
6628 }
6629 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6631 match value {
6632 "COERCION_CONTEXT_UNDEFINED" => Some(Self::Undefined),
6633 "COERCION_IMPLICIT" => Some(Self::CoercionImplicit),
6634 "COERCION_ASSIGNMENT" => Some(Self::CoercionAssignment),
6635 "COERCION_PLPGSQL" => Some(Self::CoercionPlpgsql),
6636 "COERCION_EXPLICIT" => Some(Self::CoercionExplicit),
6637 _ => None,
6638 }
6639 }
6640}
6641#[derive(serde::Serialize)]
6642#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6643#[repr(i32)]
6644pub enum CoercionForm {
6645 Undefined = 0,
6646 CoerceExplicitCall = 1,
6647 CoerceExplicitCast = 2,
6648 CoerceImplicitCast = 3,
6649 CoerceSqlSyntax = 4,
6650}
6651impl CoercionForm {
6652 pub fn as_str_name(&self) -> &'static str {
6657 match self {
6658 Self::Undefined => "COERCION_FORM_UNDEFINED",
6659 Self::CoerceExplicitCall => "COERCE_EXPLICIT_CALL",
6660 Self::CoerceExplicitCast => "COERCE_EXPLICIT_CAST",
6661 Self::CoerceImplicitCast => "COERCE_IMPLICIT_CAST",
6662 Self::CoerceSqlSyntax => "COERCE_SQL_SYNTAX",
6663 }
6664 }
6665 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6667 match value {
6668 "COERCION_FORM_UNDEFINED" => Some(Self::Undefined),
6669 "COERCE_EXPLICIT_CALL" => Some(Self::CoerceExplicitCall),
6670 "COERCE_EXPLICIT_CAST" => Some(Self::CoerceExplicitCast),
6671 "COERCE_IMPLICIT_CAST" => Some(Self::CoerceImplicitCast),
6672 "COERCE_SQL_SYNTAX" => Some(Self::CoerceSqlSyntax),
6673 _ => None,
6674 }
6675 }
6676}
6677#[derive(serde::Serialize)]
6678#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6679#[repr(i32)]
6680pub enum BoolExprType {
6681 Undefined = 0,
6682 AndExpr = 1,
6683 OrExpr = 2,
6684 NotExpr = 3,
6685}
6686impl BoolExprType {
6687 pub fn as_str_name(&self) -> &'static str {
6692 match self {
6693 Self::Undefined => "BOOL_EXPR_TYPE_UNDEFINED",
6694 Self::AndExpr => "AND_EXPR",
6695 Self::OrExpr => "OR_EXPR",
6696 Self::NotExpr => "NOT_EXPR",
6697 }
6698 }
6699 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6701 match value {
6702 "BOOL_EXPR_TYPE_UNDEFINED" => Some(Self::Undefined),
6703 "AND_EXPR" => Some(Self::AndExpr),
6704 "OR_EXPR" => Some(Self::OrExpr),
6705 "NOT_EXPR" => Some(Self::NotExpr),
6706 _ => None,
6707 }
6708 }
6709}
6710#[derive(serde::Serialize)]
6711#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6712#[repr(i32)]
6713pub enum SubLinkType {
6714 Undefined = 0,
6715 ExistsSublink = 1,
6716 AllSublink = 2,
6717 AnySublink = 3,
6718 RowcompareSublink = 4,
6719 ExprSublink = 5,
6720 MultiexprSublink = 6,
6721 ArraySublink = 7,
6722 CteSublink = 8,
6723}
6724impl SubLinkType {
6725 pub fn as_str_name(&self) -> &'static str {
6730 match self {
6731 Self::Undefined => "SUB_LINK_TYPE_UNDEFINED",
6732 Self::ExistsSublink => "EXISTS_SUBLINK",
6733 Self::AllSublink => "ALL_SUBLINK",
6734 Self::AnySublink => "ANY_SUBLINK",
6735 Self::RowcompareSublink => "ROWCOMPARE_SUBLINK",
6736 Self::ExprSublink => "EXPR_SUBLINK",
6737 Self::MultiexprSublink => "MULTIEXPR_SUBLINK",
6738 Self::ArraySublink => "ARRAY_SUBLINK",
6739 Self::CteSublink => "CTE_SUBLINK",
6740 }
6741 }
6742 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6744 match value {
6745 "SUB_LINK_TYPE_UNDEFINED" => Some(Self::Undefined),
6746 "EXISTS_SUBLINK" => Some(Self::ExistsSublink),
6747 "ALL_SUBLINK" => Some(Self::AllSublink),
6748 "ANY_SUBLINK" => Some(Self::AnySublink),
6749 "ROWCOMPARE_SUBLINK" => Some(Self::RowcompareSublink),
6750 "EXPR_SUBLINK" => Some(Self::ExprSublink),
6751 "MULTIEXPR_SUBLINK" => Some(Self::MultiexprSublink),
6752 "ARRAY_SUBLINK" => Some(Self::ArraySublink),
6753 "CTE_SUBLINK" => Some(Self::CteSublink),
6754 _ => None,
6755 }
6756 }
6757}
6758#[derive(serde::Serialize)]
6759#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6760#[repr(i32)]
6761pub enum MinMaxOp {
6762 Undefined = 0,
6763 IsGreatest = 1,
6764 IsLeast = 2,
6765}
6766impl MinMaxOp {
6767 pub fn as_str_name(&self) -> &'static str {
6772 match self {
6773 Self::Undefined => "MIN_MAX_OP_UNDEFINED",
6774 Self::IsGreatest => "IS_GREATEST",
6775 Self::IsLeast => "IS_LEAST",
6776 }
6777 }
6778 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6780 match value {
6781 "MIN_MAX_OP_UNDEFINED" => Some(Self::Undefined),
6782 "IS_GREATEST" => Some(Self::IsGreatest),
6783 "IS_LEAST" => Some(Self::IsLeast),
6784 _ => None,
6785 }
6786 }
6787}
6788#[derive(serde::Serialize)]
6789#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6790#[repr(i32)]
6791pub enum SqlValueFunctionOp {
6792 SqlvalueFunctionOpUndefined = 0,
6793 SvfopCurrentDate = 1,
6794 SvfopCurrentTime = 2,
6795 SvfopCurrentTimeN = 3,
6796 SvfopCurrentTimestamp = 4,
6797 SvfopCurrentTimestampN = 5,
6798 SvfopLocaltime = 6,
6799 SvfopLocaltimeN = 7,
6800 SvfopLocaltimestamp = 8,
6801 SvfopLocaltimestampN = 9,
6802 SvfopCurrentRole = 10,
6803 SvfopCurrentUser = 11,
6804 SvfopUser = 12,
6805 SvfopSessionUser = 13,
6806 SvfopCurrentCatalog = 14,
6807 SvfopCurrentSchema = 15,
6808}
6809impl SqlValueFunctionOp {
6810 pub fn as_str_name(&self) -> &'static str {
6815 match self {
6816 Self::SqlvalueFunctionOpUndefined => "SQLVALUE_FUNCTION_OP_UNDEFINED",
6817 Self::SvfopCurrentDate => "SVFOP_CURRENT_DATE",
6818 Self::SvfopCurrentTime => "SVFOP_CURRENT_TIME",
6819 Self::SvfopCurrentTimeN => "SVFOP_CURRENT_TIME_N",
6820 Self::SvfopCurrentTimestamp => "SVFOP_CURRENT_TIMESTAMP",
6821 Self::SvfopCurrentTimestampN => "SVFOP_CURRENT_TIMESTAMP_N",
6822 Self::SvfopLocaltime => "SVFOP_LOCALTIME",
6823 Self::SvfopLocaltimeN => "SVFOP_LOCALTIME_N",
6824 Self::SvfopLocaltimestamp => "SVFOP_LOCALTIMESTAMP",
6825 Self::SvfopLocaltimestampN => "SVFOP_LOCALTIMESTAMP_N",
6826 Self::SvfopCurrentRole => "SVFOP_CURRENT_ROLE",
6827 Self::SvfopCurrentUser => "SVFOP_CURRENT_USER",
6828 Self::SvfopUser => "SVFOP_USER",
6829 Self::SvfopSessionUser => "SVFOP_SESSION_USER",
6830 Self::SvfopCurrentCatalog => "SVFOP_CURRENT_CATALOG",
6831 Self::SvfopCurrentSchema => "SVFOP_CURRENT_SCHEMA",
6832 }
6833 }
6834 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6836 match value {
6837 "SQLVALUE_FUNCTION_OP_UNDEFINED" => Some(Self::SqlvalueFunctionOpUndefined),
6838 "SVFOP_CURRENT_DATE" => Some(Self::SvfopCurrentDate),
6839 "SVFOP_CURRENT_TIME" => Some(Self::SvfopCurrentTime),
6840 "SVFOP_CURRENT_TIME_N" => Some(Self::SvfopCurrentTimeN),
6841 "SVFOP_CURRENT_TIMESTAMP" => Some(Self::SvfopCurrentTimestamp),
6842 "SVFOP_CURRENT_TIMESTAMP_N" => Some(Self::SvfopCurrentTimestampN),
6843 "SVFOP_LOCALTIME" => Some(Self::SvfopLocaltime),
6844 "SVFOP_LOCALTIME_N" => Some(Self::SvfopLocaltimeN),
6845 "SVFOP_LOCALTIMESTAMP" => Some(Self::SvfopLocaltimestamp),
6846 "SVFOP_LOCALTIMESTAMP_N" => Some(Self::SvfopLocaltimestampN),
6847 "SVFOP_CURRENT_ROLE" => Some(Self::SvfopCurrentRole),
6848 "SVFOP_CURRENT_USER" => Some(Self::SvfopCurrentUser),
6849 "SVFOP_USER" => Some(Self::SvfopUser),
6850 "SVFOP_SESSION_USER" => Some(Self::SvfopSessionUser),
6851 "SVFOP_CURRENT_CATALOG" => Some(Self::SvfopCurrentCatalog),
6852 "SVFOP_CURRENT_SCHEMA" => Some(Self::SvfopCurrentSchema),
6853 _ => None,
6854 }
6855 }
6856}
6857#[derive(serde::Serialize)]
6858#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6859#[repr(i32)]
6860pub enum XmlExprOp {
6861 Undefined = 0,
6862 IsXmlconcat = 1,
6863 IsXmlelement = 2,
6864 IsXmlforest = 3,
6865 IsXmlparse = 4,
6866 IsXmlpi = 5,
6867 IsXmlroot = 6,
6868 IsXmlserialize = 7,
6869 IsDocument = 8,
6870}
6871impl XmlExprOp {
6872 pub fn as_str_name(&self) -> &'static str {
6877 match self {
6878 Self::Undefined => "XML_EXPR_OP_UNDEFINED",
6879 Self::IsXmlconcat => "IS_XMLCONCAT",
6880 Self::IsXmlelement => "IS_XMLELEMENT",
6881 Self::IsXmlforest => "IS_XMLFOREST",
6882 Self::IsXmlparse => "IS_XMLPARSE",
6883 Self::IsXmlpi => "IS_XMLPI",
6884 Self::IsXmlroot => "IS_XMLROOT",
6885 Self::IsXmlserialize => "IS_XMLSERIALIZE",
6886 Self::IsDocument => "IS_DOCUMENT",
6887 }
6888 }
6889 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6891 match value {
6892 "XML_EXPR_OP_UNDEFINED" => Some(Self::Undefined),
6893 "IS_XMLCONCAT" => Some(Self::IsXmlconcat),
6894 "IS_XMLELEMENT" => Some(Self::IsXmlelement),
6895 "IS_XMLFOREST" => Some(Self::IsXmlforest),
6896 "IS_XMLPARSE" => Some(Self::IsXmlparse),
6897 "IS_XMLPI" => Some(Self::IsXmlpi),
6898 "IS_XMLROOT" => Some(Self::IsXmlroot),
6899 "IS_XMLSERIALIZE" => Some(Self::IsXmlserialize),
6900 "IS_DOCUMENT" => Some(Self::IsDocument),
6901 _ => None,
6902 }
6903 }
6904}
6905#[derive(serde::Serialize)]
6906#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6907#[repr(i32)]
6908pub enum XmlOptionType {
6909 Undefined = 0,
6910 XmloptionDocument = 1,
6911 XmloptionContent = 2,
6912}
6913impl XmlOptionType {
6914 pub fn as_str_name(&self) -> &'static str {
6919 match self {
6920 Self::Undefined => "XML_OPTION_TYPE_UNDEFINED",
6921 Self::XmloptionDocument => "XMLOPTION_DOCUMENT",
6922 Self::XmloptionContent => "XMLOPTION_CONTENT",
6923 }
6924 }
6925 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6927 match value {
6928 "XML_OPTION_TYPE_UNDEFINED" => Some(Self::Undefined),
6929 "XMLOPTION_DOCUMENT" => Some(Self::XmloptionDocument),
6930 "XMLOPTION_CONTENT" => Some(Self::XmloptionContent),
6931 _ => None,
6932 }
6933 }
6934}
6935#[derive(serde::Serialize)]
6936#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6937#[repr(i32)]
6938pub enum JsonEncoding {
6939 Undefined = 0,
6940 JsEncDefault = 1,
6941 JsEncUtf8 = 2,
6942 JsEncUtf16 = 3,
6943 JsEncUtf32 = 4,
6944}
6945impl JsonEncoding {
6946 pub fn as_str_name(&self) -> &'static str {
6951 match self {
6952 Self::Undefined => "JSON_ENCODING_UNDEFINED",
6953 Self::JsEncDefault => "JS_ENC_DEFAULT",
6954 Self::JsEncUtf8 => "JS_ENC_UTF8",
6955 Self::JsEncUtf16 => "JS_ENC_UTF16",
6956 Self::JsEncUtf32 => "JS_ENC_UTF32",
6957 }
6958 }
6959 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6961 match value {
6962 "JSON_ENCODING_UNDEFINED" => Some(Self::Undefined),
6963 "JS_ENC_DEFAULT" => Some(Self::JsEncDefault),
6964 "JS_ENC_UTF8" => Some(Self::JsEncUtf8),
6965 "JS_ENC_UTF16" => Some(Self::JsEncUtf16),
6966 "JS_ENC_UTF32" => Some(Self::JsEncUtf32),
6967 _ => None,
6968 }
6969 }
6970}
6971#[derive(serde::Serialize)]
6972#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
6973#[repr(i32)]
6974pub enum JsonFormatType {
6975 Undefined = 0,
6976 JsFormatDefault = 1,
6977 JsFormatJson = 2,
6978 JsFormatJsonb = 3,
6979}
6980impl JsonFormatType {
6981 pub fn as_str_name(&self) -> &'static str {
6986 match self {
6987 Self::Undefined => "JSON_FORMAT_TYPE_UNDEFINED",
6988 Self::JsFormatDefault => "JS_FORMAT_DEFAULT",
6989 Self::JsFormatJson => "JS_FORMAT_JSON",
6990 Self::JsFormatJsonb => "JS_FORMAT_JSONB",
6991 }
6992 }
6993 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
6995 match value {
6996 "JSON_FORMAT_TYPE_UNDEFINED" => Some(Self::Undefined),
6997 "JS_FORMAT_DEFAULT" => Some(Self::JsFormatDefault),
6998 "JS_FORMAT_JSON" => Some(Self::JsFormatJson),
6999 "JS_FORMAT_JSONB" => Some(Self::JsFormatJsonb),
7000 _ => None,
7001 }
7002 }
7003}
7004#[derive(serde::Serialize)]
7005#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7006#[repr(i32)]
7007pub enum JsonConstructorType {
7008 Undefined = 0,
7009 JsctorJsonObject = 1,
7010 JsctorJsonArray = 2,
7011 JsctorJsonObjectagg = 3,
7012 JsctorJsonArrayagg = 4,
7013 JsctorJsonParse = 5,
7014 JsctorJsonScalar = 6,
7015 JsctorJsonSerialize = 7,
7016}
7017impl JsonConstructorType {
7018 pub fn as_str_name(&self) -> &'static str {
7023 match self {
7024 Self::Undefined => "JSON_CONSTRUCTOR_TYPE_UNDEFINED",
7025 Self::JsctorJsonObject => "JSCTOR_JSON_OBJECT",
7026 Self::JsctorJsonArray => "JSCTOR_JSON_ARRAY",
7027 Self::JsctorJsonObjectagg => "JSCTOR_JSON_OBJECTAGG",
7028 Self::JsctorJsonArrayagg => "JSCTOR_JSON_ARRAYAGG",
7029 Self::JsctorJsonParse => "JSCTOR_JSON_PARSE",
7030 Self::JsctorJsonScalar => "JSCTOR_JSON_SCALAR",
7031 Self::JsctorJsonSerialize => "JSCTOR_JSON_SERIALIZE",
7032 }
7033 }
7034 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7036 match value {
7037 "JSON_CONSTRUCTOR_TYPE_UNDEFINED" => Some(Self::Undefined),
7038 "JSCTOR_JSON_OBJECT" => Some(Self::JsctorJsonObject),
7039 "JSCTOR_JSON_ARRAY" => Some(Self::JsctorJsonArray),
7040 "JSCTOR_JSON_OBJECTAGG" => Some(Self::JsctorJsonObjectagg),
7041 "JSCTOR_JSON_ARRAYAGG" => Some(Self::JsctorJsonArrayagg),
7042 "JSCTOR_JSON_PARSE" => Some(Self::JsctorJsonParse),
7043 "JSCTOR_JSON_SCALAR" => Some(Self::JsctorJsonScalar),
7044 "JSCTOR_JSON_SERIALIZE" => Some(Self::JsctorJsonSerialize),
7045 _ => None,
7046 }
7047 }
7048}
7049#[derive(serde::Serialize)]
7050#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7051#[repr(i32)]
7052pub enum JsonValueType {
7053 Undefined = 0,
7054 JsTypeAny = 1,
7055 JsTypeObject = 2,
7056 JsTypeArray = 3,
7057 JsTypeScalar = 4,
7058}
7059impl JsonValueType {
7060 pub fn as_str_name(&self) -> &'static str {
7065 match self {
7066 Self::Undefined => "JSON_VALUE_TYPE_UNDEFINED",
7067 Self::JsTypeAny => "JS_TYPE_ANY",
7068 Self::JsTypeObject => "JS_TYPE_OBJECT",
7069 Self::JsTypeArray => "JS_TYPE_ARRAY",
7070 Self::JsTypeScalar => "JS_TYPE_SCALAR",
7071 }
7072 }
7073 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7075 match value {
7076 "JSON_VALUE_TYPE_UNDEFINED" => Some(Self::Undefined),
7077 "JS_TYPE_ANY" => Some(Self::JsTypeAny),
7078 "JS_TYPE_OBJECT" => Some(Self::JsTypeObject),
7079 "JS_TYPE_ARRAY" => Some(Self::JsTypeArray),
7080 "JS_TYPE_SCALAR" => Some(Self::JsTypeScalar),
7081 _ => None,
7082 }
7083 }
7084}
7085#[derive(serde::Serialize)]
7086#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7087#[repr(i32)]
7088pub enum JsonWrapper {
7089 Undefined = 0,
7090 JswUnspec = 1,
7091 JswNone = 2,
7092 JswConditional = 3,
7093 JswUnconditional = 4,
7094}
7095impl JsonWrapper {
7096 pub fn as_str_name(&self) -> &'static str {
7101 match self {
7102 Self::Undefined => "JSON_WRAPPER_UNDEFINED",
7103 Self::JswUnspec => "JSW_UNSPEC",
7104 Self::JswNone => "JSW_NONE",
7105 Self::JswConditional => "JSW_CONDITIONAL",
7106 Self::JswUnconditional => "JSW_UNCONDITIONAL",
7107 }
7108 }
7109 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7111 match value {
7112 "JSON_WRAPPER_UNDEFINED" => Some(Self::Undefined),
7113 "JSW_UNSPEC" => Some(Self::JswUnspec),
7114 "JSW_NONE" => Some(Self::JswNone),
7115 "JSW_CONDITIONAL" => Some(Self::JswConditional),
7116 "JSW_UNCONDITIONAL" => Some(Self::JswUnconditional),
7117 _ => None,
7118 }
7119 }
7120}
7121#[derive(serde::Serialize)]
7122#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7123#[repr(i32)]
7124pub enum JsonBehaviorType {
7125 Undefined = 0,
7126 JsonBehaviorNull = 1,
7127 JsonBehaviorError = 2,
7128 JsonBehaviorEmpty = 3,
7129 JsonBehaviorTrue = 4,
7130 JsonBehaviorFalse = 5,
7131 JsonBehaviorUnknown = 6,
7132 JsonBehaviorEmptyArray = 7,
7133 JsonBehaviorEmptyObject = 8,
7134 JsonBehaviorDefault = 9,
7135}
7136impl JsonBehaviorType {
7137 pub fn as_str_name(&self) -> &'static str {
7142 match self {
7143 Self::Undefined => "JSON_BEHAVIOR_TYPE_UNDEFINED",
7144 Self::JsonBehaviorNull => "JSON_BEHAVIOR_NULL",
7145 Self::JsonBehaviorError => "JSON_BEHAVIOR_ERROR",
7146 Self::JsonBehaviorEmpty => "JSON_BEHAVIOR_EMPTY",
7147 Self::JsonBehaviorTrue => "JSON_BEHAVIOR_TRUE",
7148 Self::JsonBehaviorFalse => "JSON_BEHAVIOR_FALSE",
7149 Self::JsonBehaviorUnknown => "JSON_BEHAVIOR_UNKNOWN",
7150 Self::JsonBehaviorEmptyArray => "JSON_BEHAVIOR_EMPTY_ARRAY",
7151 Self::JsonBehaviorEmptyObject => "JSON_BEHAVIOR_EMPTY_OBJECT",
7152 Self::JsonBehaviorDefault => "JSON_BEHAVIOR_DEFAULT",
7153 }
7154 }
7155 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7157 match value {
7158 "JSON_BEHAVIOR_TYPE_UNDEFINED" => Some(Self::Undefined),
7159 "JSON_BEHAVIOR_NULL" => Some(Self::JsonBehaviorNull),
7160 "JSON_BEHAVIOR_ERROR" => Some(Self::JsonBehaviorError),
7161 "JSON_BEHAVIOR_EMPTY" => Some(Self::JsonBehaviorEmpty),
7162 "JSON_BEHAVIOR_TRUE" => Some(Self::JsonBehaviorTrue),
7163 "JSON_BEHAVIOR_FALSE" => Some(Self::JsonBehaviorFalse),
7164 "JSON_BEHAVIOR_UNKNOWN" => Some(Self::JsonBehaviorUnknown),
7165 "JSON_BEHAVIOR_EMPTY_ARRAY" => Some(Self::JsonBehaviorEmptyArray),
7166 "JSON_BEHAVIOR_EMPTY_OBJECT" => Some(Self::JsonBehaviorEmptyObject),
7167 "JSON_BEHAVIOR_DEFAULT" => Some(Self::JsonBehaviorDefault),
7168 _ => None,
7169 }
7170 }
7171}
7172#[derive(serde::Serialize)]
7173#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7174#[repr(i32)]
7175pub enum JsonExprOp {
7176 Undefined = 0,
7177 JsonExistsOp = 1,
7178 JsonQueryOp = 2,
7179 JsonValueOp = 3,
7180 JsonTableOp = 4,
7181}
7182impl JsonExprOp {
7183 pub fn as_str_name(&self) -> &'static str {
7188 match self {
7189 Self::Undefined => "JSON_EXPR_OP_UNDEFINED",
7190 Self::JsonExistsOp => "JSON_EXISTS_OP",
7191 Self::JsonQueryOp => "JSON_QUERY_OP",
7192 Self::JsonValueOp => "JSON_VALUE_OP",
7193 Self::JsonTableOp => "JSON_TABLE_OP",
7194 }
7195 }
7196 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7198 match value {
7199 "JSON_EXPR_OP_UNDEFINED" => Some(Self::Undefined),
7200 "JSON_EXISTS_OP" => Some(Self::JsonExistsOp),
7201 "JSON_QUERY_OP" => Some(Self::JsonQueryOp),
7202 "JSON_VALUE_OP" => Some(Self::JsonValueOp),
7203 "JSON_TABLE_OP" => Some(Self::JsonTableOp),
7204 _ => None,
7205 }
7206 }
7207}
7208#[derive(serde::Serialize)]
7209#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7210#[repr(i32)]
7211pub enum NullTestType {
7212 Undefined = 0,
7213 IsNull = 1,
7214 IsNotNull = 2,
7215}
7216impl NullTestType {
7217 pub fn as_str_name(&self) -> &'static str {
7222 match self {
7223 Self::Undefined => "NULL_TEST_TYPE_UNDEFINED",
7224 Self::IsNull => "IS_NULL",
7225 Self::IsNotNull => "IS_NOT_NULL",
7226 }
7227 }
7228 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7230 match value {
7231 "NULL_TEST_TYPE_UNDEFINED" => Some(Self::Undefined),
7232 "IS_NULL" => Some(Self::IsNull),
7233 "IS_NOT_NULL" => Some(Self::IsNotNull),
7234 _ => None,
7235 }
7236 }
7237}
7238#[derive(serde::Serialize)]
7239#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7240#[repr(i32)]
7241pub enum BoolTestType {
7242 Undefined = 0,
7243 IsTrue = 1,
7244 IsNotTrue = 2,
7245 IsFalse = 3,
7246 IsNotFalse = 4,
7247 IsUnknown = 5,
7248 IsNotUnknown = 6,
7249}
7250impl BoolTestType {
7251 pub fn as_str_name(&self) -> &'static str {
7256 match self {
7257 Self::Undefined => "BOOL_TEST_TYPE_UNDEFINED",
7258 Self::IsTrue => "IS_TRUE",
7259 Self::IsNotTrue => "IS_NOT_TRUE",
7260 Self::IsFalse => "IS_FALSE",
7261 Self::IsNotFalse => "IS_NOT_FALSE",
7262 Self::IsUnknown => "IS_UNKNOWN",
7263 Self::IsNotUnknown => "IS_NOT_UNKNOWN",
7264 }
7265 }
7266 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7268 match value {
7269 "BOOL_TEST_TYPE_UNDEFINED" => Some(Self::Undefined),
7270 "IS_TRUE" => Some(Self::IsTrue),
7271 "IS_NOT_TRUE" => Some(Self::IsNotTrue),
7272 "IS_FALSE" => Some(Self::IsFalse),
7273 "IS_NOT_FALSE" => Some(Self::IsNotFalse),
7274 "IS_UNKNOWN" => Some(Self::IsUnknown),
7275 "IS_NOT_UNKNOWN" => Some(Self::IsNotUnknown),
7276 _ => None,
7277 }
7278 }
7279}
7280#[derive(serde::Serialize)]
7281#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7282#[repr(i32)]
7283pub enum MergeMatchKind {
7284 Undefined = 0,
7285 MergeWhenMatched = 1,
7286 MergeWhenNotMatchedBySource = 2,
7287 MergeWhenNotMatchedByTarget = 3,
7288}
7289impl MergeMatchKind {
7290 pub fn as_str_name(&self) -> &'static str {
7295 match self {
7296 Self::Undefined => "MERGE_MATCH_KIND_UNDEFINED",
7297 Self::MergeWhenMatched => "MERGE_WHEN_MATCHED",
7298 Self::MergeWhenNotMatchedBySource => "MERGE_WHEN_NOT_MATCHED_BY_SOURCE",
7299 Self::MergeWhenNotMatchedByTarget => "MERGE_WHEN_NOT_MATCHED_BY_TARGET",
7300 }
7301 }
7302 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7304 match value {
7305 "MERGE_MATCH_KIND_UNDEFINED" => Some(Self::Undefined),
7306 "MERGE_WHEN_MATCHED" => Some(Self::MergeWhenMatched),
7307 "MERGE_WHEN_NOT_MATCHED_BY_SOURCE" => Some(Self::MergeWhenNotMatchedBySource),
7308 "MERGE_WHEN_NOT_MATCHED_BY_TARGET" => Some(Self::MergeWhenNotMatchedByTarget),
7309 _ => None,
7310 }
7311 }
7312}
7313#[derive(serde::Serialize)]
7314#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7315#[repr(i32)]
7316pub enum CmdType {
7317 Undefined = 0,
7318 CmdUnknown = 1,
7319 CmdSelect = 2,
7320 CmdUpdate = 3,
7321 CmdInsert = 4,
7322 CmdDelete = 5,
7323 CmdMerge = 6,
7324 CmdUtility = 7,
7325 CmdNothing = 8,
7326}
7327impl CmdType {
7328 pub fn as_str_name(&self) -> &'static str {
7333 match self {
7334 Self::Undefined => "CMD_TYPE_UNDEFINED",
7335 Self::CmdUnknown => "CMD_UNKNOWN",
7336 Self::CmdSelect => "CMD_SELECT",
7337 Self::CmdUpdate => "CMD_UPDATE",
7338 Self::CmdInsert => "CMD_INSERT",
7339 Self::CmdDelete => "CMD_DELETE",
7340 Self::CmdMerge => "CMD_MERGE",
7341 Self::CmdUtility => "CMD_UTILITY",
7342 Self::CmdNothing => "CMD_NOTHING",
7343 }
7344 }
7345 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7347 match value {
7348 "CMD_TYPE_UNDEFINED" => Some(Self::Undefined),
7349 "CMD_UNKNOWN" => Some(Self::CmdUnknown),
7350 "CMD_SELECT" => Some(Self::CmdSelect),
7351 "CMD_UPDATE" => Some(Self::CmdUpdate),
7352 "CMD_INSERT" => Some(Self::CmdInsert),
7353 "CMD_DELETE" => Some(Self::CmdDelete),
7354 "CMD_MERGE" => Some(Self::CmdMerge),
7355 "CMD_UTILITY" => Some(Self::CmdUtility),
7356 "CMD_NOTHING" => Some(Self::CmdNothing),
7357 _ => None,
7358 }
7359 }
7360}
7361#[derive(serde::Serialize)]
7362#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7363#[repr(i32)]
7364pub enum JoinType {
7365 Undefined = 0,
7366 JoinInner = 1,
7367 JoinLeft = 2,
7368 JoinFull = 3,
7369 JoinRight = 4,
7370 JoinSemi = 5,
7371 JoinAnti = 6,
7372 JoinRightSemi = 7,
7373 JoinRightAnti = 8,
7374 JoinUniqueOuter = 9,
7375 JoinUniqueInner = 10,
7376}
7377impl JoinType {
7378 pub fn as_str_name(&self) -> &'static str {
7383 match self {
7384 Self::Undefined => "JOIN_TYPE_UNDEFINED",
7385 Self::JoinInner => "JOIN_INNER",
7386 Self::JoinLeft => "JOIN_LEFT",
7387 Self::JoinFull => "JOIN_FULL",
7388 Self::JoinRight => "JOIN_RIGHT",
7389 Self::JoinSemi => "JOIN_SEMI",
7390 Self::JoinAnti => "JOIN_ANTI",
7391 Self::JoinRightSemi => "JOIN_RIGHT_SEMI",
7392 Self::JoinRightAnti => "JOIN_RIGHT_ANTI",
7393 Self::JoinUniqueOuter => "JOIN_UNIQUE_OUTER",
7394 Self::JoinUniqueInner => "JOIN_UNIQUE_INNER",
7395 }
7396 }
7397 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7399 match value {
7400 "JOIN_TYPE_UNDEFINED" => Some(Self::Undefined),
7401 "JOIN_INNER" => Some(Self::JoinInner),
7402 "JOIN_LEFT" => Some(Self::JoinLeft),
7403 "JOIN_FULL" => Some(Self::JoinFull),
7404 "JOIN_RIGHT" => Some(Self::JoinRight),
7405 "JOIN_SEMI" => Some(Self::JoinSemi),
7406 "JOIN_ANTI" => Some(Self::JoinAnti),
7407 "JOIN_RIGHT_SEMI" => Some(Self::JoinRightSemi),
7408 "JOIN_RIGHT_ANTI" => Some(Self::JoinRightAnti),
7409 "JOIN_UNIQUE_OUTER" => Some(Self::JoinUniqueOuter),
7410 "JOIN_UNIQUE_INNER" => Some(Self::JoinUniqueInner),
7411 _ => None,
7412 }
7413 }
7414}
7415#[derive(serde::Serialize)]
7416#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7417#[repr(i32)]
7418pub enum AggStrategy {
7419 Undefined = 0,
7420 AggPlain = 1,
7421 AggSorted = 2,
7422 AggHashed = 3,
7423 AggMixed = 4,
7424}
7425impl AggStrategy {
7426 pub fn as_str_name(&self) -> &'static str {
7431 match self {
7432 Self::Undefined => "AGG_STRATEGY_UNDEFINED",
7433 Self::AggPlain => "AGG_PLAIN",
7434 Self::AggSorted => "AGG_SORTED",
7435 Self::AggHashed => "AGG_HASHED",
7436 Self::AggMixed => "AGG_MIXED",
7437 }
7438 }
7439 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7441 match value {
7442 "AGG_STRATEGY_UNDEFINED" => Some(Self::Undefined),
7443 "AGG_PLAIN" => Some(Self::AggPlain),
7444 "AGG_SORTED" => Some(Self::AggSorted),
7445 "AGG_HASHED" => Some(Self::AggHashed),
7446 "AGG_MIXED" => Some(Self::AggMixed),
7447 _ => None,
7448 }
7449 }
7450}
7451#[derive(serde::Serialize)]
7452#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7453#[repr(i32)]
7454pub enum AggSplit {
7455 Undefined = 0,
7456 AggsplitSimple = 1,
7457 AggsplitInitialSerial = 2,
7458 AggsplitFinalDeserial = 3,
7459}
7460impl AggSplit {
7461 pub fn as_str_name(&self) -> &'static str {
7466 match self {
7467 Self::Undefined => "AGG_SPLIT_UNDEFINED",
7468 Self::AggsplitSimple => "AGGSPLIT_SIMPLE",
7469 Self::AggsplitInitialSerial => "AGGSPLIT_INITIAL_SERIAL",
7470 Self::AggsplitFinalDeserial => "AGGSPLIT_FINAL_DESERIAL",
7471 }
7472 }
7473 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7475 match value {
7476 "AGG_SPLIT_UNDEFINED" => Some(Self::Undefined),
7477 "AGGSPLIT_SIMPLE" => Some(Self::AggsplitSimple),
7478 "AGGSPLIT_INITIAL_SERIAL" => Some(Self::AggsplitInitialSerial),
7479 "AGGSPLIT_FINAL_DESERIAL" => Some(Self::AggsplitFinalDeserial),
7480 _ => None,
7481 }
7482 }
7483}
7484#[derive(serde::Serialize)]
7485#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7486#[repr(i32)]
7487pub enum SetOpCmd {
7488 Undefined = 0,
7489 SetopcmdIntersect = 1,
7490 SetopcmdIntersectAll = 2,
7491 SetopcmdExcept = 3,
7492 SetopcmdExceptAll = 4,
7493}
7494impl SetOpCmd {
7495 pub fn as_str_name(&self) -> &'static str {
7500 match self {
7501 Self::Undefined => "SET_OP_CMD_UNDEFINED",
7502 Self::SetopcmdIntersect => "SETOPCMD_INTERSECT",
7503 Self::SetopcmdIntersectAll => "SETOPCMD_INTERSECT_ALL",
7504 Self::SetopcmdExcept => "SETOPCMD_EXCEPT",
7505 Self::SetopcmdExceptAll => "SETOPCMD_EXCEPT_ALL",
7506 }
7507 }
7508 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7510 match value {
7511 "SET_OP_CMD_UNDEFINED" => Some(Self::Undefined),
7512 "SETOPCMD_INTERSECT" => Some(Self::SetopcmdIntersect),
7513 "SETOPCMD_INTERSECT_ALL" => Some(Self::SetopcmdIntersectAll),
7514 "SETOPCMD_EXCEPT" => Some(Self::SetopcmdExcept),
7515 "SETOPCMD_EXCEPT_ALL" => Some(Self::SetopcmdExceptAll),
7516 _ => None,
7517 }
7518 }
7519}
7520#[derive(serde::Serialize)]
7521#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7522#[repr(i32)]
7523pub enum SetOpStrategy {
7524 Undefined = 0,
7525 SetopSorted = 1,
7526 SetopHashed = 2,
7527}
7528impl SetOpStrategy {
7529 pub fn as_str_name(&self) -> &'static str {
7534 match self {
7535 Self::Undefined => "SET_OP_STRATEGY_UNDEFINED",
7536 Self::SetopSorted => "SETOP_SORTED",
7537 Self::SetopHashed => "SETOP_HASHED",
7538 }
7539 }
7540 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7542 match value {
7543 "SET_OP_STRATEGY_UNDEFINED" => Some(Self::Undefined),
7544 "SETOP_SORTED" => Some(Self::SetopSorted),
7545 "SETOP_HASHED" => Some(Self::SetopHashed),
7546 _ => None,
7547 }
7548 }
7549}
7550#[derive(serde::Serialize)]
7551#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7552#[repr(i32)]
7553pub enum OnConflictAction {
7554 Undefined = 0,
7555 OnconflictNone = 1,
7556 OnconflictNothing = 2,
7557 OnconflictUpdate = 3,
7558}
7559impl OnConflictAction {
7560 pub fn as_str_name(&self) -> &'static str {
7565 match self {
7566 Self::Undefined => "ON_CONFLICT_ACTION_UNDEFINED",
7567 Self::OnconflictNone => "ONCONFLICT_NONE",
7568 Self::OnconflictNothing => "ONCONFLICT_NOTHING",
7569 Self::OnconflictUpdate => "ONCONFLICT_UPDATE",
7570 }
7571 }
7572 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7574 match value {
7575 "ON_CONFLICT_ACTION_UNDEFINED" => Some(Self::Undefined),
7576 "ONCONFLICT_NONE" => Some(Self::OnconflictNone),
7577 "ONCONFLICT_NOTHING" => Some(Self::OnconflictNothing),
7578 "ONCONFLICT_UPDATE" => Some(Self::OnconflictUpdate),
7579 _ => None,
7580 }
7581 }
7582}
7583#[derive(serde::Serialize)]
7584#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7585#[repr(i32)]
7586pub enum LimitOption {
7587 Undefined = 0,
7588 Default = 1,
7589 Count = 2,
7590 WithTies = 3,
7591}
7592impl LimitOption {
7593 pub fn as_str_name(&self) -> &'static str {
7598 match self {
7599 Self::Undefined => "LIMIT_OPTION_UNDEFINED",
7600 Self::Default => "LIMIT_OPTION_DEFAULT",
7601 Self::Count => "LIMIT_OPTION_COUNT",
7602 Self::WithTies => "LIMIT_OPTION_WITH_TIES",
7603 }
7604 }
7605 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7607 match value {
7608 "LIMIT_OPTION_UNDEFINED" => Some(Self::Undefined),
7609 "LIMIT_OPTION_DEFAULT" => Some(Self::Default),
7610 "LIMIT_OPTION_COUNT" => Some(Self::Count),
7611 "LIMIT_OPTION_WITH_TIES" => Some(Self::WithTies),
7612 _ => None,
7613 }
7614 }
7615}
7616#[derive(serde::Serialize)]
7617#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7618#[repr(i32)]
7619pub enum LockClauseStrength {
7620 Undefined = 0,
7621 LcsNone = 1,
7622 LcsForkeyshare = 2,
7623 LcsForshare = 3,
7624 LcsFornokeyupdate = 4,
7625 LcsForupdate = 5,
7626}
7627impl LockClauseStrength {
7628 pub fn as_str_name(&self) -> &'static str {
7633 match self {
7634 Self::Undefined => "LOCK_CLAUSE_STRENGTH_UNDEFINED",
7635 Self::LcsNone => "LCS_NONE",
7636 Self::LcsForkeyshare => "LCS_FORKEYSHARE",
7637 Self::LcsForshare => "LCS_FORSHARE",
7638 Self::LcsFornokeyupdate => "LCS_FORNOKEYUPDATE",
7639 Self::LcsForupdate => "LCS_FORUPDATE",
7640 }
7641 }
7642 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7644 match value {
7645 "LOCK_CLAUSE_STRENGTH_UNDEFINED" => Some(Self::Undefined),
7646 "LCS_NONE" => Some(Self::LcsNone),
7647 "LCS_FORKEYSHARE" => Some(Self::LcsForkeyshare),
7648 "LCS_FORSHARE" => Some(Self::LcsForshare),
7649 "LCS_FORNOKEYUPDATE" => Some(Self::LcsFornokeyupdate),
7650 "LCS_FORUPDATE" => Some(Self::LcsForupdate),
7651 _ => None,
7652 }
7653 }
7654}
7655#[derive(serde::Serialize)]
7656#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7657#[repr(i32)]
7658pub enum LockWaitPolicy {
7659 Undefined = 0,
7660 LockWaitBlock = 1,
7661 LockWaitSkip = 2,
7662 LockWaitError = 3,
7663}
7664impl LockWaitPolicy {
7665 pub fn as_str_name(&self) -> &'static str {
7670 match self {
7671 Self::Undefined => "LOCK_WAIT_POLICY_UNDEFINED",
7672 Self::LockWaitBlock => "LockWaitBlock",
7673 Self::LockWaitSkip => "LockWaitSkip",
7674 Self::LockWaitError => "LockWaitError",
7675 }
7676 }
7677 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7679 match value {
7680 "LOCK_WAIT_POLICY_UNDEFINED" => Some(Self::Undefined),
7681 "LockWaitBlock" => Some(Self::LockWaitBlock),
7682 "LockWaitSkip" => Some(Self::LockWaitSkip),
7683 "LockWaitError" => Some(Self::LockWaitError),
7684 _ => None,
7685 }
7686 }
7687}
7688#[derive(serde::Serialize)]
7689#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7690#[repr(i32)]
7691pub enum LockTupleMode {
7692 Undefined = 0,
7693 LockTupleKeyShare = 1,
7694 LockTupleShare = 2,
7695 LockTupleNoKeyExclusive = 3,
7696 LockTupleExclusive = 4,
7697}
7698impl LockTupleMode {
7699 pub fn as_str_name(&self) -> &'static str {
7704 match self {
7705 Self::Undefined => "LOCK_TUPLE_MODE_UNDEFINED",
7706 Self::LockTupleKeyShare => "LockTupleKeyShare",
7707 Self::LockTupleShare => "LockTupleShare",
7708 Self::LockTupleNoKeyExclusive => "LockTupleNoKeyExclusive",
7709 Self::LockTupleExclusive => "LockTupleExclusive",
7710 }
7711 }
7712 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7714 match value {
7715 "LOCK_TUPLE_MODE_UNDEFINED" => Some(Self::Undefined),
7716 "LockTupleKeyShare" => Some(Self::LockTupleKeyShare),
7717 "LockTupleShare" => Some(Self::LockTupleShare),
7718 "LockTupleNoKeyExclusive" => Some(Self::LockTupleNoKeyExclusive),
7719 "LockTupleExclusive" => Some(Self::LockTupleExclusive),
7720 _ => None,
7721 }
7722 }
7723}
7724#[derive(serde::Serialize)]
7725#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7726#[repr(i32)]
7727pub enum CompareType {
7728 Undefined = 0,
7729 CompareInvalid = 1,
7730 CompareLt = 2,
7731 CompareLe = 3,
7732 CompareEq = 4,
7733 CompareGe = 5,
7734 CompareGt = 6,
7735 CompareNe = 7,
7736 CompareOverlap = 8,
7737 CompareContainedBy = 9,
7738}
7739impl CompareType {
7740 pub fn as_str_name(&self) -> &'static str {
7745 match self {
7746 Self::Undefined => "COMPARE_TYPE_UNDEFINED",
7747 Self::CompareInvalid => "COMPARE_INVALID",
7748 Self::CompareLt => "COMPARE_LT",
7749 Self::CompareLe => "COMPARE_LE",
7750 Self::CompareEq => "COMPARE_EQ",
7751 Self::CompareGe => "COMPARE_GE",
7752 Self::CompareGt => "COMPARE_GT",
7753 Self::CompareNe => "COMPARE_NE",
7754 Self::CompareOverlap => "COMPARE_OVERLAP",
7755 Self::CompareContainedBy => "COMPARE_CONTAINED_BY",
7756 }
7757 }
7758 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7760 match value {
7761 "COMPARE_TYPE_UNDEFINED" => Some(Self::Undefined),
7762 "COMPARE_INVALID" => Some(Self::CompareInvalid),
7763 "COMPARE_LT" => Some(Self::CompareLt),
7764 "COMPARE_LE" => Some(Self::CompareLe),
7765 "COMPARE_EQ" => Some(Self::CompareEq),
7766 "COMPARE_GE" => Some(Self::CompareGe),
7767 "COMPARE_GT" => Some(Self::CompareGt),
7768 "COMPARE_NE" => Some(Self::CompareNe),
7769 "COMPARE_OVERLAP" => Some(Self::CompareOverlap),
7770 "COMPARE_CONTAINED_BY" => Some(Self::CompareContainedBy),
7771 _ => None,
7772 }
7773 }
7774}
7775#[derive(serde::Serialize)]
7776#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7777#[repr(i32)]
7778pub enum KeywordKind {
7779 NoKeyword = 0,
7780 UnreservedKeyword = 1,
7781 ColNameKeyword = 2,
7782 TypeFuncNameKeyword = 3,
7783 ReservedKeyword = 4,
7784}
7785impl KeywordKind {
7786 pub fn as_str_name(&self) -> &'static str {
7791 match self {
7792 Self::NoKeyword => "NO_KEYWORD",
7793 Self::UnreservedKeyword => "UNRESERVED_KEYWORD",
7794 Self::ColNameKeyword => "COL_NAME_KEYWORD",
7795 Self::TypeFuncNameKeyword => "TYPE_FUNC_NAME_KEYWORD",
7796 Self::ReservedKeyword => "RESERVED_KEYWORD",
7797 }
7798 }
7799 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
7801 match value {
7802 "NO_KEYWORD" => Some(Self::NoKeyword),
7803 "UNRESERVED_KEYWORD" => Some(Self::UnreservedKeyword),
7804 "COL_NAME_KEYWORD" => Some(Self::ColNameKeyword),
7805 "TYPE_FUNC_NAME_KEYWORD" => Some(Self::TypeFuncNameKeyword),
7806 "RESERVED_KEYWORD" => Some(Self::ReservedKeyword),
7807 _ => None,
7808 }
7809 }
7810}
7811#[derive(serde::Serialize)]
7812#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
7813#[repr(i32)]
7814pub enum Token {
7815 Nul = 0,
7816 Ascii36 = 36,
7822 Ascii37 = 37,
7824 Ascii40 = 40,
7826 Ascii41 = 41,
7828 Ascii42 = 42,
7830 Ascii43 = 43,
7832 Ascii44 = 44,
7834 Ascii45 = 45,
7836 Ascii46 = 46,
7838 Ascii47 = 47,
7840 Ascii58 = 58,
7842 Ascii59 = 59,
7844 Ascii60 = 60,
7846 Ascii61 = 61,
7848 Ascii62 = 62,
7850 Ascii63 = 63,
7852 Ascii91 = 91,
7854 Ascii92 = 92,
7856 Ascii93 = 93,
7858 Ascii94 = 94,
7860 Ident = 258,
7862 Uident = 259,
7863 Fconst = 260,
7864 Sconst = 261,
7865 Usconst = 262,
7866 Bconst = 263,
7867 Xconst = 264,
7868 Op = 265,
7869 Iconst = 266,
7870 Param = 267,
7871 Typecast = 268,
7872 DotDot = 269,
7873 ColonEquals = 270,
7874 EqualsGreater = 271,
7875 LessEquals = 272,
7876 GreaterEquals = 273,
7877 NotEquals = 274,
7878 SqlComment = 275,
7879 CComment = 276,
7880 AbortP = 277,
7881 Absent = 278,
7882 AbsoluteP = 279,
7883 Access = 280,
7884 Action = 281,
7885 AddP = 282,
7886 Admin = 283,
7887 After = 284,
7888 Aggregate = 285,
7889 All = 286,
7890 Also = 287,
7891 Alter = 288,
7892 Always = 289,
7893 Analyse = 290,
7894 Analyze = 291,
7895 And = 292,
7896 Any = 293,
7897 Array = 294,
7898 As = 295,
7899 Asc = 296,
7900 Asensitive = 297,
7901 Assertion = 298,
7902 Assignment = 299,
7903 Asymmetric = 300,
7904 Atomic = 301,
7905 At = 302,
7906 Attach = 303,
7907 Attribute = 304,
7908 Authorization = 305,
7909 Backward = 306,
7910 Before = 307,
7911 BeginP = 308,
7912 Between = 309,
7913 Bigint = 310,
7914 Binary = 311,
7915 Bit = 312,
7916 BooleanP = 313,
7917 Both = 314,
7918 Breadth = 315,
7919 By = 316,
7920 Cache = 317,
7921 Call = 318,
7922 Called = 319,
7923 Cascade = 320,
7924 Cascaded = 321,
7925 Case = 322,
7926 Cast = 323,
7927 CatalogP = 324,
7928 Chain = 325,
7929 CharP = 326,
7930 Character = 327,
7931 Characteristics = 328,
7932 Check = 329,
7933 Checkpoint = 330,
7934 Class = 331,
7935 Close = 332,
7936 Cluster = 333,
7937 Coalesce = 334,
7938 Collate = 335,
7939 Collation = 336,
7940 Column = 337,
7941 Columns = 338,
7942 Comment = 339,
7943 Comments = 340,
7944 Commit = 341,
7945 Committed = 342,
7946 Compression = 343,
7947 Concurrently = 344,
7948 Conditional = 345,
7949 Configuration = 346,
7950 Conflict = 347,
7951 Connection = 348,
7952 Constraint = 349,
7953 Constraints = 350,
7954 ContentP = 351,
7955 ContinueP = 352,
7956 ConversionP = 353,
7957 Copy = 354,
7958 Cost = 355,
7959 Create = 356,
7960 Cross = 357,
7961 Csv = 358,
7962 Cube = 359,
7963 CurrentP = 360,
7964 CurrentCatalog = 361,
7965 CurrentDate = 362,
7966 CurrentRole = 363,
7967 CurrentSchema = 364,
7968 CurrentTime = 365,
7969 CurrentTimestamp = 366,
7970 CurrentUser = 367,
7971 Cursor = 368,
7972 Cycle = 369,
7973 DataP = 370,
7974 Database = 371,
7975 DayP = 372,
7976 Deallocate = 373,
7977 Dec = 374,
7978 DecimalP = 375,
7979 Declare = 376,
7980 Default = 377,
7981 Defaults = 378,
7982 Deferrable = 379,
7983 Deferred = 380,
7984 Definer = 381,
7985 DeleteP = 382,
7986 Delimiter = 383,
7987 Delimiters = 384,
7988 Depends = 385,
7989 Depth = 386,
7990 Desc = 387,
7991 Detach = 388,
7992 Dictionary = 389,
7993 DisableP = 390,
7994 Discard = 391,
7995 Distinct = 392,
7996 Do = 393,
7997 DocumentP = 394,
7998 DomainP = 395,
7999 DoubleP = 396,
8000 Drop = 397,
8001 Each = 398,
8002 Else = 399,
8003 EmptyP = 400,
8004 EnableP = 401,
8005 Encoding = 402,
8006 Encrypted = 403,
8007 EndP = 404,
8008 Enforced = 405,
8009 EnumP = 406,
8010 ErrorP = 407,
8011 Escape = 408,
8012 Event = 409,
8013 Except = 410,
8014 Exclude = 411,
8015 Excluding = 412,
8016 Exclusive = 413,
8017 Execute = 414,
8018 Exists = 415,
8019 Explain = 416,
8020 Expression = 417,
8021 Extension = 418,
8022 External = 419,
8023 Extract = 420,
8024 FalseP = 421,
8025 Family = 422,
8026 Fetch = 423,
8027 Filter = 424,
8028 Finalize = 425,
8029 FirstP = 426,
8030 FloatP = 427,
8031 Following = 428,
8032 For = 429,
8033 Force = 430,
8034 Foreign = 431,
8035 Format = 432,
8036 Forward = 433,
8037 Freeze = 434,
8038 From = 435,
8039 Full = 436,
8040 Function = 437,
8041 Functions = 438,
8042 Generated = 439,
8043 Global = 440,
8044 Grant = 441,
8045 Granted = 442,
8046 Greatest = 443,
8047 GroupP = 444,
8048 Grouping = 445,
8049 Groups = 446,
8050 Handler = 447,
8051 Having = 448,
8052 HeaderP = 449,
8053 Hold = 450,
8054 HourP = 451,
8055 IdentityP = 452,
8056 IfP = 453,
8057 Ilike = 454,
8058 Immediate = 455,
8059 Immutable = 456,
8060 ImplicitP = 457,
8061 ImportP = 458,
8062 InP = 459,
8063 Include = 460,
8064 Including = 461,
8065 Increment = 462,
8066 Indent = 463,
8067 Index = 464,
8068 Indexes = 465,
8069 Inherit = 466,
8070 Inherits = 467,
8071 Initially = 468,
8072 InlineP = 469,
8073 InnerP = 470,
8074 Inout = 471,
8075 InputP = 472,
8076 Insensitive = 473,
8077 Insert = 474,
8078 Instead = 475,
8079 IntP = 476,
8080 Integer = 477,
8081 Intersect = 478,
8082 Interval = 479,
8083 Into = 480,
8084 Invoker = 481,
8085 Is = 482,
8086 Isnull = 483,
8087 Isolation = 484,
8088 Join = 485,
8089 Json = 486,
8090 JsonArray = 487,
8091 JsonArrayagg = 488,
8092 JsonExists = 489,
8093 JsonObject = 490,
8094 JsonObjectagg = 491,
8095 JsonQuery = 492,
8096 JsonScalar = 493,
8097 JsonSerialize = 494,
8098 JsonTable = 495,
8099 JsonValue = 496,
8100 Keep = 497,
8101 Key = 498,
8102 Keys = 499,
8103 Label = 500,
8104 Language = 501,
8105 LargeP = 502,
8106 LastP = 503,
8107 LateralP = 504,
8108 Leading = 505,
8109 Leakproof = 506,
8110 Least = 507,
8111 Left = 508,
8112 Level = 509,
8113 Like = 510,
8114 Limit = 511,
8115 Listen = 512,
8116 Load = 513,
8117 Local = 514,
8118 Localtime = 515,
8119 Localtimestamp = 516,
8120 Location = 517,
8121 LockP = 518,
8122 Locked = 519,
8123 Logged = 520,
8124 Mapping = 521,
8125 Match = 522,
8126 Matched = 523,
8127 Materialized = 524,
8128 Maxvalue = 525,
8129 Merge = 526,
8130 MergeAction = 527,
8131 Method = 528,
8132 MinuteP = 529,
8133 Minvalue = 530,
8134 Mode = 531,
8135 MonthP = 532,
8136 Move = 533,
8137 NameP = 534,
8138 Names = 535,
8139 National = 536,
8140 Natural = 537,
8141 Nchar = 538,
8142 Nested = 539,
8143 New = 540,
8144 Next = 541,
8145 Nfc = 542,
8146 Nfd = 543,
8147 Nfkc = 544,
8148 Nfkd = 545,
8149 No = 546,
8150 None = 547,
8151 Normalize = 548,
8152 Normalized = 549,
8153 Not = 550,
8154 Nothing = 551,
8155 Notify = 552,
8156 Notnull = 553,
8157 Nowait = 554,
8158 NullP = 555,
8159 Nullif = 556,
8160 NullsP = 557,
8161 Numeric = 558,
8162 ObjectP = 559,
8163 ObjectsP = 560,
8164 Of = 561,
8165 Off = 562,
8166 Offset = 563,
8167 Oids = 564,
8168 Old = 565,
8169 Omit = 566,
8170 On = 567,
8171 Only = 568,
8172 Operator = 569,
8173 Option = 570,
8174 Options = 571,
8175 Or = 572,
8176 Order = 573,
8177 Ordinality = 574,
8178 Others = 575,
8179 OutP = 576,
8180 OuterP = 577,
8181 Over = 578,
8182 Overlaps = 579,
8183 Overlay = 580,
8184 Overriding = 581,
8185 Owned = 582,
8186 Owner = 583,
8187 Parallel = 584,
8188 Parameter = 585,
8189 Parser = 586,
8190 Partial = 587,
8191 Partition = 588,
8192 Passing = 589,
8193 Password = 590,
8194 Path = 591,
8195 Period = 592,
8196 Placing = 593,
8197 Plan = 594,
8198 Plans = 595,
8199 Policy = 596,
8200 Position = 597,
8201 Preceding = 598,
8202 Precision = 599,
8203 Preserve = 600,
8204 Prepare = 601,
8205 Prepared = 602,
8206 Primary = 603,
8207 Prior = 604,
8208 Privileges = 605,
8209 Procedural = 606,
8210 Procedure = 607,
8211 Procedures = 608,
8212 Program = 609,
8213 Publication = 610,
8214 Quote = 611,
8215 Quotes = 612,
8216 Range = 613,
8217 Read = 614,
8218 Real = 615,
8219 Reassign = 616,
8220 Recursive = 617,
8221 RefP = 618,
8222 References = 619,
8223 Referencing = 620,
8224 Refresh = 621,
8225 Reindex = 622,
8226 RelativeP = 623,
8227 Release = 624,
8228 Rename = 625,
8229 Repeatable = 626,
8230 Replace = 627,
8231 Replica = 628,
8232 Reset = 629,
8233 Restart = 630,
8234 Restrict = 631,
8235 Return = 632,
8236 Returning = 633,
8237 Returns = 634,
8238 Revoke = 635,
8239 Right = 636,
8240 Role = 637,
8241 Rollback = 638,
8242 Rollup = 639,
8243 Routine = 640,
8244 Routines = 641,
8245 Row = 642,
8246 Rows = 643,
8247 Rule = 644,
8248 Savepoint = 645,
8249 Scalar = 646,
8250 Schema = 647,
8251 Schemas = 648,
8252 Scroll = 649,
8253 Search = 650,
8254 SecondP = 651,
8255 Security = 652,
8256 Select = 653,
8257 Sequence = 654,
8258 Sequences = 655,
8259 Serializable = 656,
8260 Server = 657,
8261 Session = 658,
8262 SessionUser = 659,
8263 Set = 660,
8264 Sets = 661,
8265 Setof = 662,
8266 Share = 663,
8267 Show = 664,
8268 Similar = 665,
8269 Simple = 666,
8270 Skip = 667,
8271 Smallint = 668,
8272 Snapshot = 669,
8273 Some = 670,
8274 Source = 671,
8275 SqlP = 672,
8276 Stable = 673,
8277 StandaloneP = 674,
8278 Start = 675,
8279 Statement = 676,
8280 Statistics = 677,
8281 Stdin = 678,
8282 Stdout = 679,
8283 Storage = 680,
8284 Stored = 681,
8285 StrictP = 682,
8286 StringP = 683,
8287 StripP = 684,
8288 Subscription = 685,
8289 Substring = 686,
8290 Support = 687,
8291 Symmetric = 688,
8292 Sysid = 689,
8293 SystemP = 690,
8294 SystemUser = 691,
8295 Table = 692,
8296 Tables = 693,
8297 Tablesample = 694,
8298 Tablespace = 695,
8299 Target = 696,
8300 Temp = 697,
8301 Template = 698,
8302 Temporary = 699,
8303 TextP = 700,
8304 Then = 701,
8305 Ties = 702,
8306 Time = 703,
8307 Timestamp = 704,
8308 To = 705,
8309 Trailing = 706,
8310 Transaction = 707,
8311 Transform = 708,
8312 Treat = 709,
8313 Trigger = 710,
8314 Trim = 711,
8315 TrueP = 712,
8316 Truncate = 713,
8317 Trusted = 714,
8318 TypeP = 715,
8319 TypesP = 716,
8320 Uescape = 717,
8321 Unbounded = 718,
8322 Unconditional = 719,
8323 Uncommitted = 720,
8324 Unencrypted = 721,
8325 Union = 722,
8326 Unique = 723,
8327 Unknown = 724,
8328 Unlisten = 725,
8329 Unlogged = 726,
8330 Until = 727,
8331 Update = 728,
8332 User = 729,
8333 Using = 730,
8334 Vacuum = 731,
8335 Valid = 732,
8336 Validate = 733,
8337 Validator = 734,
8338 ValueP = 735,
8339 Values = 736,
8340 Varchar = 737,
8341 Variadic = 738,
8342 Varying = 739,
8343 Verbose = 740,
8344 VersionP = 741,
8345 View = 742,
8346 Views = 743,
8347 Virtual = 744,
8348 Volatile = 745,
8349 When = 746,
8350 Where = 747,
8351 WhitespaceP = 748,
8352 Window = 749,
8353 With = 750,
8354 Within = 751,
8355 Without = 752,
8356 Work = 753,
8357 Wrapper = 754,
8358 Write = 755,
8359 XmlP = 756,
8360 Xmlattributes = 757,
8361 Xmlconcat = 758,
8362 Xmlelement = 759,
8363 Xmlexists = 760,
8364 Xmlforest = 761,
8365 Xmlnamespaces = 762,
8366 Xmlparse = 763,
8367 Xmlpi = 764,
8368 Xmlroot = 765,
8369 Xmlserialize = 766,
8370 Xmltable = 767,
8371 YearP = 768,
8372 YesP = 769,
8373 Zone = 770,
8374 FormatLa = 771,
8375 NotLa = 772,
8376 NullsLa = 773,
8377 WithLa = 774,
8378 WithoutLa = 775,
8379 ModeTypeName = 776,
8380 ModePlpgsqlExpr = 777,
8381 ModePlpgsqlAssign1 = 778,
8382 ModePlpgsqlAssign2 = 779,
8383 ModePlpgsqlAssign3 = 780,
8384 Uminus = 781,
8385}
8386impl Token {
8387 pub fn as_str_name(&self) -> &'static str {
8392 match self {
8393 Self::Nul => "NUL",
8394 Self::Ascii36 => "ASCII_36",
8395 Self::Ascii37 => "ASCII_37",
8396 Self::Ascii40 => "ASCII_40",
8397 Self::Ascii41 => "ASCII_41",
8398 Self::Ascii42 => "ASCII_42",
8399 Self::Ascii43 => "ASCII_43",
8400 Self::Ascii44 => "ASCII_44",
8401 Self::Ascii45 => "ASCII_45",
8402 Self::Ascii46 => "ASCII_46",
8403 Self::Ascii47 => "ASCII_47",
8404 Self::Ascii58 => "ASCII_58",
8405 Self::Ascii59 => "ASCII_59",
8406 Self::Ascii60 => "ASCII_60",
8407 Self::Ascii61 => "ASCII_61",
8408 Self::Ascii62 => "ASCII_62",
8409 Self::Ascii63 => "ASCII_63",
8410 Self::Ascii91 => "ASCII_91",
8411 Self::Ascii92 => "ASCII_92",
8412 Self::Ascii93 => "ASCII_93",
8413 Self::Ascii94 => "ASCII_94",
8414 Self::Ident => "IDENT",
8415 Self::Uident => "UIDENT",
8416 Self::Fconst => "FCONST",
8417 Self::Sconst => "SCONST",
8418 Self::Usconst => "USCONST",
8419 Self::Bconst => "BCONST",
8420 Self::Xconst => "XCONST",
8421 Self::Op => "Op",
8422 Self::Iconst => "ICONST",
8423 Self::Param => "PARAM",
8424 Self::Typecast => "TYPECAST",
8425 Self::DotDot => "DOT_DOT",
8426 Self::ColonEquals => "COLON_EQUALS",
8427 Self::EqualsGreater => "EQUALS_GREATER",
8428 Self::LessEquals => "LESS_EQUALS",
8429 Self::GreaterEquals => "GREATER_EQUALS",
8430 Self::NotEquals => "NOT_EQUALS",
8431 Self::SqlComment => "SQL_COMMENT",
8432 Self::CComment => "C_COMMENT",
8433 Self::AbortP => "ABORT_P",
8434 Self::Absent => "ABSENT",
8435 Self::AbsoluteP => "ABSOLUTE_P",
8436 Self::Access => "ACCESS",
8437 Self::Action => "ACTION",
8438 Self::AddP => "ADD_P",
8439 Self::Admin => "ADMIN",
8440 Self::After => "AFTER",
8441 Self::Aggregate => "AGGREGATE",
8442 Self::All => "ALL",
8443 Self::Also => "ALSO",
8444 Self::Alter => "ALTER",
8445 Self::Always => "ALWAYS",
8446 Self::Analyse => "ANALYSE",
8447 Self::Analyze => "ANALYZE",
8448 Self::And => "AND",
8449 Self::Any => "ANY",
8450 Self::Array => "ARRAY",
8451 Self::As => "AS",
8452 Self::Asc => "ASC",
8453 Self::Asensitive => "ASENSITIVE",
8454 Self::Assertion => "ASSERTION",
8455 Self::Assignment => "ASSIGNMENT",
8456 Self::Asymmetric => "ASYMMETRIC",
8457 Self::Atomic => "ATOMIC",
8458 Self::At => "AT",
8459 Self::Attach => "ATTACH",
8460 Self::Attribute => "ATTRIBUTE",
8461 Self::Authorization => "AUTHORIZATION",
8462 Self::Backward => "BACKWARD",
8463 Self::Before => "BEFORE",
8464 Self::BeginP => "BEGIN_P",
8465 Self::Between => "BETWEEN",
8466 Self::Bigint => "BIGINT",
8467 Self::Binary => "BINARY",
8468 Self::Bit => "BIT",
8469 Self::BooleanP => "BOOLEAN_P",
8470 Self::Both => "BOTH",
8471 Self::Breadth => "BREADTH",
8472 Self::By => "BY",
8473 Self::Cache => "CACHE",
8474 Self::Call => "CALL",
8475 Self::Called => "CALLED",
8476 Self::Cascade => "CASCADE",
8477 Self::Cascaded => "CASCADED",
8478 Self::Case => "CASE",
8479 Self::Cast => "CAST",
8480 Self::CatalogP => "CATALOG_P",
8481 Self::Chain => "CHAIN",
8482 Self::CharP => "CHAR_P",
8483 Self::Character => "CHARACTER",
8484 Self::Characteristics => "CHARACTERISTICS",
8485 Self::Check => "CHECK",
8486 Self::Checkpoint => "CHECKPOINT",
8487 Self::Class => "CLASS",
8488 Self::Close => "CLOSE",
8489 Self::Cluster => "CLUSTER",
8490 Self::Coalesce => "COALESCE",
8491 Self::Collate => "COLLATE",
8492 Self::Collation => "COLLATION",
8493 Self::Column => "COLUMN",
8494 Self::Columns => "COLUMNS",
8495 Self::Comment => "COMMENT",
8496 Self::Comments => "COMMENTS",
8497 Self::Commit => "COMMIT",
8498 Self::Committed => "COMMITTED",
8499 Self::Compression => "COMPRESSION",
8500 Self::Concurrently => "CONCURRENTLY",
8501 Self::Conditional => "CONDITIONAL",
8502 Self::Configuration => "CONFIGURATION",
8503 Self::Conflict => "CONFLICT",
8504 Self::Connection => "CONNECTION",
8505 Self::Constraint => "CONSTRAINT",
8506 Self::Constraints => "CONSTRAINTS",
8507 Self::ContentP => "CONTENT_P",
8508 Self::ContinueP => "CONTINUE_P",
8509 Self::ConversionP => "CONVERSION_P",
8510 Self::Copy => "COPY",
8511 Self::Cost => "COST",
8512 Self::Create => "CREATE",
8513 Self::Cross => "CROSS",
8514 Self::Csv => "CSV",
8515 Self::Cube => "CUBE",
8516 Self::CurrentP => "CURRENT_P",
8517 Self::CurrentCatalog => "CURRENT_CATALOG",
8518 Self::CurrentDate => "CURRENT_DATE",
8519 Self::CurrentRole => "CURRENT_ROLE",
8520 Self::CurrentSchema => "CURRENT_SCHEMA",
8521 Self::CurrentTime => "CURRENT_TIME",
8522 Self::CurrentTimestamp => "CURRENT_TIMESTAMP",
8523 Self::CurrentUser => "CURRENT_USER",
8524 Self::Cursor => "CURSOR",
8525 Self::Cycle => "CYCLE",
8526 Self::DataP => "DATA_P",
8527 Self::Database => "DATABASE",
8528 Self::DayP => "DAY_P",
8529 Self::Deallocate => "DEALLOCATE",
8530 Self::Dec => "DEC",
8531 Self::DecimalP => "DECIMAL_P",
8532 Self::Declare => "DECLARE",
8533 Self::Default => "DEFAULT",
8534 Self::Defaults => "DEFAULTS",
8535 Self::Deferrable => "DEFERRABLE",
8536 Self::Deferred => "DEFERRED",
8537 Self::Definer => "DEFINER",
8538 Self::DeleteP => "DELETE_P",
8539 Self::Delimiter => "DELIMITER",
8540 Self::Delimiters => "DELIMITERS",
8541 Self::Depends => "DEPENDS",
8542 Self::Depth => "DEPTH",
8543 Self::Desc => "DESC",
8544 Self::Detach => "DETACH",
8545 Self::Dictionary => "DICTIONARY",
8546 Self::DisableP => "DISABLE_P",
8547 Self::Discard => "DISCARD",
8548 Self::Distinct => "DISTINCT",
8549 Self::Do => "DO",
8550 Self::DocumentP => "DOCUMENT_P",
8551 Self::DomainP => "DOMAIN_P",
8552 Self::DoubleP => "DOUBLE_P",
8553 Self::Drop => "DROP",
8554 Self::Each => "EACH",
8555 Self::Else => "ELSE",
8556 Self::EmptyP => "EMPTY_P",
8557 Self::EnableP => "ENABLE_P",
8558 Self::Encoding => "ENCODING",
8559 Self::Encrypted => "ENCRYPTED",
8560 Self::EndP => "END_P",
8561 Self::Enforced => "ENFORCED",
8562 Self::EnumP => "ENUM_P",
8563 Self::ErrorP => "ERROR_P",
8564 Self::Escape => "ESCAPE",
8565 Self::Event => "EVENT",
8566 Self::Except => "EXCEPT",
8567 Self::Exclude => "EXCLUDE",
8568 Self::Excluding => "EXCLUDING",
8569 Self::Exclusive => "EXCLUSIVE",
8570 Self::Execute => "EXECUTE",
8571 Self::Exists => "EXISTS",
8572 Self::Explain => "EXPLAIN",
8573 Self::Expression => "EXPRESSION",
8574 Self::Extension => "EXTENSION",
8575 Self::External => "EXTERNAL",
8576 Self::Extract => "EXTRACT",
8577 Self::FalseP => "FALSE_P",
8578 Self::Family => "FAMILY",
8579 Self::Fetch => "FETCH",
8580 Self::Filter => "FILTER",
8581 Self::Finalize => "FINALIZE",
8582 Self::FirstP => "FIRST_P",
8583 Self::FloatP => "FLOAT_P",
8584 Self::Following => "FOLLOWING",
8585 Self::For => "FOR",
8586 Self::Force => "FORCE",
8587 Self::Foreign => "FOREIGN",
8588 Self::Format => "FORMAT",
8589 Self::Forward => "FORWARD",
8590 Self::Freeze => "FREEZE",
8591 Self::From => "FROM",
8592 Self::Full => "FULL",
8593 Self::Function => "FUNCTION",
8594 Self::Functions => "FUNCTIONS",
8595 Self::Generated => "GENERATED",
8596 Self::Global => "GLOBAL",
8597 Self::Grant => "GRANT",
8598 Self::Granted => "GRANTED",
8599 Self::Greatest => "GREATEST",
8600 Self::GroupP => "GROUP_P",
8601 Self::Grouping => "GROUPING",
8602 Self::Groups => "GROUPS",
8603 Self::Handler => "HANDLER",
8604 Self::Having => "HAVING",
8605 Self::HeaderP => "HEADER_P",
8606 Self::Hold => "HOLD",
8607 Self::HourP => "HOUR_P",
8608 Self::IdentityP => "IDENTITY_P",
8609 Self::IfP => "IF_P",
8610 Self::Ilike => "ILIKE",
8611 Self::Immediate => "IMMEDIATE",
8612 Self::Immutable => "IMMUTABLE",
8613 Self::ImplicitP => "IMPLICIT_P",
8614 Self::ImportP => "IMPORT_P",
8615 Self::InP => "IN_P",
8616 Self::Include => "INCLUDE",
8617 Self::Including => "INCLUDING",
8618 Self::Increment => "INCREMENT",
8619 Self::Indent => "INDENT",
8620 Self::Index => "INDEX",
8621 Self::Indexes => "INDEXES",
8622 Self::Inherit => "INHERIT",
8623 Self::Inherits => "INHERITS",
8624 Self::Initially => "INITIALLY",
8625 Self::InlineP => "INLINE_P",
8626 Self::InnerP => "INNER_P",
8627 Self::Inout => "INOUT",
8628 Self::InputP => "INPUT_P",
8629 Self::Insensitive => "INSENSITIVE",
8630 Self::Insert => "INSERT",
8631 Self::Instead => "INSTEAD",
8632 Self::IntP => "INT_P",
8633 Self::Integer => "INTEGER",
8634 Self::Intersect => "INTERSECT",
8635 Self::Interval => "INTERVAL",
8636 Self::Into => "INTO",
8637 Self::Invoker => "INVOKER",
8638 Self::Is => "IS",
8639 Self::Isnull => "ISNULL",
8640 Self::Isolation => "ISOLATION",
8641 Self::Join => "JOIN",
8642 Self::Json => "JSON",
8643 Self::JsonArray => "JSON_ARRAY",
8644 Self::JsonArrayagg => "JSON_ARRAYAGG",
8645 Self::JsonExists => "JSON_EXISTS",
8646 Self::JsonObject => "JSON_OBJECT",
8647 Self::JsonObjectagg => "JSON_OBJECTAGG",
8648 Self::JsonQuery => "JSON_QUERY",
8649 Self::JsonScalar => "JSON_SCALAR",
8650 Self::JsonSerialize => "JSON_SERIALIZE",
8651 Self::JsonTable => "JSON_TABLE",
8652 Self::JsonValue => "JSON_VALUE",
8653 Self::Keep => "KEEP",
8654 Self::Key => "KEY",
8655 Self::Keys => "KEYS",
8656 Self::Label => "LABEL",
8657 Self::Language => "LANGUAGE",
8658 Self::LargeP => "LARGE_P",
8659 Self::LastP => "LAST_P",
8660 Self::LateralP => "LATERAL_P",
8661 Self::Leading => "LEADING",
8662 Self::Leakproof => "LEAKPROOF",
8663 Self::Least => "LEAST",
8664 Self::Left => "LEFT",
8665 Self::Level => "LEVEL",
8666 Self::Like => "LIKE",
8667 Self::Limit => "LIMIT",
8668 Self::Listen => "LISTEN",
8669 Self::Load => "LOAD",
8670 Self::Local => "LOCAL",
8671 Self::Localtime => "LOCALTIME",
8672 Self::Localtimestamp => "LOCALTIMESTAMP",
8673 Self::Location => "LOCATION",
8674 Self::LockP => "LOCK_P",
8675 Self::Locked => "LOCKED",
8676 Self::Logged => "LOGGED",
8677 Self::Mapping => "MAPPING",
8678 Self::Match => "MATCH",
8679 Self::Matched => "MATCHED",
8680 Self::Materialized => "MATERIALIZED",
8681 Self::Maxvalue => "MAXVALUE",
8682 Self::Merge => "MERGE",
8683 Self::MergeAction => "MERGE_ACTION",
8684 Self::Method => "METHOD",
8685 Self::MinuteP => "MINUTE_P",
8686 Self::Minvalue => "MINVALUE",
8687 Self::Mode => "MODE",
8688 Self::MonthP => "MONTH_P",
8689 Self::Move => "MOVE",
8690 Self::NameP => "NAME_P",
8691 Self::Names => "NAMES",
8692 Self::National => "NATIONAL",
8693 Self::Natural => "NATURAL",
8694 Self::Nchar => "NCHAR",
8695 Self::Nested => "NESTED",
8696 Self::New => "NEW",
8697 Self::Next => "NEXT",
8698 Self::Nfc => "NFC",
8699 Self::Nfd => "NFD",
8700 Self::Nfkc => "NFKC",
8701 Self::Nfkd => "NFKD",
8702 Self::No => "NO",
8703 Self::None => "NONE",
8704 Self::Normalize => "NORMALIZE",
8705 Self::Normalized => "NORMALIZED",
8706 Self::Not => "NOT",
8707 Self::Nothing => "NOTHING",
8708 Self::Notify => "NOTIFY",
8709 Self::Notnull => "NOTNULL",
8710 Self::Nowait => "NOWAIT",
8711 Self::NullP => "NULL_P",
8712 Self::Nullif => "NULLIF",
8713 Self::NullsP => "NULLS_P",
8714 Self::Numeric => "NUMERIC",
8715 Self::ObjectP => "OBJECT_P",
8716 Self::ObjectsP => "OBJECTS_P",
8717 Self::Of => "OF",
8718 Self::Off => "OFF",
8719 Self::Offset => "OFFSET",
8720 Self::Oids => "OIDS",
8721 Self::Old => "OLD",
8722 Self::Omit => "OMIT",
8723 Self::On => "ON",
8724 Self::Only => "ONLY",
8725 Self::Operator => "OPERATOR",
8726 Self::Option => "OPTION",
8727 Self::Options => "OPTIONS",
8728 Self::Or => "OR",
8729 Self::Order => "ORDER",
8730 Self::Ordinality => "ORDINALITY",
8731 Self::Others => "OTHERS",
8732 Self::OutP => "OUT_P",
8733 Self::OuterP => "OUTER_P",
8734 Self::Over => "OVER",
8735 Self::Overlaps => "OVERLAPS",
8736 Self::Overlay => "OVERLAY",
8737 Self::Overriding => "OVERRIDING",
8738 Self::Owned => "OWNED",
8739 Self::Owner => "OWNER",
8740 Self::Parallel => "PARALLEL",
8741 Self::Parameter => "PARAMETER",
8742 Self::Parser => "PARSER",
8743 Self::Partial => "PARTIAL",
8744 Self::Partition => "PARTITION",
8745 Self::Passing => "PASSING",
8746 Self::Password => "PASSWORD",
8747 Self::Path => "PATH",
8748 Self::Period => "PERIOD",
8749 Self::Placing => "PLACING",
8750 Self::Plan => "PLAN",
8751 Self::Plans => "PLANS",
8752 Self::Policy => "POLICY",
8753 Self::Position => "POSITION",
8754 Self::Preceding => "PRECEDING",
8755 Self::Precision => "PRECISION",
8756 Self::Preserve => "PRESERVE",
8757 Self::Prepare => "PREPARE",
8758 Self::Prepared => "PREPARED",
8759 Self::Primary => "PRIMARY",
8760 Self::Prior => "PRIOR",
8761 Self::Privileges => "PRIVILEGES",
8762 Self::Procedural => "PROCEDURAL",
8763 Self::Procedure => "PROCEDURE",
8764 Self::Procedures => "PROCEDURES",
8765 Self::Program => "PROGRAM",
8766 Self::Publication => "PUBLICATION",
8767 Self::Quote => "QUOTE",
8768 Self::Quotes => "QUOTES",
8769 Self::Range => "RANGE",
8770 Self::Read => "READ",
8771 Self::Real => "REAL",
8772 Self::Reassign => "REASSIGN",
8773 Self::Recursive => "RECURSIVE",
8774 Self::RefP => "REF_P",
8775 Self::References => "REFERENCES",
8776 Self::Referencing => "REFERENCING",
8777 Self::Refresh => "REFRESH",
8778 Self::Reindex => "REINDEX",
8779 Self::RelativeP => "RELATIVE_P",
8780 Self::Release => "RELEASE",
8781 Self::Rename => "RENAME",
8782 Self::Repeatable => "REPEATABLE",
8783 Self::Replace => "REPLACE",
8784 Self::Replica => "REPLICA",
8785 Self::Reset => "RESET",
8786 Self::Restart => "RESTART",
8787 Self::Restrict => "RESTRICT",
8788 Self::Return => "RETURN",
8789 Self::Returning => "RETURNING",
8790 Self::Returns => "RETURNS",
8791 Self::Revoke => "REVOKE",
8792 Self::Right => "RIGHT",
8793 Self::Role => "ROLE",
8794 Self::Rollback => "ROLLBACK",
8795 Self::Rollup => "ROLLUP",
8796 Self::Routine => "ROUTINE",
8797 Self::Routines => "ROUTINES",
8798 Self::Row => "ROW",
8799 Self::Rows => "ROWS",
8800 Self::Rule => "RULE",
8801 Self::Savepoint => "SAVEPOINT",
8802 Self::Scalar => "SCALAR",
8803 Self::Schema => "SCHEMA",
8804 Self::Schemas => "SCHEMAS",
8805 Self::Scroll => "SCROLL",
8806 Self::Search => "SEARCH",
8807 Self::SecondP => "SECOND_P",
8808 Self::Security => "SECURITY",
8809 Self::Select => "SELECT",
8810 Self::Sequence => "SEQUENCE",
8811 Self::Sequences => "SEQUENCES",
8812 Self::Serializable => "SERIALIZABLE",
8813 Self::Server => "SERVER",
8814 Self::Session => "SESSION",
8815 Self::SessionUser => "SESSION_USER",
8816 Self::Set => "SET",
8817 Self::Sets => "SETS",
8818 Self::Setof => "SETOF",
8819 Self::Share => "SHARE",
8820 Self::Show => "SHOW",
8821 Self::Similar => "SIMILAR",
8822 Self::Simple => "SIMPLE",
8823 Self::Skip => "SKIP",
8824 Self::Smallint => "SMALLINT",
8825 Self::Snapshot => "SNAPSHOT",
8826 Self::Some => "SOME",
8827 Self::Source => "SOURCE",
8828 Self::SqlP => "SQL_P",
8829 Self::Stable => "STABLE",
8830 Self::StandaloneP => "STANDALONE_P",
8831 Self::Start => "START",
8832 Self::Statement => "STATEMENT",
8833 Self::Statistics => "STATISTICS",
8834 Self::Stdin => "STDIN",
8835 Self::Stdout => "STDOUT",
8836 Self::Storage => "STORAGE",
8837 Self::Stored => "STORED",
8838 Self::StrictP => "STRICT_P",
8839 Self::StringP => "STRING_P",
8840 Self::StripP => "STRIP_P",
8841 Self::Subscription => "SUBSCRIPTION",
8842 Self::Substring => "SUBSTRING",
8843 Self::Support => "SUPPORT",
8844 Self::Symmetric => "SYMMETRIC",
8845 Self::Sysid => "SYSID",
8846 Self::SystemP => "SYSTEM_P",
8847 Self::SystemUser => "SYSTEM_USER",
8848 Self::Table => "TABLE",
8849 Self::Tables => "TABLES",
8850 Self::Tablesample => "TABLESAMPLE",
8851 Self::Tablespace => "TABLESPACE",
8852 Self::Target => "TARGET",
8853 Self::Temp => "TEMP",
8854 Self::Template => "TEMPLATE",
8855 Self::Temporary => "TEMPORARY",
8856 Self::TextP => "TEXT_P",
8857 Self::Then => "THEN",
8858 Self::Ties => "TIES",
8859 Self::Time => "TIME",
8860 Self::Timestamp => "TIMESTAMP",
8861 Self::To => "TO",
8862 Self::Trailing => "TRAILING",
8863 Self::Transaction => "TRANSACTION",
8864 Self::Transform => "TRANSFORM",
8865 Self::Treat => "TREAT",
8866 Self::Trigger => "TRIGGER",
8867 Self::Trim => "TRIM",
8868 Self::TrueP => "TRUE_P",
8869 Self::Truncate => "TRUNCATE",
8870 Self::Trusted => "TRUSTED",
8871 Self::TypeP => "TYPE_P",
8872 Self::TypesP => "TYPES_P",
8873 Self::Uescape => "UESCAPE",
8874 Self::Unbounded => "UNBOUNDED",
8875 Self::Unconditional => "UNCONDITIONAL",
8876 Self::Uncommitted => "UNCOMMITTED",
8877 Self::Unencrypted => "UNENCRYPTED",
8878 Self::Union => "UNION",
8879 Self::Unique => "UNIQUE",
8880 Self::Unknown => "UNKNOWN",
8881 Self::Unlisten => "UNLISTEN",
8882 Self::Unlogged => "UNLOGGED",
8883 Self::Until => "UNTIL",
8884 Self::Update => "UPDATE",
8885 Self::User => "USER",
8886 Self::Using => "USING",
8887 Self::Vacuum => "VACUUM",
8888 Self::Valid => "VALID",
8889 Self::Validate => "VALIDATE",
8890 Self::Validator => "VALIDATOR",
8891 Self::ValueP => "VALUE_P",
8892 Self::Values => "VALUES",
8893 Self::Varchar => "VARCHAR",
8894 Self::Variadic => "VARIADIC",
8895 Self::Varying => "VARYING",
8896 Self::Verbose => "VERBOSE",
8897 Self::VersionP => "VERSION_P",
8898 Self::View => "VIEW",
8899 Self::Views => "VIEWS",
8900 Self::Virtual => "VIRTUAL",
8901 Self::Volatile => "VOLATILE",
8902 Self::When => "WHEN",
8903 Self::Where => "WHERE",
8904 Self::WhitespaceP => "WHITESPACE_P",
8905 Self::Window => "WINDOW",
8906 Self::With => "WITH",
8907 Self::Within => "WITHIN",
8908 Self::Without => "WITHOUT",
8909 Self::Work => "WORK",
8910 Self::Wrapper => "WRAPPER",
8911 Self::Write => "WRITE",
8912 Self::XmlP => "XML_P",
8913 Self::Xmlattributes => "XMLATTRIBUTES",
8914 Self::Xmlconcat => "XMLCONCAT",
8915 Self::Xmlelement => "XMLELEMENT",
8916 Self::Xmlexists => "XMLEXISTS",
8917 Self::Xmlforest => "XMLFOREST",
8918 Self::Xmlnamespaces => "XMLNAMESPACES",
8919 Self::Xmlparse => "XMLPARSE",
8920 Self::Xmlpi => "XMLPI",
8921 Self::Xmlroot => "XMLROOT",
8922 Self::Xmlserialize => "XMLSERIALIZE",
8923 Self::Xmltable => "XMLTABLE",
8924 Self::YearP => "YEAR_P",
8925 Self::YesP => "YES_P",
8926 Self::Zone => "ZONE",
8927 Self::FormatLa => "FORMAT_LA",
8928 Self::NotLa => "NOT_LA",
8929 Self::NullsLa => "NULLS_LA",
8930 Self::WithLa => "WITH_LA",
8931 Self::WithoutLa => "WITHOUT_LA",
8932 Self::ModeTypeName => "MODE_TYPE_NAME",
8933 Self::ModePlpgsqlExpr => "MODE_PLPGSQL_EXPR",
8934 Self::ModePlpgsqlAssign1 => "MODE_PLPGSQL_ASSIGN1",
8935 Self::ModePlpgsqlAssign2 => "MODE_PLPGSQL_ASSIGN2",
8936 Self::ModePlpgsqlAssign3 => "MODE_PLPGSQL_ASSIGN3",
8937 Self::Uminus => "UMINUS",
8938 }
8939 }
8940 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
8942 match value {
8943 "NUL" => Some(Self::Nul),
8944 "ASCII_36" => Some(Self::Ascii36),
8945 "ASCII_37" => Some(Self::Ascii37),
8946 "ASCII_40" => Some(Self::Ascii40),
8947 "ASCII_41" => Some(Self::Ascii41),
8948 "ASCII_42" => Some(Self::Ascii42),
8949 "ASCII_43" => Some(Self::Ascii43),
8950 "ASCII_44" => Some(Self::Ascii44),
8951 "ASCII_45" => Some(Self::Ascii45),
8952 "ASCII_46" => Some(Self::Ascii46),
8953 "ASCII_47" => Some(Self::Ascii47),
8954 "ASCII_58" => Some(Self::Ascii58),
8955 "ASCII_59" => Some(Self::Ascii59),
8956 "ASCII_60" => Some(Self::Ascii60),
8957 "ASCII_61" => Some(Self::Ascii61),
8958 "ASCII_62" => Some(Self::Ascii62),
8959 "ASCII_63" => Some(Self::Ascii63),
8960 "ASCII_91" => Some(Self::Ascii91),
8961 "ASCII_92" => Some(Self::Ascii92),
8962 "ASCII_93" => Some(Self::Ascii93),
8963 "ASCII_94" => Some(Self::Ascii94),
8964 "IDENT" => Some(Self::Ident),
8965 "UIDENT" => Some(Self::Uident),
8966 "FCONST" => Some(Self::Fconst),
8967 "SCONST" => Some(Self::Sconst),
8968 "USCONST" => Some(Self::Usconst),
8969 "BCONST" => Some(Self::Bconst),
8970 "XCONST" => Some(Self::Xconst),
8971 "Op" => Some(Self::Op),
8972 "ICONST" => Some(Self::Iconst),
8973 "PARAM" => Some(Self::Param),
8974 "TYPECAST" => Some(Self::Typecast),
8975 "DOT_DOT" => Some(Self::DotDot),
8976 "COLON_EQUALS" => Some(Self::ColonEquals),
8977 "EQUALS_GREATER" => Some(Self::EqualsGreater),
8978 "LESS_EQUALS" => Some(Self::LessEquals),
8979 "GREATER_EQUALS" => Some(Self::GreaterEquals),
8980 "NOT_EQUALS" => Some(Self::NotEquals),
8981 "SQL_COMMENT" => Some(Self::SqlComment),
8982 "C_COMMENT" => Some(Self::CComment),
8983 "ABORT_P" => Some(Self::AbortP),
8984 "ABSENT" => Some(Self::Absent),
8985 "ABSOLUTE_P" => Some(Self::AbsoluteP),
8986 "ACCESS" => Some(Self::Access),
8987 "ACTION" => Some(Self::Action),
8988 "ADD_P" => Some(Self::AddP),
8989 "ADMIN" => Some(Self::Admin),
8990 "AFTER" => Some(Self::After),
8991 "AGGREGATE" => Some(Self::Aggregate),
8992 "ALL" => Some(Self::All),
8993 "ALSO" => Some(Self::Also),
8994 "ALTER" => Some(Self::Alter),
8995 "ALWAYS" => Some(Self::Always),
8996 "ANALYSE" => Some(Self::Analyse),
8997 "ANALYZE" => Some(Self::Analyze),
8998 "AND" => Some(Self::And),
8999 "ANY" => Some(Self::Any),
9000 "ARRAY" => Some(Self::Array),
9001 "AS" => Some(Self::As),
9002 "ASC" => Some(Self::Asc),
9003 "ASENSITIVE" => Some(Self::Asensitive),
9004 "ASSERTION" => Some(Self::Assertion),
9005 "ASSIGNMENT" => Some(Self::Assignment),
9006 "ASYMMETRIC" => Some(Self::Asymmetric),
9007 "ATOMIC" => Some(Self::Atomic),
9008 "AT" => Some(Self::At),
9009 "ATTACH" => Some(Self::Attach),
9010 "ATTRIBUTE" => Some(Self::Attribute),
9011 "AUTHORIZATION" => Some(Self::Authorization),
9012 "BACKWARD" => Some(Self::Backward),
9013 "BEFORE" => Some(Self::Before),
9014 "BEGIN_P" => Some(Self::BeginP),
9015 "BETWEEN" => Some(Self::Between),
9016 "BIGINT" => Some(Self::Bigint),
9017 "BINARY" => Some(Self::Binary),
9018 "BIT" => Some(Self::Bit),
9019 "BOOLEAN_P" => Some(Self::BooleanP),
9020 "BOTH" => Some(Self::Both),
9021 "BREADTH" => Some(Self::Breadth),
9022 "BY" => Some(Self::By),
9023 "CACHE" => Some(Self::Cache),
9024 "CALL" => Some(Self::Call),
9025 "CALLED" => Some(Self::Called),
9026 "CASCADE" => Some(Self::Cascade),
9027 "CASCADED" => Some(Self::Cascaded),
9028 "CASE" => Some(Self::Case),
9029 "CAST" => Some(Self::Cast),
9030 "CATALOG_P" => Some(Self::CatalogP),
9031 "CHAIN" => Some(Self::Chain),
9032 "CHAR_P" => Some(Self::CharP),
9033 "CHARACTER" => Some(Self::Character),
9034 "CHARACTERISTICS" => Some(Self::Characteristics),
9035 "CHECK" => Some(Self::Check),
9036 "CHECKPOINT" => Some(Self::Checkpoint),
9037 "CLASS" => Some(Self::Class),
9038 "CLOSE" => Some(Self::Close),
9039 "CLUSTER" => Some(Self::Cluster),
9040 "COALESCE" => Some(Self::Coalesce),
9041 "COLLATE" => Some(Self::Collate),
9042 "COLLATION" => Some(Self::Collation),
9043 "COLUMN" => Some(Self::Column),
9044 "COLUMNS" => Some(Self::Columns),
9045 "COMMENT" => Some(Self::Comment),
9046 "COMMENTS" => Some(Self::Comments),
9047 "COMMIT" => Some(Self::Commit),
9048 "COMMITTED" => Some(Self::Committed),
9049 "COMPRESSION" => Some(Self::Compression),
9050 "CONCURRENTLY" => Some(Self::Concurrently),
9051 "CONDITIONAL" => Some(Self::Conditional),
9052 "CONFIGURATION" => Some(Self::Configuration),
9053 "CONFLICT" => Some(Self::Conflict),
9054 "CONNECTION" => Some(Self::Connection),
9055 "CONSTRAINT" => Some(Self::Constraint),
9056 "CONSTRAINTS" => Some(Self::Constraints),
9057 "CONTENT_P" => Some(Self::ContentP),
9058 "CONTINUE_P" => Some(Self::ContinueP),
9059 "CONVERSION_P" => Some(Self::ConversionP),
9060 "COPY" => Some(Self::Copy),
9061 "COST" => Some(Self::Cost),
9062 "CREATE" => Some(Self::Create),
9063 "CROSS" => Some(Self::Cross),
9064 "CSV" => Some(Self::Csv),
9065 "CUBE" => Some(Self::Cube),
9066 "CURRENT_P" => Some(Self::CurrentP),
9067 "CURRENT_CATALOG" => Some(Self::CurrentCatalog),
9068 "CURRENT_DATE" => Some(Self::CurrentDate),
9069 "CURRENT_ROLE" => Some(Self::CurrentRole),
9070 "CURRENT_SCHEMA" => Some(Self::CurrentSchema),
9071 "CURRENT_TIME" => Some(Self::CurrentTime),
9072 "CURRENT_TIMESTAMP" => Some(Self::CurrentTimestamp),
9073 "CURRENT_USER" => Some(Self::CurrentUser),
9074 "CURSOR" => Some(Self::Cursor),
9075 "CYCLE" => Some(Self::Cycle),
9076 "DATA_P" => Some(Self::DataP),
9077 "DATABASE" => Some(Self::Database),
9078 "DAY_P" => Some(Self::DayP),
9079 "DEALLOCATE" => Some(Self::Deallocate),
9080 "DEC" => Some(Self::Dec),
9081 "DECIMAL_P" => Some(Self::DecimalP),
9082 "DECLARE" => Some(Self::Declare),
9083 "DEFAULT" => Some(Self::Default),
9084 "DEFAULTS" => Some(Self::Defaults),
9085 "DEFERRABLE" => Some(Self::Deferrable),
9086 "DEFERRED" => Some(Self::Deferred),
9087 "DEFINER" => Some(Self::Definer),
9088 "DELETE_P" => Some(Self::DeleteP),
9089 "DELIMITER" => Some(Self::Delimiter),
9090 "DELIMITERS" => Some(Self::Delimiters),
9091 "DEPENDS" => Some(Self::Depends),
9092 "DEPTH" => Some(Self::Depth),
9093 "DESC" => Some(Self::Desc),
9094 "DETACH" => Some(Self::Detach),
9095 "DICTIONARY" => Some(Self::Dictionary),
9096 "DISABLE_P" => Some(Self::DisableP),
9097 "DISCARD" => Some(Self::Discard),
9098 "DISTINCT" => Some(Self::Distinct),
9099 "DO" => Some(Self::Do),
9100 "DOCUMENT_P" => Some(Self::DocumentP),
9101 "DOMAIN_P" => Some(Self::DomainP),
9102 "DOUBLE_P" => Some(Self::DoubleP),
9103 "DROP" => Some(Self::Drop),
9104 "EACH" => Some(Self::Each),
9105 "ELSE" => Some(Self::Else),
9106 "EMPTY_P" => Some(Self::EmptyP),
9107 "ENABLE_P" => Some(Self::EnableP),
9108 "ENCODING" => Some(Self::Encoding),
9109 "ENCRYPTED" => Some(Self::Encrypted),
9110 "END_P" => Some(Self::EndP),
9111 "ENFORCED" => Some(Self::Enforced),
9112 "ENUM_P" => Some(Self::EnumP),
9113 "ERROR_P" => Some(Self::ErrorP),
9114 "ESCAPE" => Some(Self::Escape),
9115 "EVENT" => Some(Self::Event),
9116 "EXCEPT" => Some(Self::Except),
9117 "EXCLUDE" => Some(Self::Exclude),
9118 "EXCLUDING" => Some(Self::Excluding),
9119 "EXCLUSIVE" => Some(Self::Exclusive),
9120 "EXECUTE" => Some(Self::Execute),
9121 "EXISTS" => Some(Self::Exists),
9122 "EXPLAIN" => Some(Self::Explain),
9123 "EXPRESSION" => Some(Self::Expression),
9124 "EXTENSION" => Some(Self::Extension),
9125 "EXTERNAL" => Some(Self::External),
9126 "EXTRACT" => Some(Self::Extract),
9127 "FALSE_P" => Some(Self::FalseP),
9128 "FAMILY" => Some(Self::Family),
9129 "FETCH" => Some(Self::Fetch),
9130 "FILTER" => Some(Self::Filter),
9131 "FINALIZE" => Some(Self::Finalize),
9132 "FIRST_P" => Some(Self::FirstP),
9133 "FLOAT_P" => Some(Self::FloatP),
9134 "FOLLOWING" => Some(Self::Following),
9135 "FOR" => Some(Self::For),
9136 "FORCE" => Some(Self::Force),
9137 "FOREIGN" => Some(Self::Foreign),
9138 "FORMAT" => Some(Self::Format),
9139 "FORWARD" => Some(Self::Forward),
9140 "FREEZE" => Some(Self::Freeze),
9141 "FROM" => Some(Self::From),
9142 "FULL" => Some(Self::Full),
9143 "FUNCTION" => Some(Self::Function),
9144 "FUNCTIONS" => Some(Self::Functions),
9145 "GENERATED" => Some(Self::Generated),
9146 "GLOBAL" => Some(Self::Global),
9147 "GRANT" => Some(Self::Grant),
9148 "GRANTED" => Some(Self::Granted),
9149 "GREATEST" => Some(Self::Greatest),
9150 "GROUP_P" => Some(Self::GroupP),
9151 "GROUPING" => Some(Self::Grouping),
9152 "GROUPS" => Some(Self::Groups),
9153 "HANDLER" => Some(Self::Handler),
9154 "HAVING" => Some(Self::Having),
9155 "HEADER_P" => Some(Self::HeaderP),
9156 "HOLD" => Some(Self::Hold),
9157 "HOUR_P" => Some(Self::HourP),
9158 "IDENTITY_P" => Some(Self::IdentityP),
9159 "IF_P" => Some(Self::IfP),
9160 "ILIKE" => Some(Self::Ilike),
9161 "IMMEDIATE" => Some(Self::Immediate),
9162 "IMMUTABLE" => Some(Self::Immutable),
9163 "IMPLICIT_P" => Some(Self::ImplicitP),
9164 "IMPORT_P" => Some(Self::ImportP),
9165 "IN_P" => Some(Self::InP),
9166 "INCLUDE" => Some(Self::Include),
9167 "INCLUDING" => Some(Self::Including),
9168 "INCREMENT" => Some(Self::Increment),
9169 "INDENT" => Some(Self::Indent),
9170 "INDEX" => Some(Self::Index),
9171 "INDEXES" => Some(Self::Indexes),
9172 "INHERIT" => Some(Self::Inherit),
9173 "INHERITS" => Some(Self::Inherits),
9174 "INITIALLY" => Some(Self::Initially),
9175 "INLINE_P" => Some(Self::InlineP),
9176 "INNER_P" => Some(Self::InnerP),
9177 "INOUT" => Some(Self::Inout),
9178 "INPUT_P" => Some(Self::InputP),
9179 "INSENSITIVE" => Some(Self::Insensitive),
9180 "INSERT" => Some(Self::Insert),
9181 "INSTEAD" => Some(Self::Instead),
9182 "INT_P" => Some(Self::IntP),
9183 "INTEGER" => Some(Self::Integer),
9184 "INTERSECT" => Some(Self::Intersect),
9185 "INTERVAL" => Some(Self::Interval),
9186 "INTO" => Some(Self::Into),
9187 "INVOKER" => Some(Self::Invoker),
9188 "IS" => Some(Self::Is),
9189 "ISNULL" => Some(Self::Isnull),
9190 "ISOLATION" => Some(Self::Isolation),
9191 "JOIN" => Some(Self::Join),
9192 "JSON" => Some(Self::Json),
9193 "JSON_ARRAY" => Some(Self::JsonArray),
9194 "JSON_ARRAYAGG" => Some(Self::JsonArrayagg),
9195 "JSON_EXISTS" => Some(Self::JsonExists),
9196 "JSON_OBJECT" => Some(Self::JsonObject),
9197 "JSON_OBJECTAGG" => Some(Self::JsonObjectagg),
9198 "JSON_QUERY" => Some(Self::JsonQuery),
9199 "JSON_SCALAR" => Some(Self::JsonScalar),
9200 "JSON_SERIALIZE" => Some(Self::JsonSerialize),
9201 "JSON_TABLE" => Some(Self::JsonTable),
9202 "JSON_VALUE" => Some(Self::JsonValue),
9203 "KEEP" => Some(Self::Keep),
9204 "KEY" => Some(Self::Key),
9205 "KEYS" => Some(Self::Keys),
9206 "LABEL" => Some(Self::Label),
9207 "LANGUAGE" => Some(Self::Language),
9208 "LARGE_P" => Some(Self::LargeP),
9209 "LAST_P" => Some(Self::LastP),
9210 "LATERAL_P" => Some(Self::LateralP),
9211 "LEADING" => Some(Self::Leading),
9212 "LEAKPROOF" => Some(Self::Leakproof),
9213 "LEAST" => Some(Self::Least),
9214 "LEFT" => Some(Self::Left),
9215 "LEVEL" => Some(Self::Level),
9216 "LIKE" => Some(Self::Like),
9217 "LIMIT" => Some(Self::Limit),
9218 "LISTEN" => Some(Self::Listen),
9219 "LOAD" => Some(Self::Load),
9220 "LOCAL" => Some(Self::Local),
9221 "LOCALTIME" => Some(Self::Localtime),
9222 "LOCALTIMESTAMP" => Some(Self::Localtimestamp),
9223 "LOCATION" => Some(Self::Location),
9224 "LOCK_P" => Some(Self::LockP),
9225 "LOCKED" => Some(Self::Locked),
9226 "LOGGED" => Some(Self::Logged),
9227 "MAPPING" => Some(Self::Mapping),
9228 "MATCH" => Some(Self::Match),
9229 "MATCHED" => Some(Self::Matched),
9230 "MATERIALIZED" => Some(Self::Materialized),
9231 "MAXVALUE" => Some(Self::Maxvalue),
9232 "MERGE" => Some(Self::Merge),
9233 "MERGE_ACTION" => Some(Self::MergeAction),
9234 "METHOD" => Some(Self::Method),
9235 "MINUTE_P" => Some(Self::MinuteP),
9236 "MINVALUE" => Some(Self::Minvalue),
9237 "MODE" => Some(Self::Mode),
9238 "MONTH_P" => Some(Self::MonthP),
9239 "MOVE" => Some(Self::Move),
9240 "NAME_P" => Some(Self::NameP),
9241 "NAMES" => Some(Self::Names),
9242 "NATIONAL" => Some(Self::National),
9243 "NATURAL" => Some(Self::Natural),
9244 "NCHAR" => Some(Self::Nchar),
9245 "NESTED" => Some(Self::Nested),
9246 "NEW" => Some(Self::New),
9247 "NEXT" => Some(Self::Next),
9248 "NFC" => Some(Self::Nfc),
9249 "NFD" => Some(Self::Nfd),
9250 "NFKC" => Some(Self::Nfkc),
9251 "NFKD" => Some(Self::Nfkd),
9252 "NO" => Some(Self::No),
9253 "NONE" => Some(Self::None),
9254 "NORMALIZE" => Some(Self::Normalize),
9255 "NORMALIZED" => Some(Self::Normalized),
9256 "NOT" => Some(Self::Not),
9257 "NOTHING" => Some(Self::Nothing),
9258 "NOTIFY" => Some(Self::Notify),
9259 "NOTNULL" => Some(Self::Notnull),
9260 "NOWAIT" => Some(Self::Nowait),
9261 "NULL_P" => Some(Self::NullP),
9262 "NULLIF" => Some(Self::Nullif),
9263 "NULLS_P" => Some(Self::NullsP),
9264 "NUMERIC" => Some(Self::Numeric),
9265 "OBJECT_P" => Some(Self::ObjectP),
9266 "OBJECTS_P" => Some(Self::ObjectsP),
9267 "OF" => Some(Self::Of),
9268 "OFF" => Some(Self::Off),
9269 "OFFSET" => Some(Self::Offset),
9270 "OIDS" => Some(Self::Oids),
9271 "OLD" => Some(Self::Old),
9272 "OMIT" => Some(Self::Omit),
9273 "ON" => Some(Self::On),
9274 "ONLY" => Some(Self::Only),
9275 "OPERATOR" => Some(Self::Operator),
9276 "OPTION" => Some(Self::Option),
9277 "OPTIONS" => Some(Self::Options),
9278 "OR" => Some(Self::Or),
9279 "ORDER" => Some(Self::Order),
9280 "ORDINALITY" => Some(Self::Ordinality),
9281 "OTHERS" => Some(Self::Others),
9282 "OUT_P" => Some(Self::OutP),
9283 "OUTER_P" => Some(Self::OuterP),
9284 "OVER" => Some(Self::Over),
9285 "OVERLAPS" => Some(Self::Overlaps),
9286 "OVERLAY" => Some(Self::Overlay),
9287 "OVERRIDING" => Some(Self::Overriding),
9288 "OWNED" => Some(Self::Owned),
9289 "OWNER" => Some(Self::Owner),
9290 "PARALLEL" => Some(Self::Parallel),
9291 "PARAMETER" => Some(Self::Parameter),
9292 "PARSER" => Some(Self::Parser),
9293 "PARTIAL" => Some(Self::Partial),
9294 "PARTITION" => Some(Self::Partition),
9295 "PASSING" => Some(Self::Passing),
9296 "PASSWORD" => Some(Self::Password),
9297 "PATH" => Some(Self::Path),
9298 "PERIOD" => Some(Self::Period),
9299 "PLACING" => Some(Self::Placing),
9300 "PLAN" => Some(Self::Plan),
9301 "PLANS" => Some(Self::Plans),
9302 "POLICY" => Some(Self::Policy),
9303 "POSITION" => Some(Self::Position),
9304 "PRECEDING" => Some(Self::Preceding),
9305 "PRECISION" => Some(Self::Precision),
9306 "PRESERVE" => Some(Self::Preserve),
9307 "PREPARE" => Some(Self::Prepare),
9308 "PREPARED" => Some(Self::Prepared),
9309 "PRIMARY" => Some(Self::Primary),
9310 "PRIOR" => Some(Self::Prior),
9311 "PRIVILEGES" => Some(Self::Privileges),
9312 "PROCEDURAL" => Some(Self::Procedural),
9313 "PROCEDURE" => Some(Self::Procedure),
9314 "PROCEDURES" => Some(Self::Procedures),
9315 "PROGRAM" => Some(Self::Program),
9316 "PUBLICATION" => Some(Self::Publication),
9317 "QUOTE" => Some(Self::Quote),
9318 "QUOTES" => Some(Self::Quotes),
9319 "RANGE" => Some(Self::Range),
9320 "READ" => Some(Self::Read),
9321 "REAL" => Some(Self::Real),
9322 "REASSIGN" => Some(Self::Reassign),
9323 "RECURSIVE" => Some(Self::Recursive),
9324 "REF_P" => Some(Self::RefP),
9325 "REFERENCES" => Some(Self::References),
9326 "REFERENCING" => Some(Self::Referencing),
9327 "REFRESH" => Some(Self::Refresh),
9328 "REINDEX" => Some(Self::Reindex),
9329 "RELATIVE_P" => Some(Self::RelativeP),
9330 "RELEASE" => Some(Self::Release),
9331 "RENAME" => Some(Self::Rename),
9332 "REPEATABLE" => Some(Self::Repeatable),
9333 "REPLACE" => Some(Self::Replace),
9334 "REPLICA" => Some(Self::Replica),
9335 "RESET" => Some(Self::Reset),
9336 "RESTART" => Some(Self::Restart),
9337 "RESTRICT" => Some(Self::Restrict),
9338 "RETURN" => Some(Self::Return),
9339 "RETURNING" => Some(Self::Returning),
9340 "RETURNS" => Some(Self::Returns),
9341 "REVOKE" => Some(Self::Revoke),
9342 "RIGHT" => Some(Self::Right),
9343 "ROLE" => Some(Self::Role),
9344 "ROLLBACK" => Some(Self::Rollback),
9345 "ROLLUP" => Some(Self::Rollup),
9346 "ROUTINE" => Some(Self::Routine),
9347 "ROUTINES" => Some(Self::Routines),
9348 "ROW" => Some(Self::Row),
9349 "ROWS" => Some(Self::Rows),
9350 "RULE" => Some(Self::Rule),
9351 "SAVEPOINT" => Some(Self::Savepoint),
9352 "SCALAR" => Some(Self::Scalar),
9353 "SCHEMA" => Some(Self::Schema),
9354 "SCHEMAS" => Some(Self::Schemas),
9355 "SCROLL" => Some(Self::Scroll),
9356 "SEARCH" => Some(Self::Search),
9357 "SECOND_P" => Some(Self::SecondP),
9358 "SECURITY" => Some(Self::Security),
9359 "SELECT" => Some(Self::Select),
9360 "SEQUENCE" => Some(Self::Sequence),
9361 "SEQUENCES" => Some(Self::Sequences),
9362 "SERIALIZABLE" => Some(Self::Serializable),
9363 "SERVER" => Some(Self::Server),
9364 "SESSION" => Some(Self::Session),
9365 "SESSION_USER" => Some(Self::SessionUser),
9366 "SET" => Some(Self::Set),
9367 "SETS" => Some(Self::Sets),
9368 "SETOF" => Some(Self::Setof),
9369 "SHARE" => Some(Self::Share),
9370 "SHOW" => Some(Self::Show),
9371 "SIMILAR" => Some(Self::Similar),
9372 "SIMPLE" => Some(Self::Simple),
9373 "SKIP" => Some(Self::Skip),
9374 "SMALLINT" => Some(Self::Smallint),
9375 "SNAPSHOT" => Some(Self::Snapshot),
9376 "SOME" => Some(Self::Some),
9377 "SOURCE" => Some(Self::Source),
9378 "SQL_P" => Some(Self::SqlP),
9379 "STABLE" => Some(Self::Stable),
9380 "STANDALONE_P" => Some(Self::StandaloneP),
9381 "START" => Some(Self::Start),
9382 "STATEMENT" => Some(Self::Statement),
9383 "STATISTICS" => Some(Self::Statistics),
9384 "STDIN" => Some(Self::Stdin),
9385 "STDOUT" => Some(Self::Stdout),
9386 "STORAGE" => Some(Self::Storage),
9387 "STORED" => Some(Self::Stored),
9388 "STRICT_P" => Some(Self::StrictP),
9389 "STRING_P" => Some(Self::StringP),
9390 "STRIP_P" => Some(Self::StripP),
9391 "SUBSCRIPTION" => Some(Self::Subscription),
9392 "SUBSTRING" => Some(Self::Substring),
9393 "SUPPORT" => Some(Self::Support),
9394 "SYMMETRIC" => Some(Self::Symmetric),
9395 "SYSID" => Some(Self::Sysid),
9396 "SYSTEM_P" => Some(Self::SystemP),
9397 "SYSTEM_USER" => Some(Self::SystemUser),
9398 "TABLE" => Some(Self::Table),
9399 "TABLES" => Some(Self::Tables),
9400 "TABLESAMPLE" => Some(Self::Tablesample),
9401 "TABLESPACE" => Some(Self::Tablespace),
9402 "TARGET" => Some(Self::Target),
9403 "TEMP" => Some(Self::Temp),
9404 "TEMPLATE" => Some(Self::Template),
9405 "TEMPORARY" => Some(Self::Temporary),
9406 "TEXT_P" => Some(Self::TextP),
9407 "THEN" => Some(Self::Then),
9408 "TIES" => Some(Self::Ties),
9409 "TIME" => Some(Self::Time),
9410 "TIMESTAMP" => Some(Self::Timestamp),
9411 "TO" => Some(Self::To),
9412 "TRAILING" => Some(Self::Trailing),
9413 "TRANSACTION" => Some(Self::Transaction),
9414 "TRANSFORM" => Some(Self::Transform),
9415 "TREAT" => Some(Self::Treat),
9416 "TRIGGER" => Some(Self::Trigger),
9417 "TRIM" => Some(Self::Trim),
9418 "TRUE_P" => Some(Self::TrueP),
9419 "TRUNCATE" => Some(Self::Truncate),
9420 "TRUSTED" => Some(Self::Trusted),
9421 "TYPE_P" => Some(Self::TypeP),
9422 "TYPES_P" => Some(Self::TypesP),
9423 "UESCAPE" => Some(Self::Uescape),
9424 "UNBOUNDED" => Some(Self::Unbounded),
9425 "UNCONDITIONAL" => Some(Self::Unconditional),
9426 "UNCOMMITTED" => Some(Self::Uncommitted),
9427 "UNENCRYPTED" => Some(Self::Unencrypted),
9428 "UNION" => Some(Self::Union),
9429 "UNIQUE" => Some(Self::Unique),
9430 "UNKNOWN" => Some(Self::Unknown),
9431 "UNLISTEN" => Some(Self::Unlisten),
9432 "UNLOGGED" => Some(Self::Unlogged),
9433 "UNTIL" => Some(Self::Until),
9434 "UPDATE" => Some(Self::Update),
9435 "USER" => Some(Self::User),
9436 "USING" => Some(Self::Using),
9437 "VACUUM" => Some(Self::Vacuum),
9438 "VALID" => Some(Self::Valid),
9439 "VALIDATE" => Some(Self::Validate),
9440 "VALIDATOR" => Some(Self::Validator),
9441 "VALUE_P" => Some(Self::ValueP),
9442 "VALUES" => Some(Self::Values),
9443 "VARCHAR" => Some(Self::Varchar),
9444 "VARIADIC" => Some(Self::Variadic),
9445 "VARYING" => Some(Self::Varying),
9446 "VERBOSE" => Some(Self::Verbose),
9447 "VERSION_P" => Some(Self::VersionP),
9448 "VIEW" => Some(Self::View),
9449 "VIEWS" => Some(Self::Views),
9450 "VIRTUAL" => Some(Self::Virtual),
9451 "VOLATILE" => Some(Self::Volatile),
9452 "WHEN" => Some(Self::When),
9453 "WHERE" => Some(Self::Where),
9454 "WHITESPACE_P" => Some(Self::WhitespaceP),
9455 "WINDOW" => Some(Self::Window),
9456 "WITH" => Some(Self::With),
9457 "WITHIN" => Some(Self::Within),
9458 "WITHOUT" => Some(Self::Without),
9459 "WORK" => Some(Self::Work),
9460 "WRAPPER" => Some(Self::Wrapper),
9461 "WRITE" => Some(Self::Write),
9462 "XML_P" => Some(Self::XmlP),
9463 "XMLATTRIBUTES" => Some(Self::Xmlattributes),
9464 "XMLCONCAT" => Some(Self::Xmlconcat),
9465 "XMLELEMENT" => Some(Self::Xmlelement),
9466 "XMLEXISTS" => Some(Self::Xmlexists),
9467 "XMLFOREST" => Some(Self::Xmlforest),
9468 "XMLNAMESPACES" => Some(Self::Xmlnamespaces),
9469 "XMLPARSE" => Some(Self::Xmlparse),
9470 "XMLPI" => Some(Self::Xmlpi),
9471 "XMLROOT" => Some(Self::Xmlroot),
9472 "XMLSERIALIZE" => Some(Self::Xmlserialize),
9473 "XMLTABLE" => Some(Self::Xmltable),
9474 "YEAR_P" => Some(Self::YearP),
9475 "YES_P" => Some(Self::YesP),
9476 "ZONE" => Some(Self::Zone),
9477 "FORMAT_LA" => Some(Self::FormatLa),
9478 "NOT_LA" => Some(Self::NotLa),
9479 "NULLS_LA" => Some(Self::NullsLa),
9480 "WITH_LA" => Some(Self::WithLa),
9481 "WITHOUT_LA" => Some(Self::WithoutLa),
9482 "MODE_TYPE_NAME" => Some(Self::ModeTypeName),
9483 "MODE_PLPGSQL_EXPR" => Some(Self::ModePlpgsqlExpr),
9484 "MODE_PLPGSQL_ASSIGN1" => Some(Self::ModePlpgsqlAssign1),
9485 "MODE_PLPGSQL_ASSIGN2" => Some(Self::ModePlpgsqlAssign2),
9486 "MODE_PLPGSQL_ASSIGN3" => Some(Self::ModePlpgsqlAssign3),
9487 "UMINUS" => Some(Self::Uminus),
9488 _ => None,
9489 }
9490 }
9491}