1use crate::SyntaxKind;
5use crate::ast::AstNode;
6use crate::ast::{AstChildren, support};
7use crate::syntax_node::SyntaxNode;
8use crate::syntax_node::SyntaxToken;
9
10#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11pub struct Absolute {
12 pub(crate) syntax: SyntaxNode,
13}
14impl Absolute {
15 #[inline]
16 pub fn expr(&self) -> Option<Expr> {
17 support::child(&self.syntax)
18 }
19 #[inline]
20 pub fn absolute_token(&self) -> Option<SyntaxToken> {
21 support::token(&self.syntax, SyntaxKind::ABSOLUTE_KW)
22 }
23}
24
25#[derive(Debug, Clone, PartialEq, Eq, Hash)]
26pub struct AccessExclusive {
27 pub(crate) syntax: SyntaxNode,
28}
29impl AccessExclusive {
30 #[inline]
31 pub fn access_token(&self) -> Option<SyntaxToken> {
32 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
33 }
34 #[inline]
35 pub fn exclusive_token(&self) -> Option<SyntaxToken> {
36 support::token(&self.syntax, SyntaxKind::EXCLUSIVE_KW)
37 }
38}
39
40#[derive(Debug, Clone, PartialEq, Eq, Hash)]
41pub struct AccessShare {
42 pub(crate) syntax: SyntaxNode,
43}
44impl AccessShare {
45 #[inline]
46 pub fn access_token(&self) -> Option<SyntaxToken> {
47 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
48 }
49 #[inline]
50 pub fn share_token(&self) -> Option<SyntaxToken> {
51 support::token(&self.syntax, SyntaxKind::SHARE_KW)
52 }
53}
54
55#[derive(Debug, Clone, PartialEq, Eq, Hash)]
56pub struct AddAttribute {
57 pub(crate) syntax: SyntaxNode,
58}
59impl AddAttribute {
60 #[inline]
61 pub fn cascade(&self) -> Option<Cascade> {
62 support::child(&self.syntax)
63 }
64 #[inline]
65 pub fn collate(&self) -> Option<Collate> {
66 support::child(&self.syntax)
67 }
68 #[inline]
69 pub fn name(&self) -> Option<Name> {
70 support::child(&self.syntax)
71 }
72 #[inline]
73 pub fn restrict(&self) -> Option<Restrict> {
74 support::child(&self.syntax)
75 }
76 #[inline]
77 pub fn ty(&self) -> Option<Type> {
78 support::child(&self.syntax)
79 }
80 #[inline]
81 pub fn add_token(&self) -> Option<SyntaxToken> {
82 support::token(&self.syntax, SyntaxKind::ADD_KW)
83 }
84 #[inline]
85 pub fn attribute_token(&self) -> Option<SyntaxToken> {
86 support::token(&self.syntax, SyntaxKind::ATTRIBUTE_KW)
87 }
88}
89
90#[derive(Debug, Clone, PartialEq, Eq, Hash)]
91pub struct AddColumn {
92 pub(crate) syntax: SyntaxNode,
93}
94impl AddColumn {
95 #[inline]
96 pub fn collate(&self) -> Option<Collate> {
97 support::child(&self.syntax)
98 }
99 #[inline]
100 pub fn constraints(&self) -> AstChildren<Constraint> {
101 support::children(&self.syntax)
102 }
103 #[inline]
104 pub fn if_not_exists(&self) -> Option<IfNotExists> {
105 support::child(&self.syntax)
106 }
107 #[inline]
108 pub fn name(&self) -> Option<Name> {
109 support::child(&self.syntax)
110 }
111 #[inline]
112 pub fn ty(&self) -> Option<Type> {
113 support::child(&self.syntax)
114 }
115 #[inline]
116 pub fn add_token(&self) -> Option<SyntaxToken> {
117 support::token(&self.syntax, SyntaxKind::ADD_KW)
118 }
119 #[inline]
120 pub fn column_token(&self) -> Option<SyntaxToken> {
121 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
122 }
123}
124
125#[derive(Debug, Clone, PartialEq, Eq, Hash)]
126pub struct AddConstraint {
127 pub(crate) syntax: SyntaxNode,
128}
129impl AddConstraint {
130 #[inline]
131 pub fn constraint(&self) -> Option<Constraint> {
132 support::child(&self.syntax)
133 }
134 #[inline]
135 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
136 support::child(&self.syntax)
137 }
138 #[inline]
139 pub fn enforced(&self) -> Option<Enforced> {
140 support::child(&self.syntax)
141 }
142 #[inline]
143 pub fn initially_deferred_constraint_option(
144 &self,
145 ) -> Option<InitiallyDeferredConstraintOption> {
146 support::child(&self.syntax)
147 }
148 #[inline]
149 pub fn initially_immediate_constraint_option(
150 &self,
151 ) -> Option<InitiallyImmediateConstraintOption> {
152 support::child(&self.syntax)
153 }
154 #[inline]
155 pub fn no_inherit(&self) -> Option<NoInherit> {
156 support::child(&self.syntax)
157 }
158 #[inline]
159 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
160 support::child(&self.syntax)
161 }
162 #[inline]
163 pub fn not_enforced(&self) -> Option<NotEnforced> {
164 support::child(&self.syntax)
165 }
166 #[inline]
167 pub fn not_valid(&self) -> Option<NotValid> {
168 support::child(&self.syntax)
169 }
170 #[inline]
171 pub fn add_token(&self) -> Option<SyntaxToken> {
172 support::token(&self.syntax, SyntaxKind::ADD_KW)
173 }
174}
175
176#[derive(Debug, Clone, PartialEq, Eq, Hash)]
177pub struct AddGenerated {
178 pub(crate) syntax: SyntaxNode,
179}
180impl AddGenerated {
181 #[inline]
182 pub fn sequence_option_list(&self) -> Option<SequenceOptionList> {
183 support::child(&self.syntax)
184 }
185 #[inline]
186 pub fn add_token(&self) -> Option<SyntaxToken> {
187 support::token(&self.syntax, SyntaxKind::ADD_KW)
188 }
189 #[inline]
190 pub fn always_token(&self) -> Option<SyntaxToken> {
191 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
192 }
193 #[inline]
194 pub fn as_token(&self) -> Option<SyntaxToken> {
195 support::token(&self.syntax, SyntaxKind::AS_KW)
196 }
197 #[inline]
198 pub fn by_token(&self) -> Option<SyntaxToken> {
199 support::token(&self.syntax, SyntaxKind::BY_KW)
200 }
201 #[inline]
202 pub fn default_token(&self) -> Option<SyntaxToken> {
203 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
204 }
205 #[inline]
206 pub fn generated_token(&self) -> Option<SyntaxToken> {
207 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
208 }
209 #[inline]
210 pub fn identity_token(&self) -> Option<SyntaxToken> {
211 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
212 }
213}
214
215#[derive(Debug, Clone, PartialEq, Eq, Hash)]
216pub struct AddLabel {
217 pub(crate) syntax: SyntaxNode,
218}
219impl AddLabel {
220 #[inline]
221 pub fn element_table_properties(&self) -> Option<ElementTableProperties> {
222 support::child(&self.syntax)
223 }
224 #[inline]
225 pub fn name(&self) -> Option<Name> {
226 support::child(&self.syntax)
227 }
228 #[inline]
229 pub fn add_token(&self) -> Option<SyntaxToken> {
230 support::token(&self.syntax, SyntaxKind::ADD_KW)
231 }
232 #[inline]
233 pub fn label_token(&self) -> Option<SyntaxToken> {
234 support::token(&self.syntax, SyntaxKind::LABEL_KW)
235 }
236}
237
238#[derive(Debug, Clone, PartialEq, Eq, Hash)]
239pub struct AddOpClassOptions {
240 pub(crate) syntax: SyntaxNode,
241}
242impl AddOpClassOptions {
243 #[inline]
244 pub fn operator_class_option_list(&self) -> Option<OperatorClassOptionList> {
245 support::child(&self.syntax)
246 }
247 #[inline]
248 pub fn add_token(&self) -> Option<SyntaxToken> {
249 support::token(&self.syntax, SyntaxKind::ADD_KW)
250 }
251}
252
253#[derive(Debug, Clone, PartialEq, Eq, Hash)]
254pub struct AddValue {
255 pub(crate) syntax: SyntaxNode,
256}
257impl AddValue {
258 #[inline]
259 pub fn if_not_exists(&self) -> Option<IfNotExists> {
260 support::child(&self.syntax)
261 }
262 #[inline]
263 pub fn literal(&self) -> Option<Literal> {
264 support::child(&self.syntax)
265 }
266 #[inline]
267 pub fn value_position(&self) -> Option<ValuePosition> {
268 support::child(&self.syntax)
269 }
270 #[inline]
271 pub fn add_token(&self) -> Option<SyntaxToken> {
272 support::token(&self.syntax, SyntaxKind::ADD_KW)
273 }
274 #[inline]
275 pub fn value_token(&self) -> Option<SyntaxToken> {
276 support::token(&self.syntax, SyntaxKind::VALUE_KW)
277 }
278}
279
280#[derive(Debug, Clone, PartialEq, Eq, Hash)]
281pub struct AddVertexEdgeLabelProperties {
282 pub(crate) syntax: SyntaxNode,
283}
284impl AddVertexEdgeLabelProperties {
285 #[inline]
286 pub fn expr_as_name_list(&self) -> Option<ExprAsNameList> {
287 support::child(&self.syntax)
288 }
289 #[inline]
290 pub fn name_ref(&self) -> Option<NameRef> {
291 support::child(&self.syntax)
292 }
293 #[inline]
294 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
295 support::token(&self.syntax, SyntaxKind::L_PAREN)
296 }
297 #[inline]
298 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
299 support::token(&self.syntax, SyntaxKind::R_PAREN)
300 }
301 #[inline]
302 pub fn add_token(&self) -> Option<SyntaxToken> {
303 support::token(&self.syntax, SyntaxKind::ADD_KW)
304 }
305 #[inline]
306 pub fn alter_token(&self) -> Option<SyntaxToken> {
307 support::token(&self.syntax, SyntaxKind::ALTER_KW)
308 }
309 #[inline]
310 pub fn edge_token(&self) -> Option<SyntaxToken> {
311 support::token(&self.syntax, SyntaxKind::EDGE_KW)
312 }
313 #[inline]
314 pub fn label_token(&self) -> Option<SyntaxToken> {
315 support::token(&self.syntax, SyntaxKind::LABEL_KW)
316 }
317 #[inline]
318 pub fn node_token(&self) -> Option<SyntaxToken> {
319 support::token(&self.syntax, SyntaxKind::NODE_KW)
320 }
321 #[inline]
322 pub fn properties_token(&self) -> Option<SyntaxToken> {
323 support::token(&self.syntax, SyntaxKind::PROPERTIES_KW)
324 }
325 #[inline]
326 pub fn relationship_token(&self) -> Option<SyntaxToken> {
327 support::token(&self.syntax, SyntaxKind::RELATIONSHIP_KW)
328 }
329 #[inline]
330 pub fn table_token(&self) -> Option<SyntaxToken> {
331 support::token(&self.syntax, SyntaxKind::TABLE_KW)
332 }
333 #[inline]
334 pub fn vertex_token(&self) -> Option<SyntaxToken> {
335 support::token(&self.syntax, SyntaxKind::VERTEX_KW)
336 }
337}
338
339#[derive(Debug, Clone, PartialEq, Eq, Hash)]
340pub struct AddVertexEdgeTables {
341 pub(crate) syntax: SyntaxNode,
342}
343impl AddVertexEdgeTables {
344 #[inline]
345 pub fn edge_tables(&self) -> Option<EdgeTables> {
346 support::child(&self.syntax)
347 }
348 #[inline]
349 pub fn vertex_tables(&self) -> Option<VertexTables> {
350 support::child(&self.syntax)
351 }
352 #[inline]
353 pub fn add_token(&self) -> Option<SyntaxToken> {
354 support::token(&self.syntax, SyntaxKind::ADD_KW)
355 }
356}
357
358#[derive(Debug, Clone, PartialEq, Eq, Hash)]
359pub struct AfterValue {
360 pub(crate) syntax: SyntaxNode,
361}
362impl AfterValue {
363 #[inline]
364 pub fn literal(&self) -> Option<Literal> {
365 support::child(&self.syntax)
366 }
367 #[inline]
368 pub fn after_token(&self) -> Option<SyntaxToken> {
369 support::token(&self.syntax, SyntaxKind::AFTER_KW)
370 }
371}
372
373#[derive(Debug, Clone, PartialEq, Eq, Hash)]
374pub struct Aggregate {
375 pub(crate) syntax: SyntaxNode,
376}
377impl Aggregate {
378 #[inline]
379 pub fn param_list(&self) -> Option<ParamList> {
380 support::child(&self.syntax)
381 }
382 #[inline]
383 pub fn path(&self) -> Option<Path> {
384 support::child(&self.syntax)
385 }
386}
387
388#[derive(Debug, Clone, PartialEq, Eq, Hash)]
389pub struct Alias {
390 pub(crate) syntax: SyntaxNode,
391}
392impl Alias {
393 #[inline]
394 pub fn column_list(&self) -> Option<ColumnList> {
395 support::child(&self.syntax)
396 }
397 #[inline]
398 pub fn name(&self) -> Option<Name> {
399 support::child(&self.syntax)
400 }
401 #[inline]
402 pub fn as_token(&self) -> Option<SyntaxToken> {
403 support::token(&self.syntax, SyntaxKind::AS_KW)
404 }
405}
406
407#[derive(Debug, Clone, PartialEq, Eq, Hash)]
408pub struct All {
409 pub(crate) syntax: SyntaxNode,
410}
411impl All {
412 #[inline]
413 pub fn all_token(&self) -> Option<SyntaxToken> {
414 support::token(&self.syntax, SyntaxKind::ALL_KW)
415 }
416}
417
418#[derive(Debug, Clone, PartialEq, Eq, Hash)]
419pub struct AllFn {
420 pub(crate) syntax: SyntaxNode,
421}
422impl AllFn {
423 #[inline]
424 pub fn expr(&self) -> Option<Expr> {
425 support::child(&self.syntax)
426 }
427 #[inline]
428 pub fn select_variant(&self) -> Option<SelectVariant> {
429 support::child(&self.syntax)
430 }
431 #[inline]
432 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
433 support::token(&self.syntax, SyntaxKind::L_PAREN)
434 }
435 #[inline]
436 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
437 support::token(&self.syntax, SyntaxKind::R_PAREN)
438 }
439 #[inline]
440 pub fn all_token(&self) -> Option<SyntaxToken> {
441 support::token(&self.syntax, SyntaxKind::ALL_KW)
442 }
443}
444
445#[derive(Debug, Clone, PartialEq, Eq, Hash)]
446pub struct AllProperties {
447 pub(crate) syntax: SyntaxNode,
448}
449impl AllProperties {
450 #[inline]
451 pub fn all_token(&self) -> Option<SyntaxToken> {
452 support::token(&self.syntax, SyntaxKind::ALL_KW)
453 }
454 #[inline]
455 pub fn columns_token(&self) -> Option<SyntaxToken> {
456 support::token(&self.syntax, SyntaxKind::COLUMNS_KW)
457 }
458 #[inline]
459 pub fn properties_token(&self) -> Option<SyntaxToken> {
460 support::token(&self.syntax, SyntaxKind::PROPERTIES_KW)
461 }
462}
463
464#[derive(Debug, Clone, PartialEq, Eq, Hash)]
465pub struct AlterAggregate {
466 pub(crate) syntax: SyntaxNode,
467}
468impl AlterAggregate {
469 #[inline]
470 pub fn aggregate(&self) -> Option<Aggregate> {
471 support::child(&self.syntax)
472 }
473 #[inline]
474 pub fn owner_to(&self) -> Option<OwnerTo> {
475 support::child(&self.syntax)
476 }
477 #[inline]
478 pub fn rename_to(&self) -> Option<RenameTo> {
479 support::child(&self.syntax)
480 }
481 #[inline]
482 pub fn set_schema(&self) -> Option<SetSchema> {
483 support::child(&self.syntax)
484 }
485 #[inline]
486 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
487 support::token(&self.syntax, SyntaxKind::SEMICOLON)
488 }
489 #[inline]
490 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
491 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
492 }
493 #[inline]
494 pub fn alter_token(&self) -> Option<SyntaxToken> {
495 support::token(&self.syntax, SyntaxKind::ALTER_KW)
496 }
497}
498
499#[derive(Debug, Clone, PartialEq, Eq, Hash)]
500pub struct AlterAttribute {
501 pub(crate) syntax: SyntaxNode,
502}
503impl AlterAttribute {
504 #[inline]
505 pub fn cascade(&self) -> Option<Cascade> {
506 support::child(&self.syntax)
507 }
508 #[inline]
509 pub fn collate(&self) -> Option<Collate> {
510 support::child(&self.syntax)
511 }
512 #[inline]
513 pub fn name_ref(&self) -> Option<NameRef> {
514 support::child(&self.syntax)
515 }
516 #[inline]
517 pub fn restrict(&self) -> Option<Restrict> {
518 support::child(&self.syntax)
519 }
520 #[inline]
521 pub fn ty(&self) -> Option<Type> {
522 support::child(&self.syntax)
523 }
524 #[inline]
525 pub fn alter_token(&self) -> Option<SyntaxToken> {
526 support::token(&self.syntax, SyntaxKind::ALTER_KW)
527 }
528 #[inline]
529 pub fn attribute_token(&self) -> Option<SyntaxToken> {
530 support::token(&self.syntax, SyntaxKind::ATTRIBUTE_KW)
531 }
532 #[inline]
533 pub fn data_token(&self) -> Option<SyntaxToken> {
534 support::token(&self.syntax, SyntaxKind::DATA_KW)
535 }
536 #[inline]
537 pub fn set_token(&self) -> Option<SyntaxToken> {
538 support::token(&self.syntax, SyntaxKind::SET_KW)
539 }
540 #[inline]
541 pub fn type_token(&self) -> Option<SyntaxToken> {
542 support::token(&self.syntax, SyntaxKind::TYPE_KW)
543 }
544}
545
546#[derive(Debug, Clone, PartialEq, Eq, Hash)]
547pub struct AlterCollation {
548 pub(crate) syntax: SyntaxNode,
549}
550impl AlterCollation {
551 #[inline]
552 pub fn owner_to(&self) -> Option<OwnerTo> {
553 support::child(&self.syntax)
554 }
555 #[inline]
556 pub fn path(&self) -> Option<Path> {
557 support::child(&self.syntax)
558 }
559 #[inline]
560 pub fn refresh_version(&self) -> Option<RefreshVersion> {
561 support::child(&self.syntax)
562 }
563 #[inline]
564 pub fn rename_to(&self) -> Option<RenameTo> {
565 support::child(&self.syntax)
566 }
567 #[inline]
568 pub fn set_schema(&self) -> Option<SetSchema> {
569 support::child(&self.syntax)
570 }
571 #[inline]
572 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
573 support::token(&self.syntax, SyntaxKind::SEMICOLON)
574 }
575 #[inline]
576 pub fn alter_token(&self) -> Option<SyntaxToken> {
577 support::token(&self.syntax, SyntaxKind::ALTER_KW)
578 }
579 #[inline]
580 pub fn collation_token(&self) -> Option<SyntaxToken> {
581 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
582 }
583}
584
585#[derive(Debug, Clone, PartialEq, Eq, Hash)]
586pub struct AlterColumn {
587 pub(crate) syntax: SyntaxNode,
588}
589impl AlterColumn {
590 #[inline]
591 pub fn name_ref(&self) -> Option<NameRef> {
592 support::child(&self.syntax)
593 }
594 #[inline]
595 pub fn option(&self) -> Option<AlterColumnOption> {
596 support::child(&self.syntax)
597 }
598 #[inline]
599 pub fn alter_token(&self) -> Option<SyntaxToken> {
600 support::token(&self.syntax, SyntaxKind::ALTER_KW)
601 }
602 #[inline]
603 pub fn column_token(&self) -> Option<SyntaxToken> {
604 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
605 }
606}
607
608#[derive(Debug, Clone, PartialEq, Eq, Hash)]
609pub struct AlterConstraint {
610 pub(crate) syntax: SyntaxNode,
611}
612impl AlterConstraint {
613 #[inline]
614 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
615 support::child(&self.syntax)
616 }
617 #[inline]
618 pub fn initially_deferred_constraint_option(
619 &self,
620 ) -> Option<InitiallyDeferredConstraintOption> {
621 support::child(&self.syntax)
622 }
623 #[inline]
624 pub fn initially_immediate_constraint_option(
625 &self,
626 ) -> Option<InitiallyImmediateConstraintOption> {
627 support::child(&self.syntax)
628 }
629 #[inline]
630 pub fn name_ref(&self) -> Option<NameRef> {
631 support::child(&self.syntax)
632 }
633 #[inline]
634 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
635 support::child(&self.syntax)
636 }
637 #[inline]
638 pub fn alter_token(&self) -> Option<SyntaxToken> {
639 support::token(&self.syntax, SyntaxKind::ALTER_KW)
640 }
641 #[inline]
642 pub fn constraint_token(&self) -> Option<SyntaxToken> {
643 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
644 }
645}
646
647#[derive(Debug, Clone, PartialEq, Eq, Hash)]
648pub struct AlterConversion {
649 pub(crate) syntax: SyntaxNode,
650}
651impl AlterConversion {
652 #[inline]
653 pub fn owner_to(&self) -> Option<OwnerTo> {
654 support::child(&self.syntax)
655 }
656 #[inline]
657 pub fn path(&self) -> Option<Path> {
658 support::child(&self.syntax)
659 }
660 #[inline]
661 pub fn rename_to(&self) -> Option<RenameTo> {
662 support::child(&self.syntax)
663 }
664 #[inline]
665 pub fn set_schema(&self) -> Option<SetSchema> {
666 support::child(&self.syntax)
667 }
668 #[inline]
669 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
670 support::token(&self.syntax, SyntaxKind::SEMICOLON)
671 }
672 #[inline]
673 pub fn alter_token(&self) -> Option<SyntaxToken> {
674 support::token(&self.syntax, SyntaxKind::ALTER_KW)
675 }
676 #[inline]
677 pub fn conversion_token(&self) -> Option<SyntaxToken> {
678 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
679 }
680}
681
682#[derive(Debug, Clone, PartialEq, Eq, Hash)]
683pub struct AlterDatabase {
684 pub(crate) syntax: SyntaxNode,
685}
686impl AlterDatabase {
687 #[inline]
688 pub fn database_option_list(&self) -> Option<DatabaseOptionList> {
689 support::child(&self.syntax)
690 }
691 #[inline]
692 pub fn name_ref(&self) -> Option<NameRef> {
693 support::child(&self.syntax)
694 }
695 #[inline]
696 pub fn owner_to(&self) -> Option<OwnerTo> {
697 support::child(&self.syntax)
698 }
699 #[inline]
700 pub fn refresh_collation_version(&self) -> Option<RefreshCollationVersion> {
701 support::child(&self.syntax)
702 }
703 #[inline]
704 pub fn rename_to(&self) -> Option<RenameTo> {
705 support::child(&self.syntax)
706 }
707 #[inline]
708 pub fn reset_config_param(&self) -> Option<ResetConfigParam> {
709 support::child(&self.syntax)
710 }
711 #[inline]
712 pub fn set_config_param(&self) -> Option<SetConfigParam> {
713 support::child(&self.syntax)
714 }
715 #[inline]
716 pub fn set_tablespace(&self) -> Option<SetTablespace> {
717 support::child(&self.syntax)
718 }
719 #[inline]
720 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
721 support::token(&self.syntax, SyntaxKind::SEMICOLON)
722 }
723 #[inline]
724 pub fn alter_token(&self) -> Option<SyntaxToken> {
725 support::token(&self.syntax, SyntaxKind::ALTER_KW)
726 }
727 #[inline]
728 pub fn database_token(&self) -> Option<SyntaxToken> {
729 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
730 }
731}
732
733#[derive(Debug, Clone, PartialEq, Eq, Hash)]
734pub struct AlterDefaultPrivileges {
735 pub(crate) syntax: SyntaxNode,
736}
737impl AlterDefaultPrivileges {
738 #[inline]
739 pub fn grant_default_privileges(&self) -> Option<GrantDefaultPrivileges> {
740 support::child(&self.syntax)
741 }
742 #[inline]
743 pub fn name_refs(&self) -> AstChildren<NameRef> {
744 support::children(&self.syntax)
745 }
746 #[inline]
747 pub fn revoke_default_privileges(&self) -> Option<RevokeDefaultPrivileges> {
748 support::child(&self.syntax)
749 }
750 #[inline]
751 pub fn role_ref_list(&self) -> Option<RoleRefList> {
752 support::child(&self.syntax)
753 }
754 #[inline]
755 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
756 support::token(&self.syntax, SyntaxKind::SEMICOLON)
757 }
758 #[inline]
759 pub fn alter_token(&self) -> Option<SyntaxToken> {
760 support::token(&self.syntax, SyntaxKind::ALTER_KW)
761 }
762 #[inline]
763 pub fn default_token(&self) -> Option<SyntaxToken> {
764 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
765 }
766 #[inline]
767 pub fn for_token(&self) -> Option<SyntaxToken> {
768 support::token(&self.syntax, SyntaxKind::FOR_KW)
769 }
770 #[inline]
771 pub fn in_token(&self) -> Option<SyntaxToken> {
772 support::token(&self.syntax, SyntaxKind::IN_KW)
773 }
774 #[inline]
775 pub fn privileges_token(&self) -> Option<SyntaxToken> {
776 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
777 }
778 #[inline]
779 pub fn role_token(&self) -> Option<SyntaxToken> {
780 support::token(&self.syntax, SyntaxKind::ROLE_KW)
781 }
782 #[inline]
783 pub fn schema_token(&self) -> Option<SyntaxToken> {
784 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
785 }
786 #[inline]
787 pub fn user_token(&self) -> Option<SyntaxToken> {
788 support::token(&self.syntax, SyntaxKind::USER_KW)
789 }
790}
791
792#[derive(Debug, Clone, PartialEq, Eq, Hash)]
793pub struct AlterDomain {
794 pub(crate) syntax: SyntaxNode,
795}
796impl AlterDomain {
797 #[inline]
798 pub fn action(&self) -> Option<AlterDomainAction> {
799 support::child(&self.syntax)
800 }
801 #[inline]
802 pub fn path(&self) -> Option<Path> {
803 support::child(&self.syntax)
804 }
805 #[inline]
806 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
807 support::token(&self.syntax, SyntaxKind::SEMICOLON)
808 }
809 #[inline]
810 pub fn alter_token(&self) -> Option<SyntaxToken> {
811 support::token(&self.syntax, SyntaxKind::ALTER_KW)
812 }
813 #[inline]
814 pub fn domain_token(&self) -> Option<SyntaxToken> {
815 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
816 }
817}
818
819#[derive(Debug, Clone, PartialEq, Eq, Hash)]
820pub struct AlterEventTrigger {
821 pub(crate) syntax: SyntaxNode,
822}
823impl AlterEventTrigger {
824 #[inline]
825 pub fn name_ref(&self) -> Option<NameRef> {
826 support::child(&self.syntax)
827 }
828 #[inline]
829 pub fn owner_to(&self) -> Option<OwnerTo> {
830 support::child(&self.syntax)
831 }
832 #[inline]
833 pub fn rename_to(&self) -> Option<RenameTo> {
834 support::child(&self.syntax)
835 }
836 #[inline]
837 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
838 support::token(&self.syntax, SyntaxKind::SEMICOLON)
839 }
840 #[inline]
841 pub fn alter_token(&self) -> Option<SyntaxToken> {
842 support::token(&self.syntax, SyntaxKind::ALTER_KW)
843 }
844 #[inline]
845 pub fn always_token(&self) -> Option<SyntaxToken> {
846 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
847 }
848 #[inline]
849 pub fn disable_token(&self) -> Option<SyntaxToken> {
850 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
851 }
852 #[inline]
853 pub fn enable_token(&self) -> Option<SyntaxToken> {
854 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
855 }
856 #[inline]
857 pub fn event_token(&self) -> Option<SyntaxToken> {
858 support::token(&self.syntax, SyntaxKind::EVENT_KW)
859 }
860 #[inline]
861 pub fn replica_token(&self) -> Option<SyntaxToken> {
862 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
863 }
864 #[inline]
865 pub fn trigger_token(&self) -> Option<SyntaxToken> {
866 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
867 }
868}
869
870#[derive(Debug, Clone, PartialEq, Eq, Hash)]
871pub struct AlterExtension {
872 pub(crate) syntax: SyntaxNode,
873}
874impl AlterExtension {
875 #[inline]
876 pub fn aggregate(&self) -> Option<Aggregate> {
877 support::child(&self.syntax)
878 }
879 #[inline]
880 pub fn cast_sig(&self) -> Option<CastSig> {
881 support::child(&self.syntax)
882 }
883 #[inline]
884 pub fn function_sig(&self) -> Option<FunctionSig> {
885 support::child(&self.syntax)
886 }
887 #[inline]
888 pub fn literal(&self) -> Option<Literal> {
889 support::child(&self.syntax)
890 }
891 #[inline]
892 pub fn name_ref(&self) -> Option<NameRef> {
893 support::child(&self.syntax)
894 }
895 #[inline]
896 pub fn op(&self) -> Option<Op> {
897 support::child(&self.syntax)
898 }
899 #[inline]
900 pub fn path(&self) -> Option<Path> {
901 support::child(&self.syntax)
902 }
903 #[inline]
904 pub fn set_schema(&self) -> Option<SetSchema> {
905 support::child(&self.syntax)
906 }
907 #[inline]
908 pub fn ty(&self) -> Option<Type> {
909 support::child(&self.syntax)
910 }
911 #[inline]
912 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
913 support::token(&self.syntax, SyntaxKind::L_PAREN)
914 }
915 #[inline]
916 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
917 support::token(&self.syntax, SyntaxKind::R_PAREN)
918 }
919 #[inline]
920 pub fn comma_token(&self) -> Option<SyntaxToken> {
921 support::token(&self.syntax, SyntaxKind::COMMA)
922 }
923 #[inline]
924 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
925 support::token(&self.syntax, SyntaxKind::SEMICOLON)
926 }
927 #[inline]
928 pub fn access_token(&self) -> Option<SyntaxToken> {
929 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
930 }
931 #[inline]
932 pub fn add_token(&self) -> Option<SyntaxToken> {
933 support::token(&self.syntax, SyntaxKind::ADD_KW)
934 }
935 #[inline]
936 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
937 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
938 }
939 #[inline]
940 pub fn alter_token(&self) -> Option<SyntaxToken> {
941 support::token(&self.syntax, SyntaxKind::ALTER_KW)
942 }
943 #[inline]
944 pub fn cast_token(&self) -> Option<SyntaxToken> {
945 support::token(&self.syntax, SyntaxKind::CAST_KW)
946 }
947 #[inline]
948 pub fn class_token(&self) -> Option<SyntaxToken> {
949 support::token(&self.syntax, SyntaxKind::CLASS_KW)
950 }
951 #[inline]
952 pub fn collation_token(&self) -> Option<SyntaxToken> {
953 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
954 }
955 #[inline]
956 pub fn configuration_token(&self) -> Option<SyntaxToken> {
957 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
958 }
959 #[inline]
960 pub fn conversion_token(&self) -> Option<SyntaxToken> {
961 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
962 }
963 #[inline]
964 pub fn data_token(&self) -> Option<SyntaxToken> {
965 support::token(&self.syntax, SyntaxKind::DATA_KW)
966 }
967 #[inline]
968 pub fn database_token(&self) -> Option<SyntaxToken> {
969 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
970 }
971 #[inline]
972 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
973 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
974 }
975 #[inline]
976 pub fn domain_token(&self) -> Option<SyntaxToken> {
977 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
978 }
979 #[inline]
980 pub fn drop_token(&self) -> Option<SyntaxToken> {
981 support::token(&self.syntax, SyntaxKind::DROP_KW)
982 }
983 #[inline]
984 pub fn event_token(&self) -> Option<SyntaxToken> {
985 support::token(&self.syntax, SyntaxKind::EVENT_KW)
986 }
987 #[inline]
988 pub fn extension_token(&self) -> Option<SyntaxToken> {
989 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
990 }
991 #[inline]
992 pub fn family_token(&self) -> Option<SyntaxToken> {
993 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
994 }
995 #[inline]
996 pub fn for_token(&self) -> Option<SyntaxToken> {
997 support::token(&self.syntax, SyntaxKind::FOR_KW)
998 }
999 #[inline]
1000 pub fn foreign_token(&self) -> Option<SyntaxToken> {
1001 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
1002 }
1003 #[inline]
1004 pub fn function_token(&self) -> Option<SyntaxToken> {
1005 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
1006 }
1007 #[inline]
1008 pub fn ident_token(&self) -> Option<SyntaxToken> {
1009 support::token(&self.syntax, SyntaxKind::IDENT)
1010 }
1011 #[inline]
1012 pub fn index_token(&self) -> Option<SyntaxToken> {
1013 support::token(&self.syntax, SyntaxKind::INDEX_KW)
1014 }
1015 #[inline]
1016 pub fn language_token(&self) -> Option<SyntaxToken> {
1017 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
1018 }
1019 #[inline]
1020 pub fn materialized_token(&self) -> Option<SyntaxToken> {
1021 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
1022 }
1023 #[inline]
1024 pub fn method_token(&self) -> Option<SyntaxToken> {
1025 support::token(&self.syntax, SyntaxKind::METHOD_KW)
1026 }
1027 #[inline]
1028 pub fn operator_token(&self) -> Option<SyntaxToken> {
1029 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
1030 }
1031 #[inline]
1032 pub fn parser_token(&self) -> Option<SyntaxToken> {
1033 support::token(&self.syntax, SyntaxKind::PARSER_KW)
1034 }
1035 #[inline]
1036 pub fn procedural_token(&self) -> Option<SyntaxToken> {
1037 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
1038 }
1039 #[inline]
1040 pub fn procedure_token(&self) -> Option<SyntaxToken> {
1041 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
1042 }
1043 #[inline]
1044 pub fn publication_token(&self) -> Option<SyntaxToken> {
1045 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
1046 }
1047 #[inline]
1048 pub fn role_token(&self) -> Option<SyntaxToken> {
1049 support::token(&self.syntax, SyntaxKind::ROLE_KW)
1050 }
1051 #[inline]
1052 pub fn routine_token(&self) -> Option<SyntaxToken> {
1053 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
1054 }
1055 #[inline]
1056 pub fn schema_token(&self) -> Option<SyntaxToken> {
1057 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
1058 }
1059 #[inline]
1060 pub fn search_token(&self) -> Option<SyntaxToken> {
1061 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
1062 }
1063 #[inline]
1064 pub fn sequence_token(&self) -> Option<SyntaxToken> {
1065 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
1066 }
1067 #[inline]
1068 pub fn server_token(&self) -> Option<SyntaxToken> {
1069 support::token(&self.syntax, SyntaxKind::SERVER_KW)
1070 }
1071 #[inline]
1072 pub fn statistics_token(&self) -> Option<SyntaxToken> {
1073 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
1074 }
1075 #[inline]
1076 pub fn subscription_token(&self) -> Option<SyntaxToken> {
1077 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
1078 }
1079 #[inline]
1080 pub fn table_token(&self) -> Option<SyntaxToken> {
1081 support::token(&self.syntax, SyntaxKind::TABLE_KW)
1082 }
1083 #[inline]
1084 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
1085 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
1086 }
1087 #[inline]
1088 pub fn template_token(&self) -> Option<SyntaxToken> {
1089 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
1090 }
1091 #[inline]
1092 pub fn text_token(&self) -> Option<SyntaxToken> {
1093 support::token(&self.syntax, SyntaxKind::TEXT_KW)
1094 }
1095 #[inline]
1096 pub fn to_token(&self) -> Option<SyntaxToken> {
1097 support::token(&self.syntax, SyntaxKind::TO_KW)
1098 }
1099 #[inline]
1100 pub fn transform_token(&self) -> Option<SyntaxToken> {
1101 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
1102 }
1103 #[inline]
1104 pub fn trigger_token(&self) -> Option<SyntaxToken> {
1105 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
1106 }
1107 #[inline]
1108 pub fn type_token(&self) -> Option<SyntaxToken> {
1109 support::token(&self.syntax, SyntaxKind::TYPE_KW)
1110 }
1111 #[inline]
1112 pub fn update_token(&self) -> Option<SyntaxToken> {
1113 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
1114 }
1115 #[inline]
1116 pub fn using_token(&self) -> Option<SyntaxToken> {
1117 support::token(&self.syntax, SyntaxKind::USING_KW)
1118 }
1119 #[inline]
1120 pub fn view_token(&self) -> Option<SyntaxToken> {
1121 support::token(&self.syntax, SyntaxKind::VIEW_KW)
1122 }
1123 #[inline]
1124 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
1125 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
1126 }
1127}
1128
1129#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1130pub struct AlterForeignDataWrapper {
1131 pub(crate) syntax: SyntaxNode,
1132}
1133impl AlterForeignDataWrapper {
1134 #[inline]
1135 pub fn fdw_option_list(&self) -> Option<FdwOptionList> {
1136 support::child(&self.syntax)
1137 }
1138 #[inline]
1139 pub fn name_ref(&self) -> Option<NameRef> {
1140 support::child(&self.syntax)
1141 }
1142 #[inline]
1143 pub fn owner_to(&self) -> Option<OwnerTo> {
1144 support::child(&self.syntax)
1145 }
1146 #[inline]
1147 pub fn rename_to(&self) -> Option<RenameTo> {
1148 support::child(&self.syntax)
1149 }
1150 #[inline]
1151 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
1152 support::token(&self.syntax, SyntaxKind::SEMICOLON)
1153 }
1154 #[inline]
1155 pub fn alter_token(&self) -> Option<SyntaxToken> {
1156 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1157 }
1158 #[inline]
1159 pub fn data_token(&self) -> Option<SyntaxToken> {
1160 support::token(&self.syntax, SyntaxKind::DATA_KW)
1161 }
1162 #[inline]
1163 pub fn foreign_token(&self) -> Option<SyntaxToken> {
1164 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
1165 }
1166 #[inline]
1167 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
1168 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
1169 }
1170}
1171
1172#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1173pub struct AlterForeignTable {
1174 pub(crate) syntax: SyntaxNode,
1175}
1176impl AlterForeignTable {
1177 #[inline]
1178 pub fn alter_table_actions(&self) -> AstChildren<AlterTableAction> {
1179 support::children(&self.syntax)
1180 }
1181 #[inline]
1182 pub fn if_exists(&self) -> Option<IfExists> {
1183 support::child(&self.syntax)
1184 }
1185 #[inline]
1186 pub fn relation_name(&self) -> Option<RelationName> {
1187 support::child(&self.syntax)
1188 }
1189 #[inline]
1190 pub fn rename_column(&self) -> Option<RenameColumn> {
1191 support::child(&self.syntax)
1192 }
1193 #[inline]
1194 pub fn rename_to(&self) -> Option<RenameTo> {
1195 support::child(&self.syntax)
1196 }
1197 #[inline]
1198 pub fn set_schema(&self) -> Option<SetSchema> {
1199 support::child(&self.syntax)
1200 }
1201 #[inline]
1202 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
1203 support::token(&self.syntax, SyntaxKind::SEMICOLON)
1204 }
1205 #[inline]
1206 pub fn alter_token(&self) -> Option<SyntaxToken> {
1207 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1208 }
1209 #[inline]
1210 pub fn foreign_token(&self) -> Option<SyntaxToken> {
1211 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
1212 }
1213 #[inline]
1214 pub fn table_token(&self) -> Option<SyntaxToken> {
1215 support::token(&self.syntax, SyntaxKind::TABLE_KW)
1216 }
1217}
1218
1219#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1220pub struct AlterFunction {
1221 pub(crate) syntax: SyntaxNode,
1222}
1223impl AlterFunction {
1224 #[inline]
1225 pub fn depends_on_extension(&self) -> Option<DependsOnExtension> {
1226 support::child(&self.syntax)
1227 }
1228 #[inline]
1229 pub fn func_option_list(&self) -> Option<FuncOptionList> {
1230 support::child(&self.syntax)
1231 }
1232 #[inline]
1233 pub fn function_sig(&self) -> Option<FunctionSig> {
1234 support::child(&self.syntax)
1235 }
1236 #[inline]
1237 pub fn no_depends_on_extension(&self) -> Option<NoDependsOnExtension> {
1238 support::child(&self.syntax)
1239 }
1240 #[inline]
1241 pub fn owner_to(&self) -> Option<OwnerTo> {
1242 support::child(&self.syntax)
1243 }
1244 #[inline]
1245 pub fn rename_to(&self) -> Option<RenameTo> {
1246 support::child(&self.syntax)
1247 }
1248 #[inline]
1249 pub fn set_schema(&self) -> Option<SetSchema> {
1250 support::child(&self.syntax)
1251 }
1252 #[inline]
1253 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
1254 support::token(&self.syntax, SyntaxKind::SEMICOLON)
1255 }
1256 #[inline]
1257 pub fn alter_token(&self) -> Option<SyntaxToken> {
1258 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1259 }
1260 #[inline]
1261 pub fn function_token(&self) -> Option<SyntaxToken> {
1262 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
1263 }
1264 #[inline]
1265 pub fn restrict_token(&self) -> Option<SyntaxToken> {
1266 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
1267 }
1268}
1269
1270#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1271pub struct AlterGroup {
1272 pub(crate) syntax: SyntaxNode,
1273}
1274impl AlterGroup {
1275 #[inline]
1276 pub fn name_refs(&self) -> AstChildren<NameRef> {
1277 support::children(&self.syntax)
1278 }
1279 #[inline]
1280 pub fn rename_to(&self) -> Option<RenameTo> {
1281 support::child(&self.syntax)
1282 }
1283 #[inline]
1284 pub fn role_ref(&self) -> Option<RoleRef> {
1285 support::child(&self.syntax)
1286 }
1287 #[inline]
1288 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
1289 support::token(&self.syntax, SyntaxKind::SEMICOLON)
1290 }
1291 #[inline]
1292 pub fn add_token(&self) -> Option<SyntaxToken> {
1293 support::token(&self.syntax, SyntaxKind::ADD_KW)
1294 }
1295 #[inline]
1296 pub fn alter_token(&self) -> Option<SyntaxToken> {
1297 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1298 }
1299 #[inline]
1300 pub fn drop_token(&self) -> Option<SyntaxToken> {
1301 support::token(&self.syntax, SyntaxKind::DROP_KW)
1302 }
1303 #[inline]
1304 pub fn group_token(&self) -> Option<SyntaxToken> {
1305 support::token(&self.syntax, SyntaxKind::GROUP_KW)
1306 }
1307 #[inline]
1308 pub fn user_token(&self) -> Option<SyntaxToken> {
1309 support::token(&self.syntax, SyntaxKind::USER_KW)
1310 }
1311}
1312
1313#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1314pub struct AlterIndex {
1315 pub(crate) syntax: SyntaxNode,
1316}
1317impl AlterIndex {
1318 #[inline]
1319 pub fn alter_index_action(&self) -> Option<AlterIndexAction> {
1320 support::child(&self.syntax)
1321 }
1322 #[inline]
1323 pub fn if_exists(&self) -> Option<IfExists> {
1324 support::child(&self.syntax)
1325 }
1326 #[inline]
1327 pub fn name_ref(&self) -> Option<NameRef> {
1328 support::child(&self.syntax)
1329 }
1330 #[inline]
1331 pub fn owned_by_roles(&self) -> Option<OwnedByRoles> {
1332 support::child(&self.syntax)
1333 }
1334 #[inline]
1335 pub fn path(&self) -> Option<Path> {
1336 support::child(&self.syntax)
1337 }
1338 #[inline]
1339 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
1340 support::token(&self.syntax, SyntaxKind::SEMICOLON)
1341 }
1342 #[inline]
1343 pub fn all_token(&self) -> Option<SyntaxToken> {
1344 support::token(&self.syntax, SyntaxKind::ALL_KW)
1345 }
1346 #[inline]
1347 pub fn alter_token(&self) -> Option<SyntaxToken> {
1348 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1349 }
1350 #[inline]
1351 pub fn in_token(&self) -> Option<SyntaxToken> {
1352 support::token(&self.syntax, SyntaxKind::IN_KW)
1353 }
1354 #[inline]
1355 pub fn index_token(&self) -> Option<SyntaxToken> {
1356 support::token(&self.syntax, SyntaxKind::INDEX_KW)
1357 }
1358 #[inline]
1359 pub fn nowait_token(&self) -> Option<SyntaxToken> {
1360 support::token(&self.syntax, SyntaxKind::NOWAIT_KW)
1361 }
1362 #[inline]
1363 pub fn set_token(&self) -> Option<SyntaxToken> {
1364 support::token(&self.syntax, SyntaxKind::SET_KW)
1365 }
1366 #[inline]
1367 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
1368 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
1369 }
1370}
1371
1372#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1373pub struct AlterLanguage {
1374 pub(crate) syntax: SyntaxNode,
1375}
1376impl AlterLanguage {
1377 #[inline]
1378 pub fn name_ref(&self) -> Option<NameRef> {
1379 support::child(&self.syntax)
1380 }
1381 #[inline]
1382 pub fn owner_to(&self) -> Option<OwnerTo> {
1383 support::child(&self.syntax)
1384 }
1385 #[inline]
1386 pub fn rename_to(&self) -> Option<RenameTo> {
1387 support::child(&self.syntax)
1388 }
1389 #[inline]
1390 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
1391 support::token(&self.syntax, SyntaxKind::SEMICOLON)
1392 }
1393 #[inline]
1394 pub fn alter_token(&self) -> Option<SyntaxToken> {
1395 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1396 }
1397 #[inline]
1398 pub fn language_token(&self) -> Option<SyntaxToken> {
1399 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
1400 }
1401}
1402
1403#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1404pub struct AlterLargeObject {
1405 pub(crate) syntax: SyntaxNode,
1406}
1407impl AlterLargeObject {
1408 #[inline]
1409 pub fn literal(&self) -> Option<Literal> {
1410 support::child(&self.syntax)
1411 }
1412 #[inline]
1413 pub fn role_ref(&self) -> Option<RoleRef> {
1414 support::child(&self.syntax)
1415 }
1416 #[inline]
1417 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
1418 support::token(&self.syntax, SyntaxKind::SEMICOLON)
1419 }
1420 #[inline]
1421 pub fn alter_token(&self) -> Option<SyntaxToken> {
1422 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1423 }
1424 #[inline]
1425 pub fn large_token(&self) -> Option<SyntaxToken> {
1426 support::token(&self.syntax, SyntaxKind::LARGE_KW)
1427 }
1428 #[inline]
1429 pub fn object_token(&self) -> Option<SyntaxToken> {
1430 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
1431 }
1432 #[inline]
1433 pub fn owner_token(&self) -> Option<SyntaxToken> {
1434 support::token(&self.syntax, SyntaxKind::OWNER_KW)
1435 }
1436 #[inline]
1437 pub fn to_token(&self) -> Option<SyntaxToken> {
1438 support::token(&self.syntax, SyntaxKind::TO_KW)
1439 }
1440}
1441
1442#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1443pub struct AlterMaterializedView {
1444 pub(crate) syntax: SyntaxNode,
1445}
1446impl AlterMaterializedView {
1447 #[inline]
1448 pub fn action(&self) -> AstChildren<AlterMaterializedViewAction> {
1449 support::children(&self.syntax)
1450 }
1451 #[inline]
1452 pub fn if_exists(&self) -> Option<IfExists> {
1453 support::child(&self.syntax)
1454 }
1455 #[inline]
1456 pub fn name(&self) -> Option<Name> {
1457 support::child(&self.syntax)
1458 }
1459 #[inline]
1460 pub fn name_ref(&self) -> Option<NameRef> {
1461 support::child(&self.syntax)
1462 }
1463 #[inline]
1464 pub fn owned_by_roles(&self) -> Option<OwnedByRoles> {
1465 support::child(&self.syntax)
1466 }
1467 #[inline]
1468 pub fn path(&self) -> Option<Path> {
1469 support::child(&self.syntax)
1470 }
1471 #[inline]
1472 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
1473 support::token(&self.syntax, SyntaxKind::SEMICOLON)
1474 }
1475 #[inline]
1476 pub fn all_token(&self) -> Option<SyntaxToken> {
1477 support::token(&self.syntax, SyntaxKind::ALL_KW)
1478 }
1479 #[inline]
1480 pub fn alter_token(&self) -> Option<SyntaxToken> {
1481 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1482 }
1483 #[inline]
1484 pub fn in_token(&self) -> Option<SyntaxToken> {
1485 support::token(&self.syntax, SyntaxKind::IN_KW)
1486 }
1487 #[inline]
1488 pub fn materialized_token(&self) -> Option<SyntaxToken> {
1489 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
1490 }
1491 #[inline]
1492 pub fn nowait_token(&self) -> Option<SyntaxToken> {
1493 support::token(&self.syntax, SyntaxKind::NOWAIT_KW)
1494 }
1495 #[inline]
1496 pub fn set_token(&self) -> Option<SyntaxToken> {
1497 support::token(&self.syntax, SyntaxKind::SET_KW)
1498 }
1499 #[inline]
1500 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
1501 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
1502 }
1503 #[inline]
1504 pub fn view_token(&self) -> Option<SyntaxToken> {
1505 support::token(&self.syntax, SyntaxKind::VIEW_KW)
1506 }
1507}
1508
1509#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1510pub struct AlterOperator {
1511 pub(crate) syntax: SyntaxNode,
1512}
1513impl AlterOperator {
1514 #[inline]
1515 pub fn op_sig(&self) -> Option<OpSig> {
1516 support::child(&self.syntax)
1517 }
1518 #[inline]
1519 pub fn owner_to(&self) -> Option<OwnerTo> {
1520 support::child(&self.syntax)
1521 }
1522 #[inline]
1523 pub fn set_options(&self) -> Option<SetOptions> {
1524 support::child(&self.syntax)
1525 }
1526 #[inline]
1527 pub fn set_schema(&self) -> Option<SetSchema> {
1528 support::child(&self.syntax)
1529 }
1530 #[inline]
1531 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
1532 support::token(&self.syntax, SyntaxKind::SEMICOLON)
1533 }
1534 #[inline]
1535 pub fn alter_token(&self) -> Option<SyntaxToken> {
1536 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1537 }
1538 #[inline]
1539 pub fn operator_token(&self) -> Option<SyntaxToken> {
1540 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
1541 }
1542}
1543
1544#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1545pub struct AlterOperatorClass {
1546 pub(crate) syntax: SyntaxNode,
1547}
1548impl AlterOperatorClass {
1549 #[inline]
1550 pub fn name_ref(&self) -> Option<NameRef> {
1551 support::child(&self.syntax)
1552 }
1553 #[inline]
1554 pub fn owner_to(&self) -> Option<OwnerTo> {
1555 support::child(&self.syntax)
1556 }
1557 #[inline]
1558 pub fn path(&self) -> Option<Path> {
1559 support::child(&self.syntax)
1560 }
1561 #[inline]
1562 pub fn rename_to(&self) -> Option<RenameTo> {
1563 support::child(&self.syntax)
1564 }
1565 #[inline]
1566 pub fn set_schema(&self) -> Option<SetSchema> {
1567 support::child(&self.syntax)
1568 }
1569 #[inline]
1570 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
1571 support::token(&self.syntax, SyntaxKind::SEMICOLON)
1572 }
1573 #[inline]
1574 pub fn alter_token(&self) -> Option<SyntaxToken> {
1575 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1576 }
1577 #[inline]
1578 pub fn class_token(&self) -> Option<SyntaxToken> {
1579 support::token(&self.syntax, SyntaxKind::CLASS_KW)
1580 }
1581 #[inline]
1582 pub fn operator_token(&self) -> Option<SyntaxToken> {
1583 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
1584 }
1585 #[inline]
1586 pub fn using_token(&self) -> Option<SyntaxToken> {
1587 support::token(&self.syntax, SyntaxKind::USING_KW)
1588 }
1589}
1590
1591#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1592pub struct AlterOperatorFamily {
1593 pub(crate) syntax: SyntaxNode,
1594}
1595impl AlterOperatorFamily {
1596 #[inline]
1597 pub fn add_op_class_options(&self) -> Option<AddOpClassOptions> {
1598 support::child(&self.syntax)
1599 }
1600 #[inline]
1601 pub fn drop_op_class_options(&self) -> Option<DropOpClassOptions> {
1602 support::child(&self.syntax)
1603 }
1604 #[inline]
1605 pub fn name_ref(&self) -> Option<NameRef> {
1606 support::child(&self.syntax)
1607 }
1608 #[inline]
1609 pub fn owner_to(&self) -> Option<OwnerTo> {
1610 support::child(&self.syntax)
1611 }
1612 #[inline]
1613 pub fn path(&self) -> Option<Path> {
1614 support::child(&self.syntax)
1615 }
1616 #[inline]
1617 pub fn rename_to(&self) -> Option<RenameTo> {
1618 support::child(&self.syntax)
1619 }
1620 #[inline]
1621 pub fn set_schema(&self) -> Option<SetSchema> {
1622 support::child(&self.syntax)
1623 }
1624 #[inline]
1625 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
1626 support::token(&self.syntax, SyntaxKind::SEMICOLON)
1627 }
1628 #[inline]
1629 pub fn alter_token(&self) -> Option<SyntaxToken> {
1630 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1631 }
1632 #[inline]
1633 pub fn family_token(&self) -> Option<SyntaxToken> {
1634 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
1635 }
1636 #[inline]
1637 pub fn operator_token(&self) -> Option<SyntaxToken> {
1638 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
1639 }
1640 #[inline]
1641 pub fn using_token(&self) -> Option<SyntaxToken> {
1642 support::token(&self.syntax, SyntaxKind::USING_KW)
1643 }
1644}
1645
1646#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1647pub struct AlterOption {
1648 pub(crate) syntax: SyntaxNode,
1649}
1650impl AlterOption {
1651 #[inline]
1652 pub fn literal(&self) -> Option<Literal> {
1653 support::child(&self.syntax)
1654 }
1655 #[inline]
1656 pub fn name(&self) -> Option<Name> {
1657 support::child(&self.syntax)
1658 }
1659 #[inline]
1660 pub fn add_token(&self) -> Option<SyntaxToken> {
1661 support::token(&self.syntax, SyntaxKind::ADD_KW)
1662 }
1663 #[inline]
1664 pub fn drop_token(&self) -> Option<SyntaxToken> {
1665 support::token(&self.syntax, SyntaxKind::DROP_KW)
1666 }
1667 #[inline]
1668 pub fn set_token(&self) -> Option<SyntaxToken> {
1669 support::token(&self.syntax, SyntaxKind::SET_KW)
1670 }
1671}
1672
1673#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1674pub struct AlterOptionList {
1675 pub(crate) syntax: SyntaxNode,
1676}
1677impl AlterOptionList {
1678 #[inline]
1679 pub fn alter_options(&self) -> AstChildren<AlterOption> {
1680 support::children(&self.syntax)
1681 }
1682 #[inline]
1683 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1684 support::token(&self.syntax, SyntaxKind::L_PAREN)
1685 }
1686 #[inline]
1687 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1688 support::token(&self.syntax, SyntaxKind::R_PAREN)
1689 }
1690 #[inline]
1691 pub fn options_token(&self) -> Option<SyntaxToken> {
1692 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
1693 }
1694}
1695
1696#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1697pub struct AlterPolicy {
1698 pub(crate) syntax: SyntaxNode,
1699}
1700impl AlterPolicy {
1701 #[inline]
1702 pub fn name_ref(&self) -> Option<NameRef> {
1703 support::child(&self.syntax)
1704 }
1705 #[inline]
1706 pub fn on_table(&self) -> Option<OnTable> {
1707 support::child(&self.syntax)
1708 }
1709 #[inline]
1710 pub fn rename_to(&self) -> Option<RenameTo> {
1711 support::child(&self.syntax)
1712 }
1713 #[inline]
1714 pub fn role_ref_list(&self) -> Option<RoleRefList> {
1715 support::child(&self.syntax)
1716 }
1717 #[inline]
1718 pub fn using_expr_clause(&self) -> Option<UsingExprClause> {
1719 support::child(&self.syntax)
1720 }
1721 #[inline]
1722 pub fn with_check_expr_clause(&self) -> Option<WithCheckExprClause> {
1723 support::child(&self.syntax)
1724 }
1725 #[inline]
1726 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
1727 support::token(&self.syntax, SyntaxKind::SEMICOLON)
1728 }
1729 #[inline]
1730 pub fn alter_token(&self) -> Option<SyntaxToken> {
1731 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1732 }
1733 #[inline]
1734 pub fn policy_token(&self) -> Option<SyntaxToken> {
1735 support::token(&self.syntax, SyntaxKind::POLICY_KW)
1736 }
1737 #[inline]
1738 pub fn to_token(&self) -> Option<SyntaxToken> {
1739 support::token(&self.syntax, SyntaxKind::TO_KW)
1740 }
1741}
1742
1743#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1744pub struct AlterProcedure {
1745 pub(crate) syntax: SyntaxNode,
1746}
1747impl AlterProcedure {
1748 #[inline]
1749 pub fn depends_on_extension(&self) -> Option<DependsOnExtension> {
1750 support::child(&self.syntax)
1751 }
1752 #[inline]
1753 pub fn func_option_list(&self) -> Option<FuncOptionList> {
1754 support::child(&self.syntax)
1755 }
1756 #[inline]
1757 pub fn function_sig(&self) -> Option<FunctionSig> {
1758 support::child(&self.syntax)
1759 }
1760 #[inline]
1761 pub fn no_depends_on_extension(&self) -> Option<NoDependsOnExtension> {
1762 support::child(&self.syntax)
1763 }
1764 #[inline]
1765 pub fn owner_to(&self) -> Option<OwnerTo> {
1766 support::child(&self.syntax)
1767 }
1768 #[inline]
1769 pub fn rename_to(&self) -> Option<RenameTo> {
1770 support::child(&self.syntax)
1771 }
1772 #[inline]
1773 pub fn set_schema(&self) -> Option<SetSchema> {
1774 support::child(&self.syntax)
1775 }
1776 #[inline]
1777 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
1778 support::token(&self.syntax, SyntaxKind::SEMICOLON)
1779 }
1780 #[inline]
1781 pub fn alter_token(&self) -> Option<SyntaxToken> {
1782 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1783 }
1784 #[inline]
1785 pub fn procedure_token(&self) -> Option<SyntaxToken> {
1786 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
1787 }
1788 #[inline]
1789 pub fn restrict_token(&self) -> Option<SyntaxToken> {
1790 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
1791 }
1792}
1793
1794#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1795pub struct AlterPropertyGraph {
1796 pub(crate) syntax: SyntaxNode,
1797}
1798impl AlterPropertyGraph {
1799 #[inline]
1800 pub fn alter_property_graph_action(&self) -> Option<AlterPropertyGraphAction> {
1801 support::child(&self.syntax)
1802 }
1803 #[inline]
1804 pub fn if_exists(&self) -> Option<IfExists> {
1805 support::child(&self.syntax)
1806 }
1807 #[inline]
1808 pub fn path(&self) -> Option<Path> {
1809 support::child(&self.syntax)
1810 }
1811 #[inline]
1812 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
1813 support::token(&self.syntax, SyntaxKind::SEMICOLON)
1814 }
1815 #[inline]
1816 pub fn alter_token(&self) -> Option<SyntaxToken> {
1817 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1818 }
1819 #[inline]
1820 pub fn graph_token(&self) -> Option<SyntaxToken> {
1821 support::token(&self.syntax, SyntaxKind::GRAPH_KW)
1822 }
1823 #[inline]
1824 pub fn property_token(&self) -> Option<SyntaxToken> {
1825 support::token(&self.syntax, SyntaxKind::PROPERTY_KW)
1826 }
1827}
1828
1829#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1830pub struct AlterPublication {
1831 pub(crate) syntax: SyntaxNode,
1832}
1833impl AlterPublication {
1834 #[inline]
1835 pub fn except_table_clause(&self) -> Option<ExceptTableClause> {
1836 support::child(&self.syntax)
1837 }
1838 #[inline]
1839 pub fn name_ref(&self) -> Option<NameRef> {
1840 support::child(&self.syntax)
1841 }
1842 #[inline]
1843 pub fn owner_to(&self) -> Option<OwnerTo> {
1844 support::child(&self.syntax)
1845 }
1846 #[inline]
1847 pub fn publication_objects(&self) -> AstChildren<PublicationObject> {
1848 support::children(&self.syntax)
1849 }
1850 #[inline]
1851 pub fn rename_to(&self) -> Option<RenameTo> {
1852 support::child(&self.syntax)
1853 }
1854 #[inline]
1855 pub fn set_options(&self) -> Option<SetOptions> {
1856 support::child(&self.syntax)
1857 }
1858 #[inline]
1859 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
1860 support::token(&self.syntax, SyntaxKind::SEMICOLON)
1861 }
1862 #[inline]
1863 pub fn add_token(&self) -> Option<SyntaxToken> {
1864 support::token(&self.syntax, SyntaxKind::ADD_KW)
1865 }
1866 #[inline]
1867 pub fn all_token(&self) -> Option<SyntaxToken> {
1868 support::token(&self.syntax, SyntaxKind::ALL_KW)
1869 }
1870 #[inline]
1871 pub fn alter_token(&self) -> Option<SyntaxToken> {
1872 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1873 }
1874 #[inline]
1875 pub fn drop_token(&self) -> Option<SyntaxToken> {
1876 support::token(&self.syntax, SyntaxKind::DROP_KW)
1877 }
1878 #[inline]
1879 pub fn publication_token(&self) -> Option<SyntaxToken> {
1880 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
1881 }
1882 #[inline]
1883 pub fn sequences_token(&self) -> Option<SyntaxToken> {
1884 support::token(&self.syntax, SyntaxKind::SEQUENCES_KW)
1885 }
1886 #[inline]
1887 pub fn set_token(&self) -> Option<SyntaxToken> {
1888 support::token(&self.syntax, SyntaxKind::SET_KW)
1889 }
1890 #[inline]
1891 pub fn tables_token(&self) -> Option<SyntaxToken> {
1892 support::token(&self.syntax, SyntaxKind::TABLES_KW)
1893 }
1894}
1895
1896#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1897pub struct AlterRole {
1898 pub(crate) syntax: SyntaxNode,
1899}
1900impl AlterRole {
1901 #[inline]
1902 pub fn name_ref(&self) -> Option<NameRef> {
1903 support::child(&self.syntax)
1904 }
1905 #[inline]
1906 pub fn path(&self) -> Option<Path> {
1907 support::child(&self.syntax)
1908 }
1909 #[inline]
1910 pub fn rename_to(&self) -> Option<RenameTo> {
1911 support::child(&self.syntax)
1912 }
1913 #[inline]
1914 pub fn role_option_list(&self) -> Option<RoleOptionList> {
1915 support::child(&self.syntax)
1916 }
1917 #[inline]
1918 pub fn role_ref(&self) -> Option<RoleRef> {
1919 support::child(&self.syntax)
1920 }
1921 #[inline]
1922 pub fn set_config_param(&self) -> Option<SetConfigParam> {
1923 support::child(&self.syntax)
1924 }
1925 #[inline]
1926 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
1927 support::token(&self.syntax, SyntaxKind::SEMICOLON)
1928 }
1929 #[inline]
1930 pub fn all_token(&self) -> Option<SyntaxToken> {
1931 support::token(&self.syntax, SyntaxKind::ALL_KW)
1932 }
1933 #[inline]
1934 pub fn alter_token(&self) -> Option<SyntaxToken> {
1935 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1936 }
1937 #[inline]
1938 pub fn database_token(&self) -> Option<SyntaxToken> {
1939 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
1940 }
1941 #[inline]
1942 pub fn in_token(&self) -> Option<SyntaxToken> {
1943 support::token(&self.syntax, SyntaxKind::IN_KW)
1944 }
1945 #[inline]
1946 pub fn reset_token(&self) -> Option<SyntaxToken> {
1947 support::token(&self.syntax, SyntaxKind::RESET_KW)
1948 }
1949 #[inline]
1950 pub fn role_token(&self) -> Option<SyntaxToken> {
1951 support::token(&self.syntax, SyntaxKind::ROLE_KW)
1952 }
1953}
1954
1955#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1956pub struct AlterRoutine {
1957 pub(crate) syntax: SyntaxNode,
1958}
1959impl AlterRoutine {
1960 #[inline]
1961 pub fn depends_on_extension(&self) -> Option<DependsOnExtension> {
1962 support::child(&self.syntax)
1963 }
1964 #[inline]
1965 pub fn func_option_list(&self) -> Option<FuncOptionList> {
1966 support::child(&self.syntax)
1967 }
1968 #[inline]
1969 pub fn function_sig(&self) -> Option<FunctionSig> {
1970 support::child(&self.syntax)
1971 }
1972 #[inline]
1973 pub fn no_depends_on_extension(&self) -> Option<NoDependsOnExtension> {
1974 support::child(&self.syntax)
1975 }
1976 #[inline]
1977 pub fn owner_to(&self) -> Option<OwnerTo> {
1978 support::child(&self.syntax)
1979 }
1980 #[inline]
1981 pub fn rename_to(&self) -> Option<RenameTo> {
1982 support::child(&self.syntax)
1983 }
1984 #[inline]
1985 pub fn set_schema(&self) -> Option<SetSchema> {
1986 support::child(&self.syntax)
1987 }
1988 #[inline]
1989 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
1990 support::token(&self.syntax, SyntaxKind::SEMICOLON)
1991 }
1992 #[inline]
1993 pub fn alter_token(&self) -> Option<SyntaxToken> {
1994 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1995 }
1996 #[inline]
1997 pub fn restrict_token(&self) -> Option<SyntaxToken> {
1998 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
1999 }
2000 #[inline]
2001 pub fn routine_token(&self) -> Option<SyntaxToken> {
2002 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
2003 }
2004}
2005
2006#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2007pub struct AlterRule {
2008 pub(crate) syntax: SyntaxNode,
2009}
2010impl AlterRule {
2011 #[inline]
2012 pub fn name_ref(&self) -> Option<NameRef> {
2013 support::child(&self.syntax)
2014 }
2015 #[inline]
2016 pub fn on_table(&self) -> Option<OnTable> {
2017 support::child(&self.syntax)
2018 }
2019 #[inline]
2020 pub fn rename_to(&self) -> Option<RenameTo> {
2021 support::child(&self.syntax)
2022 }
2023 #[inline]
2024 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
2025 support::token(&self.syntax, SyntaxKind::SEMICOLON)
2026 }
2027 #[inline]
2028 pub fn alter_token(&self) -> Option<SyntaxToken> {
2029 support::token(&self.syntax, SyntaxKind::ALTER_KW)
2030 }
2031 #[inline]
2032 pub fn on_token(&self) -> Option<SyntaxToken> {
2033 support::token(&self.syntax, SyntaxKind::ON_KW)
2034 }
2035 #[inline]
2036 pub fn rule_token(&self) -> Option<SyntaxToken> {
2037 support::token(&self.syntax, SyntaxKind::RULE_KW)
2038 }
2039}
2040
2041#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2042pub struct AlterSchema {
2043 pub(crate) syntax: SyntaxNode,
2044}
2045impl AlterSchema {
2046 #[inline]
2047 pub fn name_ref(&self) -> Option<NameRef> {
2048 support::child(&self.syntax)
2049 }
2050 #[inline]
2051 pub fn owner_to(&self) -> Option<OwnerTo> {
2052 support::child(&self.syntax)
2053 }
2054 #[inline]
2055 pub fn rename_to(&self) -> Option<RenameTo> {
2056 support::child(&self.syntax)
2057 }
2058 #[inline]
2059 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
2060 support::token(&self.syntax, SyntaxKind::SEMICOLON)
2061 }
2062 #[inline]
2063 pub fn alter_token(&self) -> Option<SyntaxToken> {
2064 support::token(&self.syntax, SyntaxKind::ALTER_KW)
2065 }
2066 #[inline]
2067 pub fn schema_token(&self) -> Option<SyntaxToken> {
2068 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
2069 }
2070}
2071
2072#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2073pub struct AlterSequence {
2074 pub(crate) syntax: SyntaxNode,
2075}
2076impl AlterSequence {
2077 #[inline]
2078 pub fn if_exists(&self) -> Option<IfExists> {
2079 support::child(&self.syntax)
2080 }
2081 #[inline]
2082 pub fn owner_to(&self) -> Option<OwnerTo> {
2083 support::child(&self.syntax)
2084 }
2085 #[inline]
2086 pub fn path(&self) -> Option<Path> {
2087 support::child(&self.syntax)
2088 }
2089 #[inline]
2090 pub fn rename_to(&self) -> Option<RenameTo> {
2091 support::child(&self.syntax)
2092 }
2093 #[inline]
2094 pub fn sequence_option(&self) -> Option<SequenceOption> {
2095 support::child(&self.syntax)
2096 }
2097 #[inline]
2098 pub fn sequence_options(&self) -> AstChildren<SequenceOption> {
2099 support::children(&self.syntax)
2100 }
2101 #[inline]
2102 pub fn set_schema(&self) -> Option<SetSchema> {
2103 support::child(&self.syntax)
2104 }
2105 #[inline]
2106 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
2107 support::token(&self.syntax, SyntaxKind::SEMICOLON)
2108 }
2109 #[inline]
2110 pub fn alter_token(&self) -> Option<SyntaxToken> {
2111 support::token(&self.syntax, SyntaxKind::ALTER_KW)
2112 }
2113 #[inline]
2114 pub fn logged_token(&self) -> Option<SyntaxToken> {
2115 support::token(&self.syntax, SyntaxKind::LOGGED_KW)
2116 }
2117 #[inline]
2118 pub fn sequence_token(&self) -> Option<SyntaxToken> {
2119 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
2120 }
2121 #[inline]
2122 pub fn set_token(&self) -> Option<SyntaxToken> {
2123 support::token(&self.syntax, SyntaxKind::SET_KW)
2124 }
2125 #[inline]
2126 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
2127 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
2128 }
2129}
2130
2131#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2132pub struct AlterServer {
2133 pub(crate) syntax: SyntaxNode,
2134}
2135impl AlterServer {
2136 #[inline]
2137 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
2138 support::child(&self.syntax)
2139 }
2140 #[inline]
2141 pub fn literal(&self) -> Option<Literal> {
2142 support::child(&self.syntax)
2143 }
2144 #[inline]
2145 pub fn name_ref(&self) -> Option<NameRef> {
2146 support::child(&self.syntax)
2147 }
2148 #[inline]
2149 pub fn owner_to(&self) -> Option<OwnerTo> {
2150 support::child(&self.syntax)
2151 }
2152 #[inline]
2153 pub fn rename_to(&self) -> Option<RenameTo> {
2154 support::child(&self.syntax)
2155 }
2156 #[inline]
2157 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
2158 support::token(&self.syntax, SyntaxKind::SEMICOLON)
2159 }
2160 #[inline]
2161 pub fn alter_token(&self) -> Option<SyntaxToken> {
2162 support::token(&self.syntax, SyntaxKind::ALTER_KW)
2163 }
2164 #[inline]
2165 pub fn server_token(&self) -> Option<SyntaxToken> {
2166 support::token(&self.syntax, SyntaxKind::SERVER_KW)
2167 }
2168 #[inline]
2169 pub fn version_token(&self) -> Option<SyntaxToken> {
2170 support::token(&self.syntax, SyntaxKind::VERSION_KW)
2171 }
2172}
2173
2174#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2175pub struct AlterSetStatistics {
2176 pub(crate) syntax: SyntaxNode,
2177}
2178impl AlterSetStatistics {
2179 #[inline]
2180 pub fn literal(&self) -> Option<Literal> {
2181 support::child(&self.syntax)
2182 }
2183 #[inline]
2184 pub fn name_ref(&self) -> Option<NameRef> {
2185 support::child(&self.syntax)
2186 }
2187 #[inline]
2188 pub fn column_token(&self) -> Option<SyntaxToken> {
2189 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
2190 }
2191 #[inline]
2192 pub fn set_token(&self) -> Option<SyntaxToken> {
2193 support::token(&self.syntax, SyntaxKind::SET_KW)
2194 }
2195 #[inline]
2196 pub fn statistics_token(&self) -> Option<SyntaxToken> {
2197 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
2198 }
2199}
2200
2201#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2202pub struct AlterStatistics {
2203 pub(crate) syntax: SyntaxNode,
2204}
2205impl AlterStatistics {
2206 #[inline]
2207 pub fn literal(&self) -> Option<Literal> {
2208 support::child(&self.syntax)
2209 }
2210 #[inline]
2211 pub fn owner_to(&self) -> Option<OwnerTo> {
2212 support::child(&self.syntax)
2213 }
2214 #[inline]
2215 pub fn path(&self) -> Option<Path> {
2216 support::child(&self.syntax)
2217 }
2218 #[inline]
2219 pub fn rename_to(&self) -> Option<RenameTo> {
2220 support::child(&self.syntax)
2221 }
2222 #[inline]
2223 pub fn set_schema(&self) -> Option<SetSchema> {
2224 support::child(&self.syntax)
2225 }
2226 #[inline]
2227 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
2228 support::token(&self.syntax, SyntaxKind::SEMICOLON)
2229 }
2230 #[inline]
2231 pub fn alter_token(&self) -> Option<SyntaxToken> {
2232 support::token(&self.syntax, SyntaxKind::ALTER_KW)
2233 }
2234 #[inline]
2235 pub fn default_token(&self) -> Option<SyntaxToken> {
2236 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
2237 }
2238 #[inline]
2239 pub fn set_token(&self) -> Option<SyntaxToken> {
2240 support::token(&self.syntax, SyntaxKind::SET_KW)
2241 }
2242 #[inline]
2243 pub fn statistics_token(&self) -> Option<SyntaxToken> {
2244 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
2245 }
2246}
2247
2248#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2249pub struct AlterSubscription {
2250 pub(crate) syntax: SyntaxNode,
2251}
2252impl AlterSubscription {
2253 #[inline]
2254 pub fn attribute_list(&self) -> Option<AttributeList> {
2255 support::child(&self.syntax)
2256 }
2257 #[inline]
2258 pub fn literal(&self) -> Option<Literal> {
2259 support::child(&self.syntax)
2260 }
2261 #[inline]
2262 pub fn name_ref(&self) -> Option<NameRef> {
2263 support::child(&self.syntax)
2264 }
2265 #[inline]
2266 pub fn name_refs(&self) -> AstChildren<NameRef> {
2267 support::children(&self.syntax)
2268 }
2269 #[inline]
2270 pub fn names(&self) -> AstChildren<Name> {
2271 support::children(&self.syntax)
2272 }
2273 #[inline]
2274 pub fn owner_to(&self) -> Option<OwnerTo> {
2275 support::child(&self.syntax)
2276 }
2277 #[inline]
2278 pub fn rename_to(&self) -> Option<RenameTo> {
2279 support::child(&self.syntax)
2280 }
2281 #[inline]
2282 pub fn set_options(&self) -> Option<SetOptions> {
2283 support::child(&self.syntax)
2284 }
2285 #[inline]
2286 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
2287 support::token(&self.syntax, SyntaxKind::SEMICOLON)
2288 }
2289 #[inline]
2290 pub fn add_token(&self) -> Option<SyntaxToken> {
2291 support::token(&self.syntax, SyntaxKind::ADD_KW)
2292 }
2293 #[inline]
2294 pub fn alter_token(&self) -> Option<SyntaxToken> {
2295 support::token(&self.syntax, SyntaxKind::ALTER_KW)
2296 }
2297 #[inline]
2298 pub fn connection_token(&self) -> Option<SyntaxToken> {
2299 support::token(&self.syntax, SyntaxKind::CONNECTION_KW)
2300 }
2301 #[inline]
2302 pub fn disable_token(&self) -> Option<SyntaxToken> {
2303 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
2304 }
2305 #[inline]
2306 pub fn drop_token(&self) -> Option<SyntaxToken> {
2307 support::token(&self.syntax, SyntaxKind::DROP_KW)
2308 }
2309 #[inline]
2310 pub fn enable_token(&self) -> Option<SyntaxToken> {
2311 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
2312 }
2313 #[inline]
2314 pub fn publication_token(&self) -> Option<SyntaxToken> {
2315 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
2316 }
2317 #[inline]
2318 pub fn refresh_token(&self) -> Option<SyntaxToken> {
2319 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
2320 }
2321 #[inline]
2322 pub fn server_token(&self) -> Option<SyntaxToken> {
2323 support::token(&self.syntax, SyntaxKind::SERVER_KW)
2324 }
2325 #[inline]
2326 pub fn set_token(&self) -> Option<SyntaxToken> {
2327 support::token(&self.syntax, SyntaxKind::SET_KW)
2328 }
2329 #[inline]
2330 pub fn skip_token(&self) -> Option<SyntaxToken> {
2331 support::token(&self.syntax, SyntaxKind::SKIP_KW)
2332 }
2333 #[inline]
2334 pub fn subscription_token(&self) -> Option<SyntaxToken> {
2335 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
2336 }
2337 #[inline]
2338 pub fn with_token(&self) -> Option<SyntaxToken> {
2339 support::token(&self.syntax, SyntaxKind::WITH_KW)
2340 }
2341}
2342
2343#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2344pub struct AlterSystem {
2345 pub(crate) syntax: SyntaxNode,
2346}
2347impl AlterSystem {
2348 #[inline]
2349 pub fn path(&self) -> Option<Path> {
2350 support::child(&self.syntax)
2351 }
2352 #[inline]
2353 pub fn set_config_param(&self) -> Option<SetConfigParam> {
2354 support::child(&self.syntax)
2355 }
2356 #[inline]
2357 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
2358 support::token(&self.syntax, SyntaxKind::SEMICOLON)
2359 }
2360 #[inline]
2361 pub fn all_token(&self) -> Option<SyntaxToken> {
2362 support::token(&self.syntax, SyntaxKind::ALL_KW)
2363 }
2364 #[inline]
2365 pub fn alter_token(&self) -> Option<SyntaxToken> {
2366 support::token(&self.syntax, SyntaxKind::ALTER_KW)
2367 }
2368 #[inline]
2369 pub fn reset_token(&self) -> Option<SyntaxToken> {
2370 support::token(&self.syntax, SyntaxKind::RESET_KW)
2371 }
2372 #[inline]
2373 pub fn system_token(&self) -> Option<SyntaxToken> {
2374 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
2375 }
2376}
2377
2378#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2379pub struct AlterTable {
2380 pub(crate) syntax: SyntaxNode,
2381}
2382impl AlterTable {
2383 #[inline]
2384 pub fn actions(&self) -> AstChildren<AlterTableAction> {
2385 support::children(&self.syntax)
2386 }
2387 #[inline]
2388 pub fn if_exists(&self) -> Option<IfExists> {
2389 support::child(&self.syntax)
2390 }
2391 #[inline]
2392 pub fn owned_by_roles(&self) -> Option<OwnedByRoles> {
2393 support::child(&self.syntax)
2394 }
2395 #[inline]
2396 pub fn relation_name(&self) -> Option<RelationName> {
2397 support::child(&self.syntax)
2398 }
2399 #[inline]
2400 pub fn set_tablespace(&self) -> Option<SetTablespace> {
2401 support::child(&self.syntax)
2402 }
2403 #[inline]
2404 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
2405 support::token(&self.syntax, SyntaxKind::SEMICOLON)
2406 }
2407 #[inline]
2408 pub fn all_token(&self) -> Option<SyntaxToken> {
2409 support::token(&self.syntax, SyntaxKind::ALL_KW)
2410 }
2411 #[inline]
2412 pub fn alter_token(&self) -> Option<SyntaxToken> {
2413 support::token(&self.syntax, SyntaxKind::ALTER_KW)
2414 }
2415 #[inline]
2416 pub fn in_token(&self) -> Option<SyntaxToken> {
2417 support::token(&self.syntax, SyntaxKind::IN_KW)
2418 }
2419 #[inline]
2420 pub fn nowait_token(&self) -> Option<SyntaxToken> {
2421 support::token(&self.syntax, SyntaxKind::NOWAIT_KW)
2422 }
2423 #[inline]
2424 pub fn table_token(&self) -> Option<SyntaxToken> {
2425 support::token(&self.syntax, SyntaxKind::TABLE_KW)
2426 }
2427 #[inline]
2428 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
2429 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
2430 }
2431}
2432
2433#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2434pub struct AlterTablespace {
2435 pub(crate) syntax: SyntaxNode,
2436}
2437impl AlterTablespace {
2438 #[inline]
2439 pub fn owner_to(&self) -> Option<OwnerTo> {
2440 support::child(&self.syntax)
2441 }
2442 #[inline]
2443 pub fn path(&self) -> Option<Path> {
2444 support::child(&self.syntax)
2445 }
2446 #[inline]
2447 pub fn rename_to(&self) -> Option<RenameTo> {
2448 support::child(&self.syntax)
2449 }
2450 #[inline]
2451 pub fn reset_options(&self) -> Option<ResetOptions> {
2452 support::child(&self.syntax)
2453 }
2454 #[inline]
2455 pub fn set_options(&self) -> Option<SetOptions> {
2456 support::child(&self.syntax)
2457 }
2458 #[inline]
2459 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
2460 support::token(&self.syntax, SyntaxKind::SEMICOLON)
2461 }
2462 #[inline]
2463 pub fn alter_token(&self) -> Option<SyntaxToken> {
2464 support::token(&self.syntax, SyntaxKind::ALTER_KW)
2465 }
2466 #[inline]
2467 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
2468 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
2469 }
2470}
2471
2472#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2473pub struct AlterTextSearchConfiguration {
2474 pub(crate) syntax: SyntaxNode,
2475}
2476impl AlterTextSearchConfiguration {
2477 #[inline]
2478 pub fn if_exists(&self) -> Option<IfExists> {
2479 support::child(&self.syntax)
2480 }
2481 #[inline]
2482 pub fn name_refs(&self) -> AstChildren<NameRef> {
2483 support::children(&self.syntax)
2484 }
2485 #[inline]
2486 pub fn owner_to(&self) -> Option<OwnerTo> {
2487 support::child(&self.syntax)
2488 }
2489 #[inline]
2490 pub fn path(&self) -> Option<Path> {
2491 support::child(&self.syntax)
2492 }
2493 #[inline]
2494 pub fn paths(&self) -> AstChildren<Path> {
2495 support::children(&self.syntax)
2496 }
2497 #[inline]
2498 pub fn rename_to(&self) -> Option<RenameTo> {
2499 support::child(&self.syntax)
2500 }
2501 #[inline]
2502 pub fn set_schema(&self) -> Option<SetSchema> {
2503 support::child(&self.syntax)
2504 }
2505 #[inline]
2506 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
2507 support::token(&self.syntax, SyntaxKind::SEMICOLON)
2508 }
2509 #[inline]
2510 pub fn add_token(&self) -> Option<SyntaxToken> {
2511 support::token(&self.syntax, SyntaxKind::ADD_KW)
2512 }
2513 #[inline]
2514 pub fn alter_token(&self) -> Option<SyntaxToken> {
2515 support::token(&self.syntax, SyntaxKind::ALTER_KW)
2516 }
2517 #[inline]
2518 pub fn configuration_token(&self) -> Option<SyntaxToken> {
2519 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
2520 }
2521 #[inline]
2522 pub fn drop_token(&self) -> Option<SyntaxToken> {
2523 support::token(&self.syntax, SyntaxKind::DROP_KW)
2524 }
2525 #[inline]
2526 pub fn for_token(&self) -> Option<SyntaxToken> {
2527 support::token(&self.syntax, SyntaxKind::FOR_KW)
2528 }
2529 #[inline]
2530 pub fn mapping_token(&self) -> Option<SyntaxToken> {
2531 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
2532 }
2533 #[inline]
2534 pub fn replace_token(&self) -> Option<SyntaxToken> {
2535 support::token(&self.syntax, SyntaxKind::REPLACE_KW)
2536 }
2537 #[inline]
2538 pub fn search_token(&self) -> Option<SyntaxToken> {
2539 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
2540 }
2541 #[inline]
2542 pub fn text_token(&self) -> Option<SyntaxToken> {
2543 support::token(&self.syntax, SyntaxKind::TEXT_KW)
2544 }
2545 #[inline]
2546 pub fn with_token(&self) -> Option<SyntaxToken> {
2547 support::token(&self.syntax, SyntaxKind::WITH_KW)
2548 }
2549}
2550
2551#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2552pub struct AlterTextSearchDictionary {
2553 pub(crate) syntax: SyntaxNode,
2554}
2555impl AlterTextSearchDictionary {
2556 #[inline]
2557 pub fn attribute_list(&self) -> Option<AttributeList> {
2558 support::child(&self.syntax)
2559 }
2560 #[inline]
2561 pub fn owner_to(&self) -> Option<OwnerTo> {
2562 support::child(&self.syntax)
2563 }
2564 #[inline]
2565 pub fn path(&self) -> Option<Path> {
2566 support::child(&self.syntax)
2567 }
2568 #[inline]
2569 pub fn rename_to(&self) -> Option<RenameTo> {
2570 support::child(&self.syntax)
2571 }
2572 #[inline]
2573 pub fn set_schema(&self) -> Option<SetSchema> {
2574 support::child(&self.syntax)
2575 }
2576 #[inline]
2577 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
2578 support::token(&self.syntax, SyntaxKind::SEMICOLON)
2579 }
2580 #[inline]
2581 pub fn alter_token(&self) -> Option<SyntaxToken> {
2582 support::token(&self.syntax, SyntaxKind::ALTER_KW)
2583 }
2584 #[inline]
2585 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
2586 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
2587 }
2588 #[inline]
2589 pub fn search_token(&self) -> Option<SyntaxToken> {
2590 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
2591 }
2592 #[inline]
2593 pub fn text_token(&self) -> Option<SyntaxToken> {
2594 support::token(&self.syntax, SyntaxKind::TEXT_KW)
2595 }
2596}
2597
2598#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2599pub struct AlterTextSearchParser {
2600 pub(crate) syntax: SyntaxNode,
2601}
2602impl AlterTextSearchParser {
2603 #[inline]
2604 pub fn path(&self) -> Option<Path> {
2605 support::child(&self.syntax)
2606 }
2607 #[inline]
2608 pub fn rename_to(&self) -> Option<RenameTo> {
2609 support::child(&self.syntax)
2610 }
2611 #[inline]
2612 pub fn set_schema(&self) -> Option<SetSchema> {
2613 support::child(&self.syntax)
2614 }
2615 #[inline]
2616 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
2617 support::token(&self.syntax, SyntaxKind::SEMICOLON)
2618 }
2619 #[inline]
2620 pub fn alter_token(&self) -> Option<SyntaxToken> {
2621 support::token(&self.syntax, SyntaxKind::ALTER_KW)
2622 }
2623 #[inline]
2624 pub fn parser_token(&self) -> Option<SyntaxToken> {
2625 support::token(&self.syntax, SyntaxKind::PARSER_KW)
2626 }
2627 #[inline]
2628 pub fn search_token(&self) -> Option<SyntaxToken> {
2629 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
2630 }
2631 #[inline]
2632 pub fn text_token(&self) -> Option<SyntaxToken> {
2633 support::token(&self.syntax, SyntaxKind::TEXT_KW)
2634 }
2635}
2636
2637#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2638pub struct AlterTextSearchTemplate {
2639 pub(crate) syntax: SyntaxNode,
2640}
2641impl AlterTextSearchTemplate {
2642 #[inline]
2643 pub fn path(&self) -> Option<Path> {
2644 support::child(&self.syntax)
2645 }
2646 #[inline]
2647 pub fn rename_to(&self) -> Option<RenameTo> {
2648 support::child(&self.syntax)
2649 }
2650 #[inline]
2651 pub fn set_schema(&self) -> Option<SetSchema> {
2652 support::child(&self.syntax)
2653 }
2654 #[inline]
2655 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
2656 support::token(&self.syntax, SyntaxKind::SEMICOLON)
2657 }
2658 #[inline]
2659 pub fn alter_token(&self) -> Option<SyntaxToken> {
2660 support::token(&self.syntax, SyntaxKind::ALTER_KW)
2661 }
2662 #[inline]
2663 pub fn search_token(&self) -> Option<SyntaxToken> {
2664 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
2665 }
2666 #[inline]
2667 pub fn template_token(&self) -> Option<SyntaxToken> {
2668 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
2669 }
2670 #[inline]
2671 pub fn text_token(&self) -> Option<SyntaxToken> {
2672 support::token(&self.syntax, SyntaxKind::TEXT_KW)
2673 }
2674}
2675
2676#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2677pub struct AlterTrigger {
2678 pub(crate) syntax: SyntaxNode,
2679}
2680impl AlterTrigger {
2681 #[inline]
2682 pub fn depends_on_extension(&self) -> Option<DependsOnExtension> {
2683 support::child(&self.syntax)
2684 }
2685 #[inline]
2686 pub fn name_ref(&self) -> Option<NameRef> {
2687 support::child(&self.syntax)
2688 }
2689 #[inline]
2690 pub fn no_depends_on_extension(&self) -> Option<NoDependsOnExtension> {
2691 support::child(&self.syntax)
2692 }
2693 #[inline]
2694 pub fn on_table(&self) -> Option<OnTable> {
2695 support::child(&self.syntax)
2696 }
2697 #[inline]
2698 pub fn rename_to(&self) -> Option<RenameTo> {
2699 support::child(&self.syntax)
2700 }
2701 #[inline]
2702 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
2703 support::token(&self.syntax, SyntaxKind::SEMICOLON)
2704 }
2705 #[inline]
2706 pub fn alter_token(&self) -> Option<SyntaxToken> {
2707 support::token(&self.syntax, SyntaxKind::ALTER_KW)
2708 }
2709 #[inline]
2710 pub fn trigger_token(&self) -> Option<SyntaxToken> {
2711 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
2712 }
2713}
2714
2715#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2716pub struct AlterType {
2717 pub(crate) syntax: SyntaxNode,
2718}
2719impl AlterType {
2720 #[inline]
2721 pub fn add_value(&self) -> Option<AddValue> {
2722 support::child(&self.syntax)
2723 }
2724 #[inline]
2725 pub fn alter_type_actions(&self) -> AstChildren<AlterTypeAction> {
2726 support::children(&self.syntax)
2727 }
2728 #[inline]
2729 pub fn owner_to(&self) -> Option<OwnerTo> {
2730 support::child(&self.syntax)
2731 }
2732 #[inline]
2733 pub fn path(&self) -> Option<Path> {
2734 support::child(&self.syntax)
2735 }
2736 #[inline]
2737 pub fn rename_attribute(&self) -> Option<RenameAttribute> {
2738 support::child(&self.syntax)
2739 }
2740 #[inline]
2741 pub fn rename_to(&self) -> Option<RenameTo> {
2742 support::child(&self.syntax)
2743 }
2744 #[inline]
2745 pub fn rename_value(&self) -> Option<RenameValue> {
2746 support::child(&self.syntax)
2747 }
2748 #[inline]
2749 pub fn set_options(&self) -> Option<SetOptions> {
2750 support::child(&self.syntax)
2751 }
2752 #[inline]
2753 pub fn set_schema(&self) -> Option<SetSchema> {
2754 support::child(&self.syntax)
2755 }
2756 #[inline]
2757 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
2758 support::token(&self.syntax, SyntaxKind::SEMICOLON)
2759 }
2760 #[inline]
2761 pub fn alter_token(&self) -> Option<SyntaxToken> {
2762 support::token(&self.syntax, SyntaxKind::ALTER_KW)
2763 }
2764 #[inline]
2765 pub fn type_token(&self) -> Option<SyntaxToken> {
2766 support::token(&self.syntax, SyntaxKind::TYPE_KW)
2767 }
2768}
2769
2770#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2771pub struct AlterUser {
2772 pub(crate) syntax: SyntaxNode,
2773}
2774impl AlterUser {
2775 #[inline]
2776 pub fn name_ref(&self) -> Option<NameRef> {
2777 support::child(&self.syntax)
2778 }
2779 #[inline]
2780 pub fn rename_to(&self) -> Option<RenameTo> {
2781 support::child(&self.syntax)
2782 }
2783 #[inline]
2784 pub fn role_option_list(&self) -> Option<RoleOptionList> {
2785 support::child(&self.syntax)
2786 }
2787 #[inline]
2788 pub fn role_ref(&self) -> Option<RoleRef> {
2789 support::child(&self.syntax)
2790 }
2791 #[inline]
2792 pub fn set_config_param(&self) -> Option<SetConfigParam> {
2793 support::child(&self.syntax)
2794 }
2795 #[inline]
2796 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
2797 support::token(&self.syntax, SyntaxKind::SEMICOLON)
2798 }
2799 #[inline]
2800 pub fn all_token(&self) -> Option<SyntaxToken> {
2801 support::token(&self.syntax, SyntaxKind::ALL_KW)
2802 }
2803 #[inline]
2804 pub fn alter_token(&self) -> Option<SyntaxToken> {
2805 support::token(&self.syntax, SyntaxKind::ALTER_KW)
2806 }
2807 #[inline]
2808 pub fn database_token(&self) -> Option<SyntaxToken> {
2809 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
2810 }
2811 #[inline]
2812 pub fn in_token(&self) -> Option<SyntaxToken> {
2813 support::token(&self.syntax, SyntaxKind::IN_KW)
2814 }
2815 #[inline]
2816 pub fn reset_token(&self) -> Option<SyntaxToken> {
2817 support::token(&self.syntax, SyntaxKind::RESET_KW)
2818 }
2819 #[inline]
2820 pub fn user_token(&self) -> Option<SyntaxToken> {
2821 support::token(&self.syntax, SyntaxKind::USER_KW)
2822 }
2823}
2824
2825#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2826pub struct AlterUserMapping {
2827 pub(crate) syntax: SyntaxNode,
2828}
2829impl AlterUserMapping {
2830 #[inline]
2831 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
2832 support::child(&self.syntax)
2833 }
2834 #[inline]
2835 pub fn role_ref(&self) -> Option<RoleRef> {
2836 support::child(&self.syntax)
2837 }
2838 #[inline]
2839 pub fn server_name(&self) -> Option<ServerName> {
2840 support::child(&self.syntax)
2841 }
2842 #[inline]
2843 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
2844 support::token(&self.syntax, SyntaxKind::SEMICOLON)
2845 }
2846 #[inline]
2847 pub fn alter_token(&self) -> Option<SyntaxToken> {
2848 support::token(&self.syntax, SyntaxKind::ALTER_KW)
2849 }
2850 #[inline]
2851 pub fn for_token(&self) -> Option<SyntaxToken> {
2852 support::token(&self.syntax, SyntaxKind::FOR_KW)
2853 }
2854 #[inline]
2855 pub fn mapping_token(&self) -> Option<SyntaxToken> {
2856 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
2857 }
2858 #[inline]
2859 pub fn user_token(&self) -> Option<SyntaxToken> {
2860 support::token(&self.syntax, SyntaxKind::USER_KW)
2861 }
2862}
2863
2864#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2865pub struct AlterVertexEdgeLabels {
2866 pub(crate) syntax: SyntaxNode,
2867}
2868impl AlterVertexEdgeLabels {
2869 #[inline]
2870 pub fn add_label(&self) -> Option<AddLabel> {
2871 support::child(&self.syntax)
2872 }
2873 #[inline]
2874 pub fn add_labels(&self) -> AstChildren<AddLabel> {
2875 support::children(&self.syntax)
2876 }
2877 #[inline]
2878 pub fn name(&self) -> Option<Name> {
2879 support::child(&self.syntax)
2880 }
2881 #[inline]
2882 pub fn alter_token(&self) -> Option<SyntaxToken> {
2883 support::token(&self.syntax, SyntaxKind::ALTER_KW)
2884 }
2885 #[inline]
2886 pub fn edge_token(&self) -> Option<SyntaxToken> {
2887 support::token(&self.syntax, SyntaxKind::EDGE_KW)
2888 }
2889 #[inline]
2890 pub fn node_token(&self) -> Option<SyntaxToken> {
2891 support::token(&self.syntax, SyntaxKind::NODE_KW)
2892 }
2893 #[inline]
2894 pub fn relationship_token(&self) -> Option<SyntaxToken> {
2895 support::token(&self.syntax, SyntaxKind::RELATIONSHIP_KW)
2896 }
2897 #[inline]
2898 pub fn table_token(&self) -> Option<SyntaxToken> {
2899 support::token(&self.syntax, SyntaxKind::TABLE_KW)
2900 }
2901 #[inline]
2902 pub fn vertex_token(&self) -> Option<SyntaxToken> {
2903 support::token(&self.syntax, SyntaxKind::VERTEX_KW)
2904 }
2905}
2906
2907#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2908pub struct AlterView {
2909 pub(crate) syntax: SyntaxNode,
2910}
2911impl AlterView {
2912 #[inline]
2913 pub fn expr(&self) -> Option<Expr> {
2914 support::child(&self.syntax)
2915 }
2916 #[inline]
2917 pub fn if_exists(&self) -> Option<IfExists> {
2918 support::child(&self.syntax)
2919 }
2920 #[inline]
2921 pub fn name(&self) -> Option<Name> {
2922 support::child(&self.syntax)
2923 }
2924 #[inline]
2925 pub fn name_ref(&self) -> Option<NameRef> {
2926 support::child(&self.syntax)
2927 }
2928 #[inline]
2929 pub fn owner_to(&self) -> Option<OwnerTo> {
2930 support::child(&self.syntax)
2931 }
2932 #[inline]
2933 pub fn path(&self) -> Option<Path> {
2934 support::child(&self.syntax)
2935 }
2936 #[inline]
2937 pub fn rename_to(&self) -> Option<RenameTo> {
2938 support::child(&self.syntax)
2939 }
2940 #[inline]
2941 pub fn reset_options(&self) -> Option<ResetOptions> {
2942 support::child(&self.syntax)
2943 }
2944 #[inline]
2945 pub fn set_options(&self) -> Option<SetOptions> {
2946 support::child(&self.syntax)
2947 }
2948 #[inline]
2949 pub fn set_schema(&self) -> Option<SetSchema> {
2950 support::child(&self.syntax)
2951 }
2952 #[inline]
2953 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
2954 support::token(&self.syntax, SyntaxKind::SEMICOLON)
2955 }
2956 #[inline]
2957 pub fn alter_token(&self) -> Option<SyntaxToken> {
2958 support::token(&self.syntax, SyntaxKind::ALTER_KW)
2959 }
2960 #[inline]
2961 pub fn column_token(&self) -> Option<SyntaxToken> {
2962 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
2963 }
2964 #[inline]
2965 pub fn default_token(&self) -> Option<SyntaxToken> {
2966 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
2967 }
2968 #[inline]
2969 pub fn drop_token(&self) -> Option<SyntaxToken> {
2970 support::token(&self.syntax, SyntaxKind::DROP_KW)
2971 }
2972 #[inline]
2973 pub fn rename_token(&self) -> Option<SyntaxToken> {
2974 support::token(&self.syntax, SyntaxKind::RENAME_KW)
2975 }
2976 #[inline]
2977 pub fn set_token(&self) -> Option<SyntaxToken> {
2978 support::token(&self.syntax, SyntaxKind::SET_KW)
2979 }
2980 #[inline]
2981 pub fn to_token(&self) -> Option<SyntaxToken> {
2982 support::token(&self.syntax, SyntaxKind::TO_KW)
2983 }
2984 #[inline]
2985 pub fn view_token(&self) -> Option<SyntaxToken> {
2986 support::token(&self.syntax, SyntaxKind::VIEW_KW)
2987 }
2988}
2989
2990#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2991pub struct Analyze {
2992 pub(crate) syntax: SyntaxNode,
2993}
2994impl Analyze {
2995 #[inline]
2996 pub fn option_item_list(&self) -> Option<OptionItemList> {
2997 support::child(&self.syntax)
2998 }
2999 #[inline]
3000 pub fn table_and_columns_list(&self) -> Option<TableAndColumnsList> {
3001 support::child(&self.syntax)
3002 }
3003 #[inline]
3004 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
3005 support::token(&self.syntax, SyntaxKind::SEMICOLON)
3006 }
3007 #[inline]
3008 pub fn analyse_token(&self) -> Option<SyntaxToken> {
3009 support::token(&self.syntax, SyntaxKind::ANALYSE_KW)
3010 }
3011 #[inline]
3012 pub fn analyze_token(&self) -> Option<SyntaxToken> {
3013 support::token(&self.syntax, SyntaxKind::ANALYZE_KW)
3014 }
3015 #[inline]
3016 pub fn verbose_token(&self) -> Option<SyntaxToken> {
3017 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
3018 }
3019}
3020
3021#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3022pub struct AnyFn {
3023 pub(crate) syntax: SyntaxNode,
3024}
3025impl AnyFn {
3026 #[inline]
3027 pub fn expr(&self) -> Option<Expr> {
3028 support::child(&self.syntax)
3029 }
3030 #[inline]
3031 pub fn select_variant(&self) -> Option<SelectVariant> {
3032 support::child(&self.syntax)
3033 }
3034 #[inline]
3035 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3036 support::token(&self.syntax, SyntaxKind::L_PAREN)
3037 }
3038 #[inline]
3039 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3040 support::token(&self.syntax, SyntaxKind::R_PAREN)
3041 }
3042 #[inline]
3043 pub fn any_token(&self) -> Option<SyntaxToken> {
3044 support::token(&self.syntax, SyntaxKind::ANY_KW)
3045 }
3046}
3047
3048#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3049pub struct Arg {
3050 pub(crate) syntax: SyntaxNode,
3051}
3052impl Arg {
3053 #[inline]
3054 pub fn expr(&self) -> Option<Expr> {
3055 support::child(&self.syntax)
3056 }
3057 #[inline]
3058 pub fn named_arg(&self) -> Option<NamedArg> {
3059 support::child(&self.syntax)
3060 }
3061 #[inline]
3062 pub fn order_by_clause(&self) -> Option<OrderByClause> {
3063 support::child(&self.syntax)
3064 }
3065 #[inline]
3066 pub fn variadic_token(&self) -> Option<SyntaxToken> {
3067 support::token(&self.syntax, SyntaxKind::VARIADIC_KW)
3068 }
3069}
3070
3071#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3072pub struct ArgList {
3073 pub(crate) syntax: SyntaxNode,
3074}
3075impl ArgList {
3076 #[inline]
3077 pub fn args(&self) -> AstChildren<Arg> {
3078 support::children(&self.syntax)
3079 }
3080 #[inline]
3081 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3082 support::token(&self.syntax, SyntaxKind::L_PAREN)
3083 }
3084 #[inline]
3085 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3086 support::token(&self.syntax, SyntaxKind::R_PAREN)
3087 }
3088 #[inline]
3089 pub fn star_token(&self) -> Option<SyntaxToken> {
3090 support::token(&self.syntax, SyntaxKind::STAR)
3091 }
3092 #[inline]
3093 pub fn all_token(&self) -> Option<SyntaxToken> {
3094 support::token(&self.syntax, SyntaxKind::ALL_KW)
3095 }
3096 #[inline]
3097 pub fn distinct_token(&self) -> Option<SyntaxToken> {
3098 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
3099 }
3100}
3101
3102#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3103pub struct ArrayExpr {
3104 pub(crate) syntax: SyntaxNode,
3105}
3106impl ArrayExpr {
3107 #[inline]
3108 pub fn exprs(&self) -> AstChildren<Expr> {
3109 support::children(&self.syntax)
3110 }
3111 #[inline]
3112 pub fn select(&self) -> Option<Select> {
3113 support::child(&self.syntax)
3114 }
3115 #[inline]
3116 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3117 support::token(&self.syntax, SyntaxKind::L_PAREN)
3118 }
3119 #[inline]
3120 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3121 support::token(&self.syntax, SyntaxKind::R_PAREN)
3122 }
3123 #[inline]
3124 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
3125 support::token(&self.syntax, SyntaxKind::L_BRACK)
3126 }
3127 #[inline]
3128 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
3129 support::token(&self.syntax, SyntaxKind::R_BRACK)
3130 }
3131 #[inline]
3132 pub fn array_token(&self) -> Option<SyntaxToken> {
3133 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
3134 }
3135}
3136
3137#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3138pub struct ArrayType {
3139 pub(crate) syntax: SyntaxNode,
3140}
3141impl ArrayType {
3142 #[inline]
3143 pub fn expr(&self) -> Option<Expr> {
3144 support::child(&self.syntax)
3145 }
3146 #[inline]
3147 pub fn name_ref(&self) -> Option<NameRef> {
3148 support::child(&self.syntax)
3149 }
3150 #[inline]
3151 pub fn ty(&self) -> Option<Type> {
3152 support::child(&self.syntax)
3153 }
3154 #[inline]
3155 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
3156 support::token(&self.syntax, SyntaxKind::L_BRACK)
3157 }
3158 #[inline]
3159 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
3160 support::token(&self.syntax, SyntaxKind::R_BRACK)
3161 }
3162 #[inline]
3163 pub fn array_token(&self) -> Option<SyntaxToken> {
3164 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
3165 }
3166}
3167
3168#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3169pub struct AsFuncOption {
3170 pub(crate) syntax: SyntaxNode,
3171}
3172impl AsFuncOption {
3173 #[inline]
3174 pub fn definition(&self) -> Option<Literal> {
3175 support::child(&self.syntax)
3176 }
3177 #[inline]
3178 pub fn link_symbol(&self) -> Option<Literal> {
3179 support::child(&self.syntax)
3180 }
3181 #[inline]
3182 pub fn obj_file(&self) -> Option<Literal> {
3183 support::child(&self.syntax)
3184 }
3185 #[inline]
3186 pub fn comma_token(&self) -> Option<SyntaxToken> {
3187 support::token(&self.syntax, SyntaxKind::COMMA)
3188 }
3189 #[inline]
3190 pub fn as_token(&self) -> Option<SyntaxToken> {
3191 support::token(&self.syntax, SyntaxKind::AS_KW)
3192 }
3193}
3194
3195#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3196pub struct AsName {
3197 pub(crate) syntax: SyntaxNode,
3198}
3199impl AsName {
3200 #[inline]
3201 pub fn name(&self) -> Option<Name> {
3202 support::child(&self.syntax)
3203 }
3204 #[inline]
3205 pub fn as_token(&self) -> Option<SyntaxToken> {
3206 support::token(&self.syntax, SyntaxKind::AS_KW)
3207 }
3208}
3209
3210#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3211pub struct AsPolicyType {
3212 pub(crate) syntax: SyntaxNode,
3213}
3214impl AsPolicyType {
3215 #[inline]
3216 pub fn as_token(&self) -> Option<SyntaxToken> {
3217 support::token(&self.syntax, SyntaxKind::AS_KW)
3218 }
3219 #[inline]
3220 pub fn ident_token(&self) -> Option<SyntaxToken> {
3221 support::token(&self.syntax, SyntaxKind::IDENT)
3222 }
3223}
3224
3225#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3226pub struct AtLocal {
3227 pub(crate) syntax: SyntaxNode,
3228}
3229impl AtLocal {
3230 #[inline]
3231 pub fn at_token(&self) -> Option<SyntaxToken> {
3232 support::token(&self.syntax, SyntaxKind::AT_KW)
3233 }
3234 #[inline]
3235 pub fn local_token(&self) -> Option<SyntaxToken> {
3236 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
3237 }
3238}
3239
3240#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3241pub struct AtTimeZone {
3242 pub(crate) syntax: SyntaxNode,
3243}
3244impl AtTimeZone {
3245 #[inline]
3246 pub fn at_token(&self) -> Option<SyntaxToken> {
3247 support::token(&self.syntax, SyntaxKind::AT_KW)
3248 }
3249 #[inline]
3250 pub fn time_token(&self) -> Option<SyntaxToken> {
3251 support::token(&self.syntax, SyntaxKind::TIME_KW)
3252 }
3253 #[inline]
3254 pub fn zone_token(&self) -> Option<SyntaxToken> {
3255 support::token(&self.syntax, SyntaxKind::ZONE_KW)
3256 }
3257}
3258
3259#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3260pub struct AttachPartition {
3261 pub(crate) syntax: SyntaxNode,
3262}
3263impl AttachPartition {
3264 #[inline]
3265 pub fn partition_type(&self) -> Option<PartitionType> {
3266 support::child(&self.syntax)
3267 }
3268 #[inline]
3269 pub fn path(&self) -> Option<Path> {
3270 support::child(&self.syntax)
3271 }
3272 #[inline]
3273 pub fn attach_token(&self) -> Option<SyntaxToken> {
3274 support::token(&self.syntax, SyntaxKind::ATTACH_KW)
3275 }
3276 #[inline]
3277 pub fn partition_token(&self) -> Option<SyntaxToken> {
3278 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
3279 }
3280}
3281
3282#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3283pub struct AttributeList {
3284 pub(crate) syntax: SyntaxNode,
3285}
3286impl AttributeList {
3287 #[inline]
3288 pub fn attribute_options(&self) -> AstChildren<AttributeOption> {
3289 support::children(&self.syntax)
3290 }
3291 #[inline]
3292 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3293 support::token(&self.syntax, SyntaxKind::L_PAREN)
3294 }
3295 #[inline]
3296 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3297 support::token(&self.syntax, SyntaxKind::R_PAREN)
3298 }
3299}
3300
3301#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3302pub struct AttributeOption {
3303 pub(crate) syntax: SyntaxNode,
3304}
3305impl AttributeOption {
3306 #[inline]
3307 pub fn attribute_value(&self) -> Option<AttributeValue> {
3308 support::child(&self.syntax)
3309 }
3310 #[inline]
3311 pub fn name(&self) -> Option<Name> {
3312 support::child(&self.syntax)
3313 }
3314 #[inline]
3315 pub fn dot_token(&self) -> Option<SyntaxToken> {
3316 support::token(&self.syntax, SyntaxKind::DOT)
3317 }
3318 #[inline]
3319 pub fn eq_token(&self) -> Option<SyntaxToken> {
3320 support::token(&self.syntax, SyntaxKind::EQ)
3321 }
3322}
3323
3324#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3325pub struct AttributeValue {
3326 pub(crate) syntax: SyntaxNode,
3327}
3328impl AttributeValue {
3329 #[inline]
3330 pub fn literal(&self) -> Option<Literal> {
3331 support::child(&self.syntax)
3332 }
3333 #[inline]
3334 pub fn op(&self) -> Option<Op> {
3335 support::child(&self.syntax)
3336 }
3337 #[inline]
3338 pub fn ty(&self) -> Option<Type> {
3339 support::child(&self.syntax)
3340 }
3341 #[inline]
3342 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3343 support::token(&self.syntax, SyntaxKind::L_PAREN)
3344 }
3345 #[inline]
3346 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3347 support::token(&self.syntax, SyntaxKind::R_PAREN)
3348 }
3349 #[inline]
3350 pub fn none_token(&self) -> Option<SyntaxToken> {
3351 support::token(&self.syntax, SyntaxKind::NONE_KW)
3352 }
3353 #[inline]
3354 pub fn operator_token(&self) -> Option<SyntaxToken> {
3355 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
3356 }
3357}
3358
3359#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3360pub struct Backward {
3361 pub(crate) syntax: SyntaxNode,
3362}
3363impl Backward {
3364 #[inline]
3365 pub fn expr(&self) -> Option<Expr> {
3366 support::child(&self.syntax)
3367 }
3368 #[inline]
3369 pub fn all_token(&self) -> Option<SyntaxToken> {
3370 support::token(&self.syntax, SyntaxKind::ALL_KW)
3371 }
3372 #[inline]
3373 pub fn backward_token(&self) -> Option<SyntaxToken> {
3374 support::token(&self.syntax, SyntaxKind::BACKWARD_KW)
3375 }
3376}
3377
3378#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3379pub struct BeforeValue {
3380 pub(crate) syntax: SyntaxNode,
3381}
3382impl BeforeValue {
3383 #[inline]
3384 pub fn literal(&self) -> Option<Literal> {
3385 support::child(&self.syntax)
3386 }
3387 #[inline]
3388 pub fn before_token(&self) -> Option<SyntaxToken> {
3389 support::token(&self.syntax, SyntaxKind::BEFORE_KW)
3390 }
3391}
3392
3393#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3394pub struct Begin {
3395 pub(crate) syntax: SyntaxNode,
3396}
3397impl Begin {
3398 #[inline]
3399 pub fn transaction_mode_list(&self) -> Option<TransactionModeList> {
3400 support::child(&self.syntax)
3401 }
3402 #[inline]
3403 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
3404 support::token(&self.syntax, SyntaxKind::SEMICOLON)
3405 }
3406 #[inline]
3407 pub fn begin_token(&self) -> Option<SyntaxToken> {
3408 support::token(&self.syntax, SyntaxKind::BEGIN_KW)
3409 }
3410 #[inline]
3411 pub fn start_token(&self) -> Option<SyntaxToken> {
3412 support::token(&self.syntax, SyntaxKind::START_KW)
3413 }
3414 #[inline]
3415 pub fn transaction_token(&self) -> Option<SyntaxToken> {
3416 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
3417 }
3418 #[inline]
3419 pub fn work_token(&self) -> Option<SyntaxToken> {
3420 support::token(&self.syntax, SyntaxKind::WORK_KW)
3421 }
3422}
3423
3424#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3425pub struct BeginFuncOptionList {
3426 pub(crate) syntax: SyntaxNode,
3427}
3428impl BeginFuncOptionList {
3429 #[inline]
3430 pub fn begin_func_options(&self) -> AstChildren<BeginFuncOption> {
3431 support::children(&self.syntax)
3432 }
3433 #[inline]
3434 pub fn atomic_token(&self) -> Option<SyntaxToken> {
3435 support::token(&self.syntax, SyntaxKind::ATOMIC_KW)
3436 }
3437 #[inline]
3438 pub fn begin_token(&self) -> Option<SyntaxToken> {
3439 support::token(&self.syntax, SyntaxKind::BEGIN_KW)
3440 }
3441 #[inline]
3442 pub fn end_token(&self) -> Option<SyntaxToken> {
3443 support::token(&self.syntax, SyntaxKind::END_KW)
3444 }
3445}
3446
3447#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3448pub struct BetweenExpr {
3449 pub(crate) syntax: SyntaxNode,
3450}
3451impl BetweenExpr {
3452 #[inline]
3453 pub fn and_token(&self) -> Option<SyntaxToken> {
3454 support::token(&self.syntax, SyntaxKind::AND_KW)
3455 }
3456 #[inline]
3457 pub fn asymmetric_token(&self) -> Option<SyntaxToken> {
3458 support::token(&self.syntax, SyntaxKind::ASYMMETRIC_KW)
3459 }
3460 #[inline]
3461 pub fn between_token(&self) -> Option<SyntaxToken> {
3462 support::token(&self.syntax, SyntaxKind::BETWEEN_KW)
3463 }
3464 #[inline]
3465 pub fn not_token(&self) -> Option<SyntaxToken> {
3466 support::token(&self.syntax, SyntaxKind::NOT_KW)
3467 }
3468 #[inline]
3469 pub fn symmetric_token(&self) -> Option<SyntaxToken> {
3470 support::token(&self.syntax, SyntaxKind::SYMMETRIC_KW)
3471 }
3472}
3473
3474#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3475pub struct BinExpr {
3476 pub(crate) syntax: SyntaxNode,
3477}
3478impl BinExpr {}
3479
3480#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3481pub struct BitType {
3482 pub(crate) syntax: SyntaxNode,
3483}
3484impl BitType {
3485 #[inline]
3486 pub fn arg_list(&self) -> Option<ArgList> {
3487 support::child(&self.syntax)
3488 }
3489 #[inline]
3490 pub fn bit_token(&self) -> Option<SyntaxToken> {
3491 support::token(&self.syntax, SyntaxKind::BIT_KW)
3492 }
3493 #[inline]
3494 pub fn setof_token(&self) -> Option<SyntaxToken> {
3495 support::token(&self.syntax, SyntaxKind::SETOF_KW)
3496 }
3497 #[inline]
3498 pub fn varying_token(&self) -> Option<SyntaxToken> {
3499 support::token(&self.syntax, SyntaxKind::VARYING_KW)
3500 }
3501}
3502
3503#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3504pub struct Call {
3505 pub(crate) syntax: SyntaxNode,
3506}
3507impl Call {
3508 #[inline]
3509 pub fn arg_list(&self) -> Option<ArgList> {
3510 support::child(&self.syntax)
3511 }
3512 #[inline]
3513 pub fn path(&self) -> Option<Path> {
3514 support::child(&self.syntax)
3515 }
3516 #[inline]
3517 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
3518 support::token(&self.syntax, SyntaxKind::SEMICOLON)
3519 }
3520 #[inline]
3521 pub fn call_token(&self) -> Option<SyntaxToken> {
3522 support::token(&self.syntax, SyntaxKind::CALL_KW)
3523 }
3524}
3525
3526#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3527pub struct CallExpr {
3528 pub(crate) syntax: SyntaxNode,
3529}
3530impl CallExpr {
3531 #[inline]
3532 pub fn all_fn(&self) -> Option<AllFn> {
3533 support::child(&self.syntax)
3534 }
3535 #[inline]
3536 pub fn any_fn(&self) -> Option<AnyFn> {
3537 support::child(&self.syntax)
3538 }
3539 #[inline]
3540 pub fn arg_list(&self) -> Option<ArgList> {
3541 support::child(&self.syntax)
3542 }
3543 #[inline]
3544 pub fn collation_for_fn(&self) -> Option<CollationForFn> {
3545 support::child(&self.syntax)
3546 }
3547 #[inline]
3548 pub fn exists_fn(&self) -> Option<ExistsFn> {
3549 support::child(&self.syntax)
3550 }
3551 #[inline]
3552 pub fn expr(&self) -> Option<Expr> {
3553 support::child(&self.syntax)
3554 }
3555 #[inline]
3556 pub fn extract_fn(&self) -> Option<ExtractFn> {
3557 support::child(&self.syntax)
3558 }
3559 #[inline]
3560 pub fn filter_clause(&self) -> Option<FilterClause> {
3561 support::child(&self.syntax)
3562 }
3563 #[inline]
3564 pub fn graph_table_fn(&self) -> Option<GraphTableFn> {
3565 support::child(&self.syntax)
3566 }
3567 #[inline]
3568 pub fn json_array_agg_fn(&self) -> Option<JsonArrayAggFn> {
3569 support::child(&self.syntax)
3570 }
3571 #[inline]
3572 pub fn json_array_fn(&self) -> Option<JsonArrayFn> {
3573 support::child(&self.syntax)
3574 }
3575 #[inline]
3576 pub fn json_exists_fn(&self) -> Option<JsonExistsFn> {
3577 support::child(&self.syntax)
3578 }
3579 #[inline]
3580 pub fn json_fn(&self) -> Option<JsonFn> {
3581 support::child(&self.syntax)
3582 }
3583 #[inline]
3584 pub fn json_object_agg_fn(&self) -> Option<JsonObjectAggFn> {
3585 support::child(&self.syntax)
3586 }
3587 #[inline]
3588 pub fn json_object_fn(&self) -> Option<JsonObjectFn> {
3589 support::child(&self.syntax)
3590 }
3591 #[inline]
3592 pub fn json_query_fn(&self) -> Option<JsonQueryFn> {
3593 support::child(&self.syntax)
3594 }
3595 #[inline]
3596 pub fn json_scalar_fn(&self) -> Option<JsonScalarFn> {
3597 support::child(&self.syntax)
3598 }
3599 #[inline]
3600 pub fn json_serialize_fn(&self) -> Option<JsonSerializeFn> {
3601 support::child(&self.syntax)
3602 }
3603 #[inline]
3604 pub fn json_value_fn(&self) -> Option<JsonValueFn> {
3605 support::child(&self.syntax)
3606 }
3607 #[inline]
3608 pub fn over_clause(&self) -> Option<OverClause> {
3609 support::child(&self.syntax)
3610 }
3611 #[inline]
3612 pub fn overlay_fn(&self) -> Option<OverlayFn> {
3613 support::child(&self.syntax)
3614 }
3615 #[inline]
3616 pub fn position_fn(&self) -> Option<PositionFn> {
3617 support::child(&self.syntax)
3618 }
3619 #[inline]
3620 pub fn some_fn(&self) -> Option<SomeFn> {
3621 support::child(&self.syntax)
3622 }
3623 #[inline]
3624 pub fn substring_fn(&self) -> Option<SubstringFn> {
3625 support::child(&self.syntax)
3626 }
3627 #[inline]
3628 pub fn trim_fn(&self) -> Option<TrimFn> {
3629 support::child(&self.syntax)
3630 }
3631 #[inline]
3632 pub fn within_clause(&self) -> Option<WithinClause> {
3633 support::child(&self.syntax)
3634 }
3635 #[inline]
3636 pub fn xml_element_fn(&self) -> Option<XmlElementFn> {
3637 support::child(&self.syntax)
3638 }
3639 #[inline]
3640 pub fn xml_exists_fn(&self) -> Option<XmlExistsFn> {
3641 support::child(&self.syntax)
3642 }
3643 #[inline]
3644 pub fn xml_forest_fn(&self) -> Option<XmlForestFn> {
3645 support::child(&self.syntax)
3646 }
3647 #[inline]
3648 pub fn xml_parse_fn(&self) -> Option<XmlParseFn> {
3649 support::child(&self.syntax)
3650 }
3651 #[inline]
3652 pub fn xml_pi_fn(&self) -> Option<XmlPiFn> {
3653 support::child(&self.syntax)
3654 }
3655 #[inline]
3656 pub fn xml_root_fn(&self) -> Option<XmlRootFn> {
3657 support::child(&self.syntax)
3658 }
3659 #[inline]
3660 pub fn xml_serialize_fn(&self) -> Option<XmlSerializeFn> {
3661 support::child(&self.syntax)
3662 }
3663}
3664
3665#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3666pub struct Cascade {
3667 pub(crate) syntax: SyntaxNode,
3668}
3669impl Cascade {
3670 #[inline]
3671 pub fn cascade_token(&self) -> Option<SyntaxToken> {
3672 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
3673 }
3674}
3675
3676#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3677pub struct CaseExpr {
3678 pub(crate) syntax: SyntaxNode,
3679}
3680impl CaseExpr {
3681 #[inline]
3682 pub fn else_clause(&self) -> Option<ElseClause> {
3683 support::child(&self.syntax)
3684 }
3685 #[inline]
3686 pub fn expr(&self) -> Option<Expr> {
3687 support::child(&self.syntax)
3688 }
3689 #[inline]
3690 pub fn when_clause_list(&self) -> Option<WhenClauseList> {
3691 support::child(&self.syntax)
3692 }
3693 #[inline]
3694 pub fn case_token(&self) -> Option<SyntaxToken> {
3695 support::token(&self.syntax, SyntaxKind::CASE_KW)
3696 }
3697 #[inline]
3698 pub fn end_token(&self) -> Option<SyntaxToken> {
3699 support::token(&self.syntax, SyntaxKind::END_KW)
3700 }
3701}
3702
3703#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3704pub struct CastExpr {
3705 pub(crate) syntax: SyntaxNode,
3706}
3707impl CastExpr {
3708 #[inline]
3709 pub fn colon_colon(&self) -> Option<ColonColon> {
3710 support::child(&self.syntax)
3711 }
3712 #[inline]
3713 pub fn expr(&self) -> Option<Expr> {
3714 support::child(&self.syntax)
3715 }
3716 #[inline]
3717 pub fn literal(&self) -> Option<Literal> {
3718 support::child(&self.syntax)
3719 }
3720 #[inline]
3721 pub fn ty(&self) -> Option<Type> {
3722 support::child(&self.syntax)
3723 }
3724 #[inline]
3725 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3726 support::token(&self.syntax, SyntaxKind::L_PAREN)
3727 }
3728 #[inline]
3729 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3730 support::token(&self.syntax, SyntaxKind::R_PAREN)
3731 }
3732 #[inline]
3733 pub fn as_token(&self) -> Option<SyntaxToken> {
3734 support::token(&self.syntax, SyntaxKind::AS_KW)
3735 }
3736 #[inline]
3737 pub fn cast_token(&self) -> Option<SyntaxToken> {
3738 support::token(&self.syntax, SyntaxKind::CAST_KW)
3739 }
3740 #[inline]
3741 pub fn treat_token(&self) -> Option<SyntaxToken> {
3742 support::token(&self.syntax, SyntaxKind::TREAT_KW)
3743 }
3744}
3745
3746#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3747pub struct CastSig {
3748 pub(crate) syntax: SyntaxNode,
3749}
3750impl CastSig {
3751 #[inline]
3752 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3753 support::token(&self.syntax, SyntaxKind::L_PAREN)
3754 }
3755 #[inline]
3756 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3757 support::token(&self.syntax, SyntaxKind::R_PAREN)
3758 }
3759 #[inline]
3760 pub fn as_token(&self) -> Option<SyntaxToken> {
3761 support::token(&self.syntax, SyntaxKind::AS_KW)
3762 }
3763}
3764
3765#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3766pub struct CharType {
3767 pub(crate) syntax: SyntaxNode,
3768}
3769impl CharType {
3770 #[inline]
3771 pub fn arg_list(&self) -> Option<ArgList> {
3772 support::child(&self.syntax)
3773 }
3774 #[inline]
3775 pub fn char_token(&self) -> Option<SyntaxToken> {
3776 support::token(&self.syntax, SyntaxKind::CHAR_KW)
3777 }
3778 #[inline]
3779 pub fn character_token(&self) -> Option<SyntaxToken> {
3780 support::token(&self.syntax, SyntaxKind::CHARACTER_KW)
3781 }
3782 #[inline]
3783 pub fn national_token(&self) -> Option<SyntaxToken> {
3784 support::token(&self.syntax, SyntaxKind::NATIONAL_KW)
3785 }
3786 #[inline]
3787 pub fn nchar_token(&self) -> Option<SyntaxToken> {
3788 support::token(&self.syntax, SyntaxKind::NCHAR_KW)
3789 }
3790 #[inline]
3791 pub fn setof_token(&self) -> Option<SyntaxToken> {
3792 support::token(&self.syntax, SyntaxKind::SETOF_KW)
3793 }
3794 #[inline]
3795 pub fn varchar_token(&self) -> Option<SyntaxToken> {
3796 support::token(&self.syntax, SyntaxKind::VARCHAR_KW)
3797 }
3798 #[inline]
3799 pub fn varying_token(&self) -> Option<SyntaxToken> {
3800 support::token(&self.syntax, SyntaxKind::VARYING_KW)
3801 }
3802}
3803
3804#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3805pub struct CheckConstraint {
3806 pub(crate) syntax: SyntaxNode,
3807}
3808impl CheckConstraint {
3809 #[inline]
3810 pub fn constraint_name(&self) -> Option<ConstraintName> {
3811 support::child(&self.syntax)
3812 }
3813 #[inline]
3814 pub fn expr(&self) -> Option<Expr> {
3815 support::child(&self.syntax)
3816 }
3817 #[inline]
3818 pub fn no_inherit(&self) -> Option<NoInherit> {
3819 support::child(&self.syntax)
3820 }
3821 #[inline]
3822 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3823 support::token(&self.syntax, SyntaxKind::L_PAREN)
3824 }
3825 #[inline]
3826 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3827 support::token(&self.syntax, SyntaxKind::R_PAREN)
3828 }
3829 #[inline]
3830 pub fn check_token(&self) -> Option<SyntaxToken> {
3831 support::token(&self.syntax, SyntaxKind::CHECK_KW)
3832 }
3833}
3834
3835#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3836pub struct Checkpoint {
3837 pub(crate) syntax: SyntaxNode,
3838}
3839impl Checkpoint {
3840 #[inline]
3841 pub fn checkpoint_option_list(&self) -> Option<CheckpointOptionList> {
3842 support::child(&self.syntax)
3843 }
3844 #[inline]
3845 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
3846 support::token(&self.syntax, SyntaxKind::SEMICOLON)
3847 }
3848 #[inline]
3849 pub fn checkpoint_token(&self) -> Option<SyntaxToken> {
3850 support::token(&self.syntax, SyntaxKind::CHECKPOINT_KW)
3851 }
3852}
3853
3854#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3855pub struct CheckpointOption {
3856 pub(crate) syntax: SyntaxNode,
3857}
3858impl CheckpointOption {
3859 #[inline]
3860 pub fn expr(&self) -> Option<Expr> {
3861 support::child(&self.syntax)
3862 }
3863 #[inline]
3864 pub fn name(&self) -> Option<Name> {
3865 support::child(&self.syntax)
3866 }
3867}
3868
3869#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3870pub struct CheckpointOptionList {
3871 pub(crate) syntax: SyntaxNode,
3872}
3873impl CheckpointOptionList {
3874 #[inline]
3875 pub fn checkpoint_options(&self) -> AstChildren<CheckpointOption> {
3876 support::children(&self.syntax)
3877 }
3878 #[inline]
3879 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3880 support::token(&self.syntax, SyntaxKind::L_PAREN)
3881 }
3882 #[inline]
3883 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3884 support::token(&self.syntax, SyntaxKind::R_PAREN)
3885 }
3886}
3887
3888#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3889pub struct Close {
3890 pub(crate) syntax: SyntaxNode,
3891}
3892impl Close {
3893 #[inline]
3894 pub fn name_ref(&self) -> Option<NameRef> {
3895 support::child(&self.syntax)
3896 }
3897 #[inline]
3898 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
3899 support::token(&self.syntax, SyntaxKind::SEMICOLON)
3900 }
3901 #[inline]
3902 pub fn all_token(&self) -> Option<SyntaxToken> {
3903 support::token(&self.syntax, SyntaxKind::ALL_KW)
3904 }
3905 #[inline]
3906 pub fn close_token(&self) -> Option<SyntaxToken> {
3907 support::token(&self.syntax, SyntaxKind::CLOSE_KW)
3908 }
3909}
3910
3911#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3912pub struct Cluster {
3913 pub(crate) syntax: SyntaxNode,
3914}
3915impl Cluster {
3916 #[inline]
3917 pub fn on_path(&self) -> Option<OnPath> {
3918 support::child(&self.syntax)
3919 }
3920 #[inline]
3921 pub fn option_item_list(&self) -> Option<OptionItemList> {
3922 support::child(&self.syntax)
3923 }
3924 #[inline]
3925 pub fn path(&self) -> Option<Path> {
3926 support::child(&self.syntax)
3927 }
3928 #[inline]
3929 pub fn using_method(&self) -> Option<UsingMethod> {
3930 support::child(&self.syntax)
3931 }
3932 #[inline]
3933 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
3934 support::token(&self.syntax, SyntaxKind::SEMICOLON)
3935 }
3936 #[inline]
3937 pub fn cluster_token(&self) -> Option<SyntaxToken> {
3938 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
3939 }
3940 #[inline]
3941 pub fn verbose_token(&self) -> Option<SyntaxToken> {
3942 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
3943 }
3944}
3945
3946#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3947pub struct ClusterOn {
3948 pub(crate) syntax: SyntaxNode,
3949}
3950impl ClusterOn {
3951 #[inline]
3952 pub fn name_ref(&self) -> Option<NameRef> {
3953 support::child(&self.syntax)
3954 }
3955 #[inline]
3956 pub fn cluster_token(&self) -> Option<SyntaxToken> {
3957 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
3958 }
3959 #[inline]
3960 pub fn on_token(&self) -> Option<SyntaxToken> {
3961 support::token(&self.syntax, SyntaxKind::ON_KW)
3962 }
3963}
3964
3965#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3966pub struct Collate {
3967 pub(crate) syntax: SyntaxNode,
3968}
3969impl Collate {
3970 #[inline]
3971 pub fn path(&self) -> Option<Path> {
3972 support::child(&self.syntax)
3973 }
3974 #[inline]
3975 pub fn collate_token(&self) -> Option<SyntaxToken> {
3976 support::token(&self.syntax, SyntaxKind::COLLATE_KW)
3977 }
3978}
3979
3980#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3981pub struct CollationForFn {
3982 pub(crate) syntax: SyntaxNode,
3983}
3984impl CollationForFn {
3985 #[inline]
3986 pub fn expr(&self) -> Option<Expr> {
3987 support::child(&self.syntax)
3988 }
3989 #[inline]
3990 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3991 support::token(&self.syntax, SyntaxKind::L_PAREN)
3992 }
3993 #[inline]
3994 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3995 support::token(&self.syntax, SyntaxKind::R_PAREN)
3996 }
3997 #[inline]
3998 pub fn collation_token(&self) -> Option<SyntaxToken> {
3999 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
4000 }
4001 #[inline]
4002 pub fn for_token(&self) -> Option<SyntaxToken> {
4003 support::token(&self.syntax, SyntaxKind::FOR_KW)
4004 }
4005}
4006
4007#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4008pub struct CollationFrom {
4009 pub(crate) syntax: SyntaxNode,
4010}
4011impl CollationFrom {
4012 #[inline]
4013 pub fn path(&self) -> Option<Path> {
4014 support::child(&self.syntax)
4015 }
4016 #[inline]
4017 pub fn from_token(&self) -> Option<SyntaxToken> {
4018 support::token(&self.syntax, SyntaxKind::FROM_KW)
4019 }
4020}
4021
4022#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4023pub struct ColonColon {
4024 pub(crate) syntax: SyntaxNode,
4025}
4026impl ColonColon {
4027 #[inline]
4028 pub fn colon_token(&self) -> Option<SyntaxToken> {
4029 support::token(&self.syntax, SyntaxKind::COLON)
4030 }
4031}
4032
4033#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4034pub struct ColonEq {
4035 pub(crate) syntax: SyntaxNode,
4036}
4037impl ColonEq {
4038 #[inline]
4039 pub fn colon_token(&self) -> Option<SyntaxToken> {
4040 support::token(&self.syntax, SyntaxKind::COLON)
4041 }
4042 #[inline]
4043 pub fn eq_token(&self) -> Option<SyntaxToken> {
4044 support::token(&self.syntax, SyntaxKind::EQ)
4045 }
4046}
4047
4048#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4049pub struct Column {
4050 pub(crate) syntax: SyntaxNode,
4051}
4052impl Column {
4053 #[inline]
4054 pub fn collate(&self) -> Option<Collate> {
4055 support::child(&self.syntax)
4056 }
4057 #[inline]
4058 pub fn compression_method(&self) -> Option<CompressionMethod> {
4059 support::child(&self.syntax)
4060 }
4061 #[inline]
4062 pub fn constraints(&self) -> AstChildren<ColumnConstraint> {
4063 support::children(&self.syntax)
4064 }
4065 #[inline]
4066 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
4067 support::child(&self.syntax)
4068 }
4069 #[inline]
4070 pub fn enforced(&self) -> Option<Enforced> {
4071 support::child(&self.syntax)
4072 }
4073 #[inline]
4074 pub fn field_expr(&self) -> Option<FieldExpr> {
4075 support::child(&self.syntax)
4076 }
4077 #[inline]
4078 pub fn index_expr(&self) -> Option<IndexExpr> {
4079 support::child(&self.syntax)
4080 }
4081 #[inline]
4082 pub fn initially_deferred_constraint_option(
4083 &self,
4084 ) -> Option<InitiallyDeferredConstraintOption> {
4085 support::child(&self.syntax)
4086 }
4087 #[inline]
4088 pub fn initially_immediate_constraint_option(
4089 &self,
4090 ) -> Option<InitiallyImmediateConstraintOption> {
4091 support::child(&self.syntax)
4092 }
4093 #[inline]
4094 pub fn name(&self) -> Option<Name> {
4095 support::child(&self.syntax)
4096 }
4097 #[inline]
4098 pub fn name_ref(&self) -> Option<NameRef> {
4099 support::child(&self.syntax)
4100 }
4101 #[inline]
4102 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
4103 support::child(&self.syntax)
4104 }
4105 #[inline]
4106 pub fn not_enforced(&self) -> Option<NotEnforced> {
4107 support::child(&self.syntax)
4108 }
4109 #[inline]
4110 pub fn storage(&self) -> Option<Storage> {
4111 support::child(&self.syntax)
4112 }
4113 #[inline]
4114 pub fn ty(&self) -> Option<Type> {
4115 support::child(&self.syntax)
4116 }
4117 #[inline]
4118 pub fn with_options(&self) -> Option<WithOptions> {
4119 support::child(&self.syntax)
4120 }
4121 #[inline]
4122 pub fn period_token(&self) -> Option<SyntaxToken> {
4123 support::token(&self.syntax, SyntaxKind::PERIOD_KW)
4124 }
4125}
4126
4127#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4128pub struct ColumnList {
4129 pub(crate) syntax: SyntaxNode,
4130}
4131impl ColumnList {
4132 #[inline]
4133 pub fn columns(&self) -> AstChildren<Column> {
4134 support::children(&self.syntax)
4135 }
4136 #[inline]
4137 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
4138 support::token(&self.syntax, SyntaxKind::L_PAREN)
4139 }
4140 #[inline]
4141 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
4142 support::token(&self.syntax, SyntaxKind::R_PAREN)
4143 }
4144}
4145
4146#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4147pub struct CommentOn {
4148 pub(crate) syntax: SyntaxNode,
4149}
4150impl CommentOn {
4151 #[inline]
4152 pub fn aggregate(&self) -> Option<Aggregate> {
4153 support::child(&self.syntax)
4154 }
4155 #[inline]
4156 pub fn cast_sig(&self) -> Option<CastSig> {
4157 support::child(&self.syntax)
4158 }
4159 #[inline]
4160 pub fn function_sig(&self) -> Option<FunctionSig> {
4161 support::child(&self.syntax)
4162 }
4163 #[inline]
4164 pub fn literal(&self) -> Option<Literal> {
4165 support::child(&self.syntax)
4166 }
4167 #[inline]
4168 pub fn name_ref(&self) -> Option<NameRef> {
4169 support::child(&self.syntax)
4170 }
4171 #[inline]
4172 pub fn op(&self) -> Option<Op> {
4173 support::child(&self.syntax)
4174 }
4175 #[inline]
4176 pub fn path(&self) -> Option<Path> {
4177 support::child(&self.syntax)
4178 }
4179 #[inline]
4180 pub fn ty(&self) -> Option<Type> {
4181 support::child(&self.syntax)
4182 }
4183 #[inline]
4184 pub fn using_method(&self) -> Option<UsingMethod> {
4185 support::child(&self.syntax)
4186 }
4187 #[inline]
4188 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
4189 support::token(&self.syntax, SyntaxKind::L_PAREN)
4190 }
4191 #[inline]
4192 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
4193 support::token(&self.syntax, SyntaxKind::R_PAREN)
4194 }
4195 #[inline]
4196 pub fn comma_token(&self) -> Option<SyntaxToken> {
4197 support::token(&self.syntax, SyntaxKind::COMMA)
4198 }
4199 #[inline]
4200 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
4201 support::token(&self.syntax, SyntaxKind::SEMICOLON)
4202 }
4203 #[inline]
4204 pub fn access_token(&self) -> Option<SyntaxToken> {
4205 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
4206 }
4207 #[inline]
4208 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
4209 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
4210 }
4211 #[inline]
4212 pub fn cast_token(&self) -> Option<SyntaxToken> {
4213 support::token(&self.syntax, SyntaxKind::CAST_KW)
4214 }
4215 #[inline]
4216 pub fn class_token(&self) -> Option<SyntaxToken> {
4217 support::token(&self.syntax, SyntaxKind::CLASS_KW)
4218 }
4219 #[inline]
4220 pub fn collation_token(&self) -> Option<SyntaxToken> {
4221 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
4222 }
4223 #[inline]
4224 pub fn column_token(&self) -> Option<SyntaxToken> {
4225 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
4226 }
4227 #[inline]
4228 pub fn comment_token(&self) -> Option<SyntaxToken> {
4229 support::token(&self.syntax, SyntaxKind::COMMENT_KW)
4230 }
4231 #[inline]
4232 pub fn configuration_token(&self) -> Option<SyntaxToken> {
4233 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
4234 }
4235 #[inline]
4236 pub fn constraint_token(&self) -> Option<SyntaxToken> {
4237 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
4238 }
4239 #[inline]
4240 pub fn conversion_token(&self) -> Option<SyntaxToken> {
4241 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
4242 }
4243 #[inline]
4244 pub fn data_token(&self) -> Option<SyntaxToken> {
4245 support::token(&self.syntax, SyntaxKind::DATA_KW)
4246 }
4247 #[inline]
4248 pub fn database_token(&self) -> Option<SyntaxToken> {
4249 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
4250 }
4251 #[inline]
4252 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
4253 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
4254 }
4255 #[inline]
4256 pub fn domain_token(&self) -> Option<SyntaxToken> {
4257 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
4258 }
4259 #[inline]
4260 pub fn event_token(&self) -> Option<SyntaxToken> {
4261 support::token(&self.syntax, SyntaxKind::EVENT_KW)
4262 }
4263 #[inline]
4264 pub fn extension_token(&self) -> Option<SyntaxToken> {
4265 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
4266 }
4267 #[inline]
4268 pub fn family_token(&self) -> Option<SyntaxToken> {
4269 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
4270 }
4271 #[inline]
4272 pub fn for_token(&self) -> Option<SyntaxToken> {
4273 support::token(&self.syntax, SyntaxKind::FOR_KW)
4274 }
4275 #[inline]
4276 pub fn foreign_token(&self) -> Option<SyntaxToken> {
4277 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
4278 }
4279 #[inline]
4280 pub fn function_token(&self) -> Option<SyntaxToken> {
4281 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
4282 }
4283 #[inline]
4284 pub fn graph_token(&self) -> Option<SyntaxToken> {
4285 support::token(&self.syntax, SyntaxKind::GRAPH_KW)
4286 }
4287 #[inline]
4288 pub fn index_token(&self) -> Option<SyntaxToken> {
4289 support::token(&self.syntax, SyntaxKind::INDEX_KW)
4290 }
4291 #[inline]
4292 pub fn is_token(&self) -> Option<SyntaxToken> {
4293 support::token(&self.syntax, SyntaxKind::IS_KW)
4294 }
4295 #[inline]
4296 pub fn language_token(&self) -> Option<SyntaxToken> {
4297 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
4298 }
4299 #[inline]
4300 pub fn large_token(&self) -> Option<SyntaxToken> {
4301 support::token(&self.syntax, SyntaxKind::LARGE_KW)
4302 }
4303 #[inline]
4304 pub fn materialized_token(&self) -> Option<SyntaxToken> {
4305 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
4306 }
4307 #[inline]
4308 pub fn method_token(&self) -> Option<SyntaxToken> {
4309 support::token(&self.syntax, SyntaxKind::METHOD_KW)
4310 }
4311 #[inline]
4312 pub fn null_token(&self) -> Option<SyntaxToken> {
4313 support::token(&self.syntax, SyntaxKind::NULL_KW)
4314 }
4315 #[inline]
4316 pub fn object_token(&self) -> Option<SyntaxToken> {
4317 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
4318 }
4319 #[inline]
4320 pub fn on_token(&self) -> Option<SyntaxToken> {
4321 support::token(&self.syntax, SyntaxKind::ON_KW)
4322 }
4323 #[inline]
4324 pub fn operator_token(&self) -> Option<SyntaxToken> {
4325 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
4326 }
4327 #[inline]
4328 pub fn parser_token(&self) -> Option<SyntaxToken> {
4329 support::token(&self.syntax, SyntaxKind::PARSER_KW)
4330 }
4331 #[inline]
4332 pub fn policy_token(&self) -> Option<SyntaxToken> {
4333 support::token(&self.syntax, SyntaxKind::POLICY_KW)
4334 }
4335 #[inline]
4336 pub fn procedural_token(&self) -> Option<SyntaxToken> {
4337 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
4338 }
4339 #[inline]
4340 pub fn procedure_token(&self) -> Option<SyntaxToken> {
4341 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
4342 }
4343 #[inline]
4344 pub fn property_token(&self) -> Option<SyntaxToken> {
4345 support::token(&self.syntax, SyntaxKind::PROPERTY_KW)
4346 }
4347 #[inline]
4348 pub fn publication_token(&self) -> Option<SyntaxToken> {
4349 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
4350 }
4351 #[inline]
4352 pub fn role_token(&self) -> Option<SyntaxToken> {
4353 support::token(&self.syntax, SyntaxKind::ROLE_KW)
4354 }
4355 #[inline]
4356 pub fn routine_token(&self) -> Option<SyntaxToken> {
4357 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
4358 }
4359 #[inline]
4360 pub fn rule_token(&self) -> Option<SyntaxToken> {
4361 support::token(&self.syntax, SyntaxKind::RULE_KW)
4362 }
4363 #[inline]
4364 pub fn schema_token(&self) -> Option<SyntaxToken> {
4365 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
4366 }
4367 #[inline]
4368 pub fn search_token(&self) -> Option<SyntaxToken> {
4369 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4370 }
4371 #[inline]
4372 pub fn sequence_token(&self) -> Option<SyntaxToken> {
4373 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
4374 }
4375 #[inline]
4376 pub fn server_token(&self) -> Option<SyntaxToken> {
4377 support::token(&self.syntax, SyntaxKind::SERVER_KW)
4378 }
4379 #[inline]
4380 pub fn statistics_token(&self) -> Option<SyntaxToken> {
4381 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
4382 }
4383 #[inline]
4384 pub fn subscription_token(&self) -> Option<SyntaxToken> {
4385 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
4386 }
4387 #[inline]
4388 pub fn table_token(&self) -> Option<SyntaxToken> {
4389 support::token(&self.syntax, SyntaxKind::TABLE_KW)
4390 }
4391 #[inline]
4392 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
4393 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
4394 }
4395 #[inline]
4396 pub fn template_token(&self) -> Option<SyntaxToken> {
4397 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
4398 }
4399 #[inline]
4400 pub fn text_token(&self) -> Option<SyntaxToken> {
4401 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4402 }
4403 #[inline]
4404 pub fn transform_token(&self) -> Option<SyntaxToken> {
4405 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
4406 }
4407 #[inline]
4408 pub fn trigger_token(&self) -> Option<SyntaxToken> {
4409 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
4410 }
4411 #[inline]
4412 pub fn type_token(&self) -> Option<SyntaxToken> {
4413 support::token(&self.syntax, SyntaxKind::TYPE_KW)
4414 }
4415 #[inline]
4416 pub fn view_token(&self) -> Option<SyntaxToken> {
4417 support::token(&self.syntax, SyntaxKind::VIEW_KW)
4418 }
4419 #[inline]
4420 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
4421 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
4422 }
4423}
4424
4425#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4426pub struct Commit {
4427 pub(crate) syntax: SyntaxNode,
4428}
4429impl Commit {
4430 #[inline]
4431 pub fn literal(&self) -> Option<Literal> {
4432 support::child(&self.syntax)
4433 }
4434 #[inline]
4435 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
4436 support::token(&self.syntax, SyntaxKind::SEMICOLON)
4437 }
4438 #[inline]
4439 pub fn and_token(&self) -> Option<SyntaxToken> {
4440 support::token(&self.syntax, SyntaxKind::AND_KW)
4441 }
4442 #[inline]
4443 pub fn chain_token(&self) -> Option<SyntaxToken> {
4444 support::token(&self.syntax, SyntaxKind::CHAIN_KW)
4445 }
4446 #[inline]
4447 pub fn commit_token(&self) -> Option<SyntaxToken> {
4448 support::token(&self.syntax, SyntaxKind::COMMIT_KW)
4449 }
4450 #[inline]
4451 pub fn end_token(&self) -> Option<SyntaxToken> {
4452 support::token(&self.syntax, SyntaxKind::END_KW)
4453 }
4454 #[inline]
4455 pub fn no_token(&self) -> Option<SyntaxToken> {
4456 support::token(&self.syntax, SyntaxKind::NO_KW)
4457 }
4458 #[inline]
4459 pub fn prepared_token(&self) -> Option<SyntaxToken> {
4460 support::token(&self.syntax, SyntaxKind::PREPARED_KW)
4461 }
4462 #[inline]
4463 pub fn transaction_token(&self) -> Option<SyntaxToken> {
4464 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
4465 }
4466 #[inline]
4467 pub fn work_token(&self) -> Option<SyntaxToken> {
4468 support::token(&self.syntax, SyntaxKind::WORK_KW)
4469 }
4470}
4471
4472#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4473pub struct CompoundSelect {
4474 pub(crate) syntax: SyntaxNode,
4475}
4476impl CompoundSelect {
4477 #[inline]
4478 pub fn fetch_clause(&self) -> Option<FetchClause> {
4479 support::child(&self.syntax)
4480 }
4481 #[inline]
4482 pub fn limit_clause(&self) -> Option<LimitClause> {
4483 support::child(&self.syntax)
4484 }
4485 #[inline]
4486 pub fn locking_clauses(&self) -> AstChildren<LockingClause> {
4487 support::children(&self.syntax)
4488 }
4489 #[inline]
4490 pub fn offset_clause(&self) -> Option<OffsetClause> {
4491 support::child(&self.syntax)
4492 }
4493 #[inline]
4494 pub fn order_by_clause(&self) -> Option<OrderByClause> {
4495 support::child(&self.syntax)
4496 }
4497 #[inline]
4498 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
4499 support::token(&self.syntax, SyntaxKind::SEMICOLON)
4500 }
4501 #[inline]
4502 pub fn all_token(&self) -> Option<SyntaxToken> {
4503 support::token(&self.syntax, SyntaxKind::ALL_KW)
4504 }
4505 #[inline]
4506 pub fn distinct_token(&self) -> Option<SyntaxToken> {
4507 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
4508 }
4509 #[inline]
4510 pub fn except_token(&self) -> Option<SyntaxToken> {
4511 support::token(&self.syntax, SyntaxKind::EXCEPT_KW)
4512 }
4513 #[inline]
4514 pub fn intersect_token(&self) -> Option<SyntaxToken> {
4515 support::token(&self.syntax, SyntaxKind::INTERSECT_KW)
4516 }
4517 #[inline]
4518 pub fn union_token(&self) -> Option<SyntaxToken> {
4519 support::token(&self.syntax, SyntaxKind::UNION_KW)
4520 }
4521}
4522
4523#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4524pub struct CompressionMethod {
4525 pub(crate) syntax: SyntaxNode,
4526}
4527impl CompressionMethod {
4528 #[inline]
4529 pub fn compression_token(&self) -> Option<SyntaxToken> {
4530 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
4531 }
4532 #[inline]
4533 pub fn default_token(&self) -> Option<SyntaxToken> {
4534 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
4535 }
4536 #[inline]
4537 pub fn ident_token(&self) -> Option<SyntaxToken> {
4538 support::token(&self.syntax, SyntaxKind::IDENT)
4539 }
4540}
4541
4542#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4543pub struct ConflictDoNothing {
4544 pub(crate) syntax: SyntaxNode,
4545}
4546impl ConflictDoNothing {
4547 #[inline]
4548 pub fn do_token(&self) -> Option<SyntaxToken> {
4549 support::token(&self.syntax, SyntaxKind::DO_KW)
4550 }
4551 #[inline]
4552 pub fn nothing_token(&self) -> Option<SyntaxToken> {
4553 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
4554 }
4555}
4556
4557#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4558pub struct ConflictDoSelect {
4559 pub(crate) syntax: SyntaxNode,
4560}
4561impl ConflictDoSelect {
4562 #[inline]
4563 pub fn locking_clause(&self) -> Option<LockingClause> {
4564 support::child(&self.syntax)
4565 }
4566 #[inline]
4567 pub fn where_clause(&self) -> Option<WhereClause> {
4568 support::child(&self.syntax)
4569 }
4570 #[inline]
4571 pub fn do_token(&self) -> Option<SyntaxToken> {
4572 support::token(&self.syntax, SyntaxKind::DO_KW)
4573 }
4574 #[inline]
4575 pub fn select_token(&self) -> Option<SyntaxToken> {
4576 support::token(&self.syntax, SyntaxKind::SELECT_KW)
4577 }
4578}
4579
4580#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4581pub struct ConflictDoUpdateSet {
4582 pub(crate) syntax: SyntaxNode,
4583}
4584impl ConflictDoUpdateSet {
4585 #[inline]
4586 pub fn set_clause(&self) -> Option<SetClause> {
4587 support::child(&self.syntax)
4588 }
4589 #[inline]
4590 pub fn where_clause(&self) -> Option<WhereClause> {
4591 support::child(&self.syntax)
4592 }
4593 #[inline]
4594 pub fn do_token(&self) -> Option<SyntaxToken> {
4595 support::token(&self.syntax, SyntaxKind::DO_KW)
4596 }
4597 #[inline]
4598 pub fn update_token(&self) -> Option<SyntaxToken> {
4599 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
4600 }
4601}
4602
4603#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4604pub struct ConflictIndexItem {
4605 pub(crate) syntax: SyntaxNode,
4606}
4607impl ConflictIndexItem {
4608 #[inline]
4609 pub fn collate(&self) -> Option<Collate> {
4610 support::child(&self.syntax)
4611 }
4612 #[inline]
4613 pub fn expr(&self) -> Option<Expr> {
4614 support::child(&self.syntax)
4615 }
4616 #[inline]
4617 pub fn path(&self) -> Option<Path> {
4618 support::child(&self.syntax)
4619 }
4620}
4621
4622#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4623pub struct ConflictIndexItemList {
4624 pub(crate) syntax: SyntaxNode,
4625}
4626impl ConflictIndexItemList {
4627 #[inline]
4628 pub fn conflict_index_items(&self) -> AstChildren<ConflictIndexItem> {
4629 support::children(&self.syntax)
4630 }
4631 #[inline]
4632 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
4633 support::token(&self.syntax, SyntaxKind::L_PAREN)
4634 }
4635 #[inline]
4636 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
4637 support::token(&self.syntax, SyntaxKind::R_PAREN)
4638 }
4639}
4640
4641#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4642pub struct ConflictOnConstraint {
4643 pub(crate) syntax: SyntaxNode,
4644}
4645impl ConflictOnConstraint {
4646 #[inline]
4647 pub fn name_ref(&self) -> Option<NameRef> {
4648 support::child(&self.syntax)
4649 }
4650 #[inline]
4651 pub fn constraint_token(&self) -> Option<SyntaxToken> {
4652 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
4653 }
4654 #[inline]
4655 pub fn on_token(&self) -> Option<SyntaxToken> {
4656 support::token(&self.syntax, SyntaxKind::ON_KW)
4657 }
4658}
4659
4660#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4661pub struct ConflictOnIndex {
4662 pub(crate) syntax: SyntaxNode,
4663}
4664impl ConflictOnIndex {
4665 #[inline]
4666 pub fn conflict_index_item_list(&self) -> Option<ConflictIndexItemList> {
4667 support::child(&self.syntax)
4668 }
4669 #[inline]
4670 pub fn where_clause(&self) -> Option<WhereClause> {
4671 support::child(&self.syntax)
4672 }
4673}
4674
4675#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4676pub struct ConstraintExclusion {
4677 pub(crate) syntax: SyntaxNode,
4678}
4679impl ConstraintExclusion {
4680 #[inline]
4681 pub fn expr(&self) -> Option<Expr> {
4682 support::child(&self.syntax)
4683 }
4684 #[inline]
4685 pub fn op(&self) -> Option<Op> {
4686 support::child(&self.syntax)
4687 }
4688 #[inline]
4689 pub fn with_token(&self) -> Option<SyntaxToken> {
4690 support::token(&self.syntax, SyntaxKind::WITH_KW)
4691 }
4692}
4693
4694#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4695pub struct ConstraintExclusionList {
4696 pub(crate) syntax: SyntaxNode,
4697}
4698impl ConstraintExclusionList {
4699 #[inline]
4700 pub fn constraint_exclusions(&self) -> AstChildren<ConstraintExclusion> {
4701 support::children(&self.syntax)
4702 }
4703 #[inline]
4704 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
4705 support::token(&self.syntax, SyntaxKind::L_PAREN)
4706 }
4707 #[inline]
4708 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
4709 support::token(&self.syntax, SyntaxKind::R_PAREN)
4710 }
4711}
4712
4713#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4714pub struct ConstraintIncludeClause {
4715 pub(crate) syntax: SyntaxNode,
4716}
4717impl ConstraintIncludeClause {
4718 #[inline]
4719 pub fn column_list(&self) -> Option<ColumnList> {
4720 support::child(&self.syntax)
4721 }
4722 #[inline]
4723 pub fn include_token(&self) -> Option<SyntaxToken> {
4724 support::token(&self.syntax, SyntaxKind::INCLUDE_KW)
4725 }
4726}
4727
4728#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4729pub struct ConstraintIndexMethod {
4730 pub(crate) syntax: SyntaxNode,
4731}
4732impl ConstraintIndexMethod {
4733 #[inline]
4734 pub fn name_ref(&self) -> Option<NameRef> {
4735 support::child(&self.syntax)
4736 }
4737 #[inline]
4738 pub fn using_token(&self) -> Option<SyntaxToken> {
4739 support::token(&self.syntax, SyntaxKind::USING_KW)
4740 }
4741}
4742
4743#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4744pub struct ConstraintIndexTablespace {
4745 pub(crate) syntax: SyntaxNode,
4746}
4747impl ConstraintIndexTablespace {
4748 #[inline]
4749 pub fn name_ref(&self) -> Option<NameRef> {
4750 support::child(&self.syntax)
4751 }
4752 #[inline]
4753 pub fn index_token(&self) -> Option<SyntaxToken> {
4754 support::token(&self.syntax, SyntaxKind::INDEX_KW)
4755 }
4756 #[inline]
4757 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
4758 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
4759 }
4760 #[inline]
4761 pub fn using_token(&self) -> Option<SyntaxToken> {
4762 support::token(&self.syntax, SyntaxKind::USING_KW)
4763 }
4764}
4765
4766#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4767pub struct ConstraintName {
4768 pub(crate) syntax: SyntaxNode,
4769}
4770impl ConstraintName {
4771 #[inline]
4772 pub fn name(&self) -> Option<Name> {
4773 support::child(&self.syntax)
4774 }
4775 #[inline]
4776 pub fn constraint_token(&self) -> Option<SyntaxToken> {
4777 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
4778 }
4779}
4780
4781#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4782pub struct Copy {
4783 pub(crate) syntax: SyntaxNode,
4784}
4785impl Copy {
4786 #[inline]
4787 pub fn column_list(&self) -> Option<ColumnList> {
4788 support::child(&self.syntax)
4789 }
4790 #[inline]
4791 pub fn copy_legacy_options(&self) -> AstChildren<CopyLegacyOption> {
4792 support::children(&self.syntax)
4793 }
4794 #[inline]
4795 pub fn copy_option_list(&self) -> Option<CopyOptionList> {
4796 support::child(&self.syntax)
4797 }
4798 #[inline]
4799 pub fn literal(&self) -> Option<Literal> {
4800 support::child(&self.syntax)
4801 }
4802 #[inline]
4803 pub fn path(&self) -> Option<Path> {
4804 support::child(&self.syntax)
4805 }
4806 #[inline]
4807 pub fn preparable_stmt(&self) -> Option<PreparableStmt> {
4808 support::child(&self.syntax)
4809 }
4810 #[inline]
4811 pub fn where_clause(&self) -> Option<WhereClause> {
4812 support::child(&self.syntax)
4813 }
4814 #[inline]
4815 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
4816 support::token(&self.syntax, SyntaxKind::L_PAREN)
4817 }
4818 #[inline]
4819 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
4820 support::token(&self.syntax, SyntaxKind::R_PAREN)
4821 }
4822 #[inline]
4823 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
4824 support::token(&self.syntax, SyntaxKind::SEMICOLON)
4825 }
4826 #[inline]
4827 pub fn binary_token(&self) -> Option<SyntaxToken> {
4828 support::token(&self.syntax, SyntaxKind::BINARY_KW)
4829 }
4830 #[inline]
4831 pub fn copy_token(&self) -> Option<SyntaxToken> {
4832 support::token(&self.syntax, SyntaxKind::COPY_KW)
4833 }
4834 #[inline]
4835 pub fn from_token(&self) -> Option<SyntaxToken> {
4836 support::token(&self.syntax, SyntaxKind::FROM_KW)
4837 }
4838 #[inline]
4839 pub fn program_token(&self) -> Option<SyntaxToken> {
4840 support::token(&self.syntax, SyntaxKind::PROGRAM_KW)
4841 }
4842 #[inline]
4843 pub fn stdin_token(&self) -> Option<SyntaxToken> {
4844 support::token(&self.syntax, SyntaxKind::STDIN_KW)
4845 }
4846 #[inline]
4847 pub fn stdout_token(&self) -> Option<SyntaxToken> {
4848 support::token(&self.syntax, SyntaxKind::STDOUT_KW)
4849 }
4850 #[inline]
4851 pub fn to_token(&self) -> Option<SyntaxToken> {
4852 support::token(&self.syntax, SyntaxKind::TO_KW)
4853 }
4854 #[inline]
4855 pub fn with_token(&self) -> Option<SyntaxToken> {
4856 support::token(&self.syntax, SyntaxKind::WITH_KW)
4857 }
4858}
4859
4860#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4861pub struct CopyLegacyOption {
4862 pub(crate) syntax: SyntaxNode,
4863}
4864impl CopyLegacyOption {
4865 #[inline]
4866 pub fn literal(&self) -> Option<Literal> {
4867 support::child(&self.syntax)
4868 }
4869 #[inline]
4870 pub fn name_refs(&self) -> AstChildren<NameRef> {
4871 support::children(&self.syntax)
4872 }
4873 #[inline]
4874 pub fn star_token(&self) -> Option<SyntaxToken> {
4875 support::token(&self.syntax, SyntaxKind::STAR)
4876 }
4877 #[inline]
4878 pub fn as_token(&self) -> Option<SyntaxToken> {
4879 support::token(&self.syntax, SyntaxKind::AS_KW)
4880 }
4881 #[inline]
4882 pub fn binary_token(&self) -> Option<SyntaxToken> {
4883 support::token(&self.syntax, SyntaxKind::BINARY_KW)
4884 }
4885 #[inline]
4886 pub fn csv_token(&self) -> Option<SyntaxToken> {
4887 support::token(&self.syntax, SyntaxKind::CSV_KW)
4888 }
4889 #[inline]
4890 pub fn delimiter_token(&self) -> Option<SyntaxToken> {
4891 support::token(&self.syntax, SyntaxKind::DELIMITER_KW)
4892 }
4893 #[inline]
4894 pub fn encoding_token(&self) -> Option<SyntaxToken> {
4895 support::token(&self.syntax, SyntaxKind::ENCODING_KW)
4896 }
4897 #[inline]
4898 pub fn escape_token(&self) -> Option<SyntaxToken> {
4899 support::token(&self.syntax, SyntaxKind::ESCAPE_KW)
4900 }
4901 #[inline]
4902 pub fn force_token(&self) -> Option<SyntaxToken> {
4903 support::token(&self.syntax, SyntaxKind::FORCE_KW)
4904 }
4905 #[inline]
4906 pub fn freeze_token(&self) -> Option<SyntaxToken> {
4907 support::token(&self.syntax, SyntaxKind::FREEZE_KW)
4908 }
4909 #[inline]
4910 pub fn header_token(&self) -> Option<SyntaxToken> {
4911 support::token(&self.syntax, SyntaxKind::HEADER_KW)
4912 }
4913 #[inline]
4914 pub fn json_token(&self) -> Option<SyntaxToken> {
4915 support::token(&self.syntax, SyntaxKind::JSON_KW)
4916 }
4917 #[inline]
4918 pub fn not_token(&self) -> Option<SyntaxToken> {
4919 support::token(&self.syntax, SyntaxKind::NOT_KW)
4920 }
4921 #[inline]
4922 pub fn null_token(&self) -> Option<SyntaxToken> {
4923 support::token(&self.syntax, SyntaxKind::NULL_KW)
4924 }
4925 #[inline]
4926 pub fn quote_token(&self) -> Option<SyntaxToken> {
4927 support::token(&self.syntax, SyntaxKind::QUOTE_KW)
4928 }
4929}
4930
4931#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4932pub struct CopyOption {
4933 pub(crate) syntax: SyntaxNode,
4934}
4935impl CopyOption {
4936 #[inline]
4937 pub fn copy_option_list(&self) -> Option<CopyOptionList> {
4938 support::child(&self.syntax)
4939 }
4940 #[inline]
4941 pub fn literal(&self) -> Option<Literal> {
4942 support::child(&self.syntax)
4943 }
4944 #[inline]
4945 pub fn name(&self) -> Option<Name> {
4946 support::child(&self.syntax)
4947 }
4948 #[inline]
4949 pub fn star_token(&self) -> Option<SyntaxToken> {
4950 support::token(&self.syntax, SyntaxKind::STAR)
4951 }
4952 #[inline]
4953 pub fn default_token(&self) -> Option<SyntaxToken> {
4954 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
4955 }
4956 #[inline]
4957 pub fn ident_token(&self) -> Option<SyntaxToken> {
4958 support::token(&self.syntax, SyntaxKind::IDENT)
4959 }
4960 #[inline]
4961 pub fn off_token(&self) -> Option<SyntaxToken> {
4962 support::token(&self.syntax, SyntaxKind::OFF_KW)
4963 }
4964 #[inline]
4965 pub fn on_token(&self) -> Option<SyntaxToken> {
4966 support::token(&self.syntax, SyntaxKind::ON_KW)
4967 }
4968}
4969
4970#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4971pub struct CopyOptionList {
4972 pub(crate) syntax: SyntaxNode,
4973}
4974impl CopyOptionList {
4975 #[inline]
4976 pub fn copy_options(&self) -> AstChildren<CopyOption> {
4977 support::children(&self.syntax)
4978 }
4979 #[inline]
4980 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
4981 support::token(&self.syntax, SyntaxKind::L_PAREN)
4982 }
4983 #[inline]
4984 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
4985 support::token(&self.syntax, SyntaxKind::R_PAREN)
4986 }
4987}
4988
4989#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4990pub struct CostFuncOption {
4991 pub(crate) syntax: SyntaxNode,
4992}
4993impl CostFuncOption {
4994 #[inline]
4995 pub fn literal(&self) -> Option<Literal> {
4996 support::child(&self.syntax)
4997 }
4998 #[inline]
4999 pub fn cost_token(&self) -> Option<SyntaxToken> {
5000 support::token(&self.syntax, SyntaxKind::COST_KW)
5001 }
5002}
5003
5004#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5005pub struct CreateAccessMethod {
5006 pub(crate) syntax: SyntaxNode,
5007}
5008impl CreateAccessMethod {
5009 #[inline]
5010 pub fn handler_clause(&self) -> Option<HandlerClause> {
5011 support::child(&self.syntax)
5012 }
5013 #[inline]
5014 pub fn name(&self) -> Option<Path> {
5015 support::child(&self.syntax)
5016 }
5017 #[inline]
5018 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
5019 support::token(&self.syntax, SyntaxKind::SEMICOLON)
5020 }
5021 #[inline]
5022 pub fn access_token(&self) -> Option<SyntaxToken> {
5023 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
5024 }
5025 #[inline]
5026 pub fn create_token(&self) -> Option<SyntaxToken> {
5027 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5028 }
5029 #[inline]
5030 pub fn index_token(&self) -> Option<SyntaxToken> {
5031 support::token(&self.syntax, SyntaxKind::INDEX_KW)
5032 }
5033 #[inline]
5034 pub fn method_token(&self) -> Option<SyntaxToken> {
5035 support::token(&self.syntax, SyntaxKind::METHOD_KW)
5036 }
5037 #[inline]
5038 pub fn table_token(&self) -> Option<SyntaxToken> {
5039 support::token(&self.syntax, SyntaxKind::TABLE_KW)
5040 }
5041 #[inline]
5042 pub fn type_token(&self) -> Option<SyntaxToken> {
5043 support::token(&self.syntax, SyntaxKind::TYPE_KW)
5044 }
5045}
5046
5047#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5048pub struct CreateAggregate {
5049 pub(crate) syntax: SyntaxNode,
5050}
5051impl CreateAggregate {
5052 #[inline]
5053 pub fn attribute_list(&self) -> Option<AttributeList> {
5054 support::child(&self.syntax)
5055 }
5056 #[inline]
5057 pub fn or_replace(&self) -> Option<OrReplace> {
5058 support::child(&self.syntax)
5059 }
5060 #[inline]
5061 pub fn param_list(&self) -> Option<ParamList> {
5062 support::child(&self.syntax)
5063 }
5064 #[inline]
5065 pub fn path(&self) -> Option<Path> {
5066 support::child(&self.syntax)
5067 }
5068 #[inline]
5069 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
5070 support::token(&self.syntax, SyntaxKind::SEMICOLON)
5071 }
5072 #[inline]
5073 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
5074 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
5075 }
5076 #[inline]
5077 pub fn create_token(&self) -> Option<SyntaxToken> {
5078 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5079 }
5080}
5081
5082#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5083pub struct CreateCast {
5084 pub(crate) syntax: SyntaxNode,
5085}
5086impl CreateCast {
5087 #[inline]
5088 pub fn cast_sig(&self) -> Option<CastSig> {
5089 support::child(&self.syntax)
5090 }
5091 #[inline]
5092 pub fn function_sig(&self) -> Option<FunctionSig> {
5093 support::child(&self.syntax)
5094 }
5095 #[inline]
5096 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
5097 support::token(&self.syntax, SyntaxKind::SEMICOLON)
5098 }
5099 #[inline]
5100 pub fn as_token(&self) -> Option<SyntaxToken> {
5101 support::token(&self.syntax, SyntaxKind::AS_KW)
5102 }
5103 #[inline]
5104 pub fn assignment_token(&self) -> Option<SyntaxToken> {
5105 support::token(&self.syntax, SyntaxKind::ASSIGNMENT_KW)
5106 }
5107 #[inline]
5108 pub fn cast_token(&self) -> Option<SyntaxToken> {
5109 support::token(&self.syntax, SyntaxKind::CAST_KW)
5110 }
5111 #[inline]
5112 pub fn create_token(&self) -> Option<SyntaxToken> {
5113 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5114 }
5115 #[inline]
5116 pub fn function_token(&self) -> Option<SyntaxToken> {
5117 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
5118 }
5119 #[inline]
5120 pub fn implicit_token(&self) -> Option<SyntaxToken> {
5121 support::token(&self.syntax, SyntaxKind::IMPLICIT_KW)
5122 }
5123 #[inline]
5124 pub fn inout_token(&self) -> Option<SyntaxToken> {
5125 support::token(&self.syntax, SyntaxKind::INOUT_KW)
5126 }
5127 #[inline]
5128 pub fn with_token(&self) -> Option<SyntaxToken> {
5129 support::token(&self.syntax, SyntaxKind::WITH_KW)
5130 }
5131 #[inline]
5132 pub fn without_token(&self) -> Option<SyntaxToken> {
5133 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
5134 }
5135}
5136
5137#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5138pub struct CreateCollation {
5139 pub(crate) syntax: SyntaxNode,
5140}
5141impl CreateCollation {
5142 #[inline]
5143 pub fn attribute_list(&self) -> Option<AttributeList> {
5144 support::child(&self.syntax)
5145 }
5146 #[inline]
5147 pub fn collation_from(&self) -> Option<CollationFrom> {
5148 support::child(&self.syntax)
5149 }
5150 #[inline]
5151 pub fn if_not_exists(&self) -> Option<IfNotExists> {
5152 support::child(&self.syntax)
5153 }
5154 #[inline]
5155 pub fn path(&self) -> Option<Path> {
5156 support::child(&self.syntax)
5157 }
5158 #[inline]
5159 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
5160 support::token(&self.syntax, SyntaxKind::SEMICOLON)
5161 }
5162 #[inline]
5163 pub fn collation_token(&self) -> Option<SyntaxToken> {
5164 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
5165 }
5166 #[inline]
5167 pub fn create_token(&self) -> Option<SyntaxToken> {
5168 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5169 }
5170}
5171
5172#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5173pub struct CreateConversion {
5174 pub(crate) syntax: SyntaxNode,
5175}
5176impl CreateConversion {
5177 #[inline]
5178 pub fn literal(&self) -> Option<Literal> {
5179 support::child(&self.syntax)
5180 }
5181 #[inline]
5182 pub fn path(&self) -> Option<Path> {
5183 support::child(&self.syntax)
5184 }
5185 #[inline]
5186 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
5187 support::token(&self.syntax, SyntaxKind::SEMICOLON)
5188 }
5189 #[inline]
5190 pub fn conversion_token(&self) -> Option<SyntaxToken> {
5191 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
5192 }
5193 #[inline]
5194 pub fn create_token(&self) -> Option<SyntaxToken> {
5195 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5196 }
5197 #[inline]
5198 pub fn default_token(&self) -> Option<SyntaxToken> {
5199 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
5200 }
5201 #[inline]
5202 pub fn for_token(&self) -> Option<SyntaxToken> {
5203 support::token(&self.syntax, SyntaxKind::FOR_KW)
5204 }
5205 #[inline]
5206 pub fn from_token(&self) -> Option<SyntaxToken> {
5207 support::token(&self.syntax, SyntaxKind::FROM_KW)
5208 }
5209 #[inline]
5210 pub fn to_token(&self) -> Option<SyntaxToken> {
5211 support::token(&self.syntax, SyntaxKind::TO_KW)
5212 }
5213}
5214
5215#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5216pub struct CreateDatabase {
5217 pub(crate) syntax: SyntaxNode,
5218}
5219impl CreateDatabase {
5220 #[inline]
5221 pub fn database_option_list(&self) -> Option<DatabaseOptionList> {
5222 support::child(&self.syntax)
5223 }
5224 #[inline]
5225 pub fn name(&self) -> Option<Name> {
5226 support::child(&self.syntax)
5227 }
5228 #[inline]
5229 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
5230 support::token(&self.syntax, SyntaxKind::SEMICOLON)
5231 }
5232 #[inline]
5233 pub fn create_token(&self) -> Option<SyntaxToken> {
5234 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5235 }
5236 #[inline]
5237 pub fn database_token(&self) -> Option<SyntaxToken> {
5238 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
5239 }
5240}
5241
5242#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5243pub struct CreateDomain {
5244 pub(crate) syntax: SyntaxNode,
5245}
5246impl CreateDomain {
5247 #[inline]
5248 pub fn collate(&self) -> Option<Collate> {
5249 support::child(&self.syntax)
5250 }
5251 #[inline]
5252 pub fn constraints(&self) -> AstChildren<Constraint> {
5253 support::children(&self.syntax)
5254 }
5255 #[inline]
5256 pub fn path(&self) -> Option<Path> {
5257 support::child(&self.syntax)
5258 }
5259 #[inline]
5260 pub fn ty(&self) -> Option<Type> {
5261 support::child(&self.syntax)
5262 }
5263 #[inline]
5264 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
5265 support::token(&self.syntax, SyntaxKind::SEMICOLON)
5266 }
5267 #[inline]
5268 pub fn as_token(&self) -> Option<SyntaxToken> {
5269 support::token(&self.syntax, SyntaxKind::AS_KW)
5270 }
5271 #[inline]
5272 pub fn create_token(&self) -> Option<SyntaxToken> {
5273 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5274 }
5275 #[inline]
5276 pub fn domain_token(&self) -> Option<SyntaxToken> {
5277 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
5278 }
5279}
5280
5281#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5282pub struct CreateEventTrigger {
5283 pub(crate) syntax: SyntaxNode,
5284}
5285impl CreateEventTrigger {
5286 #[inline]
5287 pub fn call_expr(&self) -> Option<CallExpr> {
5288 support::child(&self.syntax)
5289 }
5290 #[inline]
5291 pub fn event_trigger_when_clause(&self) -> Option<EventTriggerWhenClause> {
5292 support::child(&self.syntax)
5293 }
5294 #[inline]
5295 pub fn name(&self) -> Option<Name> {
5296 support::child(&self.syntax)
5297 }
5298 #[inline]
5299 pub fn name_ref(&self) -> Option<NameRef> {
5300 support::child(&self.syntax)
5301 }
5302 #[inline]
5303 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
5304 support::token(&self.syntax, SyntaxKind::SEMICOLON)
5305 }
5306 #[inline]
5307 pub fn create_token(&self) -> Option<SyntaxToken> {
5308 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5309 }
5310 #[inline]
5311 pub fn event_token(&self) -> Option<SyntaxToken> {
5312 support::token(&self.syntax, SyntaxKind::EVENT_KW)
5313 }
5314 #[inline]
5315 pub fn execute_token(&self) -> Option<SyntaxToken> {
5316 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
5317 }
5318 #[inline]
5319 pub fn function_token(&self) -> Option<SyntaxToken> {
5320 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
5321 }
5322 #[inline]
5323 pub fn on_token(&self) -> Option<SyntaxToken> {
5324 support::token(&self.syntax, SyntaxKind::ON_KW)
5325 }
5326 #[inline]
5327 pub fn procedure_token(&self) -> Option<SyntaxToken> {
5328 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
5329 }
5330 #[inline]
5331 pub fn trigger_token(&self) -> Option<SyntaxToken> {
5332 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
5333 }
5334}
5335
5336#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5337pub struct CreateExtension {
5338 pub(crate) syntax: SyntaxNode,
5339}
5340impl CreateExtension {
5341 #[inline]
5342 pub fn if_not_exists(&self) -> Option<IfNotExists> {
5343 support::child(&self.syntax)
5344 }
5345 #[inline]
5346 pub fn literal(&self) -> Option<Literal> {
5347 support::child(&self.syntax)
5348 }
5349 #[inline]
5350 pub fn name(&self) -> Option<Name> {
5351 support::child(&self.syntax)
5352 }
5353 #[inline]
5354 pub fn name_ref(&self) -> Option<NameRef> {
5355 support::child(&self.syntax)
5356 }
5357 #[inline]
5358 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
5359 support::token(&self.syntax, SyntaxKind::SEMICOLON)
5360 }
5361 #[inline]
5362 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5363 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5364 }
5365 #[inline]
5366 pub fn create_token(&self) -> Option<SyntaxToken> {
5367 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5368 }
5369 #[inline]
5370 pub fn extension_token(&self) -> Option<SyntaxToken> {
5371 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
5372 }
5373 #[inline]
5374 pub fn ident_token(&self) -> Option<SyntaxToken> {
5375 support::token(&self.syntax, SyntaxKind::IDENT)
5376 }
5377 #[inline]
5378 pub fn schema_token(&self) -> Option<SyntaxToken> {
5379 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
5380 }
5381 #[inline]
5382 pub fn version_token(&self) -> Option<SyntaxToken> {
5383 support::token(&self.syntax, SyntaxKind::VERSION_KW)
5384 }
5385 #[inline]
5386 pub fn with_token(&self) -> Option<SyntaxToken> {
5387 support::token(&self.syntax, SyntaxKind::WITH_KW)
5388 }
5389}
5390
5391#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5392pub struct CreateForeignDataWrapper {
5393 pub(crate) syntax: SyntaxNode,
5394}
5395impl CreateForeignDataWrapper {
5396 #[inline]
5397 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
5398 support::child(&self.syntax)
5399 }
5400 #[inline]
5401 pub fn fdw_option_list(&self) -> Option<FdwOptionList> {
5402 support::child(&self.syntax)
5403 }
5404 #[inline]
5405 pub fn name(&self) -> Option<Name> {
5406 support::child(&self.syntax)
5407 }
5408 #[inline]
5409 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
5410 support::token(&self.syntax, SyntaxKind::SEMICOLON)
5411 }
5412 #[inline]
5413 pub fn create_token(&self) -> Option<SyntaxToken> {
5414 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5415 }
5416 #[inline]
5417 pub fn data_token(&self) -> Option<SyntaxToken> {
5418 support::token(&self.syntax, SyntaxKind::DATA_KW)
5419 }
5420 #[inline]
5421 pub fn foreign_token(&self) -> Option<SyntaxToken> {
5422 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
5423 }
5424 #[inline]
5425 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
5426 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
5427 }
5428}
5429
5430#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5431pub struct CreateForeignTable {
5432 pub(crate) syntax: SyntaxNode,
5433}
5434impl CreateForeignTable {
5435 #[inline]
5436 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
5437 support::child(&self.syntax)
5438 }
5439 #[inline]
5440 pub fn if_not_exists(&self) -> Option<IfNotExists> {
5441 support::child(&self.syntax)
5442 }
5443 #[inline]
5444 pub fn inherits(&self) -> Option<Inherits> {
5445 support::child(&self.syntax)
5446 }
5447 #[inline]
5448 pub fn partition_of(&self) -> Option<PartitionOf> {
5449 support::child(&self.syntax)
5450 }
5451 #[inline]
5452 pub fn partition_type(&self) -> Option<PartitionType> {
5453 support::child(&self.syntax)
5454 }
5455 #[inline]
5456 pub fn path(&self) -> Option<Path> {
5457 support::child(&self.syntax)
5458 }
5459 #[inline]
5460 pub fn server_name(&self) -> Option<ServerName> {
5461 support::child(&self.syntax)
5462 }
5463 #[inline]
5464 pub fn table_arg_list(&self) -> Option<TableArgList> {
5465 support::child(&self.syntax)
5466 }
5467 #[inline]
5468 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
5469 support::token(&self.syntax, SyntaxKind::SEMICOLON)
5470 }
5471 #[inline]
5472 pub fn create_token(&self) -> Option<SyntaxToken> {
5473 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5474 }
5475 #[inline]
5476 pub fn foreign_token(&self) -> Option<SyntaxToken> {
5477 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
5478 }
5479 #[inline]
5480 pub fn table_token(&self) -> Option<SyntaxToken> {
5481 support::token(&self.syntax, SyntaxKind::TABLE_KW)
5482 }
5483}
5484
5485#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5486pub struct CreateFunction {
5487 pub(crate) syntax: SyntaxNode,
5488}
5489impl CreateFunction {
5490 #[inline]
5491 pub fn option_list(&self) -> Option<FuncOptionList> {
5492 support::child(&self.syntax)
5493 }
5494 #[inline]
5495 pub fn or_replace(&self) -> Option<OrReplace> {
5496 support::child(&self.syntax)
5497 }
5498 #[inline]
5499 pub fn param_list(&self) -> Option<ParamList> {
5500 support::child(&self.syntax)
5501 }
5502 #[inline]
5503 pub fn path(&self) -> Option<Path> {
5504 support::child(&self.syntax)
5505 }
5506 #[inline]
5507 pub fn ret_type(&self) -> Option<RetType> {
5508 support::child(&self.syntax)
5509 }
5510 #[inline]
5511 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
5512 support::token(&self.syntax, SyntaxKind::SEMICOLON)
5513 }
5514 #[inline]
5515 pub fn create_token(&self) -> Option<SyntaxToken> {
5516 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5517 }
5518 #[inline]
5519 pub fn function_token(&self) -> Option<SyntaxToken> {
5520 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
5521 }
5522}
5523
5524#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5525pub struct CreateGroup {
5526 pub(crate) syntax: SyntaxNode,
5527}
5528impl CreateGroup {
5529 #[inline]
5530 pub fn name(&self) -> Option<Name> {
5531 support::child(&self.syntax)
5532 }
5533 #[inline]
5534 pub fn role_option_list(&self) -> Option<RoleOptionList> {
5535 support::child(&self.syntax)
5536 }
5537 #[inline]
5538 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
5539 support::token(&self.syntax, SyntaxKind::SEMICOLON)
5540 }
5541 #[inline]
5542 pub fn create_token(&self) -> Option<SyntaxToken> {
5543 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5544 }
5545 #[inline]
5546 pub fn group_token(&self) -> Option<SyntaxToken> {
5547 support::token(&self.syntax, SyntaxKind::GROUP_KW)
5548 }
5549}
5550
5551#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5552pub struct CreateIndex {
5553 pub(crate) syntax: SyntaxNode,
5554}
5555impl CreateIndex {
5556 #[inline]
5557 pub fn constraint_include_clause(&self) -> Option<ConstraintIncludeClause> {
5558 support::child(&self.syntax)
5559 }
5560 #[inline]
5561 pub fn if_not_exists(&self) -> Option<IfNotExists> {
5562 support::child(&self.syntax)
5563 }
5564 #[inline]
5565 pub fn name(&self) -> Option<Name> {
5566 support::child(&self.syntax)
5567 }
5568 #[inline]
5569 pub fn nulls_distinct(&self) -> Option<NullsDistinct> {
5570 support::child(&self.syntax)
5571 }
5572 #[inline]
5573 pub fn nulls_not_distinct(&self) -> Option<NullsNotDistinct> {
5574 support::child(&self.syntax)
5575 }
5576 #[inline]
5577 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
5578 support::child(&self.syntax)
5579 }
5580 #[inline]
5581 pub fn relation_name(&self) -> Option<RelationName> {
5582 support::child(&self.syntax)
5583 }
5584 #[inline]
5585 pub fn tablespace(&self) -> Option<Tablespace> {
5586 support::child(&self.syntax)
5587 }
5588 #[inline]
5589 pub fn using_method(&self) -> Option<UsingMethod> {
5590 support::child(&self.syntax)
5591 }
5592 #[inline]
5593 pub fn where_clause(&self) -> Option<WhereClause> {
5594 support::child(&self.syntax)
5595 }
5596 #[inline]
5597 pub fn with_params(&self) -> Option<WithParams> {
5598 support::child(&self.syntax)
5599 }
5600 #[inline]
5601 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
5602 support::token(&self.syntax, SyntaxKind::SEMICOLON)
5603 }
5604 #[inline]
5605 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
5606 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
5607 }
5608 #[inline]
5609 pub fn create_token(&self) -> Option<SyntaxToken> {
5610 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5611 }
5612 #[inline]
5613 pub fn index_token(&self) -> Option<SyntaxToken> {
5614 support::token(&self.syntax, SyntaxKind::INDEX_KW)
5615 }
5616 #[inline]
5617 pub fn on_token(&self) -> Option<SyntaxToken> {
5618 support::token(&self.syntax, SyntaxKind::ON_KW)
5619 }
5620 #[inline]
5621 pub fn unique_token(&self) -> Option<SyntaxToken> {
5622 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
5623 }
5624}
5625
5626#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5627pub struct CreateLanguage {
5628 pub(crate) syntax: SyntaxNode,
5629}
5630impl CreateLanguage {
5631 #[inline]
5632 pub fn name(&self) -> Option<Name> {
5633 support::child(&self.syntax)
5634 }
5635 #[inline]
5636 pub fn or_replace(&self) -> Option<OrReplace> {
5637 support::child(&self.syntax)
5638 }
5639 #[inline]
5640 pub fn path(&self) -> Option<Path> {
5641 support::child(&self.syntax)
5642 }
5643 #[inline]
5644 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
5645 support::token(&self.syntax, SyntaxKind::SEMICOLON)
5646 }
5647 #[inline]
5648 pub fn create_token(&self) -> Option<SyntaxToken> {
5649 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5650 }
5651 #[inline]
5652 pub fn handler_token(&self) -> Option<SyntaxToken> {
5653 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
5654 }
5655 #[inline]
5656 pub fn inline_token(&self) -> Option<SyntaxToken> {
5657 support::token(&self.syntax, SyntaxKind::INLINE_KW)
5658 }
5659 #[inline]
5660 pub fn language_token(&self) -> Option<SyntaxToken> {
5661 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
5662 }
5663 #[inline]
5664 pub fn procedural_token(&self) -> Option<SyntaxToken> {
5665 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
5666 }
5667 #[inline]
5668 pub fn trusted_token(&self) -> Option<SyntaxToken> {
5669 support::token(&self.syntax, SyntaxKind::TRUSTED_KW)
5670 }
5671 #[inline]
5672 pub fn validator_token(&self) -> Option<SyntaxToken> {
5673 support::token(&self.syntax, SyntaxKind::VALIDATOR_KW)
5674 }
5675}
5676
5677#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5678pub struct CreateMaterializedView {
5679 pub(crate) syntax: SyntaxNode,
5680}
5681impl CreateMaterializedView {
5682 #[inline]
5683 pub fn column_list(&self) -> Option<ColumnList> {
5684 support::child(&self.syntax)
5685 }
5686 #[inline]
5687 pub fn if_not_exists(&self) -> Option<IfNotExists> {
5688 support::child(&self.syntax)
5689 }
5690 #[inline]
5691 pub fn path(&self) -> Option<Path> {
5692 support::child(&self.syntax)
5693 }
5694 #[inline]
5695 pub fn query(&self) -> Option<SelectVariant> {
5696 support::child(&self.syntax)
5697 }
5698 #[inline]
5699 pub fn tablespace(&self) -> Option<Tablespace> {
5700 support::child(&self.syntax)
5701 }
5702 #[inline]
5703 pub fn using_method(&self) -> Option<UsingMethod> {
5704 support::child(&self.syntax)
5705 }
5706 #[inline]
5707 pub fn with_data(&self) -> Option<WithData> {
5708 support::child(&self.syntax)
5709 }
5710 #[inline]
5711 pub fn with_no_data(&self) -> Option<WithNoData> {
5712 support::child(&self.syntax)
5713 }
5714 #[inline]
5715 pub fn with_params(&self) -> Option<WithParams> {
5716 support::child(&self.syntax)
5717 }
5718 #[inline]
5719 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
5720 support::token(&self.syntax, SyntaxKind::SEMICOLON)
5721 }
5722 #[inline]
5723 pub fn as_token(&self) -> Option<SyntaxToken> {
5724 support::token(&self.syntax, SyntaxKind::AS_KW)
5725 }
5726 #[inline]
5727 pub fn create_token(&self) -> Option<SyntaxToken> {
5728 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5729 }
5730 #[inline]
5731 pub fn materialized_token(&self) -> Option<SyntaxToken> {
5732 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
5733 }
5734 #[inline]
5735 pub fn view_token(&self) -> Option<SyntaxToken> {
5736 support::token(&self.syntax, SyntaxKind::VIEW_KW)
5737 }
5738}
5739
5740#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5741pub struct CreateOperator {
5742 pub(crate) syntax: SyntaxNode,
5743}
5744impl CreateOperator {
5745 #[inline]
5746 pub fn attribute_list(&self) -> Option<AttributeList> {
5747 support::child(&self.syntax)
5748 }
5749 #[inline]
5750 pub fn op(&self) -> Option<Op> {
5751 support::child(&self.syntax)
5752 }
5753 #[inline]
5754 pub fn path(&self) -> Option<Path> {
5755 support::child(&self.syntax)
5756 }
5757 #[inline]
5758 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
5759 support::token(&self.syntax, SyntaxKind::SEMICOLON)
5760 }
5761 #[inline]
5762 pub fn create_token(&self) -> Option<SyntaxToken> {
5763 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5764 }
5765 #[inline]
5766 pub fn operator_token(&self) -> Option<SyntaxToken> {
5767 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
5768 }
5769}
5770
5771#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5772pub struct CreateOperatorClass {
5773 pub(crate) syntax: SyntaxNode,
5774}
5775impl CreateOperatorClass {
5776 #[inline]
5777 pub fn name_ref(&self) -> Option<NameRef> {
5778 support::child(&self.syntax)
5779 }
5780 #[inline]
5781 pub fn operator_class_option_list(&self) -> Option<OperatorClassOptionList> {
5782 support::child(&self.syntax)
5783 }
5784 #[inline]
5785 pub fn path(&self) -> Option<Path> {
5786 support::child(&self.syntax)
5787 }
5788 #[inline]
5789 pub fn ty(&self) -> Option<Type> {
5790 support::child(&self.syntax)
5791 }
5792 #[inline]
5793 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
5794 support::token(&self.syntax, SyntaxKind::SEMICOLON)
5795 }
5796 #[inline]
5797 pub fn as_token(&self) -> Option<SyntaxToken> {
5798 support::token(&self.syntax, SyntaxKind::AS_KW)
5799 }
5800 #[inline]
5801 pub fn class_token(&self) -> Option<SyntaxToken> {
5802 support::token(&self.syntax, SyntaxKind::CLASS_KW)
5803 }
5804 #[inline]
5805 pub fn create_token(&self) -> Option<SyntaxToken> {
5806 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5807 }
5808 #[inline]
5809 pub fn default_token(&self) -> Option<SyntaxToken> {
5810 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
5811 }
5812 #[inline]
5813 pub fn family_token(&self) -> Option<SyntaxToken> {
5814 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
5815 }
5816 #[inline]
5817 pub fn for_token(&self) -> Option<SyntaxToken> {
5818 support::token(&self.syntax, SyntaxKind::FOR_KW)
5819 }
5820 #[inline]
5821 pub fn operator_token(&self) -> Option<SyntaxToken> {
5822 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
5823 }
5824 #[inline]
5825 pub fn type_token(&self) -> Option<SyntaxToken> {
5826 support::token(&self.syntax, SyntaxKind::TYPE_KW)
5827 }
5828 #[inline]
5829 pub fn using_token(&self) -> Option<SyntaxToken> {
5830 support::token(&self.syntax, SyntaxKind::USING_KW)
5831 }
5832}
5833
5834#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5835pub struct CreateOperatorFamily {
5836 pub(crate) syntax: SyntaxNode,
5837}
5838impl CreateOperatorFamily {
5839 #[inline]
5840 pub fn name_ref(&self) -> Option<NameRef> {
5841 support::child(&self.syntax)
5842 }
5843 #[inline]
5844 pub fn path(&self) -> Option<Path> {
5845 support::child(&self.syntax)
5846 }
5847 #[inline]
5848 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
5849 support::token(&self.syntax, SyntaxKind::SEMICOLON)
5850 }
5851 #[inline]
5852 pub fn create_token(&self) -> Option<SyntaxToken> {
5853 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5854 }
5855 #[inline]
5856 pub fn family_token(&self) -> Option<SyntaxToken> {
5857 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
5858 }
5859 #[inline]
5860 pub fn operator_token(&self) -> Option<SyntaxToken> {
5861 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
5862 }
5863 #[inline]
5864 pub fn using_token(&self) -> Option<SyntaxToken> {
5865 support::token(&self.syntax, SyntaxKind::USING_KW)
5866 }
5867}
5868
5869#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5870pub struct CreatePolicy {
5871 pub(crate) syntax: SyntaxNode,
5872}
5873impl CreatePolicy {
5874 #[inline]
5875 pub fn as_policy_type(&self) -> Option<AsPolicyType> {
5876 support::child(&self.syntax)
5877 }
5878 #[inline]
5879 pub fn name(&self) -> Option<Name> {
5880 support::child(&self.syntax)
5881 }
5882 #[inline]
5883 pub fn on_table(&self) -> Option<OnTable> {
5884 support::child(&self.syntax)
5885 }
5886 #[inline]
5887 pub fn role_ref_list(&self) -> Option<RoleRefList> {
5888 support::child(&self.syntax)
5889 }
5890 #[inline]
5891 pub fn using_expr_clause(&self) -> Option<UsingExprClause> {
5892 support::child(&self.syntax)
5893 }
5894 #[inline]
5895 pub fn with_check_expr_clause(&self) -> Option<WithCheckExprClause> {
5896 support::child(&self.syntax)
5897 }
5898 #[inline]
5899 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
5900 support::token(&self.syntax, SyntaxKind::SEMICOLON)
5901 }
5902 #[inline]
5903 pub fn all_token(&self) -> Option<SyntaxToken> {
5904 support::token(&self.syntax, SyntaxKind::ALL_KW)
5905 }
5906 #[inline]
5907 pub fn create_token(&self) -> Option<SyntaxToken> {
5908 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5909 }
5910 #[inline]
5911 pub fn delete_token(&self) -> Option<SyntaxToken> {
5912 support::token(&self.syntax, SyntaxKind::DELETE_KW)
5913 }
5914 #[inline]
5915 pub fn for_token(&self) -> Option<SyntaxToken> {
5916 support::token(&self.syntax, SyntaxKind::FOR_KW)
5917 }
5918 #[inline]
5919 pub fn insert_token(&self) -> Option<SyntaxToken> {
5920 support::token(&self.syntax, SyntaxKind::INSERT_KW)
5921 }
5922 #[inline]
5923 pub fn policy_token(&self) -> Option<SyntaxToken> {
5924 support::token(&self.syntax, SyntaxKind::POLICY_KW)
5925 }
5926 #[inline]
5927 pub fn select_token(&self) -> Option<SyntaxToken> {
5928 support::token(&self.syntax, SyntaxKind::SELECT_KW)
5929 }
5930 #[inline]
5931 pub fn to_token(&self) -> Option<SyntaxToken> {
5932 support::token(&self.syntax, SyntaxKind::TO_KW)
5933 }
5934 #[inline]
5935 pub fn update_token(&self) -> Option<SyntaxToken> {
5936 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
5937 }
5938}
5939
5940#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5941pub struct CreateProcedure {
5942 pub(crate) syntax: SyntaxNode,
5943}
5944impl CreateProcedure {
5945 #[inline]
5946 pub fn option_list(&self) -> Option<FuncOptionList> {
5947 support::child(&self.syntax)
5948 }
5949 #[inline]
5950 pub fn or_replace(&self) -> Option<OrReplace> {
5951 support::child(&self.syntax)
5952 }
5953 #[inline]
5954 pub fn param_list(&self) -> Option<ParamList> {
5955 support::child(&self.syntax)
5956 }
5957 #[inline]
5958 pub fn path(&self) -> Option<Path> {
5959 support::child(&self.syntax)
5960 }
5961 #[inline]
5962 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
5963 support::token(&self.syntax, SyntaxKind::SEMICOLON)
5964 }
5965 #[inline]
5966 pub fn create_token(&self) -> Option<SyntaxToken> {
5967 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5968 }
5969 #[inline]
5970 pub fn procedure_token(&self) -> Option<SyntaxToken> {
5971 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
5972 }
5973}
5974
5975#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5976pub struct CreatePropertyGraph {
5977 pub(crate) syntax: SyntaxNode,
5978}
5979impl CreatePropertyGraph {
5980 #[inline]
5981 pub fn edge_tables(&self) -> Option<EdgeTables> {
5982 support::child(&self.syntax)
5983 }
5984 #[inline]
5985 pub fn path(&self) -> Option<Path> {
5986 support::child(&self.syntax)
5987 }
5988 #[inline]
5989 pub fn persistence(&self) -> Option<Persistence> {
5990 support::child(&self.syntax)
5991 }
5992 #[inline]
5993 pub fn vertex_tables(&self) -> Option<VertexTables> {
5994 support::child(&self.syntax)
5995 }
5996 #[inline]
5997 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
5998 support::token(&self.syntax, SyntaxKind::SEMICOLON)
5999 }
6000 #[inline]
6001 pub fn create_token(&self) -> Option<SyntaxToken> {
6002 support::token(&self.syntax, SyntaxKind::CREATE_KW)
6003 }
6004 #[inline]
6005 pub fn graph_token(&self) -> Option<SyntaxToken> {
6006 support::token(&self.syntax, SyntaxKind::GRAPH_KW)
6007 }
6008 #[inline]
6009 pub fn property_token(&self) -> Option<SyntaxToken> {
6010 support::token(&self.syntax, SyntaxKind::PROPERTY_KW)
6011 }
6012}
6013
6014#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6015pub struct CreatePublication {
6016 pub(crate) syntax: SyntaxNode,
6017}
6018impl CreatePublication {
6019 #[inline]
6020 pub fn except_table_clause(&self) -> Option<ExceptTableClause> {
6021 support::child(&self.syntax)
6022 }
6023 #[inline]
6024 pub fn name(&self) -> Option<Name> {
6025 support::child(&self.syntax)
6026 }
6027 #[inline]
6028 pub fn publication_objects(&self) -> AstChildren<PublicationObject> {
6029 support::children(&self.syntax)
6030 }
6031 #[inline]
6032 pub fn with_params(&self) -> Option<WithParams> {
6033 support::child(&self.syntax)
6034 }
6035 #[inline]
6036 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
6037 support::token(&self.syntax, SyntaxKind::SEMICOLON)
6038 }
6039 #[inline]
6040 pub fn all_token(&self) -> Option<SyntaxToken> {
6041 support::token(&self.syntax, SyntaxKind::ALL_KW)
6042 }
6043 #[inline]
6044 pub fn create_token(&self) -> Option<SyntaxToken> {
6045 support::token(&self.syntax, SyntaxKind::CREATE_KW)
6046 }
6047 #[inline]
6048 pub fn for_token(&self) -> Option<SyntaxToken> {
6049 support::token(&self.syntax, SyntaxKind::FOR_KW)
6050 }
6051 #[inline]
6052 pub fn publication_token(&self) -> Option<SyntaxToken> {
6053 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
6054 }
6055 #[inline]
6056 pub fn sequences_token(&self) -> Option<SyntaxToken> {
6057 support::token(&self.syntax, SyntaxKind::SEQUENCES_KW)
6058 }
6059 #[inline]
6060 pub fn tables_token(&self) -> Option<SyntaxToken> {
6061 support::token(&self.syntax, SyntaxKind::TABLES_KW)
6062 }
6063}
6064
6065#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6066pub struct CreateRole {
6067 pub(crate) syntax: SyntaxNode,
6068}
6069impl CreateRole {
6070 #[inline]
6071 pub fn name(&self) -> Option<Name> {
6072 support::child(&self.syntax)
6073 }
6074 #[inline]
6075 pub fn role_option_list(&self) -> Option<RoleOptionList> {
6076 support::child(&self.syntax)
6077 }
6078 #[inline]
6079 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
6080 support::token(&self.syntax, SyntaxKind::SEMICOLON)
6081 }
6082 #[inline]
6083 pub fn create_token(&self) -> Option<SyntaxToken> {
6084 support::token(&self.syntax, SyntaxKind::CREATE_KW)
6085 }
6086 #[inline]
6087 pub fn role_token(&self) -> Option<SyntaxToken> {
6088 support::token(&self.syntax, SyntaxKind::ROLE_KW)
6089 }
6090}
6091
6092#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6093pub struct CreateRule {
6094 pub(crate) syntax: SyntaxNode,
6095}
6096impl CreateRule {
6097 #[inline]
6098 pub fn name(&self) -> Option<Name> {
6099 support::child(&self.syntax)
6100 }
6101 #[inline]
6102 pub fn or_replace(&self) -> Option<OrReplace> {
6103 support::child(&self.syntax)
6104 }
6105 #[inline]
6106 pub fn rule_do(&self) -> Option<RuleDo> {
6107 support::child(&self.syntax)
6108 }
6109 #[inline]
6110 pub fn rule_on(&self) -> Option<RuleOn> {
6111 support::child(&self.syntax)
6112 }
6113 #[inline]
6114 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
6115 support::token(&self.syntax, SyntaxKind::SEMICOLON)
6116 }
6117 #[inline]
6118 pub fn as_token(&self) -> Option<SyntaxToken> {
6119 support::token(&self.syntax, SyntaxKind::AS_KW)
6120 }
6121 #[inline]
6122 pub fn create_token(&self) -> Option<SyntaxToken> {
6123 support::token(&self.syntax, SyntaxKind::CREATE_KW)
6124 }
6125 #[inline]
6126 pub fn rule_token(&self) -> Option<SyntaxToken> {
6127 support::token(&self.syntax, SyntaxKind::RULE_KW)
6128 }
6129}
6130
6131#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6132pub struct CreateSchema {
6133 pub(crate) syntax: SyntaxNode,
6134}
6135impl CreateSchema {
6136 #[inline]
6137 pub fn if_not_exists(&self) -> Option<IfNotExists> {
6138 support::child(&self.syntax)
6139 }
6140 #[inline]
6141 pub fn name(&self) -> Option<Name> {
6142 support::child(&self.syntax)
6143 }
6144 #[inline]
6145 pub fn role(&self) -> Option<Role> {
6146 support::child(&self.syntax)
6147 }
6148 #[inline]
6149 pub fn role_ref(&self) -> Option<RoleRef> {
6150 support::child(&self.syntax)
6151 }
6152 #[inline]
6153 pub fn schema_elements(&self) -> AstChildren<SchemaElement> {
6154 support::children(&self.syntax)
6155 }
6156 #[inline]
6157 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
6158 support::token(&self.syntax, SyntaxKind::SEMICOLON)
6159 }
6160 #[inline]
6161 pub fn authorization_token(&self) -> Option<SyntaxToken> {
6162 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
6163 }
6164 #[inline]
6165 pub fn create_token(&self) -> Option<SyntaxToken> {
6166 support::token(&self.syntax, SyntaxKind::CREATE_KW)
6167 }
6168 #[inline]
6169 pub fn schema_token(&self) -> Option<SyntaxToken> {
6170 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
6171 }
6172}
6173
6174#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6175pub struct CreateSequence {
6176 pub(crate) syntax: SyntaxNode,
6177}
6178impl CreateSequence {
6179 #[inline]
6180 pub fn if_not_exists(&self) -> Option<IfNotExists> {
6181 support::child(&self.syntax)
6182 }
6183 #[inline]
6184 pub fn path(&self) -> Option<Path> {
6185 support::child(&self.syntax)
6186 }
6187 #[inline]
6188 pub fn persistence(&self) -> Option<Persistence> {
6189 support::child(&self.syntax)
6190 }
6191 #[inline]
6192 pub fn sequence_options(&self) -> AstChildren<SequenceOption> {
6193 support::children(&self.syntax)
6194 }
6195 #[inline]
6196 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
6197 support::token(&self.syntax, SyntaxKind::SEMICOLON)
6198 }
6199 #[inline]
6200 pub fn create_token(&self) -> Option<SyntaxToken> {
6201 support::token(&self.syntax, SyntaxKind::CREATE_KW)
6202 }
6203 #[inline]
6204 pub fn sequence_token(&self) -> Option<SyntaxToken> {
6205 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
6206 }
6207}
6208
6209#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6210pub struct CreateServer {
6211 pub(crate) syntax: SyntaxNode,
6212}
6213impl CreateServer {
6214 #[inline]
6215 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
6216 support::child(&self.syntax)
6217 }
6218 #[inline]
6219 pub fn if_not_exists(&self) -> Option<IfNotExists> {
6220 support::child(&self.syntax)
6221 }
6222 #[inline]
6223 pub fn literal(&self) -> Option<Literal> {
6224 support::child(&self.syntax)
6225 }
6226 #[inline]
6227 pub fn name(&self) -> Option<Name> {
6228 support::child(&self.syntax)
6229 }
6230 #[inline]
6231 pub fn name_ref(&self) -> Option<NameRef> {
6232 support::child(&self.syntax)
6233 }
6234 #[inline]
6235 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
6236 support::token(&self.syntax, SyntaxKind::SEMICOLON)
6237 }
6238 #[inline]
6239 pub fn create_token(&self) -> Option<SyntaxToken> {
6240 support::token(&self.syntax, SyntaxKind::CREATE_KW)
6241 }
6242 #[inline]
6243 pub fn data_token(&self) -> Option<SyntaxToken> {
6244 support::token(&self.syntax, SyntaxKind::DATA_KW)
6245 }
6246 #[inline]
6247 pub fn foreign_token(&self) -> Option<SyntaxToken> {
6248 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
6249 }
6250 #[inline]
6251 pub fn server_token(&self) -> Option<SyntaxToken> {
6252 support::token(&self.syntax, SyntaxKind::SERVER_KW)
6253 }
6254 #[inline]
6255 pub fn type_token(&self) -> Option<SyntaxToken> {
6256 support::token(&self.syntax, SyntaxKind::TYPE_KW)
6257 }
6258 #[inline]
6259 pub fn version_token(&self) -> Option<SyntaxToken> {
6260 support::token(&self.syntax, SyntaxKind::VERSION_KW)
6261 }
6262 #[inline]
6263 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
6264 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
6265 }
6266}
6267
6268#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6269pub struct CreateStatistics {
6270 pub(crate) syntax: SyntaxNode,
6271}
6272impl CreateStatistics {
6273 #[inline]
6274 pub fn exprs(&self) -> AstChildren<Expr> {
6275 support::children(&self.syntax)
6276 }
6277 #[inline]
6278 pub fn from_table(&self) -> Option<FromTable> {
6279 support::child(&self.syntax)
6280 }
6281 #[inline]
6282 pub fn if_not_exists(&self) -> Option<IfNotExists> {
6283 support::child(&self.syntax)
6284 }
6285 #[inline]
6286 pub fn name_refs(&self) -> AstChildren<NameRef> {
6287 support::children(&self.syntax)
6288 }
6289 #[inline]
6290 pub fn path(&self) -> Option<Path> {
6291 support::child(&self.syntax)
6292 }
6293 #[inline]
6294 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
6295 support::token(&self.syntax, SyntaxKind::L_PAREN)
6296 }
6297 #[inline]
6298 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
6299 support::token(&self.syntax, SyntaxKind::R_PAREN)
6300 }
6301 #[inline]
6302 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
6303 support::token(&self.syntax, SyntaxKind::SEMICOLON)
6304 }
6305 #[inline]
6306 pub fn create_token(&self) -> Option<SyntaxToken> {
6307 support::token(&self.syntax, SyntaxKind::CREATE_KW)
6308 }
6309 #[inline]
6310 pub fn on_token(&self) -> Option<SyntaxToken> {
6311 support::token(&self.syntax, SyntaxKind::ON_KW)
6312 }
6313 #[inline]
6314 pub fn statistics_token(&self) -> Option<SyntaxToken> {
6315 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
6316 }
6317}
6318
6319#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6320pub struct CreateSubscription {
6321 pub(crate) syntax: SyntaxNode,
6322}
6323impl CreateSubscription {
6324 #[inline]
6325 pub fn literal(&self) -> Option<Literal> {
6326 support::child(&self.syntax)
6327 }
6328 #[inline]
6329 pub fn name(&self) -> Option<Name> {
6330 support::child(&self.syntax)
6331 }
6332 #[inline]
6333 pub fn name_ref(&self) -> Option<NameRef> {
6334 support::child(&self.syntax)
6335 }
6336 #[inline]
6337 pub fn name_refs(&self) -> AstChildren<NameRef> {
6338 support::children(&self.syntax)
6339 }
6340 #[inline]
6341 pub fn with_params(&self) -> Option<WithParams> {
6342 support::child(&self.syntax)
6343 }
6344 #[inline]
6345 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
6346 support::token(&self.syntax, SyntaxKind::SEMICOLON)
6347 }
6348 #[inline]
6349 pub fn connection_token(&self) -> Option<SyntaxToken> {
6350 support::token(&self.syntax, SyntaxKind::CONNECTION_KW)
6351 }
6352 #[inline]
6353 pub fn create_token(&self) -> Option<SyntaxToken> {
6354 support::token(&self.syntax, SyntaxKind::CREATE_KW)
6355 }
6356 #[inline]
6357 pub fn publication_token(&self) -> Option<SyntaxToken> {
6358 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
6359 }
6360 #[inline]
6361 pub fn server_token(&self) -> Option<SyntaxToken> {
6362 support::token(&self.syntax, SyntaxKind::SERVER_KW)
6363 }
6364 #[inline]
6365 pub fn subscription_token(&self) -> Option<SyntaxToken> {
6366 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
6367 }
6368}
6369
6370#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6371pub struct CreateTable {
6372 pub(crate) syntax: SyntaxNode,
6373}
6374impl CreateTable {
6375 #[inline]
6376 pub fn if_not_exists(&self) -> Option<IfNotExists> {
6377 support::child(&self.syntax)
6378 }
6379 #[inline]
6380 pub fn inherits(&self) -> Option<Inherits> {
6381 support::child(&self.syntax)
6382 }
6383 #[inline]
6384 pub fn of_type(&self) -> Option<OfType> {
6385 support::child(&self.syntax)
6386 }
6387 #[inline]
6388 pub fn on_commit(&self) -> Option<OnCommit> {
6389 support::child(&self.syntax)
6390 }
6391 #[inline]
6392 pub fn partition_by(&self) -> Option<PartitionBy> {
6393 support::child(&self.syntax)
6394 }
6395 #[inline]
6396 pub fn partition_of(&self) -> Option<PartitionOf> {
6397 support::child(&self.syntax)
6398 }
6399 #[inline]
6400 pub fn partition_type(&self) -> Option<PartitionType> {
6401 support::child(&self.syntax)
6402 }
6403 #[inline]
6404 pub fn path(&self) -> Option<Path> {
6405 support::child(&self.syntax)
6406 }
6407 #[inline]
6408 pub fn persistence(&self) -> Option<Persistence> {
6409 support::child(&self.syntax)
6410 }
6411 #[inline]
6412 pub fn table_arg_list(&self) -> Option<TableArgList> {
6413 support::child(&self.syntax)
6414 }
6415 #[inline]
6416 pub fn tablespace(&self) -> Option<Tablespace> {
6417 support::child(&self.syntax)
6418 }
6419 #[inline]
6420 pub fn using_method(&self) -> Option<UsingMethod> {
6421 support::child(&self.syntax)
6422 }
6423 #[inline]
6424 pub fn with_params(&self) -> Option<WithParams> {
6425 support::child(&self.syntax)
6426 }
6427 #[inline]
6428 pub fn without_oids(&self) -> Option<WithoutOids> {
6429 support::child(&self.syntax)
6430 }
6431 #[inline]
6432 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
6433 support::token(&self.syntax, SyntaxKind::SEMICOLON)
6434 }
6435 #[inline]
6436 pub fn create_token(&self) -> Option<SyntaxToken> {
6437 support::token(&self.syntax, SyntaxKind::CREATE_KW)
6438 }
6439 #[inline]
6440 pub fn table_token(&self) -> Option<SyntaxToken> {
6441 support::token(&self.syntax, SyntaxKind::TABLE_KW)
6442 }
6443}
6444
6445#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6446pub struct CreateTableAs {
6447 pub(crate) syntax: SyntaxNode,
6448}
6449impl CreateTableAs {
6450 #[inline]
6451 pub fn if_not_exists(&self) -> Option<IfNotExists> {
6452 support::child(&self.syntax)
6453 }
6454 #[inline]
6455 pub fn on_commit(&self) -> Option<OnCommit> {
6456 support::child(&self.syntax)
6457 }
6458 #[inline]
6459 pub fn path(&self) -> Option<Path> {
6460 support::child(&self.syntax)
6461 }
6462 #[inline]
6463 pub fn persistence(&self) -> Option<Persistence> {
6464 support::child(&self.syntax)
6465 }
6466 #[inline]
6467 pub fn query(&self) -> Option<CreateTableAsQuery> {
6468 support::child(&self.syntax)
6469 }
6470 #[inline]
6471 pub fn table_arg_list(&self) -> Option<TableArgList> {
6472 support::child(&self.syntax)
6473 }
6474 #[inline]
6475 pub fn tablespace(&self) -> Option<Tablespace> {
6476 support::child(&self.syntax)
6477 }
6478 #[inline]
6479 pub fn using_method(&self) -> Option<UsingMethod> {
6480 support::child(&self.syntax)
6481 }
6482 #[inline]
6483 pub fn with_data(&self) -> Option<WithData> {
6484 support::child(&self.syntax)
6485 }
6486 #[inline]
6487 pub fn with_no_data(&self) -> Option<WithNoData> {
6488 support::child(&self.syntax)
6489 }
6490 #[inline]
6491 pub fn with_params(&self) -> Option<WithParams> {
6492 support::child(&self.syntax)
6493 }
6494 #[inline]
6495 pub fn without_oids(&self) -> Option<WithoutOids> {
6496 support::child(&self.syntax)
6497 }
6498 #[inline]
6499 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
6500 support::token(&self.syntax, SyntaxKind::SEMICOLON)
6501 }
6502 #[inline]
6503 pub fn as_token(&self) -> Option<SyntaxToken> {
6504 support::token(&self.syntax, SyntaxKind::AS_KW)
6505 }
6506 #[inline]
6507 pub fn create_token(&self) -> Option<SyntaxToken> {
6508 support::token(&self.syntax, SyntaxKind::CREATE_KW)
6509 }
6510 #[inline]
6511 pub fn table_token(&self) -> Option<SyntaxToken> {
6512 support::token(&self.syntax, SyntaxKind::TABLE_KW)
6513 }
6514}
6515
6516#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6517pub struct CreateTablespace {
6518 pub(crate) syntax: SyntaxNode,
6519}
6520impl CreateTablespace {
6521 #[inline]
6522 pub fn literal(&self) -> Option<Literal> {
6523 support::child(&self.syntax)
6524 }
6525 #[inline]
6526 pub fn name(&self) -> Option<Name> {
6527 support::child(&self.syntax)
6528 }
6529 #[inline]
6530 pub fn role_ref(&self) -> Option<RoleRef> {
6531 support::child(&self.syntax)
6532 }
6533 #[inline]
6534 pub fn with_params(&self) -> Option<WithParams> {
6535 support::child(&self.syntax)
6536 }
6537 #[inline]
6538 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
6539 support::token(&self.syntax, SyntaxKind::SEMICOLON)
6540 }
6541 #[inline]
6542 pub fn create_token(&self) -> Option<SyntaxToken> {
6543 support::token(&self.syntax, SyntaxKind::CREATE_KW)
6544 }
6545 #[inline]
6546 pub fn location_token(&self) -> Option<SyntaxToken> {
6547 support::token(&self.syntax, SyntaxKind::LOCATION_KW)
6548 }
6549 #[inline]
6550 pub fn owner_token(&self) -> Option<SyntaxToken> {
6551 support::token(&self.syntax, SyntaxKind::OWNER_KW)
6552 }
6553 #[inline]
6554 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
6555 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
6556 }
6557}
6558
6559#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6560pub struct CreateTextSearchConfiguration {
6561 pub(crate) syntax: SyntaxNode,
6562}
6563impl CreateTextSearchConfiguration {
6564 #[inline]
6565 pub fn attribute_list(&self) -> Option<AttributeList> {
6566 support::child(&self.syntax)
6567 }
6568 #[inline]
6569 pub fn path(&self) -> Option<Path> {
6570 support::child(&self.syntax)
6571 }
6572 #[inline]
6573 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
6574 support::token(&self.syntax, SyntaxKind::SEMICOLON)
6575 }
6576 #[inline]
6577 pub fn configuration_token(&self) -> Option<SyntaxToken> {
6578 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
6579 }
6580 #[inline]
6581 pub fn create_token(&self) -> Option<SyntaxToken> {
6582 support::token(&self.syntax, SyntaxKind::CREATE_KW)
6583 }
6584 #[inline]
6585 pub fn search_token(&self) -> Option<SyntaxToken> {
6586 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6587 }
6588 #[inline]
6589 pub fn text_token(&self) -> Option<SyntaxToken> {
6590 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6591 }
6592}
6593
6594#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6595pub struct CreateTextSearchDictionary {
6596 pub(crate) syntax: SyntaxNode,
6597}
6598impl CreateTextSearchDictionary {
6599 #[inline]
6600 pub fn attribute_list(&self) -> Option<AttributeList> {
6601 support::child(&self.syntax)
6602 }
6603 #[inline]
6604 pub fn path(&self) -> Option<Path> {
6605 support::child(&self.syntax)
6606 }
6607 #[inline]
6608 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
6609 support::token(&self.syntax, SyntaxKind::SEMICOLON)
6610 }
6611 #[inline]
6612 pub fn create_token(&self) -> Option<SyntaxToken> {
6613 support::token(&self.syntax, SyntaxKind::CREATE_KW)
6614 }
6615 #[inline]
6616 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
6617 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
6618 }
6619 #[inline]
6620 pub fn search_token(&self) -> Option<SyntaxToken> {
6621 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6622 }
6623 #[inline]
6624 pub fn text_token(&self) -> Option<SyntaxToken> {
6625 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6626 }
6627}
6628
6629#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6630pub struct CreateTextSearchParser {
6631 pub(crate) syntax: SyntaxNode,
6632}
6633impl CreateTextSearchParser {
6634 #[inline]
6635 pub fn attribute_list(&self) -> Option<AttributeList> {
6636 support::child(&self.syntax)
6637 }
6638 #[inline]
6639 pub fn path(&self) -> Option<Path> {
6640 support::child(&self.syntax)
6641 }
6642 #[inline]
6643 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
6644 support::token(&self.syntax, SyntaxKind::SEMICOLON)
6645 }
6646 #[inline]
6647 pub fn create_token(&self) -> Option<SyntaxToken> {
6648 support::token(&self.syntax, SyntaxKind::CREATE_KW)
6649 }
6650 #[inline]
6651 pub fn parser_token(&self) -> Option<SyntaxToken> {
6652 support::token(&self.syntax, SyntaxKind::PARSER_KW)
6653 }
6654 #[inline]
6655 pub fn search_token(&self) -> Option<SyntaxToken> {
6656 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6657 }
6658 #[inline]
6659 pub fn text_token(&self) -> Option<SyntaxToken> {
6660 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6661 }
6662}
6663
6664#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6665pub struct CreateTextSearchTemplate {
6666 pub(crate) syntax: SyntaxNode,
6667}
6668impl CreateTextSearchTemplate {
6669 #[inline]
6670 pub fn attribute_list(&self) -> Option<AttributeList> {
6671 support::child(&self.syntax)
6672 }
6673 #[inline]
6674 pub fn path(&self) -> Option<Path> {
6675 support::child(&self.syntax)
6676 }
6677 #[inline]
6678 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
6679 support::token(&self.syntax, SyntaxKind::SEMICOLON)
6680 }
6681 #[inline]
6682 pub fn create_token(&self) -> Option<SyntaxToken> {
6683 support::token(&self.syntax, SyntaxKind::CREATE_KW)
6684 }
6685 #[inline]
6686 pub fn search_token(&self) -> Option<SyntaxToken> {
6687 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6688 }
6689 #[inline]
6690 pub fn template_token(&self) -> Option<SyntaxToken> {
6691 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
6692 }
6693 #[inline]
6694 pub fn text_token(&self) -> Option<SyntaxToken> {
6695 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6696 }
6697}
6698
6699#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6700pub struct CreateTransform {
6701 pub(crate) syntax: SyntaxNode,
6702}
6703impl CreateTransform {
6704 #[inline]
6705 pub fn from_func(&self) -> Option<TransformFromFunc> {
6706 support::child(&self.syntax)
6707 }
6708 #[inline]
6709 pub fn language(&self) -> Option<NameRef> {
6710 support::child(&self.syntax)
6711 }
6712 #[inline]
6713 pub fn or_replace(&self) -> Option<OrReplace> {
6714 support::child(&self.syntax)
6715 }
6716 #[inline]
6717 pub fn to_func(&self) -> Option<TransformToFunc> {
6718 support::child(&self.syntax)
6719 }
6720 #[inline]
6721 pub fn ty(&self) -> Option<Type> {
6722 support::child(&self.syntax)
6723 }
6724 #[inline]
6725 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
6726 support::token(&self.syntax, SyntaxKind::L_PAREN)
6727 }
6728 #[inline]
6729 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
6730 support::token(&self.syntax, SyntaxKind::R_PAREN)
6731 }
6732 #[inline]
6733 pub fn comma_token(&self) -> Option<SyntaxToken> {
6734 support::token(&self.syntax, SyntaxKind::COMMA)
6735 }
6736 #[inline]
6737 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
6738 support::token(&self.syntax, SyntaxKind::SEMICOLON)
6739 }
6740 #[inline]
6741 pub fn create_token(&self) -> Option<SyntaxToken> {
6742 support::token(&self.syntax, SyntaxKind::CREATE_KW)
6743 }
6744 #[inline]
6745 pub fn for_token(&self) -> Option<SyntaxToken> {
6746 support::token(&self.syntax, SyntaxKind::FOR_KW)
6747 }
6748 #[inline]
6749 pub fn language_token(&self) -> Option<SyntaxToken> {
6750 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
6751 }
6752 #[inline]
6753 pub fn transform_token(&self) -> Option<SyntaxToken> {
6754 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
6755 }
6756}
6757
6758#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6759pub struct CreateTrigger {
6760 pub(crate) syntax: SyntaxNode,
6761}
6762impl CreateTrigger {
6763 #[inline]
6764 pub fn call_expr(&self) -> Option<CallExpr> {
6765 support::child(&self.syntax)
6766 }
6767 #[inline]
6768 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
6769 support::child(&self.syntax)
6770 }
6771 #[inline]
6772 pub fn from_table(&self) -> Option<FromTable> {
6773 support::child(&self.syntax)
6774 }
6775 #[inline]
6776 pub fn initially_deferred_constraint_option(
6777 &self,
6778 ) -> Option<InitiallyDeferredConstraintOption> {
6779 support::child(&self.syntax)
6780 }
6781 #[inline]
6782 pub fn initially_immediate_constraint_option(
6783 &self,
6784 ) -> Option<InitiallyImmediateConstraintOption> {
6785 support::child(&self.syntax)
6786 }
6787 #[inline]
6788 pub fn name(&self) -> Option<Name> {
6789 support::child(&self.syntax)
6790 }
6791 #[inline]
6792 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
6793 support::child(&self.syntax)
6794 }
6795 #[inline]
6796 pub fn on_table(&self) -> Option<OnTable> {
6797 support::child(&self.syntax)
6798 }
6799 #[inline]
6800 pub fn or_replace(&self) -> Option<OrReplace> {
6801 support::child(&self.syntax)
6802 }
6803 #[inline]
6804 pub fn referencing(&self) -> Option<Referencing> {
6805 support::child(&self.syntax)
6806 }
6807 #[inline]
6808 pub fn timing(&self) -> Option<Timing> {
6809 support::child(&self.syntax)
6810 }
6811 #[inline]
6812 pub fn trigger_event_list(&self) -> Option<TriggerEventList> {
6813 support::child(&self.syntax)
6814 }
6815 #[inline]
6816 pub fn when_condition(&self) -> Option<WhenCondition> {
6817 support::child(&self.syntax)
6818 }
6819 #[inline]
6820 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
6821 support::token(&self.syntax, SyntaxKind::SEMICOLON)
6822 }
6823 #[inline]
6824 pub fn constraint_token(&self) -> Option<SyntaxToken> {
6825 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
6826 }
6827 #[inline]
6828 pub fn create_token(&self) -> Option<SyntaxToken> {
6829 support::token(&self.syntax, SyntaxKind::CREATE_KW)
6830 }
6831 #[inline]
6832 pub fn each_token(&self) -> Option<SyntaxToken> {
6833 support::token(&self.syntax, SyntaxKind::EACH_KW)
6834 }
6835 #[inline]
6836 pub fn execute_token(&self) -> Option<SyntaxToken> {
6837 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
6838 }
6839 #[inline]
6840 pub fn for_token(&self) -> Option<SyntaxToken> {
6841 support::token(&self.syntax, SyntaxKind::FOR_KW)
6842 }
6843 #[inline]
6844 pub fn function_token(&self) -> Option<SyntaxToken> {
6845 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
6846 }
6847 #[inline]
6848 pub fn procedure_token(&self) -> Option<SyntaxToken> {
6849 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
6850 }
6851 #[inline]
6852 pub fn row_token(&self) -> Option<SyntaxToken> {
6853 support::token(&self.syntax, SyntaxKind::ROW_KW)
6854 }
6855 #[inline]
6856 pub fn statement_token(&self) -> Option<SyntaxToken> {
6857 support::token(&self.syntax, SyntaxKind::STATEMENT_KW)
6858 }
6859 #[inline]
6860 pub fn trigger_token(&self) -> Option<SyntaxToken> {
6861 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
6862 }
6863}
6864
6865#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6866pub struct CreateType {
6867 pub(crate) syntax: SyntaxNode,
6868}
6869impl CreateType {
6870 #[inline]
6871 pub fn attribute_list(&self) -> Option<AttributeList> {
6872 support::child(&self.syntax)
6873 }
6874 #[inline]
6875 pub fn column_list(&self) -> Option<ColumnList> {
6876 support::child(&self.syntax)
6877 }
6878 #[inline]
6879 pub fn path(&self) -> Option<Path> {
6880 support::child(&self.syntax)
6881 }
6882 #[inline]
6883 pub fn variant_list(&self) -> Option<VariantList> {
6884 support::child(&self.syntax)
6885 }
6886 #[inline]
6887 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
6888 support::token(&self.syntax, SyntaxKind::SEMICOLON)
6889 }
6890 #[inline]
6891 pub fn as_token(&self) -> Option<SyntaxToken> {
6892 support::token(&self.syntax, SyntaxKind::AS_KW)
6893 }
6894 #[inline]
6895 pub fn create_token(&self) -> Option<SyntaxToken> {
6896 support::token(&self.syntax, SyntaxKind::CREATE_KW)
6897 }
6898 #[inline]
6899 pub fn enum_token(&self) -> Option<SyntaxToken> {
6900 support::token(&self.syntax, SyntaxKind::ENUM_KW)
6901 }
6902 #[inline]
6903 pub fn range_token(&self) -> Option<SyntaxToken> {
6904 support::token(&self.syntax, SyntaxKind::RANGE_KW)
6905 }
6906 #[inline]
6907 pub fn type_token(&self) -> Option<SyntaxToken> {
6908 support::token(&self.syntax, SyntaxKind::TYPE_KW)
6909 }
6910}
6911
6912#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6913pub struct CreateUser {
6914 pub(crate) syntax: SyntaxNode,
6915}
6916impl CreateUser {
6917 #[inline]
6918 pub fn name(&self) -> Option<Name> {
6919 support::child(&self.syntax)
6920 }
6921 #[inline]
6922 pub fn role_option_list(&self) -> Option<RoleOptionList> {
6923 support::child(&self.syntax)
6924 }
6925 #[inline]
6926 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
6927 support::token(&self.syntax, SyntaxKind::SEMICOLON)
6928 }
6929 #[inline]
6930 pub fn create_token(&self) -> Option<SyntaxToken> {
6931 support::token(&self.syntax, SyntaxKind::CREATE_KW)
6932 }
6933 #[inline]
6934 pub fn user_token(&self) -> Option<SyntaxToken> {
6935 support::token(&self.syntax, SyntaxKind::USER_KW)
6936 }
6937}
6938
6939#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6940pub struct CreateUserMapping {
6941 pub(crate) syntax: SyntaxNode,
6942}
6943impl CreateUserMapping {
6944 #[inline]
6945 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
6946 support::child(&self.syntax)
6947 }
6948 #[inline]
6949 pub fn if_not_exists(&self) -> Option<IfNotExists> {
6950 support::child(&self.syntax)
6951 }
6952 #[inline]
6953 pub fn role_ref(&self) -> Option<RoleRef> {
6954 support::child(&self.syntax)
6955 }
6956 #[inline]
6957 pub fn server_name(&self) -> Option<ServerName> {
6958 support::child(&self.syntax)
6959 }
6960 #[inline]
6961 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
6962 support::token(&self.syntax, SyntaxKind::SEMICOLON)
6963 }
6964 #[inline]
6965 pub fn create_token(&self) -> Option<SyntaxToken> {
6966 support::token(&self.syntax, SyntaxKind::CREATE_KW)
6967 }
6968 #[inline]
6969 pub fn for_token(&self) -> Option<SyntaxToken> {
6970 support::token(&self.syntax, SyntaxKind::FOR_KW)
6971 }
6972 #[inline]
6973 pub fn mapping_token(&self) -> Option<SyntaxToken> {
6974 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
6975 }
6976 #[inline]
6977 pub fn user_token(&self) -> Option<SyntaxToken> {
6978 support::token(&self.syntax, SyntaxKind::USER_KW)
6979 }
6980}
6981
6982#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6983pub struct CreateView {
6984 pub(crate) syntax: SyntaxNode,
6985}
6986impl CreateView {
6987 #[inline]
6988 pub fn column_list(&self) -> Option<ColumnList> {
6989 support::child(&self.syntax)
6990 }
6991 #[inline]
6992 pub fn or_replace(&self) -> Option<OrReplace> {
6993 support::child(&self.syntax)
6994 }
6995 #[inline]
6996 pub fn path(&self) -> Option<Path> {
6997 support::child(&self.syntax)
6998 }
6999 #[inline]
7000 pub fn persistence(&self) -> Option<Persistence> {
7001 support::child(&self.syntax)
7002 }
7003 #[inline]
7004 pub fn query(&self) -> Option<SelectVariant> {
7005 support::child(&self.syntax)
7006 }
7007 #[inline]
7008 pub fn with_params(&self) -> Option<WithParams> {
7009 support::child(&self.syntax)
7010 }
7011 #[inline]
7012 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
7013 support::token(&self.syntax, SyntaxKind::SEMICOLON)
7014 }
7015 #[inline]
7016 pub fn as_token(&self) -> Option<SyntaxToken> {
7017 support::token(&self.syntax, SyntaxKind::AS_KW)
7018 }
7019 #[inline]
7020 pub fn cascaded_token(&self) -> Option<SyntaxToken> {
7021 support::token(&self.syntax, SyntaxKind::CASCADED_KW)
7022 }
7023 #[inline]
7024 pub fn check_token(&self) -> Option<SyntaxToken> {
7025 support::token(&self.syntax, SyntaxKind::CHECK_KW)
7026 }
7027 #[inline]
7028 pub fn create_token(&self) -> Option<SyntaxToken> {
7029 support::token(&self.syntax, SyntaxKind::CREATE_KW)
7030 }
7031 #[inline]
7032 pub fn local_token(&self) -> Option<SyntaxToken> {
7033 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
7034 }
7035 #[inline]
7036 pub fn option_token(&self) -> Option<SyntaxToken> {
7037 support::token(&self.syntax, SyntaxKind::OPTION_KW)
7038 }
7039 #[inline]
7040 pub fn recursive_token(&self) -> Option<SyntaxToken> {
7041 support::token(&self.syntax, SyntaxKind::RECURSIVE_KW)
7042 }
7043 #[inline]
7044 pub fn view_token(&self) -> Option<SyntaxToken> {
7045 support::token(&self.syntax, SyntaxKind::VIEW_KW)
7046 }
7047 #[inline]
7048 pub fn with_token(&self) -> Option<SyntaxToken> {
7049 support::token(&self.syntax, SyntaxKind::WITH_KW)
7050 }
7051}
7052
7053#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7054pub struct CurrentRow {
7055 pub(crate) syntax: SyntaxNode,
7056}
7057impl CurrentRow {
7058 #[inline]
7059 pub fn current_token(&self) -> Option<SyntaxToken> {
7060 support::token(&self.syntax, SyntaxKind::CURRENT_KW)
7061 }
7062 #[inline]
7063 pub fn row_token(&self) -> Option<SyntaxToken> {
7064 support::token(&self.syntax, SyntaxKind::ROW_KW)
7065 }
7066}
7067
7068#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7069pub struct CustomOp {
7070 pub(crate) syntax: SyntaxNode,
7071}
7072impl CustomOp {
7073 #[inline]
7074 pub fn bang_token(&self) -> Option<SyntaxToken> {
7075 support::token(&self.syntax, SyntaxKind::BANG)
7076 }
7077 #[inline]
7078 pub fn pound_token(&self) -> Option<SyntaxToken> {
7079 support::token(&self.syntax, SyntaxKind::POUND)
7080 }
7081 #[inline]
7082 pub fn percent_token(&self) -> Option<SyntaxToken> {
7083 support::token(&self.syntax, SyntaxKind::PERCENT)
7084 }
7085 #[inline]
7086 pub fn amp_token(&self) -> Option<SyntaxToken> {
7087 support::token(&self.syntax, SyntaxKind::AMP)
7088 }
7089 #[inline]
7090 pub fn star_token(&self) -> Option<SyntaxToken> {
7091 support::token(&self.syntax, SyntaxKind::STAR)
7092 }
7093 #[inline]
7094 pub fn plus_token(&self) -> Option<SyntaxToken> {
7095 support::token(&self.syntax, SyntaxKind::PLUS)
7096 }
7097 #[inline]
7098 pub fn minus_token(&self) -> Option<SyntaxToken> {
7099 support::token(&self.syntax, SyntaxKind::MINUS)
7100 }
7101 #[inline]
7102 pub fn slash_token(&self) -> Option<SyntaxToken> {
7103 support::token(&self.syntax, SyntaxKind::SLASH)
7104 }
7105 #[inline]
7106 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
7107 support::token(&self.syntax, SyntaxKind::L_ANGLE)
7108 }
7109 #[inline]
7110 pub fn eq_token(&self) -> Option<SyntaxToken> {
7111 support::token(&self.syntax, SyntaxKind::EQ)
7112 }
7113 #[inline]
7114 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
7115 support::token(&self.syntax, SyntaxKind::R_ANGLE)
7116 }
7117 #[inline]
7118 pub fn question_token(&self) -> Option<SyntaxToken> {
7119 support::token(&self.syntax, SyntaxKind::QUESTION)
7120 }
7121 #[inline]
7122 pub fn at_token(&self) -> Option<SyntaxToken> {
7123 support::token(&self.syntax, SyntaxKind::AT)
7124 }
7125 #[inline]
7126 pub fn caret_token(&self) -> Option<SyntaxToken> {
7127 support::token(&self.syntax, SyntaxKind::CARET)
7128 }
7129 #[inline]
7130 pub fn backtick_token(&self) -> Option<SyntaxToken> {
7131 support::token(&self.syntax, SyntaxKind::BACKTICK)
7132 }
7133 #[inline]
7134 pub fn pipe_token(&self) -> Option<SyntaxToken> {
7135 support::token(&self.syntax, SyntaxKind::PIPE)
7136 }
7137 #[inline]
7138 pub fn tilde_token(&self) -> Option<SyntaxToken> {
7139 support::token(&self.syntax, SyntaxKind::TILDE)
7140 }
7141}
7142
7143#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7144pub struct CycleClause {
7145 pub(crate) syntax: SyntaxNode,
7146}
7147impl CycleClause {
7148 #[inline]
7149 pub fn columns(&self) -> Option<CycleColumns> {
7150 support::child(&self.syntax)
7151 }
7152 #[inline]
7153 pub fn path(&self) -> Option<CyclePath> {
7154 support::child(&self.syntax)
7155 }
7156 #[inline]
7157 pub fn set_column(&self) -> Option<CycleSetColumn> {
7158 support::child(&self.syntax)
7159 }
7160 #[inline]
7161 pub fn cycle_token(&self) -> Option<SyntaxToken> {
7162 support::token(&self.syntax, SyntaxKind::CYCLE_KW)
7163 }
7164}
7165
7166#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7167pub struct CycleColumnTo {
7168 pub(crate) syntax: SyntaxNode,
7169}
7170impl CycleColumnTo {
7171 #[inline]
7172 pub fn default(&self) -> Option<CycleDefault> {
7173 support::child(&self.syntax)
7174 }
7175 #[inline]
7176 pub fn expr(&self) -> Option<Expr> {
7177 support::child(&self.syntax)
7178 }
7179 #[inline]
7180 pub fn to_token(&self) -> Option<SyntaxToken> {
7181 support::token(&self.syntax, SyntaxKind::TO_KW)
7182 }
7183}
7184
7185#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7186pub struct CycleColumns {
7187 pub(crate) syntax: SyntaxNode,
7188}
7189impl CycleColumns {
7190 #[inline]
7191 pub fn name_refs(&self) -> AstChildren<NameRef> {
7192 support::children(&self.syntax)
7193 }
7194}
7195
7196#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7197pub struct CycleDefault {
7198 pub(crate) syntax: SyntaxNode,
7199}
7200impl CycleDefault {
7201 #[inline]
7202 pub fn expr(&self) -> Option<Expr> {
7203 support::child(&self.syntax)
7204 }
7205 #[inline]
7206 pub fn default_token(&self) -> Option<SyntaxToken> {
7207 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
7208 }
7209}
7210
7211#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7212pub struct CyclePath {
7213 pub(crate) syntax: SyntaxNode,
7214}
7215impl CyclePath {
7216 #[inline]
7217 pub fn name_ref(&self) -> Option<NameRef> {
7218 support::child(&self.syntax)
7219 }
7220 #[inline]
7221 pub fn using_token(&self) -> Option<SyntaxToken> {
7222 support::token(&self.syntax, SyntaxKind::USING_KW)
7223 }
7224}
7225
7226#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7227pub struct CycleSetColumn {
7228 pub(crate) syntax: SyntaxNode,
7229}
7230impl CycleSetColumn {
7231 #[inline]
7232 pub fn column_to(&self) -> Option<CycleColumnTo> {
7233 support::child(&self.syntax)
7234 }
7235 #[inline]
7236 pub fn name_ref(&self) -> Option<NameRef> {
7237 support::child(&self.syntax)
7238 }
7239 #[inline]
7240 pub fn set_token(&self) -> Option<SyntaxToken> {
7241 support::token(&self.syntax, SyntaxKind::SET_KW)
7242 }
7243}
7244
7245#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7246pub struct DatabaseOption {
7247 pub(crate) syntax: SyntaxNode,
7248}
7249impl DatabaseOption {
7250 #[inline]
7251 pub fn literal(&self) -> Option<Literal> {
7252 support::child(&self.syntax)
7253 }
7254 #[inline]
7255 pub fn eq_token(&self) -> Option<SyntaxToken> {
7256 support::token(&self.syntax, SyntaxKind::EQ)
7257 }
7258 #[inline]
7259 pub fn connection_token(&self) -> Option<SyntaxToken> {
7260 support::token(&self.syntax, SyntaxKind::CONNECTION_KW)
7261 }
7262 #[inline]
7263 pub fn default_token(&self) -> Option<SyntaxToken> {
7264 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
7265 }
7266 #[inline]
7267 pub fn encoding_token(&self) -> Option<SyntaxToken> {
7268 support::token(&self.syntax, SyntaxKind::ENCODING_KW)
7269 }
7270 #[inline]
7271 pub fn ident_token(&self) -> Option<SyntaxToken> {
7272 support::token(&self.syntax, SyntaxKind::IDENT)
7273 }
7274 #[inline]
7275 pub fn limit_token(&self) -> Option<SyntaxToken> {
7276 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
7277 }
7278 #[inline]
7279 pub fn owner_token(&self) -> Option<SyntaxToken> {
7280 support::token(&self.syntax, SyntaxKind::OWNER_KW)
7281 }
7282 #[inline]
7283 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
7284 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
7285 }
7286 #[inline]
7287 pub fn template_token(&self) -> Option<SyntaxToken> {
7288 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
7289 }
7290}
7291
7292#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7293pub struct DatabaseOptionList {
7294 pub(crate) syntax: SyntaxNode,
7295}
7296impl DatabaseOptionList {
7297 #[inline]
7298 pub fn database_options(&self) -> AstChildren<DatabaseOption> {
7299 support::children(&self.syntax)
7300 }
7301 #[inline]
7302 pub fn with_token(&self) -> Option<SyntaxToken> {
7303 support::token(&self.syntax, SyntaxKind::WITH_KW)
7304 }
7305}
7306
7307#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7308pub struct Deallocate {
7309 pub(crate) syntax: SyntaxNode,
7310}
7311impl Deallocate {
7312 #[inline]
7313 pub fn name_ref(&self) -> Option<NameRef> {
7314 support::child(&self.syntax)
7315 }
7316 #[inline]
7317 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
7318 support::token(&self.syntax, SyntaxKind::SEMICOLON)
7319 }
7320 #[inline]
7321 pub fn all_token(&self) -> Option<SyntaxToken> {
7322 support::token(&self.syntax, SyntaxKind::ALL_KW)
7323 }
7324 #[inline]
7325 pub fn deallocate_token(&self) -> Option<SyntaxToken> {
7326 support::token(&self.syntax, SyntaxKind::DEALLOCATE_KW)
7327 }
7328 #[inline]
7329 pub fn prepare_token(&self) -> Option<SyntaxToken> {
7330 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
7331 }
7332}
7333
7334#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7335pub struct Declare {
7336 pub(crate) syntax: SyntaxNode,
7337}
7338impl Declare {
7339 #[inline]
7340 pub fn name(&self) -> Option<Name> {
7341 support::child(&self.syntax)
7342 }
7343 #[inline]
7344 pub fn query(&self) -> Option<SelectVariant> {
7345 support::child(&self.syntax)
7346 }
7347 #[inline]
7348 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
7349 support::token(&self.syntax, SyntaxKind::SEMICOLON)
7350 }
7351 #[inline]
7352 pub fn asensitive_token(&self) -> Option<SyntaxToken> {
7353 support::token(&self.syntax, SyntaxKind::ASENSITIVE_KW)
7354 }
7355 #[inline]
7356 pub fn binary_token(&self) -> Option<SyntaxToken> {
7357 support::token(&self.syntax, SyntaxKind::BINARY_KW)
7358 }
7359 #[inline]
7360 pub fn cursor_token(&self) -> Option<SyntaxToken> {
7361 support::token(&self.syntax, SyntaxKind::CURSOR_KW)
7362 }
7363 #[inline]
7364 pub fn declare_token(&self) -> Option<SyntaxToken> {
7365 support::token(&self.syntax, SyntaxKind::DECLARE_KW)
7366 }
7367 #[inline]
7368 pub fn for_token(&self) -> Option<SyntaxToken> {
7369 support::token(&self.syntax, SyntaxKind::FOR_KW)
7370 }
7371 #[inline]
7372 pub fn hold_token(&self) -> Option<SyntaxToken> {
7373 support::token(&self.syntax, SyntaxKind::HOLD_KW)
7374 }
7375 #[inline]
7376 pub fn insensitive_token(&self) -> Option<SyntaxToken> {
7377 support::token(&self.syntax, SyntaxKind::INSENSITIVE_KW)
7378 }
7379 #[inline]
7380 pub fn no_token(&self) -> Option<SyntaxToken> {
7381 support::token(&self.syntax, SyntaxKind::NO_KW)
7382 }
7383 #[inline]
7384 pub fn scroll_token(&self) -> Option<SyntaxToken> {
7385 support::token(&self.syntax, SyntaxKind::SCROLL_KW)
7386 }
7387 #[inline]
7388 pub fn with_token(&self) -> Option<SyntaxToken> {
7389 support::token(&self.syntax, SyntaxKind::WITH_KW)
7390 }
7391 #[inline]
7392 pub fn without_token(&self) -> Option<SyntaxToken> {
7393 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
7394 }
7395}
7396
7397#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7398pub struct DefaultConstraint {
7399 pub(crate) syntax: SyntaxNode,
7400}
7401impl DefaultConstraint {
7402 #[inline]
7403 pub fn constraint_name(&self) -> Option<ConstraintName> {
7404 support::child(&self.syntax)
7405 }
7406 #[inline]
7407 pub fn expr(&self) -> Option<Expr> {
7408 support::child(&self.syntax)
7409 }
7410 #[inline]
7411 pub fn default_token(&self) -> Option<SyntaxToken> {
7412 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
7413 }
7414}
7415
7416#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7417pub struct Deferrable {
7418 pub(crate) syntax: SyntaxNode,
7419}
7420impl Deferrable {
7421 #[inline]
7422 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
7423 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
7424 }
7425}
7426
7427#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7428pub struct DeferrableConstraintOption {
7429 pub(crate) syntax: SyntaxNode,
7430}
7431impl DeferrableConstraintOption {
7432 #[inline]
7433 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
7434 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
7435 }
7436}
7437
7438#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7439pub struct Delete {
7440 pub(crate) syntax: SyntaxNode,
7441}
7442impl Delete {
7443 #[inline]
7444 pub fn alias(&self) -> Option<Alias> {
7445 support::child(&self.syntax)
7446 }
7447 #[inline]
7448 pub fn for_portion_of(&self) -> Option<ForPortionOf> {
7449 support::child(&self.syntax)
7450 }
7451 #[inline]
7452 pub fn relation_name(&self) -> Option<RelationName> {
7453 support::child(&self.syntax)
7454 }
7455 #[inline]
7456 pub fn returning_clause(&self) -> Option<ReturningClause> {
7457 support::child(&self.syntax)
7458 }
7459 #[inline]
7460 pub fn using_clause(&self) -> Option<UsingClause> {
7461 support::child(&self.syntax)
7462 }
7463 #[inline]
7464 pub fn where_clause(&self) -> Option<WhereClause> {
7465 support::child(&self.syntax)
7466 }
7467 #[inline]
7468 pub fn where_current_of(&self) -> Option<WhereCurrentOf> {
7469 support::child(&self.syntax)
7470 }
7471 #[inline]
7472 pub fn with_clause(&self) -> Option<WithClause> {
7473 support::child(&self.syntax)
7474 }
7475 #[inline]
7476 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
7477 support::token(&self.syntax, SyntaxKind::SEMICOLON)
7478 }
7479 #[inline]
7480 pub fn delete_token(&self) -> Option<SyntaxToken> {
7481 support::token(&self.syntax, SyntaxKind::DELETE_KW)
7482 }
7483 #[inline]
7484 pub fn from_token(&self) -> Option<SyntaxToken> {
7485 support::token(&self.syntax, SyntaxKind::FROM_KW)
7486 }
7487}
7488
7489#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7490pub struct DeleteRows {
7491 pub(crate) syntax: SyntaxNode,
7492}
7493impl DeleteRows {
7494 #[inline]
7495 pub fn delete_token(&self) -> Option<SyntaxToken> {
7496 support::token(&self.syntax, SyntaxKind::DELETE_KW)
7497 }
7498 #[inline]
7499 pub fn rows_token(&self) -> Option<SyntaxToken> {
7500 support::token(&self.syntax, SyntaxKind::ROWS_KW)
7501 }
7502}
7503
7504#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7505pub struct DependsOnExtension {
7506 pub(crate) syntax: SyntaxNode,
7507}
7508impl DependsOnExtension {
7509 #[inline]
7510 pub fn name_ref(&self) -> Option<NameRef> {
7511 support::child(&self.syntax)
7512 }
7513 #[inline]
7514 pub fn depends_token(&self) -> Option<SyntaxToken> {
7515 support::token(&self.syntax, SyntaxKind::DEPENDS_KW)
7516 }
7517 #[inline]
7518 pub fn extension_token(&self) -> Option<SyntaxToken> {
7519 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
7520 }
7521 #[inline]
7522 pub fn on_token(&self) -> Option<SyntaxToken> {
7523 support::token(&self.syntax, SyntaxKind::ON_KW)
7524 }
7525}
7526
7527#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7528pub struct DestVertexTable {
7529 pub(crate) syntax: SyntaxNode,
7530}
7531impl DestVertexTable {
7532 #[inline]
7533 pub fn column_list(&self) -> Option<ColumnList> {
7534 support::child(&self.syntax)
7535 }
7536 #[inline]
7537 pub fn name_ref(&self) -> Option<NameRef> {
7538 support::child(&self.syntax)
7539 }
7540 #[inline]
7541 pub fn references_table(&self) -> Option<ReferencesTable> {
7542 support::child(&self.syntax)
7543 }
7544 #[inline]
7545 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7546 support::token(&self.syntax, SyntaxKind::L_PAREN)
7547 }
7548 #[inline]
7549 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7550 support::token(&self.syntax, SyntaxKind::R_PAREN)
7551 }
7552 #[inline]
7553 pub fn destination_token(&self) -> Option<SyntaxToken> {
7554 support::token(&self.syntax, SyntaxKind::DESTINATION_KW)
7555 }
7556 #[inline]
7557 pub fn key_token(&self) -> Option<SyntaxToken> {
7558 support::token(&self.syntax, SyntaxKind::KEY_KW)
7559 }
7560}
7561
7562#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7563pub struct DetachPartition {
7564 pub(crate) syntax: SyntaxNode,
7565}
7566impl DetachPartition {
7567 #[inline]
7568 pub fn path(&self) -> Option<Path> {
7569 support::child(&self.syntax)
7570 }
7571 #[inline]
7572 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
7573 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
7574 }
7575 #[inline]
7576 pub fn detach_token(&self) -> Option<SyntaxToken> {
7577 support::token(&self.syntax, SyntaxKind::DETACH_KW)
7578 }
7579 #[inline]
7580 pub fn finalize_token(&self) -> Option<SyntaxToken> {
7581 support::token(&self.syntax, SyntaxKind::FINALIZE_KW)
7582 }
7583 #[inline]
7584 pub fn partition_token(&self) -> Option<SyntaxToken> {
7585 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
7586 }
7587}
7588
7589#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7590pub struct DisableRls {
7591 pub(crate) syntax: SyntaxNode,
7592}
7593impl DisableRls {
7594 #[inline]
7595 pub fn disable_token(&self) -> Option<SyntaxToken> {
7596 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
7597 }
7598 #[inline]
7599 pub fn level_token(&self) -> Option<SyntaxToken> {
7600 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
7601 }
7602 #[inline]
7603 pub fn row_token(&self) -> Option<SyntaxToken> {
7604 support::token(&self.syntax, SyntaxKind::ROW_KW)
7605 }
7606 #[inline]
7607 pub fn security_token(&self) -> Option<SyntaxToken> {
7608 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
7609 }
7610}
7611
7612#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7613pub struct DisableRule {
7614 pub(crate) syntax: SyntaxNode,
7615}
7616impl DisableRule {
7617 #[inline]
7618 pub fn name_ref(&self) -> Option<NameRef> {
7619 support::child(&self.syntax)
7620 }
7621 #[inline]
7622 pub fn disable_token(&self) -> Option<SyntaxToken> {
7623 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
7624 }
7625 #[inline]
7626 pub fn rule_token(&self) -> Option<SyntaxToken> {
7627 support::token(&self.syntax, SyntaxKind::RULE_KW)
7628 }
7629}
7630
7631#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7632pub struct DisableTrigger {
7633 pub(crate) syntax: SyntaxNode,
7634}
7635impl DisableTrigger {
7636 #[inline]
7637 pub fn name_ref(&self) -> Option<NameRef> {
7638 support::child(&self.syntax)
7639 }
7640 #[inline]
7641 pub fn all_token(&self) -> Option<SyntaxToken> {
7642 support::token(&self.syntax, SyntaxKind::ALL_KW)
7643 }
7644 #[inline]
7645 pub fn disable_token(&self) -> Option<SyntaxToken> {
7646 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
7647 }
7648 #[inline]
7649 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7650 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7651 }
7652 #[inline]
7653 pub fn user_token(&self) -> Option<SyntaxToken> {
7654 support::token(&self.syntax, SyntaxKind::USER_KW)
7655 }
7656}
7657
7658#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7659pub struct Discard {
7660 pub(crate) syntax: SyntaxNode,
7661}
7662impl Discard {
7663 #[inline]
7664 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
7665 support::token(&self.syntax, SyntaxKind::SEMICOLON)
7666 }
7667 #[inline]
7668 pub fn all_token(&self) -> Option<SyntaxToken> {
7669 support::token(&self.syntax, SyntaxKind::ALL_KW)
7670 }
7671 #[inline]
7672 pub fn discard_token(&self) -> Option<SyntaxToken> {
7673 support::token(&self.syntax, SyntaxKind::DISCARD_KW)
7674 }
7675 #[inline]
7676 pub fn plans_token(&self) -> Option<SyntaxToken> {
7677 support::token(&self.syntax, SyntaxKind::PLANS_KW)
7678 }
7679 #[inline]
7680 pub fn sequences_token(&self) -> Option<SyntaxToken> {
7681 support::token(&self.syntax, SyntaxKind::SEQUENCES_KW)
7682 }
7683 #[inline]
7684 pub fn temp_token(&self) -> Option<SyntaxToken> {
7685 support::token(&self.syntax, SyntaxKind::TEMP_KW)
7686 }
7687 #[inline]
7688 pub fn temporary_token(&self) -> Option<SyntaxToken> {
7689 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
7690 }
7691}
7692
7693#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7694pub struct DistinctClause {
7695 pub(crate) syntax: SyntaxNode,
7696}
7697impl DistinctClause {
7698 #[inline]
7699 pub fn exprs(&self) -> AstChildren<Expr> {
7700 support::children(&self.syntax)
7701 }
7702 #[inline]
7703 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7704 support::token(&self.syntax, SyntaxKind::L_PAREN)
7705 }
7706 #[inline]
7707 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7708 support::token(&self.syntax, SyntaxKind::R_PAREN)
7709 }
7710 #[inline]
7711 pub fn distinct_token(&self) -> Option<SyntaxToken> {
7712 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
7713 }
7714 #[inline]
7715 pub fn on_token(&self) -> Option<SyntaxToken> {
7716 support::token(&self.syntax, SyntaxKind::ON_KW)
7717 }
7718}
7719
7720#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7721pub struct Do {
7722 pub(crate) syntax: SyntaxNode,
7723}
7724impl Do {
7725 #[inline]
7726 pub fn literal(&self) -> Option<Literal> {
7727 support::child(&self.syntax)
7728 }
7729 #[inline]
7730 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
7731 support::token(&self.syntax, SyntaxKind::SEMICOLON)
7732 }
7733 #[inline]
7734 pub fn do_token(&self) -> Option<SyntaxToken> {
7735 support::token(&self.syntax, SyntaxKind::DO_KW)
7736 }
7737 #[inline]
7738 pub fn ident_token(&self) -> Option<SyntaxToken> {
7739 support::token(&self.syntax, SyntaxKind::IDENT)
7740 }
7741 #[inline]
7742 pub fn language_token(&self) -> Option<SyntaxToken> {
7743 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
7744 }
7745}
7746
7747#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7748pub struct DoubleType {
7749 pub(crate) syntax: SyntaxNode,
7750}
7751impl DoubleType {
7752 #[inline]
7753 pub fn double_token(&self) -> Option<SyntaxToken> {
7754 support::token(&self.syntax, SyntaxKind::DOUBLE_KW)
7755 }
7756 #[inline]
7757 pub fn precision_token(&self) -> Option<SyntaxToken> {
7758 support::token(&self.syntax, SyntaxKind::PRECISION_KW)
7759 }
7760 #[inline]
7761 pub fn setof_token(&self) -> Option<SyntaxToken> {
7762 support::token(&self.syntax, SyntaxKind::SETOF_KW)
7763 }
7764}
7765
7766#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7767pub struct Drop {
7768 pub(crate) syntax: SyntaxNode,
7769}
7770impl Drop {
7771 #[inline]
7772 pub fn drop_token(&self) -> Option<SyntaxToken> {
7773 support::token(&self.syntax, SyntaxKind::DROP_KW)
7774 }
7775}
7776
7777#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7778pub struct DropAccessMethod {
7779 pub(crate) syntax: SyntaxNode,
7780}
7781impl DropAccessMethod {
7782 #[inline]
7783 pub fn if_exists(&self) -> Option<IfExists> {
7784 support::child(&self.syntax)
7785 }
7786 #[inline]
7787 pub fn name_ref(&self) -> Option<NameRef> {
7788 support::child(&self.syntax)
7789 }
7790 #[inline]
7791 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
7792 support::token(&self.syntax, SyntaxKind::SEMICOLON)
7793 }
7794 #[inline]
7795 pub fn access_token(&self) -> Option<SyntaxToken> {
7796 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
7797 }
7798 #[inline]
7799 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7800 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7801 }
7802 #[inline]
7803 pub fn drop_token(&self) -> Option<SyntaxToken> {
7804 support::token(&self.syntax, SyntaxKind::DROP_KW)
7805 }
7806 #[inline]
7807 pub fn method_token(&self) -> Option<SyntaxToken> {
7808 support::token(&self.syntax, SyntaxKind::METHOD_KW)
7809 }
7810 #[inline]
7811 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7812 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7813 }
7814}
7815
7816#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7817pub struct DropAggregate {
7818 pub(crate) syntax: SyntaxNode,
7819}
7820impl DropAggregate {
7821 #[inline]
7822 pub fn aggregates(&self) -> AstChildren<Aggregate> {
7823 support::children(&self.syntax)
7824 }
7825 #[inline]
7826 pub fn if_exists(&self) -> Option<IfExists> {
7827 support::child(&self.syntax)
7828 }
7829 #[inline]
7830 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
7831 support::token(&self.syntax, SyntaxKind::SEMICOLON)
7832 }
7833 #[inline]
7834 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
7835 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
7836 }
7837 #[inline]
7838 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7839 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7840 }
7841 #[inline]
7842 pub fn drop_token(&self) -> Option<SyntaxToken> {
7843 support::token(&self.syntax, SyntaxKind::DROP_KW)
7844 }
7845 #[inline]
7846 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7847 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7848 }
7849}
7850
7851#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7852pub struct DropAttribute {
7853 pub(crate) syntax: SyntaxNode,
7854}
7855impl DropAttribute {
7856 #[inline]
7857 pub fn cascade(&self) -> Option<Cascade> {
7858 support::child(&self.syntax)
7859 }
7860 #[inline]
7861 pub fn if_exists(&self) -> Option<IfExists> {
7862 support::child(&self.syntax)
7863 }
7864 #[inline]
7865 pub fn name_ref(&self) -> Option<NameRef> {
7866 support::child(&self.syntax)
7867 }
7868 #[inline]
7869 pub fn restrict(&self) -> Option<Restrict> {
7870 support::child(&self.syntax)
7871 }
7872 #[inline]
7873 pub fn attribute_token(&self) -> Option<SyntaxToken> {
7874 support::token(&self.syntax, SyntaxKind::ATTRIBUTE_KW)
7875 }
7876 #[inline]
7877 pub fn drop_token(&self) -> Option<SyntaxToken> {
7878 support::token(&self.syntax, SyntaxKind::DROP_KW)
7879 }
7880}
7881
7882#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7883pub struct DropCast {
7884 pub(crate) syntax: SyntaxNode,
7885}
7886impl DropCast {
7887 #[inline]
7888 pub fn cast_sig(&self) -> Option<CastSig> {
7889 support::child(&self.syntax)
7890 }
7891 #[inline]
7892 pub fn if_exists(&self) -> Option<IfExists> {
7893 support::child(&self.syntax)
7894 }
7895 #[inline]
7896 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
7897 support::token(&self.syntax, SyntaxKind::SEMICOLON)
7898 }
7899 #[inline]
7900 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7901 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7902 }
7903 #[inline]
7904 pub fn cast_token(&self) -> Option<SyntaxToken> {
7905 support::token(&self.syntax, SyntaxKind::CAST_KW)
7906 }
7907 #[inline]
7908 pub fn drop_token(&self) -> Option<SyntaxToken> {
7909 support::token(&self.syntax, SyntaxKind::DROP_KW)
7910 }
7911 #[inline]
7912 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7913 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7914 }
7915}
7916
7917#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7918pub struct DropCollation {
7919 pub(crate) syntax: SyntaxNode,
7920}
7921impl DropCollation {
7922 #[inline]
7923 pub fn if_exists(&self) -> Option<IfExists> {
7924 support::child(&self.syntax)
7925 }
7926 #[inline]
7927 pub fn paths(&self) -> AstChildren<Path> {
7928 support::children(&self.syntax)
7929 }
7930 #[inline]
7931 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
7932 support::token(&self.syntax, SyntaxKind::SEMICOLON)
7933 }
7934 #[inline]
7935 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7936 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7937 }
7938 #[inline]
7939 pub fn collation_token(&self) -> Option<SyntaxToken> {
7940 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
7941 }
7942 #[inline]
7943 pub fn drop_token(&self) -> Option<SyntaxToken> {
7944 support::token(&self.syntax, SyntaxKind::DROP_KW)
7945 }
7946 #[inline]
7947 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7948 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7949 }
7950}
7951
7952#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7953pub struct DropColumn {
7954 pub(crate) syntax: SyntaxNode,
7955}
7956impl DropColumn {
7957 #[inline]
7958 pub fn if_exists(&self) -> Option<IfExists> {
7959 support::child(&self.syntax)
7960 }
7961 #[inline]
7962 pub fn name_ref(&self) -> Option<NameRef> {
7963 support::child(&self.syntax)
7964 }
7965 #[inline]
7966 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7967 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7968 }
7969 #[inline]
7970 pub fn column_token(&self) -> Option<SyntaxToken> {
7971 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
7972 }
7973 #[inline]
7974 pub fn drop_token(&self) -> Option<SyntaxToken> {
7975 support::token(&self.syntax, SyntaxKind::DROP_KW)
7976 }
7977 #[inline]
7978 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7979 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7980 }
7981}
7982
7983#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7984pub struct DropConstraint {
7985 pub(crate) syntax: SyntaxNode,
7986}
7987impl DropConstraint {
7988 #[inline]
7989 pub fn if_exists(&self) -> Option<IfExists> {
7990 support::child(&self.syntax)
7991 }
7992 #[inline]
7993 pub fn name_ref(&self) -> Option<NameRef> {
7994 support::child(&self.syntax)
7995 }
7996 #[inline]
7997 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7998 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7999 }
8000 #[inline]
8001 pub fn constraint_token(&self) -> Option<SyntaxToken> {
8002 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
8003 }
8004 #[inline]
8005 pub fn drop_token(&self) -> Option<SyntaxToken> {
8006 support::token(&self.syntax, SyntaxKind::DROP_KW)
8007 }
8008 #[inline]
8009 pub fn restrict_token(&self) -> Option<SyntaxToken> {
8010 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
8011 }
8012}
8013
8014#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8015pub struct DropConversion {
8016 pub(crate) syntax: SyntaxNode,
8017}
8018impl DropConversion {
8019 #[inline]
8020 pub fn if_exists(&self) -> Option<IfExists> {
8021 support::child(&self.syntax)
8022 }
8023 #[inline]
8024 pub fn path(&self) -> Option<Path> {
8025 support::child(&self.syntax)
8026 }
8027 #[inline]
8028 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
8029 support::token(&self.syntax, SyntaxKind::SEMICOLON)
8030 }
8031 #[inline]
8032 pub fn cascade_token(&self) -> Option<SyntaxToken> {
8033 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
8034 }
8035 #[inline]
8036 pub fn conversion_token(&self) -> Option<SyntaxToken> {
8037 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
8038 }
8039 #[inline]
8040 pub fn drop_token(&self) -> Option<SyntaxToken> {
8041 support::token(&self.syntax, SyntaxKind::DROP_KW)
8042 }
8043 #[inline]
8044 pub fn restrict_token(&self) -> Option<SyntaxToken> {
8045 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
8046 }
8047}
8048
8049#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8050pub struct DropDatabase {
8051 pub(crate) syntax: SyntaxNode,
8052}
8053impl DropDatabase {
8054 #[inline]
8055 pub fn if_exists(&self) -> Option<IfExists> {
8056 support::child(&self.syntax)
8057 }
8058 #[inline]
8059 pub fn name_ref(&self) -> Option<NameRef> {
8060 support::child(&self.syntax)
8061 }
8062 #[inline]
8063 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
8064 support::token(&self.syntax, SyntaxKind::SEMICOLON)
8065 }
8066 #[inline]
8067 pub fn database_token(&self) -> Option<SyntaxToken> {
8068 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
8069 }
8070 #[inline]
8071 pub fn drop_token(&self) -> Option<SyntaxToken> {
8072 support::token(&self.syntax, SyntaxKind::DROP_KW)
8073 }
8074}
8075
8076#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8077pub struct DropDefault {
8078 pub(crate) syntax: SyntaxNode,
8079}
8080impl DropDefault {
8081 #[inline]
8082 pub fn default_token(&self) -> Option<SyntaxToken> {
8083 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
8084 }
8085 #[inline]
8086 pub fn drop_token(&self) -> Option<SyntaxToken> {
8087 support::token(&self.syntax, SyntaxKind::DROP_KW)
8088 }
8089}
8090
8091#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8092pub struct DropDomain {
8093 pub(crate) syntax: SyntaxNode,
8094}
8095impl DropDomain {
8096 #[inline]
8097 pub fn if_exists(&self) -> Option<IfExists> {
8098 support::child(&self.syntax)
8099 }
8100 #[inline]
8101 pub fn paths(&self) -> AstChildren<Path> {
8102 support::children(&self.syntax)
8103 }
8104 #[inline]
8105 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
8106 support::token(&self.syntax, SyntaxKind::SEMICOLON)
8107 }
8108 #[inline]
8109 pub fn cascade_token(&self) -> Option<SyntaxToken> {
8110 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
8111 }
8112 #[inline]
8113 pub fn domain_token(&self) -> Option<SyntaxToken> {
8114 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
8115 }
8116 #[inline]
8117 pub fn drop_token(&self) -> Option<SyntaxToken> {
8118 support::token(&self.syntax, SyntaxKind::DROP_KW)
8119 }
8120 #[inline]
8121 pub fn restrict_token(&self) -> Option<SyntaxToken> {
8122 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
8123 }
8124}
8125
8126#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8127pub struct DropEdgeTables {
8128 pub(crate) syntax: SyntaxNode,
8129}
8130impl DropEdgeTables {
8131 #[inline]
8132 pub fn names(&self) -> AstChildren<Name> {
8133 support::children(&self.syntax)
8134 }
8135 #[inline]
8136 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8137 support::token(&self.syntax, SyntaxKind::L_PAREN)
8138 }
8139 #[inline]
8140 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8141 support::token(&self.syntax, SyntaxKind::R_PAREN)
8142 }
8143 #[inline]
8144 pub fn cascade_token(&self) -> Option<SyntaxToken> {
8145 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
8146 }
8147 #[inline]
8148 pub fn drop_token(&self) -> Option<SyntaxToken> {
8149 support::token(&self.syntax, SyntaxKind::DROP_KW)
8150 }
8151 #[inline]
8152 pub fn edge_token(&self) -> Option<SyntaxToken> {
8153 support::token(&self.syntax, SyntaxKind::EDGE_KW)
8154 }
8155 #[inline]
8156 pub fn relationship_token(&self) -> Option<SyntaxToken> {
8157 support::token(&self.syntax, SyntaxKind::RELATIONSHIP_KW)
8158 }
8159 #[inline]
8160 pub fn restrict_token(&self) -> Option<SyntaxToken> {
8161 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
8162 }
8163 #[inline]
8164 pub fn tables_token(&self) -> Option<SyntaxToken> {
8165 support::token(&self.syntax, SyntaxKind::TABLES_KW)
8166 }
8167}
8168
8169#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8170pub struct DropEventTrigger {
8171 pub(crate) syntax: SyntaxNode,
8172}
8173impl DropEventTrigger {
8174 #[inline]
8175 pub fn if_exists(&self) -> Option<IfExists> {
8176 support::child(&self.syntax)
8177 }
8178 #[inline]
8179 pub fn name_ref(&self) -> Option<NameRef> {
8180 support::child(&self.syntax)
8181 }
8182 #[inline]
8183 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
8184 support::token(&self.syntax, SyntaxKind::SEMICOLON)
8185 }
8186 #[inline]
8187 pub fn cascade_token(&self) -> Option<SyntaxToken> {
8188 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
8189 }
8190 #[inline]
8191 pub fn drop_token(&self) -> Option<SyntaxToken> {
8192 support::token(&self.syntax, SyntaxKind::DROP_KW)
8193 }
8194 #[inline]
8195 pub fn event_token(&self) -> Option<SyntaxToken> {
8196 support::token(&self.syntax, SyntaxKind::EVENT_KW)
8197 }
8198 #[inline]
8199 pub fn restrict_token(&self) -> Option<SyntaxToken> {
8200 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
8201 }
8202 #[inline]
8203 pub fn trigger_token(&self) -> Option<SyntaxToken> {
8204 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
8205 }
8206}
8207
8208#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8209pub struct DropExpression {
8210 pub(crate) syntax: SyntaxNode,
8211}
8212impl DropExpression {
8213 #[inline]
8214 pub fn if_exists(&self) -> Option<IfExists> {
8215 support::child(&self.syntax)
8216 }
8217 #[inline]
8218 pub fn drop_token(&self) -> Option<SyntaxToken> {
8219 support::token(&self.syntax, SyntaxKind::DROP_KW)
8220 }
8221 #[inline]
8222 pub fn expression_token(&self) -> Option<SyntaxToken> {
8223 support::token(&self.syntax, SyntaxKind::EXPRESSION_KW)
8224 }
8225}
8226
8227#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8228pub struct DropExtension {
8229 pub(crate) syntax: SyntaxNode,
8230}
8231impl DropExtension {
8232 #[inline]
8233 pub fn if_exists(&self) -> Option<IfExists> {
8234 support::child(&self.syntax)
8235 }
8236 #[inline]
8237 pub fn name_refs(&self) -> AstChildren<NameRef> {
8238 support::children(&self.syntax)
8239 }
8240 #[inline]
8241 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
8242 support::token(&self.syntax, SyntaxKind::SEMICOLON)
8243 }
8244 #[inline]
8245 pub fn cascade_token(&self) -> Option<SyntaxToken> {
8246 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
8247 }
8248 #[inline]
8249 pub fn drop_token(&self) -> Option<SyntaxToken> {
8250 support::token(&self.syntax, SyntaxKind::DROP_KW)
8251 }
8252 #[inline]
8253 pub fn extension_token(&self) -> Option<SyntaxToken> {
8254 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
8255 }
8256 #[inline]
8257 pub fn restrict_token(&self) -> Option<SyntaxToken> {
8258 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
8259 }
8260}
8261
8262#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8263pub struct DropForeignDataWrapper {
8264 pub(crate) syntax: SyntaxNode,
8265}
8266impl DropForeignDataWrapper {
8267 #[inline]
8268 pub fn if_exists(&self) -> Option<IfExists> {
8269 support::child(&self.syntax)
8270 }
8271 #[inline]
8272 pub fn name_refs(&self) -> AstChildren<NameRef> {
8273 support::children(&self.syntax)
8274 }
8275 #[inline]
8276 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
8277 support::token(&self.syntax, SyntaxKind::SEMICOLON)
8278 }
8279 #[inline]
8280 pub fn cascade_token(&self) -> Option<SyntaxToken> {
8281 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
8282 }
8283 #[inline]
8284 pub fn data_token(&self) -> Option<SyntaxToken> {
8285 support::token(&self.syntax, SyntaxKind::DATA_KW)
8286 }
8287 #[inline]
8288 pub fn drop_token(&self) -> Option<SyntaxToken> {
8289 support::token(&self.syntax, SyntaxKind::DROP_KW)
8290 }
8291 #[inline]
8292 pub fn foreign_token(&self) -> Option<SyntaxToken> {
8293 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
8294 }
8295 #[inline]
8296 pub fn restrict_token(&self) -> Option<SyntaxToken> {
8297 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
8298 }
8299 #[inline]
8300 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
8301 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
8302 }
8303}
8304
8305#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8306pub struct DropForeignTable {
8307 pub(crate) syntax: SyntaxNode,
8308}
8309impl DropForeignTable {
8310 #[inline]
8311 pub fn if_exists(&self) -> Option<IfExists> {
8312 support::child(&self.syntax)
8313 }
8314 #[inline]
8315 pub fn paths(&self) -> AstChildren<Path> {
8316 support::children(&self.syntax)
8317 }
8318 #[inline]
8319 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
8320 support::token(&self.syntax, SyntaxKind::SEMICOLON)
8321 }
8322 #[inline]
8323 pub fn cascade_token(&self) -> Option<SyntaxToken> {
8324 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
8325 }
8326 #[inline]
8327 pub fn drop_token(&self) -> Option<SyntaxToken> {
8328 support::token(&self.syntax, SyntaxKind::DROP_KW)
8329 }
8330 #[inline]
8331 pub fn foreign_token(&self) -> Option<SyntaxToken> {
8332 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
8333 }
8334 #[inline]
8335 pub fn restrict_token(&self) -> Option<SyntaxToken> {
8336 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
8337 }
8338 #[inline]
8339 pub fn table_token(&self) -> Option<SyntaxToken> {
8340 support::token(&self.syntax, SyntaxKind::TABLE_KW)
8341 }
8342}
8343
8344#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8345pub struct DropFunction {
8346 pub(crate) syntax: SyntaxNode,
8347}
8348impl DropFunction {
8349 #[inline]
8350 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
8351 support::child(&self.syntax)
8352 }
8353 #[inline]
8354 pub fn if_exists(&self) -> Option<IfExists> {
8355 support::child(&self.syntax)
8356 }
8357 #[inline]
8358 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
8359 support::token(&self.syntax, SyntaxKind::SEMICOLON)
8360 }
8361 #[inline]
8362 pub fn cascade_token(&self) -> Option<SyntaxToken> {
8363 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
8364 }
8365 #[inline]
8366 pub fn drop_token(&self) -> Option<SyntaxToken> {
8367 support::token(&self.syntax, SyntaxKind::DROP_KW)
8368 }
8369 #[inline]
8370 pub fn function_token(&self) -> Option<SyntaxToken> {
8371 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
8372 }
8373 #[inline]
8374 pub fn restrict_token(&self) -> Option<SyntaxToken> {
8375 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
8376 }
8377}
8378
8379#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8380pub struct DropGroup {
8381 pub(crate) syntax: SyntaxNode,
8382}
8383impl DropGroup {
8384 #[inline]
8385 pub fn if_exists(&self) -> Option<IfExists> {
8386 support::child(&self.syntax)
8387 }
8388 #[inline]
8389 pub fn name_refs(&self) -> AstChildren<NameRef> {
8390 support::children(&self.syntax)
8391 }
8392 #[inline]
8393 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
8394 support::token(&self.syntax, SyntaxKind::SEMICOLON)
8395 }
8396 #[inline]
8397 pub fn drop_token(&self) -> Option<SyntaxToken> {
8398 support::token(&self.syntax, SyntaxKind::DROP_KW)
8399 }
8400 #[inline]
8401 pub fn group_token(&self) -> Option<SyntaxToken> {
8402 support::token(&self.syntax, SyntaxKind::GROUP_KW)
8403 }
8404}
8405
8406#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8407pub struct DropIdentity {
8408 pub(crate) syntax: SyntaxNode,
8409}
8410impl DropIdentity {
8411 #[inline]
8412 pub fn if_exists(&self) -> Option<IfExists> {
8413 support::child(&self.syntax)
8414 }
8415 #[inline]
8416 pub fn drop_token(&self) -> Option<SyntaxToken> {
8417 support::token(&self.syntax, SyntaxKind::DROP_KW)
8418 }
8419 #[inline]
8420 pub fn identity_token(&self) -> Option<SyntaxToken> {
8421 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
8422 }
8423}
8424
8425#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8426pub struct DropIndex {
8427 pub(crate) syntax: SyntaxNode,
8428}
8429impl DropIndex {
8430 #[inline]
8431 pub fn if_exists(&self) -> Option<IfExists> {
8432 support::child(&self.syntax)
8433 }
8434 #[inline]
8435 pub fn paths(&self) -> AstChildren<Path> {
8436 support::children(&self.syntax)
8437 }
8438 #[inline]
8439 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
8440 support::token(&self.syntax, SyntaxKind::SEMICOLON)
8441 }
8442 #[inline]
8443 pub fn cascade_token(&self) -> Option<SyntaxToken> {
8444 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
8445 }
8446 #[inline]
8447 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
8448 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
8449 }
8450 #[inline]
8451 pub fn drop_token(&self) -> Option<SyntaxToken> {
8452 support::token(&self.syntax, SyntaxKind::DROP_KW)
8453 }
8454 #[inline]
8455 pub fn index_token(&self) -> Option<SyntaxToken> {
8456 support::token(&self.syntax, SyntaxKind::INDEX_KW)
8457 }
8458 #[inline]
8459 pub fn restrict_token(&self) -> Option<SyntaxToken> {
8460 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
8461 }
8462}
8463
8464#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8465pub struct DropLanguage {
8466 pub(crate) syntax: SyntaxNode,
8467}
8468impl DropLanguage {
8469 #[inline]
8470 pub fn if_exists(&self) -> Option<IfExists> {
8471 support::child(&self.syntax)
8472 }
8473 #[inline]
8474 pub fn name_ref(&self) -> Option<NameRef> {
8475 support::child(&self.syntax)
8476 }
8477 #[inline]
8478 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
8479 support::token(&self.syntax, SyntaxKind::SEMICOLON)
8480 }
8481 #[inline]
8482 pub fn cascade_token(&self) -> Option<SyntaxToken> {
8483 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
8484 }
8485 #[inline]
8486 pub fn drop_token(&self) -> Option<SyntaxToken> {
8487 support::token(&self.syntax, SyntaxKind::DROP_KW)
8488 }
8489 #[inline]
8490 pub fn language_token(&self) -> Option<SyntaxToken> {
8491 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
8492 }
8493 #[inline]
8494 pub fn procedural_token(&self) -> Option<SyntaxToken> {
8495 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
8496 }
8497 #[inline]
8498 pub fn restrict_token(&self) -> Option<SyntaxToken> {
8499 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
8500 }
8501}
8502
8503#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8504pub struct DropMaterializedView {
8505 pub(crate) syntax: SyntaxNode,
8506}
8507impl DropMaterializedView {
8508 #[inline]
8509 pub fn if_exists(&self) -> Option<IfExists> {
8510 support::child(&self.syntax)
8511 }
8512 #[inline]
8513 pub fn paths(&self) -> AstChildren<Path> {
8514 support::children(&self.syntax)
8515 }
8516 #[inline]
8517 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
8518 support::token(&self.syntax, SyntaxKind::SEMICOLON)
8519 }
8520 #[inline]
8521 pub fn cascade_token(&self) -> Option<SyntaxToken> {
8522 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
8523 }
8524 #[inline]
8525 pub fn drop_token(&self) -> Option<SyntaxToken> {
8526 support::token(&self.syntax, SyntaxKind::DROP_KW)
8527 }
8528 #[inline]
8529 pub fn materialized_token(&self) -> Option<SyntaxToken> {
8530 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
8531 }
8532 #[inline]
8533 pub fn restrict_token(&self) -> Option<SyntaxToken> {
8534 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
8535 }
8536 #[inline]
8537 pub fn view_token(&self) -> Option<SyntaxToken> {
8538 support::token(&self.syntax, SyntaxKind::VIEW_KW)
8539 }
8540}
8541
8542#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8543pub struct DropNotNull {
8544 pub(crate) syntax: SyntaxNode,
8545}
8546impl DropNotNull {
8547 #[inline]
8548 pub fn drop_token(&self) -> Option<SyntaxToken> {
8549 support::token(&self.syntax, SyntaxKind::DROP_KW)
8550 }
8551 #[inline]
8552 pub fn not_token(&self) -> Option<SyntaxToken> {
8553 support::token(&self.syntax, SyntaxKind::NOT_KW)
8554 }
8555 #[inline]
8556 pub fn null_token(&self) -> Option<SyntaxToken> {
8557 support::token(&self.syntax, SyntaxKind::NULL_KW)
8558 }
8559}
8560
8561#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8562pub struct DropOpClassOption {
8563 pub(crate) syntax: SyntaxNode,
8564}
8565impl DropOpClassOption {
8566 #[inline]
8567 pub fn literal(&self) -> Option<Literal> {
8568 support::child(&self.syntax)
8569 }
8570 #[inline]
8571 pub fn param_list(&self) -> Option<ParamList> {
8572 support::child(&self.syntax)
8573 }
8574 #[inline]
8575 pub fn function_token(&self) -> Option<SyntaxToken> {
8576 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
8577 }
8578 #[inline]
8579 pub fn operator_token(&self) -> Option<SyntaxToken> {
8580 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
8581 }
8582}
8583
8584#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8585pub struct DropOpClassOptionList {
8586 pub(crate) syntax: SyntaxNode,
8587}
8588impl DropOpClassOptionList {
8589 #[inline]
8590 pub fn drop_op_class_options(&self) -> AstChildren<DropOpClassOption> {
8591 support::children(&self.syntax)
8592 }
8593}
8594
8595#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8596pub struct DropOpClassOptions {
8597 pub(crate) syntax: SyntaxNode,
8598}
8599impl DropOpClassOptions {
8600 #[inline]
8601 pub fn drop_op_class_option_list(&self) -> Option<DropOpClassOptionList> {
8602 support::child(&self.syntax)
8603 }
8604 #[inline]
8605 pub fn drop_token(&self) -> Option<SyntaxToken> {
8606 support::token(&self.syntax, SyntaxKind::DROP_KW)
8607 }
8608}
8609
8610#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8611pub struct DropOperator {
8612 pub(crate) syntax: SyntaxNode,
8613}
8614impl DropOperator {
8615 #[inline]
8616 pub fn if_exists(&self) -> Option<IfExists> {
8617 support::child(&self.syntax)
8618 }
8619 #[inline]
8620 pub fn op_sig_list(&self) -> Option<OpSigList> {
8621 support::child(&self.syntax)
8622 }
8623 #[inline]
8624 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
8625 support::token(&self.syntax, SyntaxKind::SEMICOLON)
8626 }
8627 #[inline]
8628 pub fn cascade_token(&self) -> Option<SyntaxToken> {
8629 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
8630 }
8631 #[inline]
8632 pub fn drop_token(&self) -> Option<SyntaxToken> {
8633 support::token(&self.syntax, SyntaxKind::DROP_KW)
8634 }
8635 #[inline]
8636 pub fn operator_token(&self) -> Option<SyntaxToken> {
8637 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
8638 }
8639 #[inline]
8640 pub fn restrict_token(&self) -> Option<SyntaxToken> {
8641 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
8642 }
8643}
8644
8645#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8646pub struct DropOperatorClass {
8647 pub(crate) syntax: SyntaxNode,
8648}
8649impl DropOperatorClass {
8650 #[inline]
8651 pub fn if_exists(&self) -> Option<IfExists> {
8652 support::child(&self.syntax)
8653 }
8654 #[inline]
8655 pub fn name_ref(&self) -> Option<NameRef> {
8656 support::child(&self.syntax)
8657 }
8658 #[inline]
8659 pub fn path(&self) -> Option<Path> {
8660 support::child(&self.syntax)
8661 }
8662 #[inline]
8663 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
8664 support::token(&self.syntax, SyntaxKind::SEMICOLON)
8665 }
8666 #[inline]
8667 pub fn cascade_token(&self) -> Option<SyntaxToken> {
8668 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
8669 }
8670 #[inline]
8671 pub fn class_token(&self) -> Option<SyntaxToken> {
8672 support::token(&self.syntax, SyntaxKind::CLASS_KW)
8673 }
8674 #[inline]
8675 pub fn drop_token(&self) -> Option<SyntaxToken> {
8676 support::token(&self.syntax, SyntaxKind::DROP_KW)
8677 }
8678 #[inline]
8679 pub fn operator_token(&self) -> Option<SyntaxToken> {
8680 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
8681 }
8682 #[inline]
8683 pub fn restrict_token(&self) -> Option<SyntaxToken> {
8684 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
8685 }
8686 #[inline]
8687 pub fn using_token(&self) -> Option<SyntaxToken> {
8688 support::token(&self.syntax, SyntaxKind::USING_KW)
8689 }
8690}
8691
8692#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8693pub struct DropOperatorFamily {
8694 pub(crate) syntax: SyntaxNode,
8695}
8696impl DropOperatorFamily {
8697 #[inline]
8698 pub fn if_exists(&self) -> Option<IfExists> {
8699 support::child(&self.syntax)
8700 }
8701 #[inline]
8702 pub fn name_ref(&self) -> Option<NameRef> {
8703 support::child(&self.syntax)
8704 }
8705 #[inline]
8706 pub fn path(&self) -> Option<Path> {
8707 support::child(&self.syntax)
8708 }
8709 #[inline]
8710 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
8711 support::token(&self.syntax, SyntaxKind::SEMICOLON)
8712 }
8713 #[inline]
8714 pub fn cascade_token(&self) -> Option<SyntaxToken> {
8715 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
8716 }
8717 #[inline]
8718 pub fn drop_token(&self) -> Option<SyntaxToken> {
8719 support::token(&self.syntax, SyntaxKind::DROP_KW)
8720 }
8721 #[inline]
8722 pub fn family_token(&self) -> Option<SyntaxToken> {
8723 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
8724 }
8725 #[inline]
8726 pub fn operator_token(&self) -> Option<SyntaxToken> {
8727 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
8728 }
8729 #[inline]
8730 pub fn restrict_token(&self) -> Option<SyntaxToken> {
8731 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
8732 }
8733 #[inline]
8734 pub fn using_token(&self) -> Option<SyntaxToken> {
8735 support::token(&self.syntax, SyntaxKind::USING_KW)
8736 }
8737}
8738
8739#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8740pub struct DropOwned {
8741 pub(crate) syntax: SyntaxNode,
8742}
8743impl DropOwned {
8744 #[inline]
8745 pub fn role_ref_list(&self) -> Option<RoleRefList> {
8746 support::child(&self.syntax)
8747 }
8748 #[inline]
8749 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
8750 support::token(&self.syntax, SyntaxKind::SEMICOLON)
8751 }
8752 #[inline]
8753 pub fn by_token(&self) -> Option<SyntaxToken> {
8754 support::token(&self.syntax, SyntaxKind::BY_KW)
8755 }
8756 #[inline]
8757 pub fn cascade_token(&self) -> Option<SyntaxToken> {
8758 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
8759 }
8760 #[inline]
8761 pub fn drop_token(&self) -> Option<SyntaxToken> {
8762 support::token(&self.syntax, SyntaxKind::DROP_KW)
8763 }
8764 #[inline]
8765 pub fn owned_token(&self) -> Option<SyntaxToken> {
8766 support::token(&self.syntax, SyntaxKind::OWNED_KW)
8767 }
8768 #[inline]
8769 pub fn restrict_token(&self) -> Option<SyntaxToken> {
8770 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
8771 }
8772}
8773
8774#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8775pub struct DropPolicy {
8776 pub(crate) syntax: SyntaxNode,
8777}
8778impl DropPolicy {
8779 #[inline]
8780 pub fn if_exists(&self) -> Option<IfExists> {
8781 support::child(&self.syntax)
8782 }
8783 #[inline]
8784 pub fn name_ref(&self) -> Option<NameRef> {
8785 support::child(&self.syntax)
8786 }
8787 #[inline]
8788 pub fn on_table(&self) -> Option<OnTable> {
8789 support::child(&self.syntax)
8790 }
8791 #[inline]
8792 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
8793 support::token(&self.syntax, SyntaxKind::SEMICOLON)
8794 }
8795 #[inline]
8796 pub fn cascade_token(&self) -> Option<SyntaxToken> {
8797 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
8798 }
8799 #[inline]
8800 pub fn drop_token(&self) -> Option<SyntaxToken> {
8801 support::token(&self.syntax, SyntaxKind::DROP_KW)
8802 }
8803 #[inline]
8804 pub fn policy_token(&self) -> Option<SyntaxToken> {
8805 support::token(&self.syntax, SyntaxKind::POLICY_KW)
8806 }
8807 #[inline]
8808 pub fn restrict_token(&self) -> Option<SyntaxToken> {
8809 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
8810 }
8811}
8812
8813#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8814pub struct DropProcedure {
8815 pub(crate) syntax: SyntaxNode,
8816}
8817impl DropProcedure {
8818 #[inline]
8819 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
8820 support::child(&self.syntax)
8821 }
8822 #[inline]
8823 pub fn if_exists(&self) -> Option<IfExists> {
8824 support::child(&self.syntax)
8825 }
8826 #[inline]
8827 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
8828 support::token(&self.syntax, SyntaxKind::SEMICOLON)
8829 }
8830 #[inline]
8831 pub fn cascade_token(&self) -> Option<SyntaxToken> {
8832 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
8833 }
8834 #[inline]
8835 pub fn drop_token(&self) -> Option<SyntaxToken> {
8836 support::token(&self.syntax, SyntaxKind::DROP_KW)
8837 }
8838 #[inline]
8839 pub fn procedure_token(&self) -> Option<SyntaxToken> {
8840 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
8841 }
8842 #[inline]
8843 pub fn restrict_token(&self) -> Option<SyntaxToken> {
8844 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
8845 }
8846}
8847
8848#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8849pub struct DropPropertyGraph {
8850 pub(crate) syntax: SyntaxNode,
8851}
8852impl DropPropertyGraph {
8853 #[inline]
8854 pub fn if_exists(&self) -> Option<IfExists> {
8855 support::child(&self.syntax)
8856 }
8857 #[inline]
8858 pub fn path(&self) -> Option<Path> {
8859 support::child(&self.syntax)
8860 }
8861 #[inline]
8862 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
8863 support::token(&self.syntax, SyntaxKind::SEMICOLON)
8864 }
8865 #[inline]
8866 pub fn cascade_token(&self) -> Option<SyntaxToken> {
8867 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
8868 }
8869 #[inline]
8870 pub fn drop_token(&self) -> Option<SyntaxToken> {
8871 support::token(&self.syntax, SyntaxKind::DROP_KW)
8872 }
8873 #[inline]
8874 pub fn graph_token(&self) -> Option<SyntaxToken> {
8875 support::token(&self.syntax, SyntaxKind::GRAPH_KW)
8876 }
8877 #[inline]
8878 pub fn property_token(&self) -> Option<SyntaxToken> {
8879 support::token(&self.syntax, SyntaxKind::PROPERTY_KW)
8880 }
8881 #[inline]
8882 pub fn restrict_token(&self) -> Option<SyntaxToken> {
8883 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
8884 }
8885}
8886
8887#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8888pub struct DropPublication {
8889 pub(crate) syntax: SyntaxNode,
8890}
8891impl DropPublication {
8892 #[inline]
8893 pub fn if_exists(&self) -> Option<IfExists> {
8894 support::child(&self.syntax)
8895 }
8896 #[inline]
8897 pub fn name_refs(&self) -> AstChildren<NameRef> {
8898 support::children(&self.syntax)
8899 }
8900 #[inline]
8901 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
8902 support::token(&self.syntax, SyntaxKind::SEMICOLON)
8903 }
8904 #[inline]
8905 pub fn cascade_token(&self) -> Option<SyntaxToken> {
8906 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
8907 }
8908 #[inline]
8909 pub fn drop_token(&self) -> Option<SyntaxToken> {
8910 support::token(&self.syntax, SyntaxKind::DROP_KW)
8911 }
8912 #[inline]
8913 pub fn publication_token(&self) -> Option<SyntaxToken> {
8914 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
8915 }
8916 #[inline]
8917 pub fn restrict_token(&self) -> Option<SyntaxToken> {
8918 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
8919 }
8920}
8921
8922#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8923pub struct DropRole {
8924 pub(crate) syntax: SyntaxNode,
8925}
8926impl DropRole {
8927 #[inline]
8928 pub fn if_exists(&self) -> Option<IfExists> {
8929 support::child(&self.syntax)
8930 }
8931 #[inline]
8932 pub fn name_refs(&self) -> AstChildren<NameRef> {
8933 support::children(&self.syntax)
8934 }
8935 #[inline]
8936 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
8937 support::token(&self.syntax, SyntaxKind::SEMICOLON)
8938 }
8939 #[inline]
8940 pub fn drop_token(&self) -> Option<SyntaxToken> {
8941 support::token(&self.syntax, SyntaxKind::DROP_KW)
8942 }
8943 #[inline]
8944 pub fn role_token(&self) -> Option<SyntaxToken> {
8945 support::token(&self.syntax, SyntaxKind::ROLE_KW)
8946 }
8947}
8948
8949#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8950pub struct DropRoutine {
8951 pub(crate) syntax: SyntaxNode,
8952}
8953impl DropRoutine {
8954 #[inline]
8955 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
8956 support::child(&self.syntax)
8957 }
8958 #[inline]
8959 pub fn if_exists(&self) -> Option<IfExists> {
8960 support::child(&self.syntax)
8961 }
8962 #[inline]
8963 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
8964 support::token(&self.syntax, SyntaxKind::SEMICOLON)
8965 }
8966 #[inline]
8967 pub fn cascade_token(&self) -> Option<SyntaxToken> {
8968 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
8969 }
8970 #[inline]
8971 pub fn drop_token(&self) -> Option<SyntaxToken> {
8972 support::token(&self.syntax, SyntaxKind::DROP_KW)
8973 }
8974 #[inline]
8975 pub fn restrict_token(&self) -> Option<SyntaxToken> {
8976 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
8977 }
8978 #[inline]
8979 pub fn routine_token(&self) -> Option<SyntaxToken> {
8980 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
8981 }
8982}
8983
8984#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8985pub struct DropRule {
8986 pub(crate) syntax: SyntaxNode,
8987}
8988impl DropRule {
8989 #[inline]
8990 pub fn if_exists(&self) -> Option<IfExists> {
8991 support::child(&self.syntax)
8992 }
8993 #[inline]
8994 pub fn name_ref(&self) -> Option<NameRef> {
8995 support::child(&self.syntax)
8996 }
8997 #[inline]
8998 pub fn on_table(&self) -> Option<OnTable> {
8999 support::child(&self.syntax)
9000 }
9001 #[inline]
9002 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
9003 support::token(&self.syntax, SyntaxKind::SEMICOLON)
9004 }
9005 #[inline]
9006 pub fn cascade_token(&self) -> Option<SyntaxToken> {
9007 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
9008 }
9009 #[inline]
9010 pub fn drop_token(&self) -> Option<SyntaxToken> {
9011 support::token(&self.syntax, SyntaxKind::DROP_KW)
9012 }
9013 #[inline]
9014 pub fn restrict_token(&self) -> Option<SyntaxToken> {
9015 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
9016 }
9017 #[inline]
9018 pub fn rule_token(&self) -> Option<SyntaxToken> {
9019 support::token(&self.syntax, SyntaxKind::RULE_KW)
9020 }
9021}
9022
9023#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9024pub struct DropSchema {
9025 pub(crate) syntax: SyntaxNode,
9026}
9027impl DropSchema {
9028 #[inline]
9029 pub fn if_exists(&self) -> Option<IfExists> {
9030 support::child(&self.syntax)
9031 }
9032 #[inline]
9033 pub fn name_refs(&self) -> AstChildren<NameRef> {
9034 support::children(&self.syntax)
9035 }
9036 #[inline]
9037 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
9038 support::token(&self.syntax, SyntaxKind::SEMICOLON)
9039 }
9040 #[inline]
9041 pub fn cascade_token(&self) -> Option<SyntaxToken> {
9042 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
9043 }
9044 #[inline]
9045 pub fn drop_token(&self) -> Option<SyntaxToken> {
9046 support::token(&self.syntax, SyntaxKind::DROP_KW)
9047 }
9048 #[inline]
9049 pub fn restrict_token(&self) -> Option<SyntaxToken> {
9050 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
9051 }
9052 #[inline]
9053 pub fn schema_token(&self) -> Option<SyntaxToken> {
9054 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
9055 }
9056}
9057
9058#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9059pub struct DropSequence {
9060 pub(crate) syntax: SyntaxNode,
9061}
9062impl DropSequence {
9063 #[inline]
9064 pub fn if_exists(&self) -> Option<IfExists> {
9065 support::child(&self.syntax)
9066 }
9067 #[inline]
9068 pub fn paths(&self) -> AstChildren<Path> {
9069 support::children(&self.syntax)
9070 }
9071 #[inline]
9072 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
9073 support::token(&self.syntax, SyntaxKind::SEMICOLON)
9074 }
9075 #[inline]
9076 pub fn cascade_token(&self) -> Option<SyntaxToken> {
9077 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
9078 }
9079 #[inline]
9080 pub fn drop_token(&self) -> Option<SyntaxToken> {
9081 support::token(&self.syntax, SyntaxKind::DROP_KW)
9082 }
9083 #[inline]
9084 pub fn restrict_token(&self) -> Option<SyntaxToken> {
9085 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
9086 }
9087 #[inline]
9088 pub fn sequence_token(&self) -> Option<SyntaxToken> {
9089 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
9090 }
9091}
9092
9093#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9094pub struct DropServer {
9095 pub(crate) syntax: SyntaxNode,
9096}
9097impl DropServer {
9098 #[inline]
9099 pub fn if_exists(&self) -> Option<IfExists> {
9100 support::child(&self.syntax)
9101 }
9102 #[inline]
9103 pub fn name_ref(&self) -> Option<NameRef> {
9104 support::child(&self.syntax)
9105 }
9106 #[inline]
9107 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
9108 support::token(&self.syntax, SyntaxKind::SEMICOLON)
9109 }
9110 #[inline]
9111 pub fn cascade_token(&self) -> Option<SyntaxToken> {
9112 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
9113 }
9114 #[inline]
9115 pub fn drop_token(&self) -> Option<SyntaxToken> {
9116 support::token(&self.syntax, SyntaxKind::DROP_KW)
9117 }
9118 #[inline]
9119 pub fn restrict_token(&self) -> Option<SyntaxToken> {
9120 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
9121 }
9122 #[inline]
9123 pub fn server_token(&self) -> Option<SyntaxToken> {
9124 support::token(&self.syntax, SyntaxKind::SERVER_KW)
9125 }
9126}
9127
9128#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9129pub struct DropStatistics {
9130 pub(crate) syntax: SyntaxNode,
9131}
9132impl DropStatistics {
9133 #[inline]
9134 pub fn if_exists(&self) -> Option<IfExists> {
9135 support::child(&self.syntax)
9136 }
9137 #[inline]
9138 pub fn paths(&self) -> AstChildren<Path> {
9139 support::children(&self.syntax)
9140 }
9141 #[inline]
9142 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
9143 support::token(&self.syntax, SyntaxKind::SEMICOLON)
9144 }
9145 #[inline]
9146 pub fn cascade_token(&self) -> Option<SyntaxToken> {
9147 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
9148 }
9149 #[inline]
9150 pub fn drop_token(&self) -> Option<SyntaxToken> {
9151 support::token(&self.syntax, SyntaxKind::DROP_KW)
9152 }
9153 #[inline]
9154 pub fn restrict_token(&self) -> Option<SyntaxToken> {
9155 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
9156 }
9157 #[inline]
9158 pub fn statistics_token(&self) -> Option<SyntaxToken> {
9159 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
9160 }
9161}
9162
9163#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9164pub struct DropSubscription {
9165 pub(crate) syntax: SyntaxNode,
9166}
9167impl DropSubscription {
9168 #[inline]
9169 pub fn if_exists(&self) -> Option<IfExists> {
9170 support::child(&self.syntax)
9171 }
9172 #[inline]
9173 pub fn name_ref(&self) -> Option<NameRef> {
9174 support::child(&self.syntax)
9175 }
9176 #[inline]
9177 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
9178 support::token(&self.syntax, SyntaxKind::SEMICOLON)
9179 }
9180 #[inline]
9181 pub fn cascade_token(&self) -> Option<SyntaxToken> {
9182 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
9183 }
9184 #[inline]
9185 pub fn drop_token(&self) -> Option<SyntaxToken> {
9186 support::token(&self.syntax, SyntaxKind::DROP_KW)
9187 }
9188 #[inline]
9189 pub fn restrict_token(&self) -> Option<SyntaxToken> {
9190 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
9191 }
9192 #[inline]
9193 pub fn subscription_token(&self) -> Option<SyntaxToken> {
9194 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
9195 }
9196}
9197
9198#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9199pub struct DropTable {
9200 pub(crate) syntax: SyntaxNode,
9201}
9202impl DropTable {
9203 #[inline]
9204 pub fn if_exists(&self) -> Option<IfExists> {
9205 support::child(&self.syntax)
9206 }
9207 #[inline]
9208 pub fn paths(&self) -> AstChildren<Path> {
9209 support::children(&self.syntax)
9210 }
9211 #[inline]
9212 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
9213 support::token(&self.syntax, SyntaxKind::SEMICOLON)
9214 }
9215 #[inline]
9216 pub fn cascade_token(&self) -> Option<SyntaxToken> {
9217 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
9218 }
9219 #[inline]
9220 pub fn drop_token(&self) -> Option<SyntaxToken> {
9221 support::token(&self.syntax, SyntaxKind::DROP_KW)
9222 }
9223 #[inline]
9224 pub fn restrict_token(&self) -> Option<SyntaxToken> {
9225 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
9226 }
9227 #[inline]
9228 pub fn table_token(&self) -> Option<SyntaxToken> {
9229 support::token(&self.syntax, SyntaxKind::TABLE_KW)
9230 }
9231}
9232
9233#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9234pub struct DropTablespace {
9235 pub(crate) syntax: SyntaxNode,
9236}
9237impl DropTablespace {
9238 #[inline]
9239 pub fn if_exists(&self) -> Option<IfExists> {
9240 support::child(&self.syntax)
9241 }
9242 #[inline]
9243 pub fn name_ref(&self) -> Option<NameRef> {
9244 support::child(&self.syntax)
9245 }
9246 #[inline]
9247 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
9248 support::token(&self.syntax, SyntaxKind::SEMICOLON)
9249 }
9250 #[inline]
9251 pub fn drop_token(&self) -> Option<SyntaxToken> {
9252 support::token(&self.syntax, SyntaxKind::DROP_KW)
9253 }
9254 #[inline]
9255 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
9256 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
9257 }
9258}
9259
9260#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9261pub struct DropTextSearchConfig {
9262 pub(crate) syntax: SyntaxNode,
9263}
9264impl DropTextSearchConfig {
9265 #[inline]
9266 pub fn if_exists(&self) -> Option<IfExists> {
9267 support::child(&self.syntax)
9268 }
9269 #[inline]
9270 pub fn path(&self) -> Option<Path> {
9271 support::child(&self.syntax)
9272 }
9273 #[inline]
9274 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
9275 support::token(&self.syntax, SyntaxKind::SEMICOLON)
9276 }
9277 #[inline]
9278 pub fn cascade_token(&self) -> Option<SyntaxToken> {
9279 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
9280 }
9281 #[inline]
9282 pub fn configuration_token(&self) -> Option<SyntaxToken> {
9283 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
9284 }
9285 #[inline]
9286 pub fn drop_token(&self) -> Option<SyntaxToken> {
9287 support::token(&self.syntax, SyntaxKind::DROP_KW)
9288 }
9289 #[inline]
9290 pub fn restrict_token(&self) -> Option<SyntaxToken> {
9291 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
9292 }
9293 #[inline]
9294 pub fn search_token(&self) -> Option<SyntaxToken> {
9295 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
9296 }
9297 #[inline]
9298 pub fn text_token(&self) -> Option<SyntaxToken> {
9299 support::token(&self.syntax, SyntaxKind::TEXT_KW)
9300 }
9301}
9302
9303#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9304pub struct DropTextSearchDict {
9305 pub(crate) syntax: SyntaxNode,
9306}
9307impl DropTextSearchDict {
9308 #[inline]
9309 pub fn if_exists(&self) -> Option<IfExists> {
9310 support::child(&self.syntax)
9311 }
9312 #[inline]
9313 pub fn path(&self) -> Option<Path> {
9314 support::child(&self.syntax)
9315 }
9316 #[inline]
9317 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
9318 support::token(&self.syntax, SyntaxKind::SEMICOLON)
9319 }
9320 #[inline]
9321 pub fn cascade_token(&self) -> Option<SyntaxToken> {
9322 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
9323 }
9324 #[inline]
9325 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
9326 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
9327 }
9328 #[inline]
9329 pub fn drop_token(&self) -> Option<SyntaxToken> {
9330 support::token(&self.syntax, SyntaxKind::DROP_KW)
9331 }
9332 #[inline]
9333 pub fn restrict_token(&self) -> Option<SyntaxToken> {
9334 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
9335 }
9336 #[inline]
9337 pub fn search_token(&self) -> Option<SyntaxToken> {
9338 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
9339 }
9340 #[inline]
9341 pub fn text_token(&self) -> Option<SyntaxToken> {
9342 support::token(&self.syntax, SyntaxKind::TEXT_KW)
9343 }
9344}
9345
9346#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9347pub struct DropTextSearchParser {
9348 pub(crate) syntax: SyntaxNode,
9349}
9350impl DropTextSearchParser {
9351 #[inline]
9352 pub fn if_exists(&self) -> Option<IfExists> {
9353 support::child(&self.syntax)
9354 }
9355 #[inline]
9356 pub fn path(&self) -> Option<Path> {
9357 support::child(&self.syntax)
9358 }
9359 #[inline]
9360 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
9361 support::token(&self.syntax, SyntaxKind::SEMICOLON)
9362 }
9363 #[inline]
9364 pub fn cascade_token(&self) -> Option<SyntaxToken> {
9365 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
9366 }
9367 #[inline]
9368 pub fn drop_token(&self) -> Option<SyntaxToken> {
9369 support::token(&self.syntax, SyntaxKind::DROP_KW)
9370 }
9371 #[inline]
9372 pub fn parser_token(&self) -> Option<SyntaxToken> {
9373 support::token(&self.syntax, SyntaxKind::PARSER_KW)
9374 }
9375 #[inline]
9376 pub fn restrict_token(&self) -> Option<SyntaxToken> {
9377 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
9378 }
9379 #[inline]
9380 pub fn search_token(&self) -> Option<SyntaxToken> {
9381 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
9382 }
9383 #[inline]
9384 pub fn text_token(&self) -> Option<SyntaxToken> {
9385 support::token(&self.syntax, SyntaxKind::TEXT_KW)
9386 }
9387}
9388
9389#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9390pub struct DropTextSearchTemplate {
9391 pub(crate) syntax: SyntaxNode,
9392}
9393impl DropTextSearchTemplate {
9394 #[inline]
9395 pub fn if_exists(&self) -> Option<IfExists> {
9396 support::child(&self.syntax)
9397 }
9398 #[inline]
9399 pub fn path(&self) -> Option<Path> {
9400 support::child(&self.syntax)
9401 }
9402 #[inline]
9403 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
9404 support::token(&self.syntax, SyntaxKind::SEMICOLON)
9405 }
9406 #[inline]
9407 pub fn cascade_token(&self) -> Option<SyntaxToken> {
9408 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
9409 }
9410 #[inline]
9411 pub fn drop_token(&self) -> Option<SyntaxToken> {
9412 support::token(&self.syntax, SyntaxKind::DROP_KW)
9413 }
9414 #[inline]
9415 pub fn restrict_token(&self) -> Option<SyntaxToken> {
9416 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
9417 }
9418 #[inline]
9419 pub fn search_token(&self) -> Option<SyntaxToken> {
9420 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
9421 }
9422 #[inline]
9423 pub fn template_token(&self) -> Option<SyntaxToken> {
9424 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
9425 }
9426 #[inline]
9427 pub fn text_token(&self) -> Option<SyntaxToken> {
9428 support::token(&self.syntax, SyntaxKind::TEXT_KW)
9429 }
9430}
9431
9432#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9433pub struct DropTransform {
9434 pub(crate) syntax: SyntaxNode,
9435}
9436impl DropTransform {
9437 #[inline]
9438 pub fn if_exists(&self) -> Option<IfExists> {
9439 support::child(&self.syntax)
9440 }
9441 #[inline]
9442 pub fn language(&self) -> Option<NameRef> {
9443 support::child(&self.syntax)
9444 }
9445 #[inline]
9446 pub fn ty(&self) -> Option<Type> {
9447 support::child(&self.syntax)
9448 }
9449 #[inline]
9450 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
9451 support::token(&self.syntax, SyntaxKind::SEMICOLON)
9452 }
9453 #[inline]
9454 pub fn cascade_token(&self) -> Option<SyntaxToken> {
9455 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
9456 }
9457 #[inline]
9458 pub fn drop_token(&self) -> Option<SyntaxToken> {
9459 support::token(&self.syntax, SyntaxKind::DROP_KW)
9460 }
9461 #[inline]
9462 pub fn for_token(&self) -> Option<SyntaxToken> {
9463 support::token(&self.syntax, SyntaxKind::FOR_KW)
9464 }
9465 #[inline]
9466 pub fn language_token(&self) -> Option<SyntaxToken> {
9467 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
9468 }
9469 #[inline]
9470 pub fn restrict_token(&self) -> Option<SyntaxToken> {
9471 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
9472 }
9473 #[inline]
9474 pub fn transform_token(&self) -> Option<SyntaxToken> {
9475 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
9476 }
9477}
9478
9479#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9480pub struct DropTrigger {
9481 pub(crate) syntax: SyntaxNode,
9482}
9483impl DropTrigger {
9484 #[inline]
9485 pub fn if_exists(&self) -> Option<IfExists> {
9486 support::child(&self.syntax)
9487 }
9488 #[inline]
9489 pub fn on_table(&self) -> Option<OnTable> {
9490 support::child(&self.syntax)
9491 }
9492 #[inline]
9493 pub fn path(&self) -> Option<Path> {
9494 support::child(&self.syntax)
9495 }
9496 #[inline]
9497 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
9498 support::token(&self.syntax, SyntaxKind::SEMICOLON)
9499 }
9500 #[inline]
9501 pub fn cascade_token(&self) -> Option<SyntaxToken> {
9502 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
9503 }
9504 #[inline]
9505 pub fn drop_token(&self) -> Option<SyntaxToken> {
9506 support::token(&self.syntax, SyntaxKind::DROP_KW)
9507 }
9508 #[inline]
9509 pub fn restrict_token(&self) -> Option<SyntaxToken> {
9510 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
9511 }
9512 #[inline]
9513 pub fn trigger_token(&self) -> Option<SyntaxToken> {
9514 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
9515 }
9516}
9517
9518#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9519pub struct DropType {
9520 pub(crate) syntax: SyntaxNode,
9521}
9522impl DropType {
9523 #[inline]
9524 pub fn if_exists(&self) -> Option<IfExists> {
9525 support::child(&self.syntax)
9526 }
9527 #[inline]
9528 pub fn paths(&self) -> AstChildren<Path> {
9529 support::children(&self.syntax)
9530 }
9531 #[inline]
9532 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
9533 support::token(&self.syntax, SyntaxKind::SEMICOLON)
9534 }
9535 #[inline]
9536 pub fn cascade_token(&self) -> Option<SyntaxToken> {
9537 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
9538 }
9539 #[inline]
9540 pub fn drop_token(&self) -> Option<SyntaxToken> {
9541 support::token(&self.syntax, SyntaxKind::DROP_KW)
9542 }
9543 #[inline]
9544 pub fn restrict_token(&self) -> Option<SyntaxToken> {
9545 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
9546 }
9547 #[inline]
9548 pub fn type_token(&self) -> Option<SyntaxToken> {
9549 support::token(&self.syntax, SyntaxKind::TYPE_KW)
9550 }
9551}
9552
9553#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9554pub struct DropUser {
9555 pub(crate) syntax: SyntaxNode,
9556}
9557impl DropUser {
9558 #[inline]
9559 pub fn if_exists(&self) -> Option<IfExists> {
9560 support::child(&self.syntax)
9561 }
9562 #[inline]
9563 pub fn name_refs(&self) -> AstChildren<NameRef> {
9564 support::children(&self.syntax)
9565 }
9566 #[inline]
9567 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
9568 support::token(&self.syntax, SyntaxKind::SEMICOLON)
9569 }
9570 #[inline]
9571 pub fn drop_token(&self) -> Option<SyntaxToken> {
9572 support::token(&self.syntax, SyntaxKind::DROP_KW)
9573 }
9574 #[inline]
9575 pub fn user_token(&self) -> Option<SyntaxToken> {
9576 support::token(&self.syntax, SyntaxKind::USER_KW)
9577 }
9578}
9579
9580#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9581pub struct DropUserMapping {
9582 pub(crate) syntax: SyntaxNode,
9583}
9584impl DropUserMapping {
9585 #[inline]
9586 pub fn if_exists(&self) -> Option<IfExists> {
9587 support::child(&self.syntax)
9588 }
9589 #[inline]
9590 pub fn role_ref(&self) -> Option<RoleRef> {
9591 support::child(&self.syntax)
9592 }
9593 #[inline]
9594 pub fn server_name(&self) -> Option<ServerName> {
9595 support::child(&self.syntax)
9596 }
9597 #[inline]
9598 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
9599 support::token(&self.syntax, SyntaxKind::SEMICOLON)
9600 }
9601 #[inline]
9602 pub fn drop_token(&self) -> Option<SyntaxToken> {
9603 support::token(&self.syntax, SyntaxKind::DROP_KW)
9604 }
9605 #[inline]
9606 pub fn for_token(&self) -> Option<SyntaxToken> {
9607 support::token(&self.syntax, SyntaxKind::FOR_KW)
9608 }
9609 #[inline]
9610 pub fn mapping_token(&self) -> Option<SyntaxToken> {
9611 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
9612 }
9613 #[inline]
9614 pub fn user_token(&self) -> Option<SyntaxToken> {
9615 support::token(&self.syntax, SyntaxKind::USER_KW)
9616 }
9617}
9618
9619#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9620pub struct DropVertexEdgeLabel {
9621 pub(crate) syntax: SyntaxNode,
9622}
9623impl DropVertexEdgeLabel {
9624 #[inline]
9625 pub fn name_ref(&self) -> Option<NameRef> {
9626 support::child(&self.syntax)
9627 }
9628 #[inline]
9629 pub fn alter_token(&self) -> Option<SyntaxToken> {
9630 support::token(&self.syntax, SyntaxKind::ALTER_KW)
9631 }
9632 #[inline]
9633 pub fn cascade_token(&self) -> Option<SyntaxToken> {
9634 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
9635 }
9636 #[inline]
9637 pub fn drop_token(&self) -> Option<SyntaxToken> {
9638 support::token(&self.syntax, SyntaxKind::DROP_KW)
9639 }
9640 #[inline]
9641 pub fn edge_token(&self) -> Option<SyntaxToken> {
9642 support::token(&self.syntax, SyntaxKind::EDGE_KW)
9643 }
9644 #[inline]
9645 pub fn label_token(&self) -> Option<SyntaxToken> {
9646 support::token(&self.syntax, SyntaxKind::LABEL_KW)
9647 }
9648 #[inline]
9649 pub fn node_token(&self) -> Option<SyntaxToken> {
9650 support::token(&self.syntax, SyntaxKind::NODE_KW)
9651 }
9652 #[inline]
9653 pub fn relationship_token(&self) -> Option<SyntaxToken> {
9654 support::token(&self.syntax, SyntaxKind::RELATIONSHIP_KW)
9655 }
9656 #[inline]
9657 pub fn restrict_token(&self) -> Option<SyntaxToken> {
9658 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
9659 }
9660 #[inline]
9661 pub fn table_token(&self) -> Option<SyntaxToken> {
9662 support::token(&self.syntax, SyntaxKind::TABLE_KW)
9663 }
9664 #[inline]
9665 pub fn vertex_token(&self) -> Option<SyntaxToken> {
9666 support::token(&self.syntax, SyntaxKind::VERTEX_KW)
9667 }
9668}
9669
9670#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9671pub struct DropVertexEdgeLabelProperties {
9672 pub(crate) syntax: SyntaxNode,
9673}
9674impl DropVertexEdgeLabelProperties {
9675 #[inline]
9676 pub fn name_ref(&self) -> Option<NameRef> {
9677 support::child(&self.syntax)
9678 }
9679 #[inline]
9680 pub fn names(&self) -> AstChildren<Name> {
9681 support::children(&self.syntax)
9682 }
9683 #[inline]
9684 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9685 support::token(&self.syntax, SyntaxKind::L_PAREN)
9686 }
9687 #[inline]
9688 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9689 support::token(&self.syntax, SyntaxKind::R_PAREN)
9690 }
9691 #[inline]
9692 pub fn alter_token(&self) -> Option<SyntaxToken> {
9693 support::token(&self.syntax, SyntaxKind::ALTER_KW)
9694 }
9695 #[inline]
9696 pub fn cascade_token(&self) -> Option<SyntaxToken> {
9697 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
9698 }
9699 #[inline]
9700 pub fn drop_token(&self) -> Option<SyntaxToken> {
9701 support::token(&self.syntax, SyntaxKind::DROP_KW)
9702 }
9703 #[inline]
9704 pub fn edge_token(&self) -> Option<SyntaxToken> {
9705 support::token(&self.syntax, SyntaxKind::EDGE_KW)
9706 }
9707 #[inline]
9708 pub fn label_token(&self) -> Option<SyntaxToken> {
9709 support::token(&self.syntax, SyntaxKind::LABEL_KW)
9710 }
9711 #[inline]
9712 pub fn node_token(&self) -> Option<SyntaxToken> {
9713 support::token(&self.syntax, SyntaxKind::NODE_KW)
9714 }
9715 #[inline]
9716 pub fn properties_token(&self) -> Option<SyntaxToken> {
9717 support::token(&self.syntax, SyntaxKind::PROPERTIES_KW)
9718 }
9719 #[inline]
9720 pub fn relationship_token(&self) -> Option<SyntaxToken> {
9721 support::token(&self.syntax, SyntaxKind::RELATIONSHIP_KW)
9722 }
9723 #[inline]
9724 pub fn restrict_token(&self) -> Option<SyntaxToken> {
9725 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
9726 }
9727 #[inline]
9728 pub fn table_token(&self) -> Option<SyntaxToken> {
9729 support::token(&self.syntax, SyntaxKind::TABLE_KW)
9730 }
9731 #[inline]
9732 pub fn vertex_token(&self) -> Option<SyntaxToken> {
9733 support::token(&self.syntax, SyntaxKind::VERTEX_KW)
9734 }
9735}
9736
9737#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9738pub struct DropVertexTables {
9739 pub(crate) syntax: SyntaxNode,
9740}
9741impl DropVertexTables {
9742 #[inline]
9743 pub fn names(&self) -> AstChildren<Name> {
9744 support::children(&self.syntax)
9745 }
9746 #[inline]
9747 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9748 support::token(&self.syntax, SyntaxKind::L_PAREN)
9749 }
9750 #[inline]
9751 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9752 support::token(&self.syntax, SyntaxKind::R_PAREN)
9753 }
9754 #[inline]
9755 pub fn cascade_token(&self) -> Option<SyntaxToken> {
9756 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
9757 }
9758 #[inline]
9759 pub fn drop_token(&self) -> Option<SyntaxToken> {
9760 support::token(&self.syntax, SyntaxKind::DROP_KW)
9761 }
9762 #[inline]
9763 pub fn node_token(&self) -> Option<SyntaxToken> {
9764 support::token(&self.syntax, SyntaxKind::NODE_KW)
9765 }
9766 #[inline]
9767 pub fn restrict_token(&self) -> Option<SyntaxToken> {
9768 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
9769 }
9770 #[inline]
9771 pub fn tables_token(&self) -> Option<SyntaxToken> {
9772 support::token(&self.syntax, SyntaxKind::TABLES_KW)
9773 }
9774 #[inline]
9775 pub fn vertex_token(&self) -> Option<SyntaxToken> {
9776 support::token(&self.syntax, SyntaxKind::VERTEX_KW)
9777 }
9778}
9779
9780#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9781pub struct DropView {
9782 pub(crate) syntax: SyntaxNode,
9783}
9784impl DropView {
9785 #[inline]
9786 pub fn if_exists(&self) -> Option<IfExists> {
9787 support::child(&self.syntax)
9788 }
9789 #[inline]
9790 pub fn paths(&self) -> AstChildren<Path> {
9791 support::children(&self.syntax)
9792 }
9793 #[inline]
9794 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
9795 support::token(&self.syntax, SyntaxKind::SEMICOLON)
9796 }
9797 #[inline]
9798 pub fn cascade_token(&self) -> Option<SyntaxToken> {
9799 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
9800 }
9801 #[inline]
9802 pub fn drop_token(&self) -> Option<SyntaxToken> {
9803 support::token(&self.syntax, SyntaxKind::DROP_KW)
9804 }
9805 #[inline]
9806 pub fn restrict_token(&self) -> Option<SyntaxToken> {
9807 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
9808 }
9809 #[inline]
9810 pub fn view_token(&self) -> Option<SyntaxToken> {
9811 support::token(&self.syntax, SyntaxKind::VIEW_KW)
9812 }
9813}
9814
9815#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9816pub struct EdgeAny {
9817 pub(crate) syntax: SyntaxNode,
9818}
9819impl EdgeAny {
9820 #[inline]
9821 pub fn is_label(&self) -> Option<IsLabel> {
9822 support::child(&self.syntax)
9823 }
9824 #[inline]
9825 pub fn name(&self) -> Option<Name> {
9826 support::child(&self.syntax)
9827 }
9828 #[inline]
9829 pub fn where_clause(&self) -> Option<WhereClause> {
9830 support::child(&self.syntax)
9831 }
9832 #[inline]
9833 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
9834 support::token(&self.syntax, SyntaxKind::L_BRACK)
9835 }
9836 #[inline]
9837 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
9838 support::token(&self.syntax, SyntaxKind::R_BRACK)
9839 }
9840 #[inline]
9841 pub fn minus_token(&self) -> Option<SyntaxToken> {
9842 support::token(&self.syntax, SyntaxKind::MINUS)
9843 }
9844}
9845
9846#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9847pub struct EdgeLeft {
9848 pub(crate) syntax: SyntaxNode,
9849}
9850impl EdgeLeft {
9851 #[inline]
9852 pub fn is_label(&self) -> Option<IsLabel> {
9853 support::child(&self.syntax)
9854 }
9855 #[inline]
9856 pub fn name(&self) -> Option<Name> {
9857 support::child(&self.syntax)
9858 }
9859 #[inline]
9860 pub fn where_clause(&self) -> Option<WhereClause> {
9861 support::child(&self.syntax)
9862 }
9863 #[inline]
9864 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
9865 support::token(&self.syntax, SyntaxKind::L_BRACK)
9866 }
9867 #[inline]
9868 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
9869 support::token(&self.syntax, SyntaxKind::R_BRACK)
9870 }
9871 #[inline]
9872 pub fn minus_token(&self) -> Option<SyntaxToken> {
9873 support::token(&self.syntax, SyntaxKind::MINUS)
9874 }
9875 #[inline]
9876 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
9877 support::token(&self.syntax, SyntaxKind::L_ANGLE)
9878 }
9879}
9880
9881#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9882pub struct EdgeRight {
9883 pub(crate) syntax: SyntaxNode,
9884}
9885impl EdgeRight {
9886 #[inline]
9887 pub fn is_label(&self) -> Option<IsLabel> {
9888 support::child(&self.syntax)
9889 }
9890 #[inline]
9891 pub fn name(&self) -> Option<Name> {
9892 support::child(&self.syntax)
9893 }
9894 #[inline]
9895 pub fn where_clause(&self) -> Option<WhereClause> {
9896 support::child(&self.syntax)
9897 }
9898 #[inline]
9899 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
9900 support::token(&self.syntax, SyntaxKind::L_BRACK)
9901 }
9902 #[inline]
9903 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
9904 support::token(&self.syntax, SyntaxKind::R_BRACK)
9905 }
9906 #[inline]
9907 pub fn minus_token(&self) -> Option<SyntaxToken> {
9908 support::token(&self.syntax, SyntaxKind::MINUS)
9909 }
9910 #[inline]
9911 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
9912 support::token(&self.syntax, SyntaxKind::R_ANGLE)
9913 }
9914}
9915
9916#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9917pub struct EdgeTableDef {
9918 pub(crate) syntax: SyntaxNode,
9919}
9920impl EdgeTableDef {
9921 #[inline]
9922 pub fn column_list(&self) -> Option<ColumnList> {
9923 support::child(&self.syntax)
9924 }
9925 #[inline]
9926 pub fn dest_vertex_table(&self) -> Option<DestVertexTable> {
9927 support::child(&self.syntax)
9928 }
9929 #[inline]
9930 pub fn element_table_label_and_properties(&self) -> Option<ElementTableLabelAndProperties> {
9931 support::child(&self.syntax)
9932 }
9933 #[inline]
9934 pub fn name(&self) -> Option<Name> {
9935 support::child(&self.syntax)
9936 }
9937 #[inline]
9938 pub fn path(&self) -> Option<Path> {
9939 support::child(&self.syntax)
9940 }
9941 #[inline]
9942 pub fn source_vertex_table(&self) -> Option<SourceVertexTable> {
9943 support::child(&self.syntax)
9944 }
9945 #[inline]
9946 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9947 support::token(&self.syntax, SyntaxKind::L_PAREN)
9948 }
9949 #[inline]
9950 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9951 support::token(&self.syntax, SyntaxKind::R_PAREN)
9952 }
9953 #[inline]
9954 pub fn as_token(&self) -> Option<SyntaxToken> {
9955 support::token(&self.syntax, SyntaxKind::AS_KW)
9956 }
9957 #[inline]
9958 pub fn key_token(&self) -> Option<SyntaxToken> {
9959 support::token(&self.syntax, SyntaxKind::KEY_KW)
9960 }
9961}
9962
9963#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9964pub struct EdgeTables {
9965 pub(crate) syntax: SyntaxNode,
9966}
9967impl EdgeTables {
9968 #[inline]
9969 pub fn edge_table_defs(&self) -> AstChildren<EdgeTableDef> {
9970 support::children(&self.syntax)
9971 }
9972 #[inline]
9973 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9974 support::token(&self.syntax, SyntaxKind::L_PAREN)
9975 }
9976 #[inline]
9977 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9978 support::token(&self.syntax, SyntaxKind::R_PAREN)
9979 }
9980 #[inline]
9981 pub fn edge_token(&self) -> Option<SyntaxToken> {
9982 support::token(&self.syntax, SyntaxKind::EDGE_KW)
9983 }
9984 #[inline]
9985 pub fn relationship_token(&self) -> Option<SyntaxToken> {
9986 support::token(&self.syntax, SyntaxKind::RELATIONSHIP_KW)
9987 }
9988 #[inline]
9989 pub fn tables_token(&self) -> Option<SyntaxToken> {
9990 support::token(&self.syntax, SyntaxKind::TABLES_KW)
9991 }
9992}
9993
9994#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9995pub struct ElseClause {
9996 pub(crate) syntax: SyntaxNode,
9997}
9998impl ElseClause {
9999 #[inline]
10000 pub fn expr(&self) -> Option<Expr> {
10001 support::child(&self.syntax)
10002 }
10003 #[inline]
10004 pub fn else_token(&self) -> Option<SyntaxToken> {
10005 support::token(&self.syntax, SyntaxKind::ELSE_KW)
10006 }
10007}
10008
10009#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10010pub struct EmptyStmt {
10011 pub(crate) syntax: SyntaxNode,
10012}
10013impl EmptyStmt {
10014 #[inline]
10015 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
10016 support::token(&self.syntax, SyntaxKind::SEMICOLON)
10017 }
10018}
10019
10020#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10021pub struct EnableAlwaysRule {
10022 pub(crate) syntax: SyntaxNode,
10023}
10024impl EnableAlwaysRule {
10025 #[inline]
10026 pub fn name_ref(&self) -> Option<NameRef> {
10027 support::child(&self.syntax)
10028 }
10029 #[inline]
10030 pub fn always_token(&self) -> Option<SyntaxToken> {
10031 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
10032 }
10033 #[inline]
10034 pub fn enable_token(&self) -> Option<SyntaxToken> {
10035 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
10036 }
10037 #[inline]
10038 pub fn rule_token(&self) -> Option<SyntaxToken> {
10039 support::token(&self.syntax, SyntaxKind::RULE_KW)
10040 }
10041}
10042
10043#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10044pub struct EnableAlwaysTrigger {
10045 pub(crate) syntax: SyntaxNode,
10046}
10047impl EnableAlwaysTrigger {
10048 #[inline]
10049 pub fn name_ref(&self) -> Option<NameRef> {
10050 support::child(&self.syntax)
10051 }
10052 #[inline]
10053 pub fn always_token(&self) -> Option<SyntaxToken> {
10054 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
10055 }
10056 #[inline]
10057 pub fn enable_token(&self) -> Option<SyntaxToken> {
10058 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
10059 }
10060 #[inline]
10061 pub fn trigger_token(&self) -> Option<SyntaxToken> {
10062 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
10063 }
10064}
10065
10066#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10067pub struct EnableReplicaRule {
10068 pub(crate) syntax: SyntaxNode,
10069}
10070impl EnableReplicaRule {
10071 #[inline]
10072 pub fn name_ref(&self) -> Option<NameRef> {
10073 support::child(&self.syntax)
10074 }
10075 #[inline]
10076 pub fn enable_token(&self) -> Option<SyntaxToken> {
10077 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
10078 }
10079 #[inline]
10080 pub fn replica_token(&self) -> Option<SyntaxToken> {
10081 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
10082 }
10083 #[inline]
10084 pub fn rule_token(&self) -> Option<SyntaxToken> {
10085 support::token(&self.syntax, SyntaxKind::RULE_KW)
10086 }
10087}
10088
10089#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10090pub struct EnableReplicaTrigger {
10091 pub(crate) syntax: SyntaxNode,
10092}
10093impl EnableReplicaTrigger {
10094 #[inline]
10095 pub fn name_ref(&self) -> Option<NameRef> {
10096 support::child(&self.syntax)
10097 }
10098 #[inline]
10099 pub fn enable_token(&self) -> Option<SyntaxToken> {
10100 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
10101 }
10102 #[inline]
10103 pub fn replica_token(&self) -> Option<SyntaxToken> {
10104 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
10105 }
10106 #[inline]
10107 pub fn trigger_token(&self) -> Option<SyntaxToken> {
10108 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
10109 }
10110}
10111
10112#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10113pub struct EnableRls {
10114 pub(crate) syntax: SyntaxNode,
10115}
10116impl EnableRls {
10117 #[inline]
10118 pub fn enable_token(&self) -> Option<SyntaxToken> {
10119 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
10120 }
10121 #[inline]
10122 pub fn level_token(&self) -> Option<SyntaxToken> {
10123 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
10124 }
10125 #[inline]
10126 pub fn row_token(&self) -> Option<SyntaxToken> {
10127 support::token(&self.syntax, SyntaxKind::ROW_KW)
10128 }
10129 #[inline]
10130 pub fn security_token(&self) -> Option<SyntaxToken> {
10131 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
10132 }
10133}
10134
10135#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10136pub struct EnableRule {
10137 pub(crate) syntax: SyntaxNode,
10138}
10139impl EnableRule {
10140 #[inline]
10141 pub fn name_ref(&self) -> Option<NameRef> {
10142 support::child(&self.syntax)
10143 }
10144 #[inline]
10145 pub fn enable_token(&self) -> Option<SyntaxToken> {
10146 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
10147 }
10148 #[inline]
10149 pub fn rule_token(&self) -> Option<SyntaxToken> {
10150 support::token(&self.syntax, SyntaxKind::RULE_KW)
10151 }
10152}
10153
10154#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10155pub struct EnableTrigger {
10156 pub(crate) syntax: SyntaxNode,
10157}
10158impl EnableTrigger {
10159 #[inline]
10160 pub fn name_ref(&self) -> Option<NameRef> {
10161 support::child(&self.syntax)
10162 }
10163 #[inline]
10164 pub fn all_token(&self) -> Option<SyntaxToken> {
10165 support::token(&self.syntax, SyntaxKind::ALL_KW)
10166 }
10167 #[inline]
10168 pub fn enable_token(&self) -> Option<SyntaxToken> {
10169 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
10170 }
10171 #[inline]
10172 pub fn trigger_token(&self) -> Option<SyntaxToken> {
10173 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
10174 }
10175 #[inline]
10176 pub fn user_token(&self) -> Option<SyntaxToken> {
10177 support::token(&self.syntax, SyntaxKind::USER_KW)
10178 }
10179}
10180
10181#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10182pub struct Enforced {
10183 pub(crate) syntax: SyntaxNode,
10184}
10185impl Enforced {
10186 #[inline]
10187 pub fn enforced_token(&self) -> Option<SyntaxToken> {
10188 support::token(&self.syntax, SyntaxKind::ENFORCED_KW)
10189 }
10190}
10191
10192#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10193pub struct EventTriggerWhen {
10194 pub(crate) syntax: SyntaxNode,
10195}
10196impl EventTriggerWhen {
10197 #[inline]
10198 pub fn literals(&self) -> AstChildren<Literal> {
10199 support::children(&self.syntax)
10200 }
10201 #[inline]
10202 pub fn name_ref(&self) -> Option<NameRef> {
10203 support::child(&self.syntax)
10204 }
10205 #[inline]
10206 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
10207 support::token(&self.syntax, SyntaxKind::L_PAREN)
10208 }
10209 #[inline]
10210 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
10211 support::token(&self.syntax, SyntaxKind::R_PAREN)
10212 }
10213 #[inline]
10214 pub fn in_token(&self) -> Option<SyntaxToken> {
10215 support::token(&self.syntax, SyntaxKind::IN_KW)
10216 }
10217}
10218
10219#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10220pub struct EventTriggerWhenClause {
10221 pub(crate) syntax: SyntaxNode,
10222}
10223impl EventTriggerWhenClause {
10224 #[inline]
10225 pub fn event_trigger_whens(&self) -> AstChildren<EventTriggerWhen> {
10226 support::children(&self.syntax)
10227 }
10228 #[inline]
10229 pub fn when_token(&self) -> Option<SyntaxToken> {
10230 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10231 }
10232}
10233
10234#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10235pub struct ExceptTableClause {
10236 pub(crate) syntax: SyntaxNode,
10237}
10238impl ExceptTableClause {
10239 #[inline]
10240 pub fn except_table_names(&self) -> AstChildren<ExceptTableName> {
10241 support::children(&self.syntax)
10242 }
10243 #[inline]
10244 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
10245 support::token(&self.syntax, SyntaxKind::L_PAREN)
10246 }
10247 #[inline]
10248 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
10249 support::token(&self.syntax, SyntaxKind::R_PAREN)
10250 }
10251 #[inline]
10252 pub fn except_token(&self) -> Option<SyntaxToken> {
10253 support::token(&self.syntax, SyntaxKind::EXCEPT_KW)
10254 }
10255 #[inline]
10256 pub fn table_token(&self) -> Option<SyntaxToken> {
10257 support::token(&self.syntax, SyntaxKind::TABLE_KW)
10258 }
10259}
10260
10261#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10262pub struct ExceptTableName {
10263 pub(crate) syntax: SyntaxNode,
10264}
10265impl ExceptTableName {
10266 #[inline]
10267 pub fn relation_name(&self) -> Option<RelationName> {
10268 support::child(&self.syntax)
10269 }
10270 #[inline]
10271 pub fn table_token(&self) -> Option<SyntaxToken> {
10272 support::token(&self.syntax, SyntaxKind::TABLE_KW)
10273 }
10274}
10275
10276#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10277pub struct ExceptTables {
10278 pub(crate) syntax: SyntaxNode,
10279}
10280impl ExceptTables {
10281 #[inline]
10282 pub fn name_refs(&self) -> AstChildren<NameRef> {
10283 support::children(&self.syntax)
10284 }
10285 #[inline]
10286 pub fn except_token(&self) -> Option<SyntaxToken> {
10287 support::token(&self.syntax, SyntaxKind::EXCEPT_KW)
10288 }
10289}
10290
10291#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10292pub struct ExcludeConstraint {
10293 pub(crate) syntax: SyntaxNode,
10294}
10295impl ExcludeConstraint {
10296 #[inline]
10297 pub fn constraint_exclusion_list(&self) -> Option<ConstraintExclusionList> {
10298 support::child(&self.syntax)
10299 }
10300 #[inline]
10301 pub fn constraint_include_clause(&self) -> Option<ConstraintIncludeClause> {
10302 support::child(&self.syntax)
10303 }
10304 #[inline]
10305 pub fn constraint_index_method(&self) -> Option<ConstraintIndexMethod> {
10306 support::child(&self.syntax)
10307 }
10308 #[inline]
10309 pub fn constraint_index_tablespace(&self) -> Option<ConstraintIndexTablespace> {
10310 support::child(&self.syntax)
10311 }
10312 #[inline]
10313 pub fn constraint_name(&self) -> Option<ConstraintName> {
10314 support::child(&self.syntax)
10315 }
10316 #[inline]
10317 pub fn where_condition_clause(&self) -> Option<WhereConditionClause> {
10318 support::child(&self.syntax)
10319 }
10320 #[inline]
10321 pub fn with_params(&self) -> Option<WithParams> {
10322 support::child(&self.syntax)
10323 }
10324 #[inline]
10325 pub fn exclude_token(&self) -> Option<SyntaxToken> {
10326 support::token(&self.syntax, SyntaxKind::EXCLUDE_KW)
10327 }
10328}
10329
10330#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10331pub struct Exclusive {
10332 pub(crate) syntax: SyntaxNode,
10333}
10334impl Exclusive {
10335 #[inline]
10336 pub fn exclusive_token(&self) -> Option<SyntaxToken> {
10337 support::token(&self.syntax, SyntaxKind::EXCLUSIVE_KW)
10338 }
10339}
10340
10341#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10342pub struct Execute {
10343 pub(crate) syntax: SyntaxNode,
10344}
10345impl Execute {
10346 #[inline]
10347 pub fn arg_list(&self) -> Option<ArgList> {
10348 support::child(&self.syntax)
10349 }
10350 #[inline]
10351 pub fn name_ref(&self) -> Option<NameRef> {
10352 support::child(&self.syntax)
10353 }
10354 #[inline]
10355 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
10356 support::token(&self.syntax, SyntaxKind::SEMICOLON)
10357 }
10358 #[inline]
10359 pub fn execute_token(&self) -> Option<SyntaxToken> {
10360 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
10361 }
10362}
10363
10364#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10365pub struct ExistsFn {
10366 pub(crate) syntax: SyntaxNode,
10367}
10368impl ExistsFn {
10369 #[inline]
10370 pub fn select_variant(&self) -> Option<SelectVariant> {
10371 support::child(&self.syntax)
10372 }
10373 #[inline]
10374 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
10375 support::token(&self.syntax, SyntaxKind::L_PAREN)
10376 }
10377 #[inline]
10378 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
10379 support::token(&self.syntax, SyntaxKind::R_PAREN)
10380 }
10381 #[inline]
10382 pub fn exists_token(&self) -> Option<SyntaxToken> {
10383 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
10384 }
10385}
10386
10387#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10388pub struct Explain {
10389 pub(crate) syntax: SyntaxNode,
10390}
10391impl Explain {
10392 #[inline]
10393 pub fn explain_option_list(&self) -> Option<ExplainOptionList> {
10394 support::child(&self.syntax)
10395 }
10396 #[inline]
10397 pub fn explain_stmt(&self) -> Option<ExplainStmt> {
10398 support::child(&self.syntax)
10399 }
10400 #[inline]
10401 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
10402 support::token(&self.syntax, SyntaxKind::SEMICOLON)
10403 }
10404 #[inline]
10405 pub fn analyse_token(&self) -> Option<SyntaxToken> {
10406 support::token(&self.syntax, SyntaxKind::ANALYSE_KW)
10407 }
10408 #[inline]
10409 pub fn analyze_token(&self) -> Option<SyntaxToken> {
10410 support::token(&self.syntax, SyntaxKind::ANALYZE_KW)
10411 }
10412 #[inline]
10413 pub fn explain_token(&self) -> Option<SyntaxToken> {
10414 support::token(&self.syntax, SyntaxKind::EXPLAIN_KW)
10415 }
10416 #[inline]
10417 pub fn verbose_token(&self) -> Option<SyntaxToken> {
10418 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
10419 }
10420}
10421
10422#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10423pub struct ExplainOption {
10424 pub(crate) syntax: SyntaxNode,
10425}
10426impl ExplainOption {
10427 #[inline]
10428 pub fn explain_option_value(&self) -> Option<ExplainOptionValue> {
10429 support::child(&self.syntax)
10430 }
10431 #[inline]
10432 pub fn name(&self) -> Option<Name> {
10433 support::child(&self.syntax)
10434 }
10435}
10436
10437#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10438pub struct ExplainOptionList {
10439 pub(crate) syntax: SyntaxNode,
10440}
10441impl ExplainOptionList {
10442 #[inline]
10443 pub fn explain_options(&self) -> AstChildren<ExplainOption> {
10444 support::children(&self.syntax)
10445 }
10446 #[inline]
10447 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
10448 support::token(&self.syntax, SyntaxKind::L_PAREN)
10449 }
10450 #[inline]
10451 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
10452 support::token(&self.syntax, SyntaxKind::R_PAREN)
10453 }
10454}
10455
10456#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10457pub struct ExplainOptionValue {
10458 pub(crate) syntax: SyntaxNode,
10459}
10460impl ExplainOptionValue {
10461 #[inline]
10462 pub fn literal(&self) -> Option<Literal> {
10463 support::child(&self.syntax)
10464 }
10465 #[inline]
10466 pub fn binary_token(&self) -> Option<SyntaxToken> {
10467 support::token(&self.syntax, SyntaxKind::BINARY_KW)
10468 }
10469 #[inline]
10470 pub fn ident_token(&self) -> Option<SyntaxToken> {
10471 support::token(&self.syntax, SyntaxKind::IDENT)
10472 }
10473 #[inline]
10474 pub fn json_token(&self) -> Option<SyntaxToken> {
10475 support::token(&self.syntax, SyntaxKind::JSON_KW)
10476 }
10477 #[inline]
10478 pub fn none_token(&self) -> Option<SyntaxToken> {
10479 support::token(&self.syntax, SyntaxKind::NONE_KW)
10480 }
10481 #[inline]
10482 pub fn text_token(&self) -> Option<SyntaxToken> {
10483 support::token(&self.syntax, SyntaxKind::TEXT_KW)
10484 }
10485 #[inline]
10486 pub fn xml_token(&self) -> Option<SyntaxToken> {
10487 support::token(&self.syntax, SyntaxKind::XML_KW)
10488 }
10489}
10490
10491#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10492pub struct ExprAsName {
10493 pub(crate) syntax: SyntaxNode,
10494}
10495impl ExprAsName {
10496 #[inline]
10497 pub fn as_name(&self) -> Option<AsName> {
10498 support::child(&self.syntax)
10499 }
10500 #[inline]
10501 pub fn expr(&self) -> Option<Expr> {
10502 support::child(&self.syntax)
10503 }
10504}
10505
10506#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10507pub struct ExprAsNameList {
10508 pub(crate) syntax: SyntaxNode,
10509}
10510impl ExprAsNameList {
10511 #[inline]
10512 pub fn expr_as_names(&self) -> AstChildren<ExprAsName> {
10513 support::children(&self.syntax)
10514 }
10515}
10516
10517#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10518pub struct ExprFollowing {
10519 pub(crate) syntax: SyntaxNode,
10520}
10521impl ExprFollowing {
10522 #[inline]
10523 pub fn expr(&self) -> Option<Expr> {
10524 support::child(&self.syntax)
10525 }
10526 #[inline]
10527 pub fn following_token(&self) -> Option<SyntaxToken> {
10528 support::token(&self.syntax, SyntaxKind::FOLLOWING_KW)
10529 }
10530}
10531
10532#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10533pub struct ExprPreceding {
10534 pub(crate) syntax: SyntaxNode,
10535}
10536impl ExprPreceding {
10537 #[inline]
10538 pub fn expr(&self) -> Option<Expr> {
10539 support::child(&self.syntax)
10540 }
10541 #[inline]
10542 pub fn preceding_token(&self) -> Option<SyntaxToken> {
10543 support::token(&self.syntax, SyntaxKind::PRECEDING_KW)
10544 }
10545}
10546
10547#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10548pub struct ExprType {
10549 pub(crate) syntax: SyntaxNode,
10550}
10551impl ExprType {
10552 #[inline]
10553 pub fn expr(&self) -> Option<Expr> {
10554 support::child(&self.syntax)
10555 }
10556}
10557
10558#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10559pub struct ExtractFn {
10560 pub(crate) syntax: SyntaxNode,
10561}
10562impl ExtractFn {
10563 #[inline]
10564 pub fn expr(&self) -> Option<Expr> {
10565 support::child(&self.syntax)
10566 }
10567 #[inline]
10568 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
10569 support::token(&self.syntax, SyntaxKind::L_PAREN)
10570 }
10571 #[inline]
10572 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
10573 support::token(&self.syntax, SyntaxKind::R_PAREN)
10574 }
10575 #[inline]
10576 pub fn day_token(&self) -> Option<SyntaxToken> {
10577 support::token(&self.syntax, SyntaxKind::DAY_KW)
10578 }
10579 #[inline]
10580 pub fn extract_token(&self) -> Option<SyntaxToken> {
10581 support::token(&self.syntax, SyntaxKind::EXTRACT_KW)
10582 }
10583 #[inline]
10584 pub fn from_token(&self) -> Option<SyntaxToken> {
10585 support::token(&self.syntax, SyntaxKind::FROM_KW)
10586 }
10587 #[inline]
10588 pub fn hour_token(&self) -> Option<SyntaxToken> {
10589 support::token(&self.syntax, SyntaxKind::HOUR_KW)
10590 }
10591 #[inline]
10592 pub fn ident_token(&self) -> Option<SyntaxToken> {
10593 support::token(&self.syntax, SyntaxKind::IDENT)
10594 }
10595 #[inline]
10596 pub fn minute_token(&self) -> Option<SyntaxToken> {
10597 support::token(&self.syntax, SyntaxKind::MINUTE_KW)
10598 }
10599 #[inline]
10600 pub fn month_token(&self) -> Option<SyntaxToken> {
10601 support::token(&self.syntax, SyntaxKind::MONTH_KW)
10602 }
10603 #[inline]
10604 pub fn second_token(&self) -> Option<SyntaxToken> {
10605 support::token(&self.syntax, SyntaxKind::SECOND_KW)
10606 }
10607 #[inline]
10608 pub fn string_token(&self) -> Option<SyntaxToken> {
10609 support::token(&self.syntax, SyntaxKind::STRING_KW)
10610 }
10611 #[inline]
10612 pub fn year_token(&self) -> Option<SyntaxToken> {
10613 support::token(&self.syntax, SyntaxKind::YEAR_KW)
10614 }
10615}
10616
10617#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10618pub struct FatArrow {
10619 pub(crate) syntax: SyntaxNode,
10620}
10621impl FatArrow {
10622 #[inline]
10623 pub fn eq_token(&self) -> Option<SyntaxToken> {
10624 support::token(&self.syntax, SyntaxKind::EQ)
10625 }
10626 #[inline]
10627 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
10628 support::token(&self.syntax, SyntaxKind::R_ANGLE)
10629 }
10630}
10631
10632#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10633pub struct FdwOption {
10634 pub(crate) syntax: SyntaxNode,
10635}
10636impl FdwOption {
10637 #[inline]
10638 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
10639 support::child(&self.syntax)
10640 }
10641 #[inline]
10642 pub fn path(&self) -> Option<Path> {
10643 support::child(&self.syntax)
10644 }
10645 #[inline]
10646 pub fn connection_token(&self) -> Option<SyntaxToken> {
10647 support::token(&self.syntax, SyntaxKind::CONNECTION_KW)
10648 }
10649 #[inline]
10650 pub fn handler_token(&self) -> Option<SyntaxToken> {
10651 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
10652 }
10653 #[inline]
10654 pub fn no_token(&self) -> Option<SyntaxToken> {
10655 support::token(&self.syntax, SyntaxKind::NO_KW)
10656 }
10657 #[inline]
10658 pub fn validator_token(&self) -> Option<SyntaxToken> {
10659 support::token(&self.syntax, SyntaxKind::VALIDATOR_KW)
10660 }
10661}
10662
10663#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10664pub struct FdwOptionList {
10665 pub(crate) syntax: SyntaxNode,
10666}
10667impl FdwOptionList {
10668 #[inline]
10669 pub fn fdw_options(&self) -> AstChildren<FdwOption> {
10670 support::children(&self.syntax)
10671 }
10672}
10673
10674#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10675pub struct Fetch {
10676 pub(crate) syntax: SyntaxNode,
10677}
10678impl Fetch {
10679 #[inline]
10680 pub fn absolute(&self) -> Option<Absolute> {
10681 support::child(&self.syntax)
10682 }
10683 #[inline]
10684 pub fn all(&self) -> Option<All> {
10685 support::child(&self.syntax)
10686 }
10687 #[inline]
10688 pub fn backward(&self) -> Option<Backward> {
10689 support::child(&self.syntax)
10690 }
10691 #[inline]
10692 pub fn expr(&self) -> Option<Expr> {
10693 support::child(&self.syntax)
10694 }
10695 #[inline]
10696 pub fn first(&self) -> Option<First> {
10697 support::child(&self.syntax)
10698 }
10699 #[inline]
10700 pub fn forward(&self) -> Option<Forward> {
10701 support::child(&self.syntax)
10702 }
10703 #[inline]
10704 pub fn last(&self) -> Option<Last> {
10705 support::child(&self.syntax)
10706 }
10707 #[inline]
10708 pub fn name_ref(&self) -> Option<NameRef> {
10709 support::child(&self.syntax)
10710 }
10711 #[inline]
10712 pub fn next(&self) -> Option<Next> {
10713 support::child(&self.syntax)
10714 }
10715 #[inline]
10716 pub fn prior(&self) -> Option<Prior> {
10717 support::child(&self.syntax)
10718 }
10719 #[inline]
10720 pub fn relative(&self) -> Option<Relative> {
10721 support::child(&self.syntax)
10722 }
10723 #[inline]
10724 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
10725 support::token(&self.syntax, SyntaxKind::SEMICOLON)
10726 }
10727 #[inline]
10728 pub fn fetch_token(&self) -> Option<SyntaxToken> {
10729 support::token(&self.syntax, SyntaxKind::FETCH_KW)
10730 }
10731 #[inline]
10732 pub fn from_token(&self) -> Option<SyntaxToken> {
10733 support::token(&self.syntax, SyntaxKind::FROM_KW)
10734 }
10735 #[inline]
10736 pub fn in_token(&self) -> Option<SyntaxToken> {
10737 support::token(&self.syntax, SyntaxKind::IN_KW)
10738 }
10739}
10740
10741#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10742pub struct FetchClause {
10743 pub(crate) syntax: SyntaxNode,
10744}
10745impl FetchClause {
10746 #[inline]
10747 pub fn expr(&self) -> Option<Expr> {
10748 support::child(&self.syntax)
10749 }
10750 #[inline]
10751 pub fn fetch_token(&self) -> Option<SyntaxToken> {
10752 support::token(&self.syntax, SyntaxKind::FETCH_KW)
10753 }
10754 #[inline]
10755 pub fn first_token(&self) -> Option<SyntaxToken> {
10756 support::token(&self.syntax, SyntaxKind::FIRST_KW)
10757 }
10758 #[inline]
10759 pub fn next_token(&self) -> Option<SyntaxToken> {
10760 support::token(&self.syntax, SyntaxKind::NEXT_KW)
10761 }
10762 #[inline]
10763 pub fn only_token(&self) -> Option<SyntaxToken> {
10764 support::token(&self.syntax, SyntaxKind::ONLY_KW)
10765 }
10766 #[inline]
10767 pub fn row_token(&self) -> Option<SyntaxToken> {
10768 support::token(&self.syntax, SyntaxKind::ROW_KW)
10769 }
10770 #[inline]
10771 pub fn rows_token(&self) -> Option<SyntaxToken> {
10772 support::token(&self.syntax, SyntaxKind::ROWS_KW)
10773 }
10774 #[inline]
10775 pub fn ties_token(&self) -> Option<SyntaxToken> {
10776 support::token(&self.syntax, SyntaxKind::TIES_KW)
10777 }
10778 #[inline]
10779 pub fn with_token(&self) -> Option<SyntaxToken> {
10780 support::token(&self.syntax, SyntaxKind::WITH_KW)
10781 }
10782}
10783
10784#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10785pub struct FieldExpr {
10786 pub(crate) syntax: SyntaxNode,
10787}
10788impl FieldExpr {
10789 #[inline]
10790 pub fn star_token(&self) -> Option<SyntaxToken> {
10791 support::token(&self.syntax, SyntaxKind::STAR)
10792 }
10793 #[inline]
10794 pub fn dot_token(&self) -> Option<SyntaxToken> {
10795 support::token(&self.syntax, SyntaxKind::DOT)
10796 }
10797}
10798
10799#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10800pub struct FilterClause {
10801 pub(crate) syntax: SyntaxNode,
10802}
10803impl FilterClause {
10804 #[inline]
10805 pub fn expr(&self) -> Option<Expr> {
10806 support::child(&self.syntax)
10807 }
10808 #[inline]
10809 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
10810 support::token(&self.syntax, SyntaxKind::L_PAREN)
10811 }
10812 #[inline]
10813 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
10814 support::token(&self.syntax, SyntaxKind::R_PAREN)
10815 }
10816 #[inline]
10817 pub fn filter_token(&self) -> Option<SyntaxToken> {
10818 support::token(&self.syntax, SyntaxKind::FILTER_KW)
10819 }
10820 #[inline]
10821 pub fn where_token(&self) -> Option<SyntaxToken> {
10822 support::token(&self.syntax, SyntaxKind::WHERE_KW)
10823 }
10824}
10825
10826#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10827pub struct First {
10828 pub(crate) syntax: SyntaxNode,
10829}
10830impl First {
10831 #[inline]
10832 pub fn first_token(&self) -> Option<SyntaxToken> {
10833 support::token(&self.syntax, SyntaxKind::FIRST_KW)
10834 }
10835}
10836
10837#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10838pub struct ForKeyShare {
10839 pub(crate) syntax: SyntaxNode,
10840}
10841impl ForKeyShare {
10842 #[inline]
10843 pub fn key_token(&self) -> Option<SyntaxToken> {
10844 support::token(&self.syntax, SyntaxKind::KEY_KW)
10845 }
10846 #[inline]
10847 pub fn share_token(&self) -> Option<SyntaxToken> {
10848 support::token(&self.syntax, SyntaxKind::SHARE_KW)
10849 }
10850}
10851
10852#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10853pub struct ForNoKeyUpdate {
10854 pub(crate) syntax: SyntaxNode,
10855}
10856impl ForNoKeyUpdate {
10857 #[inline]
10858 pub fn key_token(&self) -> Option<SyntaxToken> {
10859 support::token(&self.syntax, SyntaxKind::KEY_KW)
10860 }
10861 #[inline]
10862 pub fn no_token(&self) -> Option<SyntaxToken> {
10863 support::token(&self.syntax, SyntaxKind::NO_KW)
10864 }
10865 #[inline]
10866 pub fn update_token(&self) -> Option<SyntaxToken> {
10867 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
10868 }
10869}
10870
10871#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10872pub struct ForPortionOf {
10873 pub(crate) syntax: SyntaxNode,
10874}
10875impl ForPortionOf {
10876 #[inline]
10877 pub fn expr(&self) -> Option<Expr> {
10878 support::child(&self.syntax)
10879 }
10880 #[inline]
10881 pub fn name_ref(&self) -> Option<NameRef> {
10882 support::child(&self.syntax)
10883 }
10884 #[inline]
10885 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
10886 support::token(&self.syntax, SyntaxKind::L_PAREN)
10887 }
10888 #[inline]
10889 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
10890 support::token(&self.syntax, SyntaxKind::R_PAREN)
10891 }
10892 #[inline]
10893 pub fn for_token(&self) -> Option<SyntaxToken> {
10894 support::token(&self.syntax, SyntaxKind::FOR_KW)
10895 }
10896 #[inline]
10897 pub fn from_token(&self) -> Option<SyntaxToken> {
10898 support::token(&self.syntax, SyntaxKind::FROM_KW)
10899 }
10900 #[inline]
10901 pub fn of_token(&self) -> Option<SyntaxToken> {
10902 support::token(&self.syntax, SyntaxKind::OF_KW)
10903 }
10904 #[inline]
10905 pub fn portion_token(&self) -> Option<SyntaxToken> {
10906 support::token(&self.syntax, SyntaxKind::PORTION_KW)
10907 }
10908 #[inline]
10909 pub fn to_token(&self) -> Option<SyntaxToken> {
10910 support::token(&self.syntax, SyntaxKind::TO_KW)
10911 }
10912}
10913
10914#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10915pub struct ForProvider {
10916 pub(crate) syntax: SyntaxNode,
10917}
10918impl ForProvider {
10919 #[inline]
10920 pub fn literal(&self) -> Option<Literal> {
10921 support::child(&self.syntax)
10922 }
10923 #[inline]
10924 pub fn name_ref(&self) -> Option<NameRef> {
10925 support::child(&self.syntax)
10926 }
10927 #[inline]
10928 pub fn for_token(&self) -> Option<SyntaxToken> {
10929 support::token(&self.syntax, SyntaxKind::FOR_KW)
10930 }
10931}
10932
10933#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10934pub struct ForShare {
10935 pub(crate) syntax: SyntaxNode,
10936}
10937impl ForShare {
10938 #[inline]
10939 pub fn share_token(&self) -> Option<SyntaxToken> {
10940 support::token(&self.syntax, SyntaxKind::SHARE_KW)
10941 }
10942}
10943
10944#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10945pub struct ForUpdate {
10946 pub(crate) syntax: SyntaxNode,
10947}
10948impl ForUpdate {
10949 #[inline]
10950 pub fn update_token(&self) -> Option<SyntaxToken> {
10951 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
10952 }
10953}
10954
10955#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10956pub struct ForceRls {
10957 pub(crate) syntax: SyntaxNode,
10958}
10959impl ForceRls {
10960 #[inline]
10961 pub fn force_token(&self) -> Option<SyntaxToken> {
10962 support::token(&self.syntax, SyntaxKind::FORCE_KW)
10963 }
10964 #[inline]
10965 pub fn level_token(&self) -> Option<SyntaxToken> {
10966 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
10967 }
10968 #[inline]
10969 pub fn row_token(&self) -> Option<SyntaxToken> {
10970 support::token(&self.syntax, SyntaxKind::ROW_KW)
10971 }
10972 #[inline]
10973 pub fn security_token(&self) -> Option<SyntaxToken> {
10974 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
10975 }
10976}
10977
10978#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10979pub struct ForeignKeyConstraint {
10980 pub(crate) syntax: SyntaxNode,
10981}
10982impl ForeignKeyConstraint {
10983 #[inline]
10984 pub fn constraint_name(&self) -> Option<ConstraintName> {
10985 support::child(&self.syntax)
10986 }
10987 #[inline]
10988 pub fn match_type(&self) -> Option<MatchType> {
10989 support::child(&self.syntax)
10990 }
10991 #[inline]
10992 pub fn on_delete_action(&self) -> Option<OnDeleteAction> {
10993 support::child(&self.syntax)
10994 }
10995 #[inline]
10996 pub fn on_update_action(&self) -> Option<OnUpdateAction> {
10997 support::child(&self.syntax)
10998 }
10999 #[inline]
11000 pub fn path(&self) -> Option<Path> {
11001 support::child(&self.syntax)
11002 }
11003 #[inline]
11004 pub fn foreign_token(&self) -> Option<SyntaxToken> {
11005 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
11006 }
11007 #[inline]
11008 pub fn key_token(&self) -> Option<SyntaxToken> {
11009 support::token(&self.syntax, SyntaxKind::KEY_KW)
11010 }
11011 #[inline]
11012 pub fn references_token(&self) -> Option<SyntaxToken> {
11013 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
11014 }
11015}
11016
11017#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11018pub struct Forward {
11019 pub(crate) syntax: SyntaxNode,
11020}
11021impl Forward {
11022 #[inline]
11023 pub fn expr(&self) -> Option<Expr> {
11024 support::child(&self.syntax)
11025 }
11026 #[inline]
11027 pub fn all_token(&self) -> Option<SyntaxToken> {
11028 support::token(&self.syntax, SyntaxKind::ALL_KW)
11029 }
11030 #[inline]
11031 pub fn forward_token(&self) -> Option<SyntaxToken> {
11032 support::token(&self.syntax, SyntaxKind::FORWARD_KW)
11033 }
11034}
11035
11036#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11037pub struct FrameBetween {
11038 pub(crate) syntax: SyntaxNode,
11039}
11040impl FrameBetween {
11041 #[inline]
11042 pub fn and_token(&self) -> Option<SyntaxToken> {
11043 support::token(&self.syntax, SyntaxKind::AND_KW)
11044 }
11045 #[inline]
11046 pub fn between_token(&self) -> Option<SyntaxToken> {
11047 support::token(&self.syntax, SyntaxKind::BETWEEN_KW)
11048 }
11049}
11050
11051#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11052pub struct FrameClause {
11053 pub(crate) syntax: SyntaxNode,
11054}
11055impl FrameClause {
11056 #[inline]
11057 pub fn frame_between(&self) -> Option<FrameBetween> {
11058 support::child(&self.syntax)
11059 }
11060 #[inline]
11061 pub fn frame_bound(&self) -> Option<FrameBound> {
11062 support::child(&self.syntax)
11063 }
11064 #[inline]
11065 pub fn frame_exclude(&self) -> Option<FrameExclude> {
11066 support::child(&self.syntax)
11067 }
11068 #[inline]
11069 pub fn groups_token(&self) -> Option<SyntaxToken> {
11070 support::token(&self.syntax, SyntaxKind::GROUPS_KW)
11071 }
11072 #[inline]
11073 pub fn range_token(&self) -> Option<SyntaxToken> {
11074 support::token(&self.syntax, SyntaxKind::RANGE_KW)
11075 }
11076 #[inline]
11077 pub fn rows_token(&self) -> Option<SyntaxToken> {
11078 support::token(&self.syntax, SyntaxKind::ROWS_KW)
11079 }
11080}
11081
11082#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11083pub struct FrameExclude {
11084 pub(crate) syntax: SyntaxNode,
11085}
11086impl FrameExclude {
11087 #[inline]
11088 pub fn current_row(&self) -> Option<CurrentRow> {
11089 support::child(&self.syntax)
11090 }
11091 #[inline]
11092 pub fn group(&self) -> Option<Group> {
11093 support::child(&self.syntax)
11094 }
11095 #[inline]
11096 pub fn no_others(&self) -> Option<NoOthers> {
11097 support::child(&self.syntax)
11098 }
11099 #[inline]
11100 pub fn ties(&self) -> Option<Ties> {
11101 support::child(&self.syntax)
11102 }
11103 #[inline]
11104 pub fn exclude_token(&self) -> Option<SyntaxToken> {
11105 support::token(&self.syntax, SyntaxKind::EXCLUDE_KW)
11106 }
11107}
11108
11109#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11110pub struct FromClause {
11111 pub(crate) syntax: SyntaxNode,
11112}
11113impl FromClause {
11114 #[inline]
11115 pub fn from_items(&self) -> AstChildren<FromItem> {
11116 support::children(&self.syntax)
11117 }
11118 #[inline]
11119 pub fn join_exprs(&self) -> AstChildren<JoinExpr> {
11120 support::children(&self.syntax)
11121 }
11122 #[inline]
11123 pub fn from_token(&self) -> Option<SyntaxToken> {
11124 support::token(&self.syntax, SyntaxKind::FROM_KW)
11125 }
11126}
11127
11128#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11129pub struct FromItem {
11130 pub(crate) syntax: SyntaxNode,
11131}
11132impl FromItem {
11133 #[inline]
11134 pub fn alias(&self) -> Option<Alias> {
11135 support::child(&self.syntax)
11136 }
11137 #[inline]
11138 pub fn call_expr(&self) -> Option<CallExpr> {
11139 support::child(&self.syntax)
11140 }
11141 #[inline]
11142 pub fn cast_expr(&self) -> Option<CastExpr> {
11143 support::child(&self.syntax)
11144 }
11145 #[inline]
11146 pub fn field_expr(&self) -> Option<FieldExpr> {
11147 support::child(&self.syntax)
11148 }
11149 #[inline]
11150 pub fn json_table(&self) -> Option<JsonTable> {
11151 support::child(&self.syntax)
11152 }
11153 #[inline]
11154 pub fn name_ref(&self) -> Option<NameRef> {
11155 support::child(&self.syntax)
11156 }
11157 #[inline]
11158 pub fn paren_expr(&self) -> Option<ParenExpr> {
11159 support::child(&self.syntax)
11160 }
11161 #[inline]
11162 pub fn paren_select(&self) -> Option<ParenSelect> {
11163 support::child(&self.syntax)
11164 }
11165 #[inline]
11166 pub fn tablesample_clause(&self) -> Option<TablesampleClause> {
11167 support::child(&self.syntax)
11168 }
11169 #[inline]
11170 pub fn xml_table(&self) -> Option<XmlTable> {
11171 support::child(&self.syntax)
11172 }
11173 #[inline]
11174 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11175 support::token(&self.syntax, SyntaxKind::L_PAREN)
11176 }
11177 #[inline]
11178 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11179 support::token(&self.syntax, SyntaxKind::R_PAREN)
11180 }
11181 #[inline]
11182 pub fn star_token(&self) -> Option<SyntaxToken> {
11183 support::token(&self.syntax, SyntaxKind::STAR)
11184 }
11185 #[inline]
11186 pub fn from_token(&self) -> Option<SyntaxToken> {
11187 support::token(&self.syntax, SyntaxKind::FROM_KW)
11188 }
11189 #[inline]
11190 pub fn lateral_token(&self) -> Option<SyntaxToken> {
11191 support::token(&self.syntax, SyntaxKind::LATERAL_KW)
11192 }
11193 #[inline]
11194 pub fn only_token(&self) -> Option<SyntaxToken> {
11195 support::token(&self.syntax, SyntaxKind::ONLY_KW)
11196 }
11197 #[inline]
11198 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
11199 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
11200 }
11201 #[inline]
11202 pub fn rows_token(&self) -> Option<SyntaxToken> {
11203 support::token(&self.syntax, SyntaxKind::ROWS_KW)
11204 }
11205 #[inline]
11206 pub fn with_token(&self) -> Option<SyntaxToken> {
11207 support::token(&self.syntax, SyntaxKind::WITH_KW)
11208 }
11209}
11210
11211#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11212pub struct FromTable {
11213 pub(crate) syntax: SyntaxNode,
11214}
11215impl FromTable {
11216 #[inline]
11217 pub fn path(&self) -> Option<Path> {
11218 support::child(&self.syntax)
11219 }
11220 #[inline]
11221 pub fn from_token(&self) -> Option<SyntaxToken> {
11222 support::token(&self.syntax, SyntaxKind::FROM_KW)
11223 }
11224}
11225
11226#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11227pub struct FuncOptionList {
11228 pub(crate) syntax: SyntaxNode,
11229}
11230impl FuncOptionList {
11231 #[inline]
11232 pub fn options(&self) -> AstChildren<FuncOption> {
11233 support::children(&self.syntax)
11234 }
11235}
11236
11237#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11238pub struct FunctionSig {
11239 pub(crate) syntax: SyntaxNode,
11240}
11241impl FunctionSig {
11242 #[inline]
11243 pub fn param_list(&self) -> Option<ParamList> {
11244 support::child(&self.syntax)
11245 }
11246 #[inline]
11247 pub fn path(&self) -> Option<Path> {
11248 support::child(&self.syntax)
11249 }
11250}
11251
11252#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11253pub struct FunctionSigList {
11254 pub(crate) syntax: SyntaxNode,
11255}
11256impl FunctionSigList {
11257 #[inline]
11258 pub fn function_sigs(&self) -> AstChildren<FunctionSig> {
11259 support::children(&self.syntax)
11260 }
11261}
11262
11263#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11264pub struct GeneratedConstraint {
11265 pub(crate) syntax: SyntaxNode,
11266}
11267impl GeneratedConstraint {
11268 #[inline]
11269 pub fn constraint_name(&self) -> Option<ConstraintName> {
11270 support::child(&self.syntax)
11271 }
11272 #[inline]
11273 pub fn expr(&self) -> Option<Expr> {
11274 support::child(&self.syntax)
11275 }
11276 #[inline]
11277 pub fn sequence_option_list(&self) -> Option<SequenceOptionList> {
11278 support::child(&self.syntax)
11279 }
11280 #[inline]
11281 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11282 support::token(&self.syntax, SyntaxKind::L_PAREN)
11283 }
11284 #[inline]
11285 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11286 support::token(&self.syntax, SyntaxKind::R_PAREN)
11287 }
11288 #[inline]
11289 pub fn always_token(&self) -> Option<SyntaxToken> {
11290 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
11291 }
11292 #[inline]
11293 pub fn as_token(&self) -> Option<SyntaxToken> {
11294 support::token(&self.syntax, SyntaxKind::AS_KW)
11295 }
11296 #[inline]
11297 pub fn by_token(&self) -> Option<SyntaxToken> {
11298 support::token(&self.syntax, SyntaxKind::BY_KW)
11299 }
11300 #[inline]
11301 pub fn default_token(&self) -> Option<SyntaxToken> {
11302 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
11303 }
11304 #[inline]
11305 pub fn generated_token(&self) -> Option<SyntaxToken> {
11306 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
11307 }
11308 #[inline]
11309 pub fn identity_token(&self) -> Option<SyntaxToken> {
11310 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
11311 }
11312 #[inline]
11313 pub fn stored_token(&self) -> Option<SyntaxToken> {
11314 support::token(&self.syntax, SyntaxKind::STORED_KW)
11315 }
11316 #[inline]
11317 pub fn virtual_token(&self) -> Option<SyntaxToken> {
11318 support::token(&self.syntax, SyntaxKind::VIRTUAL_KW)
11319 }
11320}
11321
11322#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11323pub struct Grant {
11324 pub(crate) syntax: SyntaxNode,
11325}
11326impl Grant {
11327 #[inline]
11328 pub fn column_list(&self) -> Option<ColumnList> {
11329 support::child(&self.syntax)
11330 }
11331 #[inline]
11332 pub fn grant_with_clause(&self) -> Option<GrantWithClause> {
11333 support::child(&self.syntax)
11334 }
11335 #[inline]
11336 pub fn privilege_objects(&self) -> Option<PrivilegeObjects> {
11337 support::child(&self.syntax)
11338 }
11339 #[inline]
11340 pub fn revoke_command_list(&self) -> Option<RevokeCommandList> {
11341 support::child(&self.syntax)
11342 }
11343 #[inline]
11344 pub fn role_ref(&self) -> Option<RoleRef> {
11345 support::child(&self.syntax)
11346 }
11347 #[inline]
11348 pub fn role_ref_list(&self) -> Option<RoleRefList> {
11349 support::child(&self.syntax)
11350 }
11351 #[inline]
11352 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
11353 support::token(&self.syntax, SyntaxKind::SEMICOLON)
11354 }
11355 #[inline]
11356 pub fn all_token(&self) -> Option<SyntaxToken> {
11357 support::token(&self.syntax, SyntaxKind::ALL_KW)
11358 }
11359 #[inline]
11360 pub fn by_token(&self) -> Option<SyntaxToken> {
11361 support::token(&self.syntax, SyntaxKind::BY_KW)
11362 }
11363 #[inline]
11364 pub fn grant_token(&self) -> Option<SyntaxToken> {
11365 support::token(&self.syntax, SyntaxKind::GRANT_KW)
11366 }
11367 #[inline]
11368 pub fn granted_token(&self) -> Option<SyntaxToken> {
11369 support::token(&self.syntax, SyntaxKind::GRANTED_KW)
11370 }
11371 #[inline]
11372 pub fn on_token(&self) -> Option<SyntaxToken> {
11373 support::token(&self.syntax, SyntaxKind::ON_KW)
11374 }
11375 #[inline]
11376 pub fn privileges_token(&self) -> Option<SyntaxToken> {
11377 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
11378 }
11379 #[inline]
11380 pub fn to_token(&self) -> Option<SyntaxToken> {
11381 support::token(&self.syntax, SyntaxKind::TO_KW)
11382 }
11383}
11384
11385#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11386pub struct GrantDefaultPrivileges {
11387 pub(crate) syntax: SyntaxNode,
11388}
11389impl GrantDefaultPrivileges {
11390 #[inline]
11391 pub fn privilege_target(&self) -> Option<PrivilegeTarget> {
11392 support::child(&self.syntax)
11393 }
11394 #[inline]
11395 pub fn privileges(&self) -> Option<Privileges> {
11396 support::child(&self.syntax)
11397 }
11398 #[inline]
11399 pub fn role_ref_list(&self) -> Option<RoleRefList> {
11400 support::child(&self.syntax)
11401 }
11402 #[inline]
11403 pub fn grant_token(&self) -> Option<SyntaxToken> {
11404 support::token(&self.syntax, SyntaxKind::GRANT_KW)
11405 }
11406 #[inline]
11407 pub fn on_token(&self) -> Option<SyntaxToken> {
11408 support::token(&self.syntax, SyntaxKind::ON_KW)
11409 }
11410 #[inline]
11411 pub fn option_token(&self) -> Option<SyntaxToken> {
11412 support::token(&self.syntax, SyntaxKind::OPTION_KW)
11413 }
11414 #[inline]
11415 pub fn to_token(&self) -> Option<SyntaxToken> {
11416 support::token(&self.syntax, SyntaxKind::TO_KW)
11417 }
11418 #[inline]
11419 pub fn with_token(&self) -> Option<SyntaxToken> {
11420 support::token(&self.syntax, SyntaxKind::WITH_KW)
11421 }
11422}
11423
11424#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11425pub struct GrantRoleOption {
11426 pub(crate) syntax: SyntaxNode,
11427}
11428impl GrantRoleOption {
11429 #[inline]
11430 pub fn name(&self) -> Option<Name> {
11431 support::child(&self.syntax)
11432 }
11433 #[inline]
11434 pub fn false_token(&self) -> Option<SyntaxToken> {
11435 support::token(&self.syntax, SyntaxKind::FALSE_KW)
11436 }
11437 #[inline]
11438 pub fn option_token(&self) -> Option<SyntaxToken> {
11439 support::token(&self.syntax, SyntaxKind::OPTION_KW)
11440 }
11441 #[inline]
11442 pub fn true_token(&self) -> Option<SyntaxToken> {
11443 support::token(&self.syntax, SyntaxKind::TRUE_KW)
11444 }
11445}
11446
11447#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11448pub struct GrantRoleOptionList {
11449 pub(crate) syntax: SyntaxNode,
11450}
11451impl GrantRoleOptionList {
11452 #[inline]
11453 pub fn grant_role_options(&self) -> AstChildren<GrantRoleOption> {
11454 support::children(&self.syntax)
11455 }
11456}
11457
11458#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11459pub struct GrantWithClause {
11460 pub(crate) syntax: SyntaxNode,
11461}
11462impl GrantWithClause {
11463 #[inline]
11464 pub fn grant_role_option_list(&self) -> Option<GrantRoleOptionList> {
11465 support::child(&self.syntax)
11466 }
11467 #[inline]
11468 pub fn grant_token(&self) -> Option<SyntaxToken> {
11469 support::token(&self.syntax, SyntaxKind::GRANT_KW)
11470 }
11471 #[inline]
11472 pub fn option_token(&self) -> Option<SyntaxToken> {
11473 support::token(&self.syntax, SyntaxKind::OPTION_KW)
11474 }
11475 #[inline]
11476 pub fn with_token(&self) -> Option<SyntaxToken> {
11477 support::token(&self.syntax, SyntaxKind::WITH_KW)
11478 }
11479}
11480
11481#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11482pub struct GraphPatternQualifier {
11483 pub(crate) syntax: SyntaxNode,
11484}
11485impl GraphPatternQualifier {
11486 #[inline]
11487 pub fn literal(&self) -> Option<Literal> {
11488 support::child(&self.syntax)
11489 }
11490 #[inline]
11491 pub fn l_curly_token(&self) -> Option<SyntaxToken> {
11492 support::token(&self.syntax, SyntaxKind::L_CURLY)
11493 }
11494 #[inline]
11495 pub fn r_curly_token(&self) -> Option<SyntaxToken> {
11496 support::token(&self.syntax, SyntaxKind::R_CURLY)
11497 }
11498 #[inline]
11499 pub fn comma_token(&self) -> Option<SyntaxToken> {
11500 support::token(&self.syntax, SyntaxKind::COMMA)
11501 }
11502}
11503
11504#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11505pub struct GraphTableFn {
11506 pub(crate) syntax: SyntaxNode,
11507}
11508impl GraphTableFn {
11509 #[inline]
11510 pub fn expr_as_name_list(&self) -> Option<ExprAsNameList> {
11511 support::child(&self.syntax)
11512 }
11513 #[inline]
11514 pub fn path(&self) -> Option<Path> {
11515 support::child(&self.syntax)
11516 }
11517 #[inline]
11518 pub fn path_pattern_list(&self) -> Option<PathPatternList> {
11519 support::child(&self.syntax)
11520 }
11521 #[inline]
11522 pub fn where_clause(&self) -> Option<WhereClause> {
11523 support::child(&self.syntax)
11524 }
11525 #[inline]
11526 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11527 support::token(&self.syntax, SyntaxKind::L_PAREN)
11528 }
11529 #[inline]
11530 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11531 support::token(&self.syntax, SyntaxKind::R_PAREN)
11532 }
11533 #[inline]
11534 pub fn columns_token(&self) -> Option<SyntaxToken> {
11535 support::token(&self.syntax, SyntaxKind::COLUMNS_KW)
11536 }
11537 #[inline]
11538 pub fn graph_table_token(&self) -> Option<SyntaxToken> {
11539 support::token(&self.syntax, SyntaxKind::GRAPH_TABLE_KW)
11540 }
11541 #[inline]
11542 pub fn match_token(&self) -> Option<SyntaxToken> {
11543 support::token(&self.syntax, SyntaxKind::MATCH_KW)
11544 }
11545}
11546
11547#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11548pub struct Group {
11549 pub(crate) syntax: SyntaxNode,
11550}
11551impl Group {
11552 #[inline]
11553 pub fn group_token(&self) -> Option<SyntaxToken> {
11554 support::token(&self.syntax, SyntaxKind::GROUP_KW)
11555 }
11556}
11557
11558#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11559pub struct GroupByClause {
11560 pub(crate) syntax: SyntaxNode,
11561}
11562impl GroupByClause {
11563 #[inline]
11564 pub fn group_by_list(&self) -> Option<GroupByList> {
11565 support::child(&self.syntax)
11566 }
11567 #[inline]
11568 pub fn all_token(&self) -> Option<SyntaxToken> {
11569 support::token(&self.syntax, SyntaxKind::ALL_KW)
11570 }
11571 #[inline]
11572 pub fn by_token(&self) -> Option<SyntaxToken> {
11573 support::token(&self.syntax, SyntaxKind::BY_KW)
11574 }
11575 #[inline]
11576 pub fn distinct_token(&self) -> Option<SyntaxToken> {
11577 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
11578 }
11579 #[inline]
11580 pub fn group_token(&self) -> Option<SyntaxToken> {
11581 support::token(&self.syntax, SyntaxKind::GROUP_KW)
11582 }
11583}
11584
11585#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11586pub struct GroupByList {
11587 pub(crate) syntax: SyntaxNode,
11588}
11589impl GroupByList {
11590 #[inline]
11591 pub fn group_bys(&self) -> AstChildren<GroupBy> {
11592 support::children(&self.syntax)
11593 }
11594}
11595
11596#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11597pub struct GroupingCube {
11598 pub(crate) syntax: SyntaxNode,
11599}
11600impl GroupingCube {
11601 #[inline]
11602 pub fn exprs(&self) -> AstChildren<Expr> {
11603 support::children(&self.syntax)
11604 }
11605 #[inline]
11606 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11607 support::token(&self.syntax, SyntaxKind::L_PAREN)
11608 }
11609 #[inline]
11610 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11611 support::token(&self.syntax, SyntaxKind::R_PAREN)
11612 }
11613 #[inline]
11614 pub fn cube_token(&self) -> Option<SyntaxToken> {
11615 support::token(&self.syntax, SyntaxKind::CUBE_KW)
11616 }
11617}
11618
11619#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11620pub struct GroupingExpr {
11621 pub(crate) syntax: SyntaxNode,
11622}
11623impl GroupingExpr {
11624 #[inline]
11625 pub fn expr(&self) -> Option<Expr> {
11626 support::child(&self.syntax)
11627 }
11628}
11629
11630#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11631pub struct GroupingRollup {
11632 pub(crate) syntax: SyntaxNode,
11633}
11634impl GroupingRollup {
11635 #[inline]
11636 pub fn exprs(&self) -> AstChildren<Expr> {
11637 support::children(&self.syntax)
11638 }
11639 #[inline]
11640 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11641 support::token(&self.syntax, SyntaxKind::L_PAREN)
11642 }
11643 #[inline]
11644 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11645 support::token(&self.syntax, SyntaxKind::R_PAREN)
11646 }
11647 #[inline]
11648 pub fn rollup_token(&self) -> Option<SyntaxToken> {
11649 support::token(&self.syntax, SyntaxKind::ROLLUP_KW)
11650 }
11651}
11652
11653#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11654pub struct GroupingSets {
11655 pub(crate) syntax: SyntaxNode,
11656}
11657impl GroupingSets {
11658 #[inline]
11659 pub fn group_bys(&self) -> AstChildren<GroupBy> {
11660 support::children(&self.syntax)
11661 }
11662 #[inline]
11663 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11664 support::token(&self.syntax, SyntaxKind::L_PAREN)
11665 }
11666 #[inline]
11667 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11668 support::token(&self.syntax, SyntaxKind::R_PAREN)
11669 }
11670 #[inline]
11671 pub fn grouping_token(&self) -> Option<SyntaxToken> {
11672 support::token(&self.syntax, SyntaxKind::GROUPING_KW)
11673 }
11674 #[inline]
11675 pub fn sets_token(&self) -> Option<SyntaxToken> {
11676 support::token(&self.syntax, SyntaxKind::SETS_KW)
11677 }
11678}
11679
11680#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11681pub struct Gteq {
11682 pub(crate) syntax: SyntaxNode,
11683}
11684impl Gteq {
11685 #[inline]
11686 pub fn eq_token(&self) -> Option<SyntaxToken> {
11687 support::token(&self.syntax, SyntaxKind::EQ)
11688 }
11689 #[inline]
11690 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
11691 support::token(&self.syntax, SyntaxKind::R_ANGLE)
11692 }
11693}
11694
11695#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11696pub struct HandlerClause {
11697 pub(crate) syntax: SyntaxNode,
11698}
11699impl HandlerClause {
11700 #[inline]
11701 pub fn path(&self) -> Option<Path> {
11702 support::child(&self.syntax)
11703 }
11704 #[inline]
11705 pub fn handler_token(&self) -> Option<SyntaxToken> {
11706 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
11707 }
11708}
11709
11710#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11711pub struct HavingClause {
11712 pub(crate) syntax: SyntaxNode,
11713}
11714impl HavingClause {
11715 #[inline]
11716 pub fn expr(&self) -> Option<Expr> {
11717 support::child(&self.syntax)
11718 }
11719 #[inline]
11720 pub fn having_token(&self) -> Option<SyntaxToken> {
11721 support::token(&self.syntax, SyntaxKind::HAVING_KW)
11722 }
11723}
11724
11725#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11726pub struct IfExists {
11727 pub(crate) syntax: SyntaxNode,
11728}
11729impl IfExists {
11730 #[inline]
11731 pub fn exists_token(&self) -> Option<SyntaxToken> {
11732 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
11733 }
11734 #[inline]
11735 pub fn if_token(&self) -> Option<SyntaxToken> {
11736 support::token(&self.syntax, SyntaxKind::IF_KW)
11737 }
11738}
11739
11740#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11741pub struct IfNotExists {
11742 pub(crate) syntax: SyntaxNode,
11743}
11744impl IfNotExists {
11745 #[inline]
11746 pub fn exists_token(&self) -> Option<SyntaxToken> {
11747 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
11748 }
11749 #[inline]
11750 pub fn if_token(&self) -> Option<SyntaxToken> {
11751 support::token(&self.syntax, SyntaxKind::IF_KW)
11752 }
11753 #[inline]
11754 pub fn not_token(&self) -> Option<SyntaxToken> {
11755 support::token(&self.syntax, SyntaxKind::NOT_KW)
11756 }
11757}
11758
11759#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11760pub struct ImportForeignSchema {
11761 pub(crate) syntax: SyntaxNode,
11762}
11763impl ImportForeignSchema {
11764 #[inline]
11765 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
11766 support::child(&self.syntax)
11767 }
11768 #[inline]
11769 pub fn except_tables(&self) -> Option<ExceptTables> {
11770 support::child(&self.syntax)
11771 }
11772 #[inline]
11773 pub fn into_schema(&self) -> Option<IntoSchema> {
11774 support::child(&self.syntax)
11775 }
11776 #[inline]
11777 pub fn limit_to_tables(&self) -> Option<LimitToTables> {
11778 support::child(&self.syntax)
11779 }
11780 #[inline]
11781 pub fn name_ref(&self) -> Option<NameRef> {
11782 support::child(&self.syntax)
11783 }
11784 #[inline]
11785 pub fn server_name(&self) -> Option<ServerName> {
11786 support::child(&self.syntax)
11787 }
11788 #[inline]
11789 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
11790 support::token(&self.syntax, SyntaxKind::SEMICOLON)
11791 }
11792 #[inline]
11793 pub fn foreign_token(&self) -> Option<SyntaxToken> {
11794 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
11795 }
11796 #[inline]
11797 pub fn from_token(&self) -> Option<SyntaxToken> {
11798 support::token(&self.syntax, SyntaxKind::FROM_KW)
11799 }
11800 #[inline]
11801 pub fn import_token(&self) -> Option<SyntaxToken> {
11802 support::token(&self.syntax, SyntaxKind::IMPORT_KW)
11803 }
11804 #[inline]
11805 pub fn schema_token(&self) -> Option<SyntaxToken> {
11806 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
11807 }
11808}
11809
11810#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11811pub struct IndexExpr {
11812 pub(crate) syntax: SyntaxNode,
11813}
11814impl IndexExpr {
11815 #[inline]
11816 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
11817 support::token(&self.syntax, SyntaxKind::L_BRACK)
11818 }
11819 #[inline]
11820 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
11821 support::token(&self.syntax, SyntaxKind::R_BRACK)
11822 }
11823}
11824
11825#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11826pub struct Inherit {
11827 pub(crate) syntax: SyntaxNode,
11828}
11829impl Inherit {
11830 #[inline]
11831 pub fn path(&self) -> Option<Path> {
11832 support::child(&self.syntax)
11833 }
11834 #[inline]
11835 pub fn inherit_token(&self) -> Option<SyntaxToken> {
11836 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
11837 }
11838}
11839
11840#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11841pub struct InheritTable {
11842 pub(crate) syntax: SyntaxNode,
11843}
11844impl InheritTable {
11845 #[inline]
11846 pub fn path(&self) -> Option<Path> {
11847 support::child(&self.syntax)
11848 }
11849 #[inline]
11850 pub fn inherit_token(&self) -> Option<SyntaxToken> {
11851 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
11852 }
11853}
11854
11855#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11856pub struct Inherits {
11857 pub(crate) syntax: SyntaxNode,
11858}
11859impl Inherits {
11860 #[inline]
11861 pub fn paths(&self) -> AstChildren<Path> {
11862 support::children(&self.syntax)
11863 }
11864 #[inline]
11865 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11866 support::token(&self.syntax, SyntaxKind::L_PAREN)
11867 }
11868 #[inline]
11869 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11870 support::token(&self.syntax, SyntaxKind::R_PAREN)
11871 }
11872 #[inline]
11873 pub fn inherits_token(&self) -> Option<SyntaxToken> {
11874 support::token(&self.syntax, SyntaxKind::INHERITS_KW)
11875 }
11876}
11877
11878#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11879pub struct InitiallyDeferredConstraintOption {
11880 pub(crate) syntax: SyntaxNode,
11881}
11882impl InitiallyDeferredConstraintOption {
11883 #[inline]
11884 pub fn deferred_token(&self) -> Option<SyntaxToken> {
11885 support::token(&self.syntax, SyntaxKind::DEFERRED_KW)
11886 }
11887 #[inline]
11888 pub fn initially_token(&self) -> Option<SyntaxToken> {
11889 support::token(&self.syntax, SyntaxKind::INITIALLY_KW)
11890 }
11891}
11892
11893#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11894pub struct InitiallyImmediateConstraintOption {
11895 pub(crate) syntax: SyntaxNode,
11896}
11897impl InitiallyImmediateConstraintOption {
11898 #[inline]
11899 pub fn immediate_token(&self) -> Option<SyntaxToken> {
11900 support::token(&self.syntax, SyntaxKind::IMMEDIATE_KW)
11901 }
11902 #[inline]
11903 pub fn initially_token(&self) -> Option<SyntaxToken> {
11904 support::token(&self.syntax, SyntaxKind::INITIALLY_KW)
11905 }
11906}
11907
11908#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11909pub struct Insert {
11910 pub(crate) syntax: SyntaxNode,
11911}
11912impl Insert {
11913 #[inline]
11914 pub fn alias(&self) -> Option<Alias> {
11915 support::child(&self.syntax)
11916 }
11917 #[inline]
11918 pub fn column_list(&self) -> Option<ColumnList> {
11919 support::child(&self.syntax)
11920 }
11921 #[inline]
11922 pub fn on_conflict_clause(&self) -> Option<OnConflictClause> {
11923 support::child(&self.syntax)
11924 }
11925 #[inline]
11926 pub fn path(&self) -> Option<Path> {
11927 support::child(&self.syntax)
11928 }
11929 #[inline]
11930 pub fn returning_clause(&self) -> Option<ReturningClause> {
11931 support::child(&self.syntax)
11932 }
11933 #[inline]
11934 pub fn select_variant(&self) -> Option<SelectVariant> {
11935 support::child(&self.syntax)
11936 }
11937 #[inline]
11938 pub fn with_clause(&self) -> Option<WithClause> {
11939 support::child(&self.syntax)
11940 }
11941 #[inline]
11942 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
11943 support::token(&self.syntax, SyntaxKind::SEMICOLON)
11944 }
11945 #[inline]
11946 pub fn default_token(&self) -> Option<SyntaxToken> {
11947 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
11948 }
11949 #[inline]
11950 pub fn insert_token(&self) -> Option<SyntaxToken> {
11951 support::token(&self.syntax, SyntaxKind::INSERT_KW)
11952 }
11953 #[inline]
11954 pub fn into_token(&self) -> Option<SyntaxToken> {
11955 support::token(&self.syntax, SyntaxKind::INTO_KW)
11956 }
11957 #[inline]
11958 pub fn overriding_token(&self) -> Option<SyntaxToken> {
11959 support::token(&self.syntax, SyntaxKind::OVERRIDING_KW)
11960 }
11961 #[inline]
11962 pub fn system_token(&self) -> Option<SyntaxToken> {
11963 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
11964 }
11965 #[inline]
11966 pub fn user_token(&self) -> Option<SyntaxToken> {
11967 support::token(&self.syntax, SyntaxKind::USER_KW)
11968 }
11969 #[inline]
11970 pub fn value_token(&self) -> Option<SyntaxToken> {
11971 support::token(&self.syntax, SyntaxKind::VALUE_KW)
11972 }
11973 #[inline]
11974 pub fn values_token(&self) -> Option<SyntaxToken> {
11975 support::token(&self.syntax, SyntaxKind::VALUES_KW)
11976 }
11977}
11978
11979#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11980pub struct IntervalType {
11981 pub(crate) syntax: SyntaxNode,
11982}
11983impl IntervalType {
11984 #[inline]
11985 pub fn literal(&self) -> Option<Literal> {
11986 support::child(&self.syntax)
11987 }
11988 #[inline]
11989 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11990 support::token(&self.syntax, SyntaxKind::L_PAREN)
11991 }
11992 #[inline]
11993 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11994 support::token(&self.syntax, SyntaxKind::R_PAREN)
11995 }
11996 #[inline]
11997 pub fn day_token(&self) -> Option<SyntaxToken> {
11998 support::token(&self.syntax, SyntaxKind::DAY_KW)
11999 }
12000 #[inline]
12001 pub fn hour_token(&self) -> Option<SyntaxToken> {
12002 support::token(&self.syntax, SyntaxKind::HOUR_KW)
12003 }
12004 #[inline]
12005 pub fn interval_token(&self) -> Option<SyntaxToken> {
12006 support::token(&self.syntax, SyntaxKind::INTERVAL_KW)
12007 }
12008 #[inline]
12009 pub fn minute_token(&self) -> Option<SyntaxToken> {
12010 support::token(&self.syntax, SyntaxKind::MINUTE_KW)
12011 }
12012 #[inline]
12013 pub fn month_token(&self) -> Option<SyntaxToken> {
12014 support::token(&self.syntax, SyntaxKind::MONTH_KW)
12015 }
12016 #[inline]
12017 pub fn second_token(&self) -> Option<SyntaxToken> {
12018 support::token(&self.syntax, SyntaxKind::SECOND_KW)
12019 }
12020 #[inline]
12021 pub fn setof_token(&self) -> Option<SyntaxToken> {
12022 support::token(&self.syntax, SyntaxKind::SETOF_KW)
12023 }
12024 #[inline]
12025 pub fn to_token(&self) -> Option<SyntaxToken> {
12026 support::token(&self.syntax, SyntaxKind::TO_KW)
12027 }
12028 #[inline]
12029 pub fn year_token(&self) -> Option<SyntaxToken> {
12030 support::token(&self.syntax, SyntaxKind::YEAR_KW)
12031 }
12032}
12033
12034#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12035pub struct IntoClause {
12036 pub(crate) syntax: SyntaxNode,
12037}
12038impl IntoClause {
12039 #[inline]
12040 pub fn path(&self) -> Option<Path> {
12041 support::child(&self.syntax)
12042 }
12043 #[inline]
12044 pub fn persistence(&self) -> Option<Persistence> {
12045 support::child(&self.syntax)
12046 }
12047 #[inline]
12048 pub fn into_token(&self) -> Option<SyntaxToken> {
12049 support::token(&self.syntax, SyntaxKind::INTO_KW)
12050 }
12051 #[inline]
12052 pub fn table_token(&self) -> Option<SyntaxToken> {
12053 support::token(&self.syntax, SyntaxKind::TABLE_KW)
12054 }
12055}
12056
12057#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12058pub struct IntoSchema {
12059 pub(crate) syntax: SyntaxNode,
12060}
12061impl IntoSchema {
12062 #[inline]
12063 pub fn name_ref(&self) -> Option<NameRef> {
12064 support::child(&self.syntax)
12065 }
12066 #[inline]
12067 pub fn into_token(&self) -> Option<SyntaxToken> {
12068 support::token(&self.syntax, SyntaxKind::INTO_KW)
12069 }
12070}
12071
12072#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12073pub struct IsDistinctFrom {
12074 pub(crate) syntax: SyntaxNode,
12075}
12076impl IsDistinctFrom {
12077 #[inline]
12078 pub fn distinct_token(&self) -> Option<SyntaxToken> {
12079 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
12080 }
12081 #[inline]
12082 pub fn from_token(&self) -> Option<SyntaxToken> {
12083 support::token(&self.syntax, SyntaxKind::FROM_KW)
12084 }
12085 #[inline]
12086 pub fn is_token(&self) -> Option<SyntaxToken> {
12087 support::token(&self.syntax, SyntaxKind::IS_KW)
12088 }
12089}
12090
12091#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12092pub struct IsJson {
12093 pub(crate) syntax: SyntaxNode,
12094}
12095impl IsJson {
12096 #[inline]
12097 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
12098 support::child(&self.syntax)
12099 }
12100 #[inline]
12101 pub fn is_token(&self) -> Option<SyntaxToken> {
12102 support::token(&self.syntax, SyntaxKind::IS_KW)
12103 }
12104 #[inline]
12105 pub fn json_token(&self) -> Option<SyntaxToken> {
12106 support::token(&self.syntax, SyntaxKind::JSON_KW)
12107 }
12108}
12109
12110#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12111pub struct IsJsonArray {
12112 pub(crate) syntax: SyntaxNode,
12113}
12114impl IsJsonArray {
12115 #[inline]
12116 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
12117 support::child(&self.syntax)
12118 }
12119 #[inline]
12120 pub fn array_token(&self) -> Option<SyntaxToken> {
12121 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
12122 }
12123 #[inline]
12124 pub fn is_token(&self) -> Option<SyntaxToken> {
12125 support::token(&self.syntax, SyntaxKind::IS_KW)
12126 }
12127 #[inline]
12128 pub fn json_token(&self) -> Option<SyntaxToken> {
12129 support::token(&self.syntax, SyntaxKind::JSON_KW)
12130 }
12131}
12132
12133#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12134pub struct IsJsonObject {
12135 pub(crate) syntax: SyntaxNode,
12136}
12137impl IsJsonObject {
12138 #[inline]
12139 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
12140 support::child(&self.syntax)
12141 }
12142 #[inline]
12143 pub fn is_token(&self) -> Option<SyntaxToken> {
12144 support::token(&self.syntax, SyntaxKind::IS_KW)
12145 }
12146 #[inline]
12147 pub fn json_token(&self) -> Option<SyntaxToken> {
12148 support::token(&self.syntax, SyntaxKind::JSON_KW)
12149 }
12150 #[inline]
12151 pub fn object_token(&self) -> Option<SyntaxToken> {
12152 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
12153 }
12154}
12155
12156#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12157pub struct IsJsonScalar {
12158 pub(crate) syntax: SyntaxNode,
12159}
12160impl IsJsonScalar {
12161 #[inline]
12162 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
12163 support::child(&self.syntax)
12164 }
12165 #[inline]
12166 pub fn is_token(&self) -> Option<SyntaxToken> {
12167 support::token(&self.syntax, SyntaxKind::IS_KW)
12168 }
12169 #[inline]
12170 pub fn json_token(&self) -> Option<SyntaxToken> {
12171 support::token(&self.syntax, SyntaxKind::JSON_KW)
12172 }
12173 #[inline]
12174 pub fn scalar_token(&self) -> Option<SyntaxToken> {
12175 support::token(&self.syntax, SyntaxKind::SCALAR_KW)
12176 }
12177}
12178
12179#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12180pub struct IsJsonValue {
12181 pub(crate) syntax: SyntaxNode,
12182}
12183impl IsJsonValue {
12184 #[inline]
12185 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
12186 support::child(&self.syntax)
12187 }
12188 #[inline]
12189 pub fn is_token(&self) -> Option<SyntaxToken> {
12190 support::token(&self.syntax, SyntaxKind::IS_KW)
12191 }
12192 #[inline]
12193 pub fn json_token(&self) -> Option<SyntaxToken> {
12194 support::token(&self.syntax, SyntaxKind::JSON_KW)
12195 }
12196 #[inline]
12197 pub fn value_token(&self) -> Option<SyntaxToken> {
12198 support::token(&self.syntax, SyntaxKind::VALUE_KW)
12199 }
12200}
12201
12202#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12203pub struct IsLabel {
12204 pub(crate) syntax: SyntaxNode,
12205}
12206impl IsLabel {
12207 #[inline]
12208 pub fn expr(&self) -> Option<Expr> {
12209 support::child(&self.syntax)
12210 }
12211 #[inline]
12212 pub fn is_token(&self) -> Option<SyntaxToken> {
12213 support::token(&self.syntax, SyntaxKind::IS_KW)
12214 }
12215}
12216
12217#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12218pub struct IsNormalized {
12219 pub(crate) syntax: SyntaxNode,
12220}
12221impl IsNormalized {
12222 #[inline]
12223 pub fn unicode_normal_form(&self) -> Option<UnicodeNormalForm> {
12224 support::child(&self.syntax)
12225 }
12226 #[inline]
12227 pub fn is_token(&self) -> Option<SyntaxToken> {
12228 support::token(&self.syntax, SyntaxKind::IS_KW)
12229 }
12230 #[inline]
12231 pub fn normalized_token(&self) -> Option<SyntaxToken> {
12232 support::token(&self.syntax, SyntaxKind::NORMALIZED_KW)
12233 }
12234}
12235
12236#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12237pub struct IsNot {
12238 pub(crate) syntax: SyntaxNode,
12239}
12240impl IsNot {
12241 #[inline]
12242 pub fn is_token(&self) -> Option<SyntaxToken> {
12243 support::token(&self.syntax, SyntaxKind::IS_KW)
12244 }
12245 #[inline]
12246 pub fn not_token(&self) -> Option<SyntaxToken> {
12247 support::token(&self.syntax, SyntaxKind::NOT_KW)
12248 }
12249}
12250
12251#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12252pub struct IsNotDistinctFrom {
12253 pub(crate) syntax: SyntaxNode,
12254}
12255impl IsNotDistinctFrom {
12256 #[inline]
12257 pub fn distinct_token(&self) -> Option<SyntaxToken> {
12258 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
12259 }
12260 #[inline]
12261 pub fn from_token(&self) -> Option<SyntaxToken> {
12262 support::token(&self.syntax, SyntaxKind::FROM_KW)
12263 }
12264 #[inline]
12265 pub fn is_token(&self) -> Option<SyntaxToken> {
12266 support::token(&self.syntax, SyntaxKind::IS_KW)
12267 }
12268 #[inline]
12269 pub fn not_token(&self) -> Option<SyntaxToken> {
12270 support::token(&self.syntax, SyntaxKind::NOT_KW)
12271 }
12272}
12273
12274#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12275pub struct IsNotJson {
12276 pub(crate) syntax: SyntaxNode,
12277}
12278impl IsNotJson {
12279 #[inline]
12280 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
12281 support::child(&self.syntax)
12282 }
12283 #[inline]
12284 pub fn is_token(&self) -> Option<SyntaxToken> {
12285 support::token(&self.syntax, SyntaxKind::IS_KW)
12286 }
12287 #[inline]
12288 pub fn json_token(&self) -> Option<SyntaxToken> {
12289 support::token(&self.syntax, SyntaxKind::JSON_KW)
12290 }
12291 #[inline]
12292 pub fn not_token(&self) -> Option<SyntaxToken> {
12293 support::token(&self.syntax, SyntaxKind::NOT_KW)
12294 }
12295}
12296
12297#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12298pub struct IsNotJsonArray {
12299 pub(crate) syntax: SyntaxNode,
12300}
12301impl IsNotJsonArray {
12302 #[inline]
12303 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
12304 support::child(&self.syntax)
12305 }
12306 #[inline]
12307 pub fn array_token(&self) -> Option<SyntaxToken> {
12308 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
12309 }
12310 #[inline]
12311 pub fn is_token(&self) -> Option<SyntaxToken> {
12312 support::token(&self.syntax, SyntaxKind::IS_KW)
12313 }
12314 #[inline]
12315 pub fn json_token(&self) -> Option<SyntaxToken> {
12316 support::token(&self.syntax, SyntaxKind::JSON_KW)
12317 }
12318 #[inline]
12319 pub fn not_token(&self) -> Option<SyntaxToken> {
12320 support::token(&self.syntax, SyntaxKind::NOT_KW)
12321 }
12322}
12323
12324#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12325pub struct IsNotJsonObject {
12326 pub(crate) syntax: SyntaxNode,
12327}
12328impl IsNotJsonObject {
12329 #[inline]
12330 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
12331 support::child(&self.syntax)
12332 }
12333 #[inline]
12334 pub fn is_token(&self) -> Option<SyntaxToken> {
12335 support::token(&self.syntax, SyntaxKind::IS_KW)
12336 }
12337 #[inline]
12338 pub fn json_token(&self) -> Option<SyntaxToken> {
12339 support::token(&self.syntax, SyntaxKind::JSON_KW)
12340 }
12341 #[inline]
12342 pub fn not_token(&self) -> Option<SyntaxToken> {
12343 support::token(&self.syntax, SyntaxKind::NOT_KW)
12344 }
12345 #[inline]
12346 pub fn object_token(&self) -> Option<SyntaxToken> {
12347 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
12348 }
12349}
12350
12351#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12352pub struct IsNotJsonScalar {
12353 pub(crate) syntax: SyntaxNode,
12354}
12355impl IsNotJsonScalar {
12356 #[inline]
12357 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
12358 support::child(&self.syntax)
12359 }
12360 #[inline]
12361 pub fn is_token(&self) -> Option<SyntaxToken> {
12362 support::token(&self.syntax, SyntaxKind::IS_KW)
12363 }
12364 #[inline]
12365 pub fn json_token(&self) -> Option<SyntaxToken> {
12366 support::token(&self.syntax, SyntaxKind::JSON_KW)
12367 }
12368 #[inline]
12369 pub fn not_token(&self) -> Option<SyntaxToken> {
12370 support::token(&self.syntax, SyntaxKind::NOT_KW)
12371 }
12372 #[inline]
12373 pub fn scalar_token(&self) -> Option<SyntaxToken> {
12374 support::token(&self.syntax, SyntaxKind::SCALAR_KW)
12375 }
12376}
12377
12378#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12379pub struct IsNotJsonValue {
12380 pub(crate) syntax: SyntaxNode,
12381}
12382impl IsNotJsonValue {
12383 #[inline]
12384 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
12385 support::child(&self.syntax)
12386 }
12387 #[inline]
12388 pub fn is_token(&self) -> Option<SyntaxToken> {
12389 support::token(&self.syntax, SyntaxKind::IS_KW)
12390 }
12391 #[inline]
12392 pub fn json_token(&self) -> Option<SyntaxToken> {
12393 support::token(&self.syntax, SyntaxKind::JSON_KW)
12394 }
12395 #[inline]
12396 pub fn not_token(&self) -> Option<SyntaxToken> {
12397 support::token(&self.syntax, SyntaxKind::NOT_KW)
12398 }
12399 #[inline]
12400 pub fn value_token(&self) -> Option<SyntaxToken> {
12401 support::token(&self.syntax, SyntaxKind::VALUE_KW)
12402 }
12403}
12404
12405#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12406pub struct IsNotNormalized {
12407 pub(crate) syntax: SyntaxNode,
12408}
12409impl IsNotNormalized {
12410 #[inline]
12411 pub fn unicode_normal_form(&self) -> Option<UnicodeNormalForm> {
12412 support::child(&self.syntax)
12413 }
12414 #[inline]
12415 pub fn is_token(&self) -> Option<SyntaxToken> {
12416 support::token(&self.syntax, SyntaxKind::IS_KW)
12417 }
12418 #[inline]
12419 pub fn normalized_token(&self) -> Option<SyntaxToken> {
12420 support::token(&self.syntax, SyntaxKind::NORMALIZED_KW)
12421 }
12422 #[inline]
12423 pub fn not_token(&self) -> Option<SyntaxToken> {
12424 support::token(&self.syntax, SyntaxKind::NOT_KW)
12425 }
12426}
12427
12428#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12429pub struct Join {
12430 pub(crate) syntax: SyntaxNode,
12431}
12432impl Join {
12433 #[inline]
12434 pub fn from_item(&self) -> Option<FromItem> {
12435 support::child(&self.syntax)
12436 }
12437 #[inline]
12438 pub fn join_type(&self) -> Option<JoinType> {
12439 support::child(&self.syntax)
12440 }
12441 #[inline]
12442 pub fn on_clause(&self) -> Option<OnClause> {
12443 support::child(&self.syntax)
12444 }
12445 #[inline]
12446 pub fn using_clause(&self) -> Option<JoinUsingClause> {
12447 support::child(&self.syntax)
12448 }
12449 #[inline]
12450 pub fn natural_token(&self) -> Option<SyntaxToken> {
12451 support::token(&self.syntax, SyntaxKind::NATURAL_KW)
12452 }
12453}
12454
12455#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12456pub struct JoinCross {
12457 pub(crate) syntax: SyntaxNode,
12458}
12459impl JoinCross {
12460 #[inline]
12461 pub fn cross_token(&self) -> Option<SyntaxToken> {
12462 support::token(&self.syntax, SyntaxKind::CROSS_KW)
12463 }
12464 #[inline]
12465 pub fn join_token(&self) -> Option<SyntaxToken> {
12466 support::token(&self.syntax, SyntaxKind::JOIN_KW)
12467 }
12468}
12469
12470#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12471pub struct JoinExpr {
12472 pub(crate) syntax: SyntaxNode,
12473}
12474impl JoinExpr {
12475 #[inline]
12476 pub fn from_item(&self) -> Option<FromItem> {
12477 support::child(&self.syntax)
12478 }
12479 #[inline]
12480 pub fn join(&self) -> Option<Join> {
12481 support::child(&self.syntax)
12482 }
12483 #[inline]
12484 pub fn join_expr(&self) -> Option<JoinExpr> {
12485 support::child(&self.syntax)
12486 }
12487}
12488
12489#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12490pub struct JoinFull {
12491 pub(crate) syntax: SyntaxNode,
12492}
12493impl JoinFull {
12494 #[inline]
12495 pub fn full_token(&self) -> Option<SyntaxToken> {
12496 support::token(&self.syntax, SyntaxKind::FULL_KW)
12497 }
12498 #[inline]
12499 pub fn join_token(&self) -> Option<SyntaxToken> {
12500 support::token(&self.syntax, SyntaxKind::JOIN_KW)
12501 }
12502 #[inline]
12503 pub fn outer_token(&self) -> Option<SyntaxToken> {
12504 support::token(&self.syntax, SyntaxKind::OUTER_KW)
12505 }
12506}
12507
12508#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12509pub struct JoinInner {
12510 pub(crate) syntax: SyntaxNode,
12511}
12512impl JoinInner {
12513 #[inline]
12514 pub fn inner_token(&self) -> Option<SyntaxToken> {
12515 support::token(&self.syntax, SyntaxKind::INNER_KW)
12516 }
12517 #[inline]
12518 pub fn join_token(&self) -> Option<SyntaxToken> {
12519 support::token(&self.syntax, SyntaxKind::JOIN_KW)
12520 }
12521}
12522
12523#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12524pub struct JoinLeft {
12525 pub(crate) syntax: SyntaxNode,
12526}
12527impl JoinLeft {
12528 #[inline]
12529 pub fn join_token(&self) -> Option<SyntaxToken> {
12530 support::token(&self.syntax, SyntaxKind::JOIN_KW)
12531 }
12532 #[inline]
12533 pub fn left_token(&self) -> Option<SyntaxToken> {
12534 support::token(&self.syntax, SyntaxKind::LEFT_KW)
12535 }
12536 #[inline]
12537 pub fn outer_token(&self) -> Option<SyntaxToken> {
12538 support::token(&self.syntax, SyntaxKind::OUTER_KW)
12539 }
12540}
12541
12542#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12543pub struct JoinRight {
12544 pub(crate) syntax: SyntaxNode,
12545}
12546impl JoinRight {
12547 #[inline]
12548 pub fn join_token(&self) -> Option<SyntaxToken> {
12549 support::token(&self.syntax, SyntaxKind::JOIN_KW)
12550 }
12551 #[inline]
12552 pub fn outer_token(&self) -> Option<SyntaxToken> {
12553 support::token(&self.syntax, SyntaxKind::OUTER_KW)
12554 }
12555 #[inline]
12556 pub fn right_token(&self) -> Option<SyntaxToken> {
12557 support::token(&self.syntax, SyntaxKind::RIGHT_KW)
12558 }
12559}
12560
12561#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12562pub struct JoinUsingClause {
12563 pub(crate) syntax: SyntaxNode,
12564}
12565impl JoinUsingClause {
12566 #[inline]
12567 pub fn alias(&self) -> Option<Alias> {
12568 support::child(&self.syntax)
12569 }
12570 #[inline]
12571 pub fn column_list(&self) -> Option<ColumnList> {
12572 support::child(&self.syntax)
12573 }
12574 #[inline]
12575 pub fn using_token(&self) -> Option<SyntaxToken> {
12576 support::token(&self.syntax, SyntaxKind::USING_KW)
12577 }
12578}
12579
12580#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12581pub struct JsonArrayAggFn {
12582 pub(crate) syntax: SyntaxNode,
12583}
12584impl JsonArrayAggFn {
12585 #[inline]
12586 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
12587 support::child(&self.syntax)
12588 }
12589 #[inline]
12590 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
12591 support::child(&self.syntax)
12592 }
12593 #[inline]
12594 pub fn json_value_expr(&self) -> Option<JsonValueExpr> {
12595 support::child(&self.syntax)
12596 }
12597 #[inline]
12598 pub fn order_by_clause(&self) -> Option<OrderByClause> {
12599 support::child(&self.syntax)
12600 }
12601 #[inline]
12602 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12603 support::token(&self.syntax, SyntaxKind::L_PAREN)
12604 }
12605 #[inline]
12606 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12607 support::token(&self.syntax, SyntaxKind::R_PAREN)
12608 }
12609 #[inline]
12610 pub fn json_arrayagg_token(&self) -> Option<SyntaxToken> {
12611 support::token(&self.syntax, SyntaxKind::JSON_ARRAYAGG_KW)
12612 }
12613}
12614
12615#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12616pub struct JsonArrayFn {
12617 pub(crate) syntax: SyntaxNode,
12618}
12619impl JsonArrayFn {
12620 #[inline]
12621 pub fn json_expr_formats(&self) -> AstChildren<JsonExprFormat> {
12622 support::children(&self.syntax)
12623 }
12624 #[inline]
12625 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
12626 support::child(&self.syntax)
12627 }
12628 #[inline]
12629 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
12630 support::child(&self.syntax)
12631 }
12632 #[inline]
12633 pub fn json_select_formats(&self) -> AstChildren<JsonSelectFormat> {
12634 support::children(&self.syntax)
12635 }
12636 #[inline]
12637 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12638 support::token(&self.syntax, SyntaxKind::L_PAREN)
12639 }
12640 #[inline]
12641 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12642 support::token(&self.syntax, SyntaxKind::R_PAREN)
12643 }
12644 #[inline]
12645 pub fn json_array_token(&self) -> Option<SyntaxToken> {
12646 support::token(&self.syntax, SyntaxKind::JSON_ARRAY_KW)
12647 }
12648}
12649
12650#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12651pub struct JsonBehaviorDefault {
12652 pub(crate) syntax: SyntaxNode,
12653}
12654impl JsonBehaviorDefault {
12655 #[inline]
12656 pub fn expr(&self) -> Option<Expr> {
12657 support::child(&self.syntax)
12658 }
12659 #[inline]
12660 pub fn default_token(&self) -> Option<SyntaxToken> {
12661 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
12662 }
12663}
12664
12665#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12666pub struct JsonBehaviorEmptyArray {
12667 pub(crate) syntax: SyntaxNode,
12668}
12669impl JsonBehaviorEmptyArray {
12670 #[inline]
12671 pub fn array_token(&self) -> Option<SyntaxToken> {
12672 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
12673 }
12674 #[inline]
12675 pub fn empty_token(&self) -> Option<SyntaxToken> {
12676 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
12677 }
12678}
12679
12680#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12681pub struct JsonBehaviorEmptyObject {
12682 pub(crate) syntax: SyntaxNode,
12683}
12684impl JsonBehaviorEmptyObject {
12685 #[inline]
12686 pub fn empty_token(&self) -> Option<SyntaxToken> {
12687 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
12688 }
12689 #[inline]
12690 pub fn object_token(&self) -> Option<SyntaxToken> {
12691 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
12692 }
12693}
12694
12695#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12696pub struct JsonBehaviorError {
12697 pub(crate) syntax: SyntaxNode,
12698}
12699impl JsonBehaviorError {
12700 #[inline]
12701 pub fn error_token(&self) -> Option<SyntaxToken> {
12702 support::token(&self.syntax, SyntaxKind::ERROR_KW)
12703 }
12704}
12705
12706#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12707pub struct JsonBehaviorFalse {
12708 pub(crate) syntax: SyntaxNode,
12709}
12710impl JsonBehaviorFalse {
12711 #[inline]
12712 pub fn false_token(&self) -> Option<SyntaxToken> {
12713 support::token(&self.syntax, SyntaxKind::FALSE_KW)
12714 }
12715}
12716
12717#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12718pub struct JsonBehaviorNull {
12719 pub(crate) syntax: SyntaxNode,
12720}
12721impl JsonBehaviorNull {
12722 #[inline]
12723 pub fn null_token(&self) -> Option<SyntaxToken> {
12724 support::token(&self.syntax, SyntaxKind::NULL_KW)
12725 }
12726}
12727
12728#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12729pub struct JsonBehaviorTrue {
12730 pub(crate) syntax: SyntaxNode,
12731}
12732impl JsonBehaviorTrue {
12733 #[inline]
12734 pub fn true_token(&self) -> Option<SyntaxToken> {
12735 support::token(&self.syntax, SyntaxKind::TRUE_KW)
12736 }
12737}
12738
12739#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12740pub struct JsonBehaviorUnknown {
12741 pub(crate) syntax: SyntaxNode,
12742}
12743impl JsonBehaviorUnknown {
12744 #[inline]
12745 pub fn unknown_token(&self) -> Option<SyntaxToken> {
12746 support::token(&self.syntax, SyntaxKind::UNKNOWN_KW)
12747 }
12748}
12749
12750#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12751pub struct JsonEncodingClause {
12752 pub(crate) syntax: SyntaxNode,
12753}
12754impl JsonEncodingClause {
12755 #[inline]
12756 pub fn name_ref(&self) -> Option<NameRef> {
12757 support::child(&self.syntax)
12758 }
12759 #[inline]
12760 pub fn encoding_token(&self) -> Option<SyntaxToken> {
12761 support::token(&self.syntax, SyntaxKind::ENCODING_KW)
12762 }
12763}
12764
12765#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12766pub struct JsonExistsFn {
12767 pub(crate) syntax: SyntaxNode,
12768}
12769impl JsonExistsFn {
12770 #[inline]
12771 pub fn expr(&self) -> Option<Expr> {
12772 support::child(&self.syntax)
12773 }
12774 #[inline]
12775 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
12776 support::child(&self.syntax)
12777 }
12778 #[inline]
12779 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
12780 support::child(&self.syntax)
12781 }
12782 #[inline]
12783 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
12784 support::child(&self.syntax)
12785 }
12786 #[inline]
12787 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12788 support::token(&self.syntax, SyntaxKind::L_PAREN)
12789 }
12790 #[inline]
12791 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12792 support::token(&self.syntax, SyntaxKind::R_PAREN)
12793 }
12794 #[inline]
12795 pub fn comma_token(&self) -> Option<SyntaxToken> {
12796 support::token(&self.syntax, SyntaxKind::COMMA)
12797 }
12798 #[inline]
12799 pub fn json_exists_token(&self) -> Option<SyntaxToken> {
12800 support::token(&self.syntax, SyntaxKind::JSON_EXISTS_KW)
12801 }
12802}
12803
12804#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12805pub struct JsonExprFormat {
12806 pub(crate) syntax: SyntaxNode,
12807}
12808impl JsonExprFormat {
12809 #[inline]
12810 pub fn expr(&self) -> Option<Expr> {
12811 support::child(&self.syntax)
12812 }
12813 #[inline]
12814 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
12815 support::child(&self.syntax)
12816 }
12817}
12818
12819#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12820pub struct JsonFn {
12821 pub(crate) syntax: SyntaxNode,
12822}
12823impl JsonFn {
12824 #[inline]
12825 pub fn json_expr_format(&self) -> Option<JsonExprFormat> {
12826 support::child(&self.syntax)
12827 }
12828 #[inline]
12829 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
12830 support::child(&self.syntax)
12831 }
12832 #[inline]
12833 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12834 support::token(&self.syntax, SyntaxKind::L_PAREN)
12835 }
12836 #[inline]
12837 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12838 support::token(&self.syntax, SyntaxKind::R_PAREN)
12839 }
12840 #[inline]
12841 pub fn json_token(&self) -> Option<SyntaxToken> {
12842 support::token(&self.syntax, SyntaxKind::JSON_KW)
12843 }
12844}
12845
12846#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12847pub struct JsonFormatClause {
12848 pub(crate) syntax: SyntaxNode,
12849}
12850impl JsonFormatClause {
12851 #[inline]
12852 pub fn json_encoding_clause(&self) -> Option<JsonEncodingClause> {
12853 support::child(&self.syntax)
12854 }
12855 #[inline]
12856 pub fn format_token(&self) -> Option<SyntaxToken> {
12857 support::token(&self.syntax, SyntaxKind::FORMAT_KW)
12858 }
12859 #[inline]
12860 pub fn json_token(&self) -> Option<SyntaxToken> {
12861 support::token(&self.syntax, SyntaxKind::JSON_KW)
12862 }
12863}
12864
12865#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12866pub struct JsonKeyValue {
12867 pub(crate) syntax: SyntaxNode,
12868}
12869impl JsonKeyValue {
12870 #[inline]
12871 pub fn expr(&self) -> Option<Expr> {
12872 support::child(&self.syntax)
12873 }
12874 #[inline]
12875 pub fn json_value_expr(&self) -> Option<JsonValueExpr> {
12876 support::child(&self.syntax)
12877 }
12878 #[inline]
12879 pub fn colon_token(&self) -> Option<SyntaxToken> {
12880 support::token(&self.syntax, SyntaxKind::COLON)
12881 }
12882 #[inline]
12883 pub fn value_token(&self) -> Option<SyntaxToken> {
12884 support::token(&self.syntax, SyntaxKind::VALUE_KW)
12885 }
12886}
12887
12888#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12889pub struct JsonKeysUniqueClause {
12890 pub(crate) syntax: SyntaxNode,
12891}
12892impl JsonKeysUniqueClause {
12893 #[inline]
12894 pub fn keys_token(&self) -> Option<SyntaxToken> {
12895 support::token(&self.syntax, SyntaxKind::KEYS_KW)
12896 }
12897 #[inline]
12898 pub fn unique_token(&self) -> Option<SyntaxToken> {
12899 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
12900 }
12901 #[inline]
12902 pub fn with_token(&self) -> Option<SyntaxToken> {
12903 support::token(&self.syntax, SyntaxKind::WITH_KW)
12904 }
12905 #[inline]
12906 pub fn without_token(&self) -> Option<SyntaxToken> {
12907 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
12908 }
12909}
12910
12911#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12912pub struct JsonNullClause {
12913 pub(crate) syntax: SyntaxNode,
12914}
12915impl JsonNullClause {
12916 #[inline]
12917 pub fn absent_token(&self) -> Option<SyntaxToken> {
12918 support::token(&self.syntax, SyntaxKind::ABSENT_KW)
12919 }
12920 #[inline]
12921 pub fn null_token(&self) -> Option<SyntaxToken> {
12922 support::token(&self.syntax, SyntaxKind::NULL_KW)
12923 }
12924 #[inline]
12925 pub fn on_token(&self) -> Option<SyntaxToken> {
12926 support::token(&self.syntax, SyntaxKind::ON_KW)
12927 }
12928}
12929
12930#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12931pub struct JsonObjectAggFn {
12932 pub(crate) syntax: SyntaxNode,
12933}
12934impl JsonObjectAggFn {
12935 #[inline]
12936 pub fn json_key_value(&self) -> Option<JsonKeyValue> {
12937 support::child(&self.syntax)
12938 }
12939 #[inline]
12940 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
12941 support::child(&self.syntax)
12942 }
12943 #[inline]
12944 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
12945 support::child(&self.syntax)
12946 }
12947 #[inline]
12948 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
12949 support::child(&self.syntax)
12950 }
12951 #[inline]
12952 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12953 support::token(&self.syntax, SyntaxKind::L_PAREN)
12954 }
12955 #[inline]
12956 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12957 support::token(&self.syntax, SyntaxKind::R_PAREN)
12958 }
12959 #[inline]
12960 pub fn json_objectagg_token(&self) -> Option<SyntaxToken> {
12961 support::token(&self.syntax, SyntaxKind::JSON_OBJECTAGG_KW)
12962 }
12963}
12964
12965#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12966pub struct JsonObjectFn {
12967 pub(crate) syntax: SyntaxNode,
12968}
12969impl JsonObjectFn {
12970 #[inline]
12971 pub fn json_key_values(&self) -> AstChildren<JsonKeyValue> {
12972 support::children(&self.syntax)
12973 }
12974 #[inline]
12975 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
12976 support::child(&self.syntax)
12977 }
12978 #[inline]
12979 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
12980 support::child(&self.syntax)
12981 }
12982 #[inline]
12983 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
12984 support::child(&self.syntax)
12985 }
12986 #[inline]
12987 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12988 support::token(&self.syntax, SyntaxKind::L_PAREN)
12989 }
12990 #[inline]
12991 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12992 support::token(&self.syntax, SyntaxKind::R_PAREN)
12993 }
12994 #[inline]
12995 pub fn json_object_token(&self) -> Option<SyntaxToken> {
12996 support::token(&self.syntax, SyntaxKind::JSON_OBJECT_KW)
12997 }
12998}
12999
13000#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13001pub struct JsonOnEmptyClause {
13002 pub(crate) syntax: SyntaxNode,
13003}
13004impl JsonOnEmptyClause {
13005 #[inline]
13006 pub fn json_behavior(&self) -> Option<JsonBehavior> {
13007 support::child(&self.syntax)
13008 }
13009 #[inline]
13010 pub fn empty_token(&self) -> Option<SyntaxToken> {
13011 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
13012 }
13013 #[inline]
13014 pub fn on_token(&self) -> Option<SyntaxToken> {
13015 support::token(&self.syntax, SyntaxKind::ON_KW)
13016 }
13017}
13018
13019#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13020pub struct JsonOnErrorClause {
13021 pub(crate) syntax: SyntaxNode,
13022}
13023impl JsonOnErrorClause {
13024 #[inline]
13025 pub fn json_behavior(&self) -> Option<JsonBehavior> {
13026 support::child(&self.syntax)
13027 }
13028 #[inline]
13029 pub fn error_token(&self) -> Option<SyntaxToken> {
13030 support::token(&self.syntax, SyntaxKind::ERROR_KW)
13031 }
13032 #[inline]
13033 pub fn on_token(&self) -> Option<SyntaxToken> {
13034 support::token(&self.syntax, SyntaxKind::ON_KW)
13035 }
13036}
13037
13038#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13039pub struct JsonPassingArg {
13040 pub(crate) syntax: SyntaxNode,
13041}
13042impl JsonPassingArg {
13043 #[inline]
13044 pub fn expr(&self) -> Option<Expr> {
13045 support::child(&self.syntax)
13046 }
13047 #[inline]
13048 pub fn name(&self) -> Option<Name> {
13049 support::child(&self.syntax)
13050 }
13051 #[inline]
13052 pub fn as_token(&self) -> Option<SyntaxToken> {
13053 support::token(&self.syntax, SyntaxKind::AS_KW)
13054 }
13055}
13056
13057#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13058pub struct JsonPassingClause {
13059 pub(crate) syntax: SyntaxNode,
13060}
13061impl JsonPassingClause {
13062 #[inline]
13063 pub fn json_passing_args(&self) -> AstChildren<JsonPassingArg> {
13064 support::children(&self.syntax)
13065 }
13066 #[inline]
13067 pub fn passing_token(&self) -> Option<SyntaxToken> {
13068 support::token(&self.syntax, SyntaxKind::PASSING_KW)
13069 }
13070}
13071
13072#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13073pub struct JsonPathClause {
13074 pub(crate) syntax: SyntaxNode,
13075}
13076impl JsonPathClause {
13077 #[inline]
13078 pub fn expr(&self) -> Option<Expr> {
13079 support::child(&self.syntax)
13080 }
13081 #[inline]
13082 pub fn path_token(&self) -> Option<SyntaxToken> {
13083 support::token(&self.syntax, SyntaxKind::PATH_KW)
13084 }
13085}
13086
13087#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13088pub struct JsonQueryFn {
13089 pub(crate) syntax: SyntaxNode,
13090}
13091impl JsonQueryFn {
13092 #[inline]
13093 pub fn expr(&self) -> Option<Expr> {
13094 support::child(&self.syntax)
13095 }
13096 #[inline]
13097 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
13098 support::child(&self.syntax)
13099 }
13100 #[inline]
13101 pub fn json_on_empty_clause(&self) -> Option<JsonOnEmptyClause> {
13102 support::child(&self.syntax)
13103 }
13104 #[inline]
13105 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
13106 support::child(&self.syntax)
13107 }
13108 #[inline]
13109 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
13110 support::child(&self.syntax)
13111 }
13112 #[inline]
13113 pub fn json_quotes_clause(&self) -> Option<JsonQuotesClause> {
13114 support::child(&self.syntax)
13115 }
13116 #[inline]
13117 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
13118 support::child(&self.syntax)
13119 }
13120 #[inline]
13121 pub fn json_wrapper_behavior_clause(&self) -> Option<JsonWrapperBehaviorClause> {
13122 support::child(&self.syntax)
13123 }
13124 #[inline]
13125 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
13126 support::token(&self.syntax, SyntaxKind::L_PAREN)
13127 }
13128 #[inline]
13129 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
13130 support::token(&self.syntax, SyntaxKind::R_PAREN)
13131 }
13132 #[inline]
13133 pub fn comma_token(&self) -> Option<SyntaxToken> {
13134 support::token(&self.syntax, SyntaxKind::COMMA)
13135 }
13136 #[inline]
13137 pub fn json_query_token(&self) -> Option<SyntaxToken> {
13138 support::token(&self.syntax, SyntaxKind::JSON_QUERY_KW)
13139 }
13140}
13141
13142#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13143pub struct JsonQuotesClause {
13144 pub(crate) syntax: SyntaxNode,
13145}
13146impl JsonQuotesClause {
13147 #[inline]
13148 pub fn keep_token(&self) -> Option<SyntaxToken> {
13149 support::token(&self.syntax, SyntaxKind::KEEP_KW)
13150 }
13151 #[inline]
13152 pub fn omit_token(&self) -> Option<SyntaxToken> {
13153 support::token(&self.syntax, SyntaxKind::OMIT_KW)
13154 }
13155 #[inline]
13156 pub fn on_token(&self) -> Option<SyntaxToken> {
13157 support::token(&self.syntax, SyntaxKind::ON_KW)
13158 }
13159 #[inline]
13160 pub fn quotes_token(&self) -> Option<SyntaxToken> {
13161 support::token(&self.syntax, SyntaxKind::QUOTES_KW)
13162 }
13163 #[inline]
13164 pub fn scalar_token(&self) -> Option<SyntaxToken> {
13165 support::token(&self.syntax, SyntaxKind::SCALAR_KW)
13166 }
13167 #[inline]
13168 pub fn string_token(&self) -> Option<SyntaxToken> {
13169 support::token(&self.syntax, SyntaxKind::STRING_KW)
13170 }
13171}
13172
13173#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13174pub struct JsonReturningClause {
13175 pub(crate) syntax: SyntaxNode,
13176}
13177impl JsonReturningClause {
13178 #[inline]
13179 pub fn ty(&self) -> Option<Type> {
13180 support::child(&self.syntax)
13181 }
13182 #[inline]
13183 pub fn returning_token(&self) -> Option<SyntaxToken> {
13184 support::token(&self.syntax, SyntaxKind::RETURNING_KW)
13185 }
13186}
13187
13188#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13189pub struct JsonScalarFn {
13190 pub(crate) syntax: SyntaxNode,
13191}
13192impl JsonScalarFn {
13193 #[inline]
13194 pub fn expr(&self) -> Option<Expr> {
13195 support::child(&self.syntax)
13196 }
13197 #[inline]
13198 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
13199 support::token(&self.syntax, SyntaxKind::L_PAREN)
13200 }
13201 #[inline]
13202 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
13203 support::token(&self.syntax, SyntaxKind::R_PAREN)
13204 }
13205 #[inline]
13206 pub fn json_scalar_token(&self) -> Option<SyntaxToken> {
13207 support::token(&self.syntax, SyntaxKind::JSON_SCALAR_KW)
13208 }
13209}
13210
13211#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13212pub struct JsonSelectFormat {
13213 pub(crate) syntax: SyntaxNode,
13214}
13215impl JsonSelectFormat {
13216 #[inline]
13217 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
13218 support::child(&self.syntax)
13219 }
13220 #[inline]
13221 pub fn select_variant(&self) -> Option<SelectVariant> {
13222 support::child(&self.syntax)
13223 }
13224}
13225
13226#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13227pub struct JsonSerializeFn {
13228 pub(crate) syntax: SyntaxNode,
13229}
13230impl JsonSerializeFn {
13231 #[inline]
13232 pub fn expr(&self) -> Option<Expr> {
13233 support::child(&self.syntax)
13234 }
13235 #[inline]
13236 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
13237 support::child(&self.syntax)
13238 }
13239 #[inline]
13240 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
13241 support::child(&self.syntax)
13242 }
13243 #[inline]
13244 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
13245 support::token(&self.syntax, SyntaxKind::L_PAREN)
13246 }
13247 #[inline]
13248 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
13249 support::token(&self.syntax, SyntaxKind::R_PAREN)
13250 }
13251 #[inline]
13252 pub fn json_serialize_token(&self) -> Option<SyntaxToken> {
13253 support::token(&self.syntax, SyntaxKind::JSON_SERIALIZE_KW)
13254 }
13255}
13256
13257#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13258pub struct JsonTable {
13259 pub(crate) syntax: SyntaxNode,
13260}
13261impl JsonTable {
13262 #[inline]
13263 pub fn expr(&self) -> Option<Expr> {
13264 support::child(&self.syntax)
13265 }
13266 #[inline]
13267 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
13268 support::child(&self.syntax)
13269 }
13270 #[inline]
13271 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
13272 support::child(&self.syntax)
13273 }
13274 #[inline]
13275 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
13276 support::child(&self.syntax)
13277 }
13278 #[inline]
13279 pub fn json_table_column_list(&self) -> Option<JsonTableColumnList> {
13280 support::child(&self.syntax)
13281 }
13282 #[inline]
13283 pub fn name(&self) -> Option<Name> {
13284 support::child(&self.syntax)
13285 }
13286 #[inline]
13287 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
13288 support::token(&self.syntax, SyntaxKind::L_PAREN)
13289 }
13290 #[inline]
13291 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
13292 support::token(&self.syntax, SyntaxKind::R_PAREN)
13293 }
13294 #[inline]
13295 pub fn comma_token(&self) -> Option<SyntaxToken> {
13296 support::token(&self.syntax, SyntaxKind::COMMA)
13297 }
13298 #[inline]
13299 pub fn as_token(&self) -> Option<SyntaxToken> {
13300 support::token(&self.syntax, SyntaxKind::AS_KW)
13301 }
13302 #[inline]
13303 pub fn json_table_token(&self) -> Option<SyntaxToken> {
13304 support::token(&self.syntax, SyntaxKind::JSON_TABLE_KW)
13305 }
13306}
13307
13308#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13309pub struct JsonTableColumn {
13310 pub(crate) syntax: SyntaxNode,
13311}
13312impl JsonTableColumn {
13313 #[inline]
13314 pub fn expr(&self) -> Option<Expr> {
13315 support::child(&self.syntax)
13316 }
13317 #[inline]
13318 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
13319 support::child(&self.syntax)
13320 }
13321 #[inline]
13322 pub fn json_on_empty_clause(&self) -> Option<JsonOnEmptyClause> {
13323 support::child(&self.syntax)
13324 }
13325 #[inline]
13326 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
13327 support::child(&self.syntax)
13328 }
13329 #[inline]
13330 pub fn json_path_clause(&self) -> Option<JsonPathClause> {
13331 support::child(&self.syntax)
13332 }
13333 #[inline]
13334 pub fn json_quotes_clause(&self) -> Option<JsonQuotesClause> {
13335 support::child(&self.syntax)
13336 }
13337 #[inline]
13338 pub fn json_table_column_list(&self) -> Option<JsonTableColumnList> {
13339 support::child(&self.syntax)
13340 }
13341 #[inline]
13342 pub fn json_wrapper_behavior_clause(&self) -> Option<JsonWrapperBehaviorClause> {
13343 support::child(&self.syntax)
13344 }
13345 #[inline]
13346 pub fn name(&self) -> Option<Name> {
13347 support::child(&self.syntax)
13348 }
13349 #[inline]
13350 pub fn ty(&self) -> Option<Type> {
13351 support::child(&self.syntax)
13352 }
13353 #[inline]
13354 pub fn as_token(&self) -> Option<SyntaxToken> {
13355 support::token(&self.syntax, SyntaxKind::AS_KW)
13356 }
13357 #[inline]
13358 pub fn exists_token(&self) -> Option<SyntaxToken> {
13359 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
13360 }
13361 #[inline]
13362 pub fn for_token(&self) -> Option<SyntaxToken> {
13363 support::token(&self.syntax, SyntaxKind::FOR_KW)
13364 }
13365 #[inline]
13366 pub fn nested_token(&self) -> Option<SyntaxToken> {
13367 support::token(&self.syntax, SyntaxKind::NESTED_KW)
13368 }
13369 #[inline]
13370 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
13371 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
13372 }
13373 #[inline]
13374 pub fn path_token(&self) -> Option<SyntaxToken> {
13375 support::token(&self.syntax, SyntaxKind::PATH_KW)
13376 }
13377}
13378
13379#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13380pub struct JsonTableColumnList {
13381 pub(crate) syntax: SyntaxNode,
13382}
13383impl JsonTableColumnList {
13384 #[inline]
13385 pub fn json_table_columns(&self) -> AstChildren<JsonTableColumn> {
13386 support::children(&self.syntax)
13387 }
13388 #[inline]
13389 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
13390 support::token(&self.syntax, SyntaxKind::L_PAREN)
13391 }
13392 #[inline]
13393 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
13394 support::token(&self.syntax, SyntaxKind::R_PAREN)
13395 }
13396 #[inline]
13397 pub fn columns_token(&self) -> Option<SyntaxToken> {
13398 support::token(&self.syntax, SyntaxKind::COLUMNS_KW)
13399 }
13400}
13401
13402#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13403pub struct JsonValueExpr {
13404 pub(crate) syntax: SyntaxNode,
13405}
13406impl JsonValueExpr {
13407 #[inline]
13408 pub fn expr(&self) -> Option<Expr> {
13409 support::child(&self.syntax)
13410 }
13411 #[inline]
13412 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
13413 support::child(&self.syntax)
13414 }
13415}
13416
13417#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13418pub struct JsonValueFn {
13419 pub(crate) syntax: SyntaxNode,
13420}
13421impl JsonValueFn {
13422 #[inline]
13423 pub fn expr(&self) -> Option<Expr> {
13424 support::child(&self.syntax)
13425 }
13426 #[inline]
13427 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
13428 support::child(&self.syntax)
13429 }
13430 #[inline]
13431 pub fn json_on_empty_clause(&self) -> Option<JsonOnEmptyClause> {
13432 support::child(&self.syntax)
13433 }
13434 #[inline]
13435 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
13436 support::child(&self.syntax)
13437 }
13438 #[inline]
13439 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
13440 support::child(&self.syntax)
13441 }
13442 #[inline]
13443 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
13444 support::child(&self.syntax)
13445 }
13446 #[inline]
13447 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
13448 support::token(&self.syntax, SyntaxKind::L_PAREN)
13449 }
13450 #[inline]
13451 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
13452 support::token(&self.syntax, SyntaxKind::R_PAREN)
13453 }
13454 #[inline]
13455 pub fn comma_token(&self) -> Option<SyntaxToken> {
13456 support::token(&self.syntax, SyntaxKind::COMMA)
13457 }
13458 #[inline]
13459 pub fn json_value_token(&self) -> Option<SyntaxToken> {
13460 support::token(&self.syntax, SyntaxKind::JSON_VALUE_KW)
13461 }
13462}
13463
13464#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13465pub struct JsonWrapperBehaviorClause {
13466 pub(crate) syntax: SyntaxNode,
13467}
13468impl JsonWrapperBehaviorClause {
13469 #[inline]
13470 pub fn array_token(&self) -> Option<SyntaxToken> {
13471 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
13472 }
13473 #[inline]
13474 pub fn conditional_token(&self) -> Option<SyntaxToken> {
13475 support::token(&self.syntax, SyntaxKind::CONDITIONAL_KW)
13476 }
13477 #[inline]
13478 pub fn unconditional_token(&self) -> Option<SyntaxToken> {
13479 support::token(&self.syntax, SyntaxKind::UNCONDITIONAL_KW)
13480 }
13481 #[inline]
13482 pub fn with_token(&self) -> Option<SyntaxToken> {
13483 support::token(&self.syntax, SyntaxKind::WITH_KW)
13484 }
13485 #[inline]
13486 pub fn without_token(&self) -> Option<SyntaxToken> {
13487 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
13488 }
13489 #[inline]
13490 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
13491 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
13492 }
13493}
13494
13495#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13496pub struct LabelAndProperties {
13497 pub(crate) syntax: SyntaxNode,
13498}
13499impl LabelAndProperties {
13500 #[inline]
13501 pub fn element_table_properties(&self) -> Option<ElementTableProperties> {
13502 support::child(&self.syntax)
13503 }
13504 #[inline]
13505 pub fn name(&self) -> Option<Name> {
13506 support::child(&self.syntax)
13507 }
13508 #[inline]
13509 pub fn default_token(&self) -> Option<SyntaxToken> {
13510 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
13511 }
13512 #[inline]
13513 pub fn label_token(&self) -> Option<SyntaxToken> {
13514 support::token(&self.syntax, SyntaxKind::LABEL_KW)
13515 }
13516}
13517
13518#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13519pub struct LabelAndPropertiesList {
13520 pub(crate) syntax: SyntaxNode,
13521}
13522impl LabelAndPropertiesList {
13523 #[inline]
13524 pub fn label_and_propertiess(&self) -> AstChildren<LabelAndProperties> {
13525 support::children(&self.syntax)
13526 }
13527}
13528
13529#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13530pub struct LanguageFuncOption {
13531 pub(crate) syntax: SyntaxNode,
13532}
13533impl LanguageFuncOption {
13534 #[inline]
13535 pub fn name_ref(&self) -> Option<NameRef> {
13536 support::child(&self.syntax)
13537 }
13538 #[inline]
13539 pub fn language_token(&self) -> Option<SyntaxToken> {
13540 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
13541 }
13542}
13543
13544#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13545pub struct Last {
13546 pub(crate) syntax: SyntaxNode,
13547}
13548impl Last {
13549 #[inline]
13550 pub fn last_token(&self) -> Option<SyntaxToken> {
13551 support::token(&self.syntax, SyntaxKind::LAST_KW)
13552 }
13553}
13554
13555#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13556pub struct LeakproofFuncOption {
13557 pub(crate) syntax: SyntaxNode,
13558}
13559impl LeakproofFuncOption {
13560 #[inline]
13561 pub fn leakproof_token(&self) -> Option<SyntaxToken> {
13562 support::token(&self.syntax, SyntaxKind::LEAKPROOF_KW)
13563 }
13564 #[inline]
13565 pub fn not_token(&self) -> Option<SyntaxToken> {
13566 support::token(&self.syntax, SyntaxKind::NOT_KW)
13567 }
13568}
13569
13570#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13571pub struct LikeClause {
13572 pub(crate) syntax: SyntaxNode,
13573}
13574impl LikeClause {
13575 #[inline]
13576 pub fn like_options(&self) -> AstChildren<LikeOption> {
13577 support::children(&self.syntax)
13578 }
13579 #[inline]
13580 pub fn path(&self) -> Option<Path> {
13581 support::child(&self.syntax)
13582 }
13583 #[inline]
13584 pub fn like_token(&self) -> Option<SyntaxToken> {
13585 support::token(&self.syntax, SyntaxKind::LIKE_KW)
13586 }
13587}
13588
13589#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13590pub struct LikeOption {
13591 pub(crate) syntax: SyntaxNode,
13592}
13593impl LikeOption {
13594 #[inline]
13595 pub fn all_token(&self) -> Option<SyntaxToken> {
13596 support::token(&self.syntax, SyntaxKind::ALL_KW)
13597 }
13598 #[inline]
13599 pub fn comments_token(&self) -> Option<SyntaxToken> {
13600 support::token(&self.syntax, SyntaxKind::COMMENTS_KW)
13601 }
13602 #[inline]
13603 pub fn compression_token(&self) -> Option<SyntaxToken> {
13604 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
13605 }
13606 #[inline]
13607 pub fn constraints_token(&self) -> Option<SyntaxToken> {
13608 support::token(&self.syntax, SyntaxKind::CONSTRAINTS_KW)
13609 }
13610 #[inline]
13611 pub fn defaults_token(&self) -> Option<SyntaxToken> {
13612 support::token(&self.syntax, SyntaxKind::DEFAULTS_KW)
13613 }
13614 #[inline]
13615 pub fn excluding_token(&self) -> Option<SyntaxToken> {
13616 support::token(&self.syntax, SyntaxKind::EXCLUDING_KW)
13617 }
13618 #[inline]
13619 pub fn generated_token(&self) -> Option<SyntaxToken> {
13620 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
13621 }
13622 #[inline]
13623 pub fn identity_token(&self) -> Option<SyntaxToken> {
13624 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
13625 }
13626 #[inline]
13627 pub fn including_token(&self) -> Option<SyntaxToken> {
13628 support::token(&self.syntax, SyntaxKind::INCLUDING_KW)
13629 }
13630 #[inline]
13631 pub fn indexes_token(&self) -> Option<SyntaxToken> {
13632 support::token(&self.syntax, SyntaxKind::INDEXES_KW)
13633 }
13634 #[inline]
13635 pub fn statistics_token(&self) -> Option<SyntaxToken> {
13636 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
13637 }
13638 #[inline]
13639 pub fn storage_token(&self) -> Option<SyntaxToken> {
13640 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
13641 }
13642}
13643
13644#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13645pub struct LimitClause {
13646 pub(crate) syntax: SyntaxNode,
13647}
13648impl LimitClause {
13649 #[inline]
13650 pub fn expr(&self) -> Option<Expr> {
13651 support::child(&self.syntax)
13652 }
13653 #[inline]
13654 pub fn all_token(&self) -> Option<SyntaxToken> {
13655 support::token(&self.syntax, SyntaxKind::ALL_KW)
13656 }
13657 #[inline]
13658 pub fn limit_token(&self) -> Option<SyntaxToken> {
13659 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
13660 }
13661}
13662
13663#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13664pub struct LimitToTables {
13665 pub(crate) syntax: SyntaxNode,
13666}
13667impl LimitToTables {
13668 #[inline]
13669 pub fn name_refs(&self) -> AstChildren<NameRef> {
13670 support::children(&self.syntax)
13671 }
13672 #[inline]
13673 pub fn limit_token(&self) -> Option<SyntaxToken> {
13674 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
13675 }
13676 #[inline]
13677 pub fn to_token(&self) -> Option<SyntaxToken> {
13678 support::token(&self.syntax, SyntaxKind::TO_KW)
13679 }
13680}
13681
13682#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13683pub struct Listen {
13684 pub(crate) syntax: SyntaxNode,
13685}
13686impl Listen {
13687 #[inline]
13688 pub fn name(&self) -> Option<Name> {
13689 support::child(&self.syntax)
13690 }
13691 #[inline]
13692 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
13693 support::token(&self.syntax, SyntaxKind::SEMICOLON)
13694 }
13695 #[inline]
13696 pub fn listen_token(&self) -> Option<SyntaxToken> {
13697 support::token(&self.syntax, SyntaxKind::LISTEN_KW)
13698 }
13699}
13700
13701#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13702pub struct Literal {
13703 pub(crate) syntax: SyntaxNode,
13704}
13705impl Literal {}
13706
13707#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13708pub struct Load {
13709 pub(crate) syntax: SyntaxNode,
13710}
13711impl Load {
13712 #[inline]
13713 pub fn literal(&self) -> Option<Literal> {
13714 support::child(&self.syntax)
13715 }
13716 #[inline]
13717 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
13718 support::token(&self.syntax, SyntaxKind::SEMICOLON)
13719 }
13720 #[inline]
13721 pub fn load_token(&self) -> Option<SyntaxToken> {
13722 support::token(&self.syntax, SyntaxKind::LOAD_KW)
13723 }
13724}
13725
13726#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13727pub struct Lock {
13728 pub(crate) syntax: SyntaxNode,
13729}
13730impl Lock {
13731 #[inline]
13732 pub fn lock_mode(&self) -> Option<LockMode> {
13733 support::child(&self.syntax)
13734 }
13735 #[inline]
13736 pub fn table_list(&self) -> Option<TableList> {
13737 support::child(&self.syntax)
13738 }
13739 #[inline]
13740 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
13741 support::token(&self.syntax, SyntaxKind::SEMICOLON)
13742 }
13743 #[inline]
13744 pub fn in_token(&self) -> Option<SyntaxToken> {
13745 support::token(&self.syntax, SyntaxKind::IN_KW)
13746 }
13747 #[inline]
13748 pub fn lock_token(&self) -> Option<SyntaxToken> {
13749 support::token(&self.syntax, SyntaxKind::LOCK_KW)
13750 }
13751 #[inline]
13752 pub fn mode_token(&self) -> Option<SyntaxToken> {
13753 support::token(&self.syntax, SyntaxKind::MODE_KW)
13754 }
13755 #[inline]
13756 pub fn nowait_token(&self) -> Option<SyntaxToken> {
13757 support::token(&self.syntax, SyntaxKind::NOWAIT_KW)
13758 }
13759 #[inline]
13760 pub fn table_token(&self) -> Option<SyntaxToken> {
13761 support::token(&self.syntax, SyntaxKind::TABLE_KW)
13762 }
13763}
13764
13765#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13766pub struct LockingClause {
13767 pub(crate) syntax: SyntaxNode,
13768}
13769impl LockingClause {
13770 #[inline]
13771 pub fn exprs(&self) -> AstChildren<Expr> {
13772 support::children(&self.syntax)
13773 }
13774 #[inline]
13775 pub fn for_key_share(&self) -> Option<ForKeyShare> {
13776 support::child(&self.syntax)
13777 }
13778 #[inline]
13779 pub fn for_no_key_update(&self) -> Option<ForNoKeyUpdate> {
13780 support::child(&self.syntax)
13781 }
13782 #[inline]
13783 pub fn for_share(&self) -> Option<ForShare> {
13784 support::child(&self.syntax)
13785 }
13786 #[inline]
13787 pub fn for_update(&self) -> Option<ForUpdate> {
13788 support::child(&self.syntax)
13789 }
13790 #[inline]
13791 pub fn for_token(&self) -> Option<SyntaxToken> {
13792 support::token(&self.syntax, SyntaxKind::FOR_KW)
13793 }
13794 #[inline]
13795 pub fn locked_token(&self) -> Option<SyntaxToken> {
13796 support::token(&self.syntax, SyntaxKind::LOCKED_KW)
13797 }
13798 #[inline]
13799 pub fn nowait_token(&self) -> Option<SyntaxToken> {
13800 support::token(&self.syntax, SyntaxKind::NOWAIT_KW)
13801 }
13802 #[inline]
13803 pub fn of_token(&self) -> Option<SyntaxToken> {
13804 support::token(&self.syntax, SyntaxKind::OF_KW)
13805 }
13806 #[inline]
13807 pub fn skip_token(&self) -> Option<SyntaxToken> {
13808 support::token(&self.syntax, SyntaxKind::SKIP_KW)
13809 }
13810}
13811
13812#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13813pub struct Lteq {
13814 pub(crate) syntax: SyntaxNode,
13815}
13816impl Lteq {
13817 #[inline]
13818 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
13819 support::token(&self.syntax, SyntaxKind::L_ANGLE)
13820 }
13821 #[inline]
13822 pub fn eq_token(&self) -> Option<SyntaxToken> {
13823 support::token(&self.syntax, SyntaxKind::EQ)
13824 }
13825}
13826
13827#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13828pub struct MatchFull {
13829 pub(crate) syntax: SyntaxNode,
13830}
13831impl MatchFull {
13832 #[inline]
13833 pub fn full_token(&self) -> Option<SyntaxToken> {
13834 support::token(&self.syntax, SyntaxKind::FULL_KW)
13835 }
13836 #[inline]
13837 pub fn match_token(&self) -> Option<SyntaxToken> {
13838 support::token(&self.syntax, SyntaxKind::MATCH_KW)
13839 }
13840}
13841
13842#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13843pub struct MatchPartial {
13844 pub(crate) syntax: SyntaxNode,
13845}
13846impl MatchPartial {
13847 #[inline]
13848 pub fn match_token(&self) -> Option<SyntaxToken> {
13849 support::token(&self.syntax, SyntaxKind::MATCH_KW)
13850 }
13851 #[inline]
13852 pub fn partial_token(&self) -> Option<SyntaxToken> {
13853 support::token(&self.syntax, SyntaxKind::PARTIAL_KW)
13854 }
13855}
13856
13857#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13858pub struct MatchSimple {
13859 pub(crate) syntax: SyntaxNode,
13860}
13861impl MatchSimple {
13862 #[inline]
13863 pub fn match_token(&self) -> Option<SyntaxToken> {
13864 support::token(&self.syntax, SyntaxKind::MATCH_KW)
13865 }
13866 #[inline]
13867 pub fn simple_token(&self) -> Option<SyntaxToken> {
13868 support::token(&self.syntax, SyntaxKind::SIMPLE_KW)
13869 }
13870}
13871
13872#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13873pub struct Materialized {
13874 pub(crate) syntax: SyntaxNode,
13875}
13876impl Materialized {
13877 #[inline]
13878 pub fn materialized_token(&self) -> Option<SyntaxToken> {
13879 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
13880 }
13881}
13882
13883#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13884pub struct Merge {
13885 pub(crate) syntax: SyntaxNode,
13886}
13887impl Merge {
13888 #[inline]
13889 pub fn alias(&self) -> Option<Alias> {
13890 support::child(&self.syntax)
13891 }
13892 #[inline]
13893 pub fn merge_when_clauses(&self) -> AstChildren<MergeWhenClause> {
13894 support::children(&self.syntax)
13895 }
13896 #[inline]
13897 pub fn relation_name(&self) -> Option<RelationName> {
13898 support::child(&self.syntax)
13899 }
13900 #[inline]
13901 pub fn returning_clause(&self) -> Option<ReturningClause> {
13902 support::child(&self.syntax)
13903 }
13904 #[inline]
13905 pub fn using_on_clause(&self) -> Option<UsingOnClause> {
13906 support::child(&self.syntax)
13907 }
13908 #[inline]
13909 pub fn with_clause(&self) -> Option<WithClause> {
13910 support::child(&self.syntax)
13911 }
13912 #[inline]
13913 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
13914 support::token(&self.syntax, SyntaxKind::SEMICOLON)
13915 }
13916 #[inline]
13917 pub fn into_token(&self) -> Option<SyntaxToken> {
13918 support::token(&self.syntax, SyntaxKind::INTO_KW)
13919 }
13920 #[inline]
13921 pub fn merge_token(&self) -> Option<SyntaxToken> {
13922 support::token(&self.syntax, SyntaxKind::MERGE_KW)
13923 }
13924}
13925
13926#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13927pub struct MergeDelete {
13928 pub(crate) syntax: SyntaxNode,
13929}
13930impl MergeDelete {
13931 #[inline]
13932 pub fn delete_token(&self) -> Option<SyntaxToken> {
13933 support::token(&self.syntax, SyntaxKind::DELETE_KW)
13934 }
13935}
13936
13937#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13938pub struct MergeDoNothing {
13939 pub(crate) syntax: SyntaxNode,
13940}
13941impl MergeDoNothing {
13942 #[inline]
13943 pub fn do_token(&self) -> Option<SyntaxToken> {
13944 support::token(&self.syntax, SyntaxKind::DO_KW)
13945 }
13946 #[inline]
13947 pub fn nothing_token(&self) -> Option<SyntaxToken> {
13948 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
13949 }
13950}
13951
13952#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13953pub struct MergeInsert {
13954 pub(crate) syntax: SyntaxNode,
13955}
13956impl MergeInsert {
13957 #[inline]
13958 pub fn column_list(&self) -> Option<ColumnList> {
13959 support::child(&self.syntax)
13960 }
13961 #[inline]
13962 pub fn values(&self) -> Option<Values> {
13963 support::child(&self.syntax)
13964 }
13965 #[inline]
13966 pub fn default_token(&self) -> Option<SyntaxToken> {
13967 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
13968 }
13969 #[inline]
13970 pub fn insert_token(&self) -> Option<SyntaxToken> {
13971 support::token(&self.syntax, SyntaxKind::INSERT_KW)
13972 }
13973 #[inline]
13974 pub fn overriding_token(&self) -> Option<SyntaxToken> {
13975 support::token(&self.syntax, SyntaxKind::OVERRIDING_KW)
13976 }
13977 #[inline]
13978 pub fn system_token(&self) -> Option<SyntaxToken> {
13979 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
13980 }
13981 #[inline]
13982 pub fn user_token(&self) -> Option<SyntaxToken> {
13983 support::token(&self.syntax, SyntaxKind::USER_KW)
13984 }
13985 #[inline]
13986 pub fn values_token(&self) -> Option<SyntaxToken> {
13987 support::token(&self.syntax, SyntaxKind::VALUES_KW)
13988 }
13989}
13990
13991#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13992pub struct MergePartitions {
13993 pub(crate) syntax: SyntaxNode,
13994}
13995impl MergePartitions {
13996 #[inline]
13997 pub fn path(&self) -> Option<Path> {
13998 support::child(&self.syntax)
13999 }
14000 #[inline]
14001 pub fn path_list(&self) -> Option<PathList> {
14002 support::child(&self.syntax)
14003 }
14004 #[inline]
14005 pub fn into_token(&self) -> Option<SyntaxToken> {
14006 support::token(&self.syntax, SyntaxKind::INTO_KW)
14007 }
14008 #[inline]
14009 pub fn merge_token(&self) -> Option<SyntaxToken> {
14010 support::token(&self.syntax, SyntaxKind::MERGE_KW)
14011 }
14012 #[inline]
14013 pub fn partitions_token(&self) -> Option<SyntaxToken> {
14014 support::token(&self.syntax, SyntaxKind::PARTITIONS_KW)
14015 }
14016}
14017
14018#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14019pub struct MergeUpdate {
14020 pub(crate) syntax: SyntaxNode,
14021}
14022impl MergeUpdate {
14023 #[inline]
14024 pub fn set_clause(&self) -> Option<SetClause> {
14025 support::child(&self.syntax)
14026 }
14027 #[inline]
14028 pub fn set_token(&self) -> Option<SyntaxToken> {
14029 support::token(&self.syntax, SyntaxKind::SET_KW)
14030 }
14031 #[inline]
14032 pub fn update_token(&self) -> Option<SyntaxToken> {
14033 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
14034 }
14035}
14036
14037#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14038pub struct MergeWhenMatched {
14039 pub(crate) syntax: SyntaxNode,
14040}
14041impl MergeWhenMatched {
14042 #[inline]
14043 pub fn expr(&self) -> Option<Expr> {
14044 support::child(&self.syntax)
14045 }
14046 #[inline]
14047 pub fn merge_action(&self) -> Option<MergeAction> {
14048 support::child(&self.syntax)
14049 }
14050 #[inline]
14051 pub fn and_token(&self) -> Option<SyntaxToken> {
14052 support::token(&self.syntax, SyntaxKind::AND_KW)
14053 }
14054 #[inline]
14055 pub fn matched_token(&self) -> Option<SyntaxToken> {
14056 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
14057 }
14058 #[inline]
14059 pub fn then_token(&self) -> Option<SyntaxToken> {
14060 support::token(&self.syntax, SyntaxKind::THEN_KW)
14061 }
14062 #[inline]
14063 pub fn when_token(&self) -> Option<SyntaxToken> {
14064 support::token(&self.syntax, SyntaxKind::WHEN_KW)
14065 }
14066}
14067
14068#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14069pub struct MergeWhenNotMatchedSource {
14070 pub(crate) syntax: SyntaxNode,
14071}
14072impl MergeWhenNotMatchedSource {
14073 #[inline]
14074 pub fn expr(&self) -> Option<Expr> {
14075 support::child(&self.syntax)
14076 }
14077 #[inline]
14078 pub fn merge_action(&self) -> Option<MergeAction> {
14079 support::child(&self.syntax)
14080 }
14081 #[inline]
14082 pub fn and_token(&self) -> Option<SyntaxToken> {
14083 support::token(&self.syntax, SyntaxKind::AND_KW)
14084 }
14085 #[inline]
14086 pub fn by_token(&self) -> Option<SyntaxToken> {
14087 support::token(&self.syntax, SyntaxKind::BY_KW)
14088 }
14089 #[inline]
14090 pub fn matched_token(&self) -> Option<SyntaxToken> {
14091 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
14092 }
14093 #[inline]
14094 pub fn not_token(&self) -> Option<SyntaxToken> {
14095 support::token(&self.syntax, SyntaxKind::NOT_KW)
14096 }
14097 #[inline]
14098 pub fn source_token(&self) -> Option<SyntaxToken> {
14099 support::token(&self.syntax, SyntaxKind::SOURCE_KW)
14100 }
14101 #[inline]
14102 pub fn then_token(&self) -> Option<SyntaxToken> {
14103 support::token(&self.syntax, SyntaxKind::THEN_KW)
14104 }
14105 #[inline]
14106 pub fn when_token(&self) -> Option<SyntaxToken> {
14107 support::token(&self.syntax, SyntaxKind::WHEN_KW)
14108 }
14109}
14110
14111#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14112pub struct MergeWhenNotMatchedTarget {
14113 pub(crate) syntax: SyntaxNode,
14114}
14115impl MergeWhenNotMatchedTarget {
14116 #[inline]
14117 pub fn expr(&self) -> Option<Expr> {
14118 support::child(&self.syntax)
14119 }
14120 #[inline]
14121 pub fn merge_action(&self) -> Option<MergeAction> {
14122 support::child(&self.syntax)
14123 }
14124 #[inline]
14125 pub fn and_token(&self) -> Option<SyntaxToken> {
14126 support::token(&self.syntax, SyntaxKind::AND_KW)
14127 }
14128 #[inline]
14129 pub fn by_token(&self) -> Option<SyntaxToken> {
14130 support::token(&self.syntax, SyntaxKind::BY_KW)
14131 }
14132 #[inline]
14133 pub fn matched_token(&self) -> Option<SyntaxToken> {
14134 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
14135 }
14136 #[inline]
14137 pub fn not_token(&self) -> Option<SyntaxToken> {
14138 support::token(&self.syntax, SyntaxKind::NOT_KW)
14139 }
14140 #[inline]
14141 pub fn target_token(&self) -> Option<SyntaxToken> {
14142 support::token(&self.syntax, SyntaxKind::TARGET_KW)
14143 }
14144 #[inline]
14145 pub fn then_token(&self) -> Option<SyntaxToken> {
14146 support::token(&self.syntax, SyntaxKind::THEN_KW)
14147 }
14148 #[inline]
14149 pub fn when_token(&self) -> Option<SyntaxToken> {
14150 support::token(&self.syntax, SyntaxKind::WHEN_KW)
14151 }
14152}
14153
14154#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14155pub struct Move {
14156 pub(crate) syntax: SyntaxNode,
14157}
14158impl Move {
14159 #[inline]
14160 pub fn absolute(&self) -> Option<Absolute> {
14161 support::child(&self.syntax)
14162 }
14163 #[inline]
14164 pub fn all(&self) -> Option<All> {
14165 support::child(&self.syntax)
14166 }
14167 #[inline]
14168 pub fn backward(&self) -> Option<Backward> {
14169 support::child(&self.syntax)
14170 }
14171 #[inline]
14172 pub fn expr(&self) -> Option<Expr> {
14173 support::child(&self.syntax)
14174 }
14175 #[inline]
14176 pub fn first(&self) -> Option<First> {
14177 support::child(&self.syntax)
14178 }
14179 #[inline]
14180 pub fn forward(&self) -> Option<Forward> {
14181 support::child(&self.syntax)
14182 }
14183 #[inline]
14184 pub fn last(&self) -> Option<Last> {
14185 support::child(&self.syntax)
14186 }
14187 #[inline]
14188 pub fn name_ref(&self) -> Option<NameRef> {
14189 support::child(&self.syntax)
14190 }
14191 #[inline]
14192 pub fn next(&self) -> Option<Next> {
14193 support::child(&self.syntax)
14194 }
14195 #[inline]
14196 pub fn prior(&self) -> Option<Prior> {
14197 support::child(&self.syntax)
14198 }
14199 #[inline]
14200 pub fn relative(&self) -> Option<Relative> {
14201 support::child(&self.syntax)
14202 }
14203 #[inline]
14204 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
14205 support::token(&self.syntax, SyntaxKind::SEMICOLON)
14206 }
14207 #[inline]
14208 pub fn from_token(&self) -> Option<SyntaxToken> {
14209 support::token(&self.syntax, SyntaxKind::FROM_KW)
14210 }
14211 #[inline]
14212 pub fn in_token(&self) -> Option<SyntaxToken> {
14213 support::token(&self.syntax, SyntaxKind::IN_KW)
14214 }
14215 #[inline]
14216 pub fn move_token(&self) -> Option<SyntaxToken> {
14217 support::token(&self.syntax, SyntaxKind::MOVE_KW)
14218 }
14219}
14220
14221#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14222pub struct Name {
14223 pub(crate) syntax: SyntaxNode,
14224}
14225impl Name {
14226 #[inline]
14227 pub fn ident_token(&self) -> Option<SyntaxToken> {
14228 support::token(&self.syntax, SyntaxKind::IDENT)
14229 }
14230}
14231
14232#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14233pub struct NameRef {
14234 pub(crate) syntax: SyntaxNode,
14235}
14236impl NameRef {
14237 #[inline]
14238 pub fn ident_token(&self) -> Option<SyntaxToken> {
14239 support::token(&self.syntax, SyntaxKind::IDENT)
14240 }
14241}
14242
14243#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14244pub struct NamedArg {
14245 pub(crate) syntax: SyntaxNode,
14246}
14247impl NamedArg {
14248 #[inline]
14249 pub fn colon_eq(&self) -> Option<ColonEq> {
14250 support::child(&self.syntax)
14251 }
14252 #[inline]
14253 pub fn expr(&self) -> Option<Expr> {
14254 support::child(&self.syntax)
14255 }
14256 #[inline]
14257 pub fn fat_arrow(&self) -> Option<FatArrow> {
14258 support::child(&self.syntax)
14259 }
14260 #[inline]
14261 pub fn name_ref(&self) -> Option<NameRef> {
14262 support::child(&self.syntax)
14263 }
14264}
14265
14266#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14267pub struct Neq {
14268 pub(crate) syntax: SyntaxNode,
14269}
14270impl Neq {
14271 #[inline]
14272 pub fn bang_token(&self) -> Option<SyntaxToken> {
14273 support::token(&self.syntax, SyntaxKind::BANG)
14274 }
14275 #[inline]
14276 pub fn eq_token(&self) -> Option<SyntaxToken> {
14277 support::token(&self.syntax, SyntaxKind::EQ)
14278 }
14279}
14280
14281#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14282pub struct Neqb {
14283 pub(crate) syntax: SyntaxNode,
14284}
14285impl Neqb {
14286 #[inline]
14287 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
14288 support::token(&self.syntax, SyntaxKind::L_ANGLE)
14289 }
14290 #[inline]
14291 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
14292 support::token(&self.syntax, SyntaxKind::R_ANGLE)
14293 }
14294}
14295
14296#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14297pub struct Next {
14298 pub(crate) syntax: SyntaxNode,
14299}
14300impl Next {
14301 #[inline]
14302 pub fn next_token(&self) -> Option<SyntaxToken> {
14303 support::token(&self.syntax, SyntaxKind::NEXT_KW)
14304 }
14305}
14306
14307#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14308pub struct NoAction {
14309 pub(crate) syntax: SyntaxNode,
14310}
14311impl NoAction {
14312 #[inline]
14313 pub fn action_token(&self) -> Option<SyntaxToken> {
14314 support::token(&self.syntax, SyntaxKind::ACTION_KW)
14315 }
14316 #[inline]
14317 pub fn no_token(&self) -> Option<SyntaxToken> {
14318 support::token(&self.syntax, SyntaxKind::NO_KW)
14319 }
14320}
14321
14322#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14323pub struct NoDependsOnExtension {
14324 pub(crate) syntax: SyntaxNode,
14325}
14326impl NoDependsOnExtension {
14327 #[inline]
14328 pub fn name_ref(&self) -> Option<NameRef> {
14329 support::child(&self.syntax)
14330 }
14331 #[inline]
14332 pub fn depends_token(&self) -> Option<SyntaxToken> {
14333 support::token(&self.syntax, SyntaxKind::DEPENDS_KW)
14334 }
14335 #[inline]
14336 pub fn extension_token(&self) -> Option<SyntaxToken> {
14337 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
14338 }
14339 #[inline]
14340 pub fn no_token(&self) -> Option<SyntaxToken> {
14341 support::token(&self.syntax, SyntaxKind::NO_KW)
14342 }
14343 #[inline]
14344 pub fn on_token(&self) -> Option<SyntaxToken> {
14345 support::token(&self.syntax, SyntaxKind::ON_KW)
14346 }
14347}
14348
14349#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14350pub struct NoForceRls {
14351 pub(crate) syntax: SyntaxNode,
14352}
14353impl NoForceRls {
14354 #[inline]
14355 pub fn force_token(&self) -> Option<SyntaxToken> {
14356 support::token(&self.syntax, SyntaxKind::FORCE_KW)
14357 }
14358 #[inline]
14359 pub fn level_token(&self) -> Option<SyntaxToken> {
14360 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
14361 }
14362 #[inline]
14363 pub fn no_token(&self) -> Option<SyntaxToken> {
14364 support::token(&self.syntax, SyntaxKind::NO_KW)
14365 }
14366 #[inline]
14367 pub fn row_token(&self) -> Option<SyntaxToken> {
14368 support::token(&self.syntax, SyntaxKind::ROW_KW)
14369 }
14370 #[inline]
14371 pub fn security_token(&self) -> Option<SyntaxToken> {
14372 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
14373 }
14374}
14375
14376#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14377pub struct NoInherit {
14378 pub(crate) syntax: SyntaxNode,
14379}
14380impl NoInherit {
14381 #[inline]
14382 pub fn inherit_token(&self) -> Option<SyntaxToken> {
14383 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
14384 }
14385 #[inline]
14386 pub fn no_token(&self) -> Option<SyntaxToken> {
14387 support::token(&self.syntax, SyntaxKind::NO_KW)
14388 }
14389}
14390
14391#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14392pub struct NoInheritTable {
14393 pub(crate) syntax: SyntaxNode,
14394}
14395impl NoInheritTable {
14396 #[inline]
14397 pub fn path(&self) -> Option<Path> {
14398 support::child(&self.syntax)
14399 }
14400 #[inline]
14401 pub fn inherit_token(&self) -> Option<SyntaxToken> {
14402 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
14403 }
14404 #[inline]
14405 pub fn no_token(&self) -> Option<SyntaxToken> {
14406 support::token(&self.syntax, SyntaxKind::NO_KW)
14407 }
14408}
14409
14410#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14411pub struct NoOthers {
14412 pub(crate) syntax: SyntaxNode,
14413}
14414impl NoOthers {
14415 #[inline]
14416 pub fn no_token(&self) -> Option<SyntaxToken> {
14417 support::token(&self.syntax, SyntaxKind::NO_KW)
14418 }
14419 #[inline]
14420 pub fn others_token(&self) -> Option<SyntaxToken> {
14421 support::token(&self.syntax, SyntaxKind::OTHERS_KW)
14422 }
14423}
14424
14425#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14426pub struct NoProperties {
14427 pub(crate) syntax: SyntaxNode,
14428}
14429impl NoProperties {
14430 #[inline]
14431 pub fn no_token(&self) -> Option<SyntaxToken> {
14432 support::token(&self.syntax, SyntaxKind::NO_KW)
14433 }
14434 #[inline]
14435 pub fn properties_token(&self) -> Option<SyntaxToken> {
14436 support::token(&self.syntax, SyntaxKind::PROPERTIES_KW)
14437 }
14438}
14439
14440#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14441pub struct NonStandardParam {
14442 pub(crate) syntax: SyntaxNode,
14443}
14444impl NonStandardParam {
14445 #[inline]
14446 pub fn name_ref(&self) -> Option<NameRef> {
14447 support::child(&self.syntax)
14448 }
14449 #[inline]
14450 pub fn colon_token(&self) -> Option<SyntaxToken> {
14451 support::token(&self.syntax, SyntaxKind::COLON)
14452 }
14453}
14454
14455#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14456pub struct NotDeferrable {
14457 pub(crate) syntax: SyntaxNode,
14458}
14459impl NotDeferrable {
14460 #[inline]
14461 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
14462 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
14463 }
14464 #[inline]
14465 pub fn not_token(&self) -> Option<SyntaxToken> {
14466 support::token(&self.syntax, SyntaxKind::NOT_KW)
14467 }
14468}
14469
14470#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14471pub struct NotDeferrableConstraintOption {
14472 pub(crate) syntax: SyntaxNode,
14473}
14474impl NotDeferrableConstraintOption {
14475 #[inline]
14476 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
14477 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
14478 }
14479 #[inline]
14480 pub fn not_token(&self) -> Option<SyntaxToken> {
14481 support::token(&self.syntax, SyntaxKind::NOT_KW)
14482 }
14483}
14484
14485#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14486pub struct NotEnforced {
14487 pub(crate) syntax: SyntaxNode,
14488}
14489impl NotEnforced {
14490 #[inline]
14491 pub fn enforced_token(&self) -> Option<SyntaxToken> {
14492 support::token(&self.syntax, SyntaxKind::ENFORCED_KW)
14493 }
14494 #[inline]
14495 pub fn not_token(&self) -> Option<SyntaxToken> {
14496 support::token(&self.syntax, SyntaxKind::NOT_KW)
14497 }
14498}
14499
14500#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14501pub struct NotIlike {
14502 pub(crate) syntax: SyntaxNode,
14503}
14504impl NotIlike {
14505 #[inline]
14506 pub fn ilike_token(&self) -> Option<SyntaxToken> {
14507 support::token(&self.syntax, SyntaxKind::ILIKE_KW)
14508 }
14509 #[inline]
14510 pub fn not_token(&self) -> Option<SyntaxToken> {
14511 support::token(&self.syntax, SyntaxKind::NOT_KW)
14512 }
14513}
14514
14515#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14516pub struct NotIn {
14517 pub(crate) syntax: SyntaxNode,
14518}
14519impl NotIn {
14520 #[inline]
14521 pub fn in_token(&self) -> Option<SyntaxToken> {
14522 support::token(&self.syntax, SyntaxKind::IN_KW)
14523 }
14524 #[inline]
14525 pub fn not_token(&self) -> Option<SyntaxToken> {
14526 support::token(&self.syntax, SyntaxKind::NOT_KW)
14527 }
14528}
14529
14530#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14531pub struct NotLike {
14532 pub(crate) syntax: SyntaxNode,
14533}
14534impl NotLike {
14535 #[inline]
14536 pub fn like_token(&self) -> Option<SyntaxToken> {
14537 support::token(&self.syntax, SyntaxKind::LIKE_KW)
14538 }
14539 #[inline]
14540 pub fn not_token(&self) -> Option<SyntaxToken> {
14541 support::token(&self.syntax, SyntaxKind::NOT_KW)
14542 }
14543}
14544
14545#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14546pub struct NotMaterialized {
14547 pub(crate) syntax: SyntaxNode,
14548}
14549impl NotMaterialized {
14550 #[inline]
14551 pub fn materialized_token(&self) -> Option<SyntaxToken> {
14552 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
14553 }
14554 #[inline]
14555 pub fn not_token(&self) -> Option<SyntaxToken> {
14556 support::token(&self.syntax, SyntaxKind::NOT_KW)
14557 }
14558}
14559
14560#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14561pub struct NotNullConstraint {
14562 pub(crate) syntax: SyntaxNode,
14563}
14564impl NotNullConstraint {
14565 #[inline]
14566 pub fn constraint_name(&self) -> Option<ConstraintName> {
14567 support::child(&self.syntax)
14568 }
14569 #[inline]
14570 pub fn no_inherit(&self) -> Option<NoInherit> {
14571 support::child(&self.syntax)
14572 }
14573 #[inline]
14574 pub fn not_token(&self) -> Option<SyntaxToken> {
14575 support::token(&self.syntax, SyntaxKind::NOT_KW)
14576 }
14577 #[inline]
14578 pub fn null_token(&self) -> Option<SyntaxToken> {
14579 support::token(&self.syntax, SyntaxKind::NULL_KW)
14580 }
14581}
14582
14583#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14584pub struct NotOf {
14585 pub(crate) syntax: SyntaxNode,
14586}
14587impl NotOf {
14588 #[inline]
14589 pub fn not_token(&self) -> Option<SyntaxToken> {
14590 support::token(&self.syntax, SyntaxKind::NOT_KW)
14591 }
14592 #[inline]
14593 pub fn of_token(&self) -> Option<SyntaxToken> {
14594 support::token(&self.syntax, SyntaxKind::OF_KW)
14595 }
14596}
14597
14598#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14599pub struct NotSimilarTo {
14600 pub(crate) syntax: SyntaxNode,
14601}
14602impl NotSimilarTo {
14603 #[inline]
14604 pub fn not_token(&self) -> Option<SyntaxToken> {
14605 support::token(&self.syntax, SyntaxKind::NOT_KW)
14606 }
14607 #[inline]
14608 pub fn similar_token(&self) -> Option<SyntaxToken> {
14609 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
14610 }
14611 #[inline]
14612 pub fn to_token(&self) -> Option<SyntaxToken> {
14613 support::token(&self.syntax, SyntaxKind::TO_KW)
14614 }
14615}
14616
14617#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14618pub struct NotValid {
14619 pub(crate) syntax: SyntaxNode,
14620}
14621impl NotValid {
14622 #[inline]
14623 pub fn not_token(&self) -> Option<SyntaxToken> {
14624 support::token(&self.syntax, SyntaxKind::NOT_KW)
14625 }
14626 #[inline]
14627 pub fn valid_token(&self) -> Option<SyntaxToken> {
14628 support::token(&self.syntax, SyntaxKind::VALID_KW)
14629 }
14630}
14631
14632#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14633pub struct Nothing {
14634 pub(crate) syntax: SyntaxNode,
14635}
14636impl Nothing {
14637 #[inline]
14638 pub fn nothing_token(&self) -> Option<SyntaxToken> {
14639 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
14640 }
14641}
14642
14643#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14644pub struct Notify {
14645 pub(crate) syntax: SyntaxNode,
14646}
14647impl Notify {
14648 #[inline]
14649 pub fn literal(&self) -> Option<Literal> {
14650 support::child(&self.syntax)
14651 }
14652 #[inline]
14653 pub fn name_ref(&self) -> Option<NameRef> {
14654 support::child(&self.syntax)
14655 }
14656 #[inline]
14657 pub fn comma_token(&self) -> Option<SyntaxToken> {
14658 support::token(&self.syntax, SyntaxKind::COMMA)
14659 }
14660 #[inline]
14661 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
14662 support::token(&self.syntax, SyntaxKind::SEMICOLON)
14663 }
14664 #[inline]
14665 pub fn notify_token(&self) -> Option<SyntaxToken> {
14666 support::token(&self.syntax, SyntaxKind::NOTIFY_KW)
14667 }
14668}
14669
14670#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14671pub struct NullConstraint {
14672 pub(crate) syntax: SyntaxNode,
14673}
14674impl NullConstraint {
14675 #[inline]
14676 pub fn constraint_name(&self) -> Option<ConstraintName> {
14677 support::child(&self.syntax)
14678 }
14679 #[inline]
14680 pub fn null_token(&self) -> Option<SyntaxToken> {
14681 support::token(&self.syntax, SyntaxKind::NULL_KW)
14682 }
14683}
14684
14685#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14686pub struct NullsDistinct {
14687 pub(crate) syntax: SyntaxNode,
14688}
14689impl NullsDistinct {
14690 #[inline]
14691 pub fn distinct_token(&self) -> Option<SyntaxToken> {
14692 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
14693 }
14694 #[inline]
14695 pub fn nulls_token(&self) -> Option<SyntaxToken> {
14696 support::token(&self.syntax, SyntaxKind::NULLS_KW)
14697 }
14698}
14699
14700#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14701pub struct NullsFirst {
14702 pub(crate) syntax: SyntaxNode,
14703}
14704impl NullsFirst {
14705 #[inline]
14706 pub fn first_token(&self) -> Option<SyntaxToken> {
14707 support::token(&self.syntax, SyntaxKind::FIRST_KW)
14708 }
14709 #[inline]
14710 pub fn nulls_token(&self) -> Option<SyntaxToken> {
14711 support::token(&self.syntax, SyntaxKind::NULLS_KW)
14712 }
14713}
14714
14715#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14716pub struct NullsLast {
14717 pub(crate) syntax: SyntaxNode,
14718}
14719impl NullsLast {
14720 #[inline]
14721 pub fn last_token(&self) -> Option<SyntaxToken> {
14722 support::token(&self.syntax, SyntaxKind::LAST_KW)
14723 }
14724 #[inline]
14725 pub fn nulls_token(&self) -> Option<SyntaxToken> {
14726 support::token(&self.syntax, SyntaxKind::NULLS_KW)
14727 }
14728}
14729
14730#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14731pub struct NullsNotDistinct {
14732 pub(crate) syntax: SyntaxNode,
14733}
14734impl NullsNotDistinct {
14735 #[inline]
14736 pub fn distinct_token(&self) -> Option<SyntaxToken> {
14737 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
14738 }
14739 #[inline]
14740 pub fn not_token(&self) -> Option<SyntaxToken> {
14741 support::token(&self.syntax, SyntaxKind::NOT_KW)
14742 }
14743 #[inline]
14744 pub fn nulls_token(&self) -> Option<SyntaxToken> {
14745 support::token(&self.syntax, SyntaxKind::NULLS_KW)
14746 }
14747}
14748
14749#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14750pub struct OfType {
14751 pub(crate) syntax: SyntaxNode,
14752}
14753impl OfType {
14754 #[inline]
14755 pub fn ty(&self) -> Option<Type> {
14756 support::child(&self.syntax)
14757 }
14758 #[inline]
14759 pub fn of_token(&self) -> Option<SyntaxToken> {
14760 support::token(&self.syntax, SyntaxKind::OF_KW)
14761 }
14762}
14763
14764#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14765pub struct OffsetClause {
14766 pub(crate) syntax: SyntaxNode,
14767}
14768impl OffsetClause {
14769 #[inline]
14770 pub fn expr(&self) -> Option<Expr> {
14771 support::child(&self.syntax)
14772 }
14773 #[inline]
14774 pub fn offset_token(&self) -> Option<SyntaxToken> {
14775 support::token(&self.syntax, SyntaxKind::OFFSET_KW)
14776 }
14777 #[inline]
14778 pub fn row_token(&self) -> Option<SyntaxToken> {
14779 support::token(&self.syntax, SyntaxKind::ROW_KW)
14780 }
14781 #[inline]
14782 pub fn rows_token(&self) -> Option<SyntaxToken> {
14783 support::token(&self.syntax, SyntaxKind::ROWS_KW)
14784 }
14785}
14786
14787#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14788pub struct OnClause {
14789 pub(crate) syntax: SyntaxNode,
14790}
14791impl OnClause {
14792 #[inline]
14793 pub fn expr(&self) -> Option<Expr> {
14794 support::child(&self.syntax)
14795 }
14796 #[inline]
14797 pub fn on_token(&self) -> Option<SyntaxToken> {
14798 support::token(&self.syntax, SyntaxKind::ON_KW)
14799 }
14800}
14801
14802#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14803pub struct OnCommit {
14804 pub(crate) syntax: SyntaxNode,
14805}
14806impl OnCommit {
14807 #[inline]
14808 pub fn on_commit_action(&self) -> Option<OnCommitAction> {
14809 support::child(&self.syntax)
14810 }
14811 #[inline]
14812 pub fn commit_token(&self) -> Option<SyntaxToken> {
14813 support::token(&self.syntax, SyntaxKind::COMMIT_KW)
14814 }
14815 #[inline]
14816 pub fn on_token(&self) -> Option<SyntaxToken> {
14817 support::token(&self.syntax, SyntaxKind::ON_KW)
14818 }
14819}
14820
14821#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14822pub struct OnConflictClause {
14823 pub(crate) syntax: SyntaxNode,
14824}
14825impl OnConflictClause {
14826 #[inline]
14827 pub fn conflict_action(&self) -> Option<ConflictAction> {
14828 support::child(&self.syntax)
14829 }
14830 #[inline]
14831 pub fn conflict_target(&self) -> Option<ConflictTarget> {
14832 support::child(&self.syntax)
14833 }
14834 #[inline]
14835 pub fn conflict_token(&self) -> Option<SyntaxToken> {
14836 support::token(&self.syntax, SyntaxKind::CONFLICT_KW)
14837 }
14838 #[inline]
14839 pub fn on_token(&self) -> Option<SyntaxToken> {
14840 support::token(&self.syntax, SyntaxKind::ON_KW)
14841 }
14842}
14843
14844#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14845pub struct OnDeleteAction {
14846 pub(crate) syntax: SyntaxNode,
14847}
14848impl OnDeleteAction {
14849 #[inline]
14850 pub fn ref_action(&self) -> Option<RefAction> {
14851 support::child(&self.syntax)
14852 }
14853 #[inline]
14854 pub fn delete_token(&self) -> Option<SyntaxToken> {
14855 support::token(&self.syntax, SyntaxKind::DELETE_KW)
14856 }
14857 #[inline]
14858 pub fn on_token(&self) -> Option<SyntaxToken> {
14859 support::token(&self.syntax, SyntaxKind::ON_KW)
14860 }
14861}
14862
14863#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14864pub struct OnPath {
14865 pub(crate) syntax: SyntaxNode,
14866}
14867impl OnPath {
14868 #[inline]
14869 pub fn path(&self) -> Option<Path> {
14870 support::child(&self.syntax)
14871 }
14872 #[inline]
14873 pub fn on_token(&self) -> Option<SyntaxToken> {
14874 support::token(&self.syntax, SyntaxKind::ON_KW)
14875 }
14876}
14877
14878#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14879pub struct OnTable {
14880 pub(crate) syntax: SyntaxNode,
14881}
14882impl OnTable {
14883 #[inline]
14884 pub fn path(&self) -> Option<Path> {
14885 support::child(&self.syntax)
14886 }
14887 #[inline]
14888 pub fn on_token(&self) -> Option<SyntaxToken> {
14889 support::token(&self.syntax, SyntaxKind::ON_KW)
14890 }
14891}
14892
14893#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14894pub struct OnUpdateAction {
14895 pub(crate) syntax: SyntaxNode,
14896}
14897impl OnUpdateAction {
14898 #[inline]
14899 pub fn ref_action(&self) -> Option<RefAction> {
14900 support::child(&self.syntax)
14901 }
14902 #[inline]
14903 pub fn on_token(&self) -> Option<SyntaxToken> {
14904 support::token(&self.syntax, SyntaxKind::ON_KW)
14905 }
14906 #[inline]
14907 pub fn update_token(&self) -> Option<SyntaxToken> {
14908 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
14909 }
14910}
14911
14912#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14913pub struct Op {
14914 pub(crate) syntax: SyntaxNode,
14915}
14916impl Op {
14917 #[inline]
14918 pub fn at_local(&self) -> Option<AtLocal> {
14919 support::child(&self.syntax)
14920 }
14921 #[inline]
14922 pub fn at_time_zone(&self) -> Option<AtTimeZone> {
14923 support::child(&self.syntax)
14924 }
14925 #[inline]
14926 pub fn colon_colon(&self) -> Option<ColonColon> {
14927 support::child(&self.syntax)
14928 }
14929 #[inline]
14930 pub fn colon_eq(&self) -> Option<ColonEq> {
14931 support::child(&self.syntax)
14932 }
14933 #[inline]
14934 pub fn custom_op(&self) -> Option<CustomOp> {
14935 support::child(&self.syntax)
14936 }
14937 #[inline]
14938 pub fn fat_arrow(&self) -> Option<FatArrow> {
14939 support::child(&self.syntax)
14940 }
14941 #[inline]
14942 pub fn gteq(&self) -> Option<Gteq> {
14943 support::child(&self.syntax)
14944 }
14945 #[inline]
14946 pub fn is_distinct_from(&self) -> Option<IsDistinctFrom> {
14947 support::child(&self.syntax)
14948 }
14949 #[inline]
14950 pub fn is_json(&self) -> Option<IsJson> {
14951 support::child(&self.syntax)
14952 }
14953 #[inline]
14954 pub fn is_json_array(&self) -> Option<IsJsonArray> {
14955 support::child(&self.syntax)
14956 }
14957 #[inline]
14958 pub fn is_json_object(&self) -> Option<IsJsonObject> {
14959 support::child(&self.syntax)
14960 }
14961 #[inline]
14962 pub fn is_json_scalar(&self) -> Option<IsJsonScalar> {
14963 support::child(&self.syntax)
14964 }
14965 #[inline]
14966 pub fn is_json_value(&self) -> Option<IsJsonValue> {
14967 support::child(&self.syntax)
14968 }
14969 #[inline]
14970 pub fn is_normalized(&self) -> Option<IsNormalized> {
14971 support::child(&self.syntax)
14972 }
14973 #[inline]
14974 pub fn is_not(&self) -> Option<IsNot> {
14975 support::child(&self.syntax)
14976 }
14977 #[inline]
14978 pub fn is_not_distinct_from(&self) -> Option<IsNotDistinctFrom> {
14979 support::child(&self.syntax)
14980 }
14981 #[inline]
14982 pub fn is_not_json(&self) -> Option<IsNotJson> {
14983 support::child(&self.syntax)
14984 }
14985 #[inline]
14986 pub fn is_not_json_array(&self) -> Option<IsNotJsonArray> {
14987 support::child(&self.syntax)
14988 }
14989 #[inline]
14990 pub fn is_not_json_object(&self) -> Option<IsNotJsonObject> {
14991 support::child(&self.syntax)
14992 }
14993 #[inline]
14994 pub fn is_not_json_scalar(&self) -> Option<IsNotJsonScalar> {
14995 support::child(&self.syntax)
14996 }
14997 #[inline]
14998 pub fn is_not_json_value(&self) -> Option<IsNotJsonValue> {
14999 support::child(&self.syntax)
15000 }
15001 #[inline]
15002 pub fn is_not_normalized(&self) -> Option<IsNotNormalized> {
15003 support::child(&self.syntax)
15004 }
15005 #[inline]
15006 pub fn lteq(&self) -> Option<Lteq> {
15007 support::child(&self.syntax)
15008 }
15009 #[inline]
15010 pub fn neq(&self) -> Option<Neq> {
15011 support::child(&self.syntax)
15012 }
15013 #[inline]
15014 pub fn neqb(&self) -> Option<Neqb> {
15015 support::child(&self.syntax)
15016 }
15017 #[inline]
15018 pub fn not_ilike(&self) -> Option<NotIlike> {
15019 support::child(&self.syntax)
15020 }
15021 #[inline]
15022 pub fn not_in(&self) -> Option<NotIn> {
15023 support::child(&self.syntax)
15024 }
15025 #[inline]
15026 pub fn not_like(&self) -> Option<NotLike> {
15027 support::child(&self.syntax)
15028 }
15029 #[inline]
15030 pub fn not_similar_to(&self) -> Option<NotSimilarTo> {
15031 support::child(&self.syntax)
15032 }
15033 #[inline]
15034 pub fn operator_call(&self) -> Option<OperatorCall> {
15035 support::child(&self.syntax)
15036 }
15037 #[inline]
15038 pub fn similar_to(&self) -> Option<SimilarTo> {
15039 support::child(&self.syntax)
15040 }
15041 #[inline]
15042 pub fn percent_token(&self) -> Option<SyntaxToken> {
15043 support::token(&self.syntax, SyntaxKind::PERCENT)
15044 }
15045 #[inline]
15046 pub fn plus_token(&self) -> Option<SyntaxToken> {
15047 support::token(&self.syntax, SyntaxKind::PLUS)
15048 }
15049 #[inline]
15050 pub fn minus_token(&self) -> Option<SyntaxToken> {
15051 support::token(&self.syntax, SyntaxKind::MINUS)
15052 }
15053 #[inline]
15054 pub fn slash_token(&self) -> Option<SyntaxToken> {
15055 support::token(&self.syntax, SyntaxKind::SLASH)
15056 }
15057 #[inline]
15058 pub fn colon_token(&self) -> Option<SyntaxToken> {
15059 support::token(&self.syntax, SyntaxKind::COLON)
15060 }
15061 #[inline]
15062 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
15063 support::token(&self.syntax, SyntaxKind::L_ANGLE)
15064 }
15065 #[inline]
15066 pub fn eq_token(&self) -> Option<SyntaxToken> {
15067 support::token(&self.syntax, SyntaxKind::EQ)
15068 }
15069 #[inline]
15070 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
15071 support::token(&self.syntax, SyntaxKind::R_ANGLE)
15072 }
15073 #[inline]
15074 pub fn caret_token(&self) -> Option<SyntaxToken> {
15075 support::token(&self.syntax, SyntaxKind::CARET)
15076 }
15077 #[inline]
15078 pub fn and_token(&self) -> Option<SyntaxToken> {
15079 support::token(&self.syntax, SyntaxKind::AND_KW)
15080 }
15081 #[inline]
15082 pub fn collate_token(&self) -> Option<SyntaxToken> {
15083 support::token(&self.syntax, SyntaxKind::COLLATE_KW)
15084 }
15085 #[inline]
15086 pub fn escape_token(&self) -> Option<SyntaxToken> {
15087 support::token(&self.syntax, SyntaxKind::ESCAPE_KW)
15088 }
15089 #[inline]
15090 pub fn ilike_token(&self) -> Option<SyntaxToken> {
15091 support::token(&self.syntax, SyntaxKind::ILIKE_KW)
15092 }
15093 #[inline]
15094 pub fn in_token(&self) -> Option<SyntaxToken> {
15095 support::token(&self.syntax, SyntaxKind::IN_KW)
15096 }
15097 #[inline]
15098 pub fn is_token(&self) -> Option<SyntaxToken> {
15099 support::token(&self.syntax, SyntaxKind::IS_KW)
15100 }
15101 #[inline]
15102 pub fn isnull_token(&self) -> Option<SyntaxToken> {
15103 support::token(&self.syntax, SyntaxKind::ISNULL_KW)
15104 }
15105 #[inline]
15106 pub fn like_token(&self) -> Option<SyntaxToken> {
15107 support::token(&self.syntax, SyntaxKind::LIKE_KW)
15108 }
15109 #[inline]
15110 pub fn notnull_token(&self) -> Option<SyntaxToken> {
15111 support::token(&self.syntax, SyntaxKind::NOTNULL_KW)
15112 }
15113 #[inline]
15114 pub fn or_token(&self) -> Option<SyntaxToken> {
15115 support::token(&self.syntax, SyntaxKind::OR_KW)
15116 }
15117 #[inline]
15118 pub fn overlaps_token(&self) -> Option<SyntaxToken> {
15119 support::token(&self.syntax, SyntaxKind::OVERLAPS_KW)
15120 }
15121 #[inline]
15122 pub fn value_token(&self) -> Option<SyntaxToken> {
15123 support::token(&self.syntax, SyntaxKind::VALUE_KW)
15124 }
15125}
15126
15127#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15128pub struct OpClassOption {
15129 pub(crate) syntax: SyntaxNode,
15130}
15131impl OpClassOption {
15132 #[inline]
15133 pub fn function_sig(&self) -> Option<FunctionSig> {
15134 support::child(&self.syntax)
15135 }
15136 #[inline]
15137 pub fn literal(&self) -> Option<Literal> {
15138 support::child(&self.syntax)
15139 }
15140 #[inline]
15141 pub fn op(&self) -> Option<Op> {
15142 support::child(&self.syntax)
15143 }
15144 #[inline]
15145 pub fn param_list(&self) -> Option<ParamList> {
15146 support::child(&self.syntax)
15147 }
15148 #[inline]
15149 pub fn path(&self) -> Option<Path> {
15150 support::child(&self.syntax)
15151 }
15152 #[inline]
15153 pub fn ty(&self) -> Option<Type> {
15154 support::child(&self.syntax)
15155 }
15156 #[inline]
15157 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15158 support::token(&self.syntax, SyntaxKind::L_PAREN)
15159 }
15160 #[inline]
15161 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15162 support::token(&self.syntax, SyntaxKind::R_PAREN)
15163 }
15164 #[inline]
15165 pub fn comma_token(&self) -> Option<SyntaxToken> {
15166 support::token(&self.syntax, SyntaxKind::COMMA)
15167 }
15168 #[inline]
15169 pub fn by_token(&self) -> Option<SyntaxToken> {
15170 support::token(&self.syntax, SyntaxKind::BY_KW)
15171 }
15172 #[inline]
15173 pub fn for_token(&self) -> Option<SyntaxToken> {
15174 support::token(&self.syntax, SyntaxKind::FOR_KW)
15175 }
15176 #[inline]
15177 pub fn function_token(&self) -> Option<SyntaxToken> {
15178 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
15179 }
15180 #[inline]
15181 pub fn operator_token(&self) -> Option<SyntaxToken> {
15182 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
15183 }
15184 #[inline]
15185 pub fn order_token(&self) -> Option<SyntaxToken> {
15186 support::token(&self.syntax, SyntaxKind::ORDER_KW)
15187 }
15188 #[inline]
15189 pub fn search_token(&self) -> Option<SyntaxToken> {
15190 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
15191 }
15192 #[inline]
15193 pub fn storage_token(&self) -> Option<SyntaxToken> {
15194 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
15195 }
15196}
15197
15198#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15199pub struct OpSig {
15200 pub(crate) syntax: SyntaxNode,
15201}
15202impl OpSig {
15203 #[inline]
15204 pub fn op(&self) -> Option<Op> {
15205 support::child(&self.syntax)
15206 }
15207 #[inline]
15208 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15209 support::token(&self.syntax, SyntaxKind::L_PAREN)
15210 }
15211 #[inline]
15212 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15213 support::token(&self.syntax, SyntaxKind::R_PAREN)
15214 }
15215 #[inline]
15216 pub fn comma_token(&self) -> Option<SyntaxToken> {
15217 support::token(&self.syntax, SyntaxKind::COMMA)
15218 }
15219 #[inline]
15220 pub fn none_token(&self) -> Option<SyntaxToken> {
15221 support::token(&self.syntax, SyntaxKind::NONE_KW)
15222 }
15223}
15224
15225#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15226pub struct OpSigList {
15227 pub(crate) syntax: SyntaxNode,
15228}
15229impl OpSigList {
15230 #[inline]
15231 pub fn op_sigs(&self) -> AstChildren<OpSig> {
15232 support::children(&self.syntax)
15233 }
15234}
15235
15236#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15237pub struct OperatorCall {
15238 pub(crate) syntax: SyntaxNode,
15239}
15240impl OperatorCall {
15241 #[inline]
15242 pub fn op(&self) -> Option<Op> {
15243 support::child(&self.syntax)
15244 }
15245 #[inline]
15246 pub fn path(&self) -> Option<Path> {
15247 support::child(&self.syntax)
15248 }
15249 #[inline]
15250 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15251 support::token(&self.syntax, SyntaxKind::L_PAREN)
15252 }
15253 #[inline]
15254 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15255 support::token(&self.syntax, SyntaxKind::R_PAREN)
15256 }
15257 #[inline]
15258 pub fn dot_token(&self) -> Option<SyntaxToken> {
15259 support::token(&self.syntax, SyntaxKind::DOT)
15260 }
15261 #[inline]
15262 pub fn operator_token(&self) -> Option<SyntaxToken> {
15263 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
15264 }
15265}
15266
15267#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15268pub struct OperatorClassOptionList {
15269 pub(crate) syntax: SyntaxNode,
15270}
15271impl OperatorClassOptionList {
15272 #[inline]
15273 pub fn op_class_options(&self) -> AstChildren<OpClassOption> {
15274 support::children(&self.syntax)
15275 }
15276}
15277
15278#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15279pub struct OptionItem {
15280 pub(crate) syntax: SyntaxNode,
15281}
15282impl OptionItem {
15283 #[inline]
15284 pub fn expr(&self) -> Option<Expr> {
15285 support::child(&self.syntax)
15286 }
15287 #[inline]
15288 pub fn default_token(&self) -> Option<SyntaxToken> {
15289 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
15290 }
15291}
15292
15293#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15294pub struct OptionItemList {
15295 pub(crate) syntax: SyntaxNode,
15296}
15297impl OptionItemList {
15298 #[inline]
15299 pub fn option_items(&self) -> AstChildren<OptionItem> {
15300 support::children(&self.syntax)
15301 }
15302 #[inline]
15303 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15304 support::token(&self.syntax, SyntaxKind::L_PAREN)
15305 }
15306 #[inline]
15307 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15308 support::token(&self.syntax, SyntaxKind::R_PAREN)
15309 }
15310}
15311
15312#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15313pub struct OrReplace {
15314 pub(crate) syntax: SyntaxNode,
15315}
15316impl OrReplace {
15317 #[inline]
15318 pub fn or_token(&self) -> Option<SyntaxToken> {
15319 support::token(&self.syntax, SyntaxKind::OR_KW)
15320 }
15321 #[inline]
15322 pub fn replace_token(&self) -> Option<SyntaxToken> {
15323 support::token(&self.syntax, SyntaxKind::REPLACE_KW)
15324 }
15325}
15326
15327#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15328pub struct OrderByClause {
15329 pub(crate) syntax: SyntaxNode,
15330}
15331impl OrderByClause {
15332 #[inline]
15333 pub fn sort_by_list(&self) -> Option<SortByList> {
15334 support::child(&self.syntax)
15335 }
15336 #[inline]
15337 pub fn by_token(&self) -> Option<SyntaxToken> {
15338 support::token(&self.syntax, SyntaxKind::BY_KW)
15339 }
15340 #[inline]
15341 pub fn order_token(&self) -> Option<SyntaxToken> {
15342 support::token(&self.syntax, SyntaxKind::ORDER_KW)
15343 }
15344}
15345
15346#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15347pub struct OverClause {
15348 pub(crate) syntax: SyntaxNode,
15349}
15350impl OverClause {
15351 #[inline]
15352 pub fn name_ref(&self) -> Option<NameRef> {
15353 support::child(&self.syntax)
15354 }
15355 #[inline]
15356 pub fn window_spec(&self) -> Option<WindowSpec> {
15357 support::child(&self.syntax)
15358 }
15359 #[inline]
15360 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15361 support::token(&self.syntax, SyntaxKind::L_PAREN)
15362 }
15363 #[inline]
15364 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15365 support::token(&self.syntax, SyntaxKind::R_PAREN)
15366 }
15367 #[inline]
15368 pub fn ignore_token(&self) -> Option<SyntaxToken> {
15369 support::token(&self.syntax, SyntaxKind::IGNORE_KW)
15370 }
15371 #[inline]
15372 pub fn nulls_token(&self) -> Option<SyntaxToken> {
15373 support::token(&self.syntax, SyntaxKind::NULLS_KW)
15374 }
15375 #[inline]
15376 pub fn over_token(&self) -> Option<SyntaxToken> {
15377 support::token(&self.syntax, SyntaxKind::OVER_KW)
15378 }
15379 #[inline]
15380 pub fn respect_token(&self) -> Option<SyntaxToken> {
15381 support::token(&self.syntax, SyntaxKind::RESPECT_KW)
15382 }
15383}
15384
15385#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15386pub struct OverlayFn {
15387 pub(crate) syntax: SyntaxNode,
15388}
15389impl OverlayFn {
15390 #[inline]
15391 pub fn expr(&self) -> Option<Expr> {
15392 support::child(&self.syntax)
15393 }
15394 #[inline]
15395 pub fn exprs(&self) -> AstChildren<Expr> {
15396 support::children(&self.syntax)
15397 }
15398 #[inline]
15399 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15400 support::token(&self.syntax, SyntaxKind::L_PAREN)
15401 }
15402 #[inline]
15403 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15404 support::token(&self.syntax, SyntaxKind::R_PAREN)
15405 }
15406 #[inline]
15407 pub fn for_token(&self) -> Option<SyntaxToken> {
15408 support::token(&self.syntax, SyntaxKind::FOR_KW)
15409 }
15410 #[inline]
15411 pub fn from_token(&self) -> Option<SyntaxToken> {
15412 support::token(&self.syntax, SyntaxKind::FROM_KW)
15413 }
15414 #[inline]
15415 pub fn overlay_token(&self) -> Option<SyntaxToken> {
15416 support::token(&self.syntax, SyntaxKind::OVERLAY_KW)
15417 }
15418 #[inline]
15419 pub fn placing_token(&self) -> Option<SyntaxToken> {
15420 support::token(&self.syntax, SyntaxKind::PLACING_KW)
15421 }
15422}
15423
15424#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15425pub struct OwnedByRoles {
15426 pub(crate) syntax: SyntaxNode,
15427}
15428impl OwnedByRoles {
15429 #[inline]
15430 pub fn role_ref_list(&self) -> Option<RoleRefList> {
15431 support::child(&self.syntax)
15432 }
15433 #[inline]
15434 pub fn by_token(&self) -> Option<SyntaxToken> {
15435 support::token(&self.syntax, SyntaxKind::BY_KW)
15436 }
15437 #[inline]
15438 pub fn owned_token(&self) -> Option<SyntaxToken> {
15439 support::token(&self.syntax, SyntaxKind::OWNED_KW)
15440 }
15441}
15442
15443#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15444pub struct OwnerTo {
15445 pub(crate) syntax: SyntaxNode,
15446}
15447impl OwnerTo {
15448 #[inline]
15449 pub fn role_ref(&self) -> Option<RoleRef> {
15450 support::child(&self.syntax)
15451 }
15452 #[inline]
15453 pub fn owner_token(&self) -> Option<SyntaxToken> {
15454 support::token(&self.syntax, SyntaxKind::OWNER_KW)
15455 }
15456 #[inline]
15457 pub fn to_token(&self) -> Option<SyntaxToken> {
15458 support::token(&self.syntax, SyntaxKind::TO_KW)
15459 }
15460}
15461
15462#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15463pub struct ParallelFuncOption {
15464 pub(crate) syntax: SyntaxNode,
15465}
15466impl ParallelFuncOption {
15467 #[inline]
15468 pub fn ident_token(&self) -> Option<SyntaxToken> {
15469 support::token(&self.syntax, SyntaxKind::IDENT)
15470 }
15471 #[inline]
15472 pub fn parallel_token(&self) -> Option<SyntaxToken> {
15473 support::token(&self.syntax, SyntaxKind::PARALLEL_KW)
15474 }
15475}
15476
15477#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15478pub struct Param {
15479 pub(crate) syntax: SyntaxNode,
15480}
15481impl Param {
15482 #[inline]
15483 pub fn mode(&self) -> Option<ParamMode> {
15484 support::child(&self.syntax)
15485 }
15486 #[inline]
15487 pub fn name(&self) -> Option<Name> {
15488 support::child(&self.syntax)
15489 }
15490 #[inline]
15491 pub fn param_default(&self) -> Option<ParamDefault> {
15492 support::child(&self.syntax)
15493 }
15494 #[inline]
15495 pub fn ty(&self) -> Option<Type> {
15496 support::child(&self.syntax)
15497 }
15498}
15499
15500#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15501pub struct ParamDefault {
15502 pub(crate) syntax: SyntaxNode,
15503}
15504impl ParamDefault {
15505 #[inline]
15506 pub fn expr(&self) -> Option<Expr> {
15507 support::child(&self.syntax)
15508 }
15509 #[inline]
15510 pub fn eq_token(&self) -> Option<SyntaxToken> {
15511 support::token(&self.syntax, SyntaxKind::EQ)
15512 }
15513 #[inline]
15514 pub fn default_token(&self) -> Option<SyntaxToken> {
15515 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
15516 }
15517}
15518
15519#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15520pub struct ParamIn {
15521 pub(crate) syntax: SyntaxNode,
15522}
15523impl ParamIn {
15524 #[inline]
15525 pub fn in_token(&self) -> Option<SyntaxToken> {
15526 support::token(&self.syntax, SyntaxKind::IN_KW)
15527 }
15528}
15529
15530#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15531pub struct ParamInOut {
15532 pub(crate) syntax: SyntaxNode,
15533}
15534impl ParamInOut {
15535 #[inline]
15536 pub fn in_token(&self) -> Option<SyntaxToken> {
15537 support::token(&self.syntax, SyntaxKind::IN_KW)
15538 }
15539 #[inline]
15540 pub fn inout_token(&self) -> Option<SyntaxToken> {
15541 support::token(&self.syntax, SyntaxKind::INOUT_KW)
15542 }
15543 #[inline]
15544 pub fn out_token(&self) -> Option<SyntaxToken> {
15545 support::token(&self.syntax, SyntaxKind::OUT_KW)
15546 }
15547}
15548
15549#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15550pub struct ParamList {
15551 pub(crate) syntax: SyntaxNode,
15552}
15553impl ParamList {
15554 #[inline]
15555 pub fn params(&self) -> AstChildren<Param> {
15556 support::children(&self.syntax)
15557 }
15558}
15559
15560#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15561pub struct ParamOut {
15562 pub(crate) syntax: SyntaxNode,
15563}
15564impl ParamOut {
15565 #[inline]
15566 pub fn out_token(&self) -> Option<SyntaxToken> {
15567 support::token(&self.syntax, SyntaxKind::OUT_KW)
15568 }
15569}
15570
15571#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15572pub struct ParamVariadic {
15573 pub(crate) syntax: SyntaxNode,
15574}
15575impl ParamVariadic {
15576 #[inline]
15577 pub fn variadic_token(&self) -> Option<SyntaxToken> {
15578 support::token(&self.syntax, SyntaxKind::VARIADIC_KW)
15579 }
15580}
15581
15582#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15583pub struct ParenExpr {
15584 pub(crate) syntax: SyntaxNode,
15585}
15586impl ParenExpr {
15587 #[inline]
15588 pub fn expr(&self) -> Option<Expr> {
15589 support::child(&self.syntax)
15590 }
15591 #[inline]
15592 pub fn from_item(&self) -> Option<FromItem> {
15593 support::child(&self.syntax)
15594 }
15595 #[inline]
15596 pub fn select(&self) -> Option<Select> {
15597 support::child(&self.syntax)
15598 }
15599 #[inline]
15600 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15601 support::token(&self.syntax, SyntaxKind::L_PAREN)
15602 }
15603 #[inline]
15604 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15605 support::token(&self.syntax, SyntaxKind::R_PAREN)
15606 }
15607}
15608
15609#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15610pub struct ParenGraphPattern {
15611 pub(crate) syntax: SyntaxNode,
15612}
15613impl ParenGraphPattern {
15614 #[inline]
15615 pub fn path_pattern(&self) -> Option<PathPattern> {
15616 support::child(&self.syntax)
15617 }
15618 #[inline]
15619 pub fn where_clause(&self) -> Option<WhereClause> {
15620 support::child(&self.syntax)
15621 }
15622 #[inline]
15623 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15624 support::token(&self.syntax, SyntaxKind::L_PAREN)
15625 }
15626 #[inline]
15627 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15628 support::token(&self.syntax, SyntaxKind::R_PAREN)
15629 }
15630}
15631
15632#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15633pub struct ParenSelect {
15634 pub(crate) syntax: SyntaxNode,
15635}
15636impl ParenSelect {
15637 #[inline]
15638 pub fn select(&self) -> Option<SelectVariant> {
15639 support::child(&self.syntax)
15640 }
15641 #[inline]
15642 pub fn with_clause(&self) -> Option<WithClause> {
15643 support::child(&self.syntax)
15644 }
15645 #[inline]
15646 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15647 support::token(&self.syntax, SyntaxKind::L_PAREN)
15648 }
15649 #[inline]
15650 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15651 support::token(&self.syntax, SyntaxKind::R_PAREN)
15652 }
15653 #[inline]
15654 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
15655 support::token(&self.syntax, SyntaxKind::SEMICOLON)
15656 }
15657}
15658
15659#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15660pub struct Partition {
15661 pub(crate) syntax: SyntaxNode,
15662}
15663impl Partition {
15664 #[inline]
15665 pub fn partition_type(&self) -> Option<PartitionType> {
15666 support::child(&self.syntax)
15667 }
15668 #[inline]
15669 pub fn path(&self) -> Option<Path> {
15670 support::child(&self.syntax)
15671 }
15672 #[inline]
15673 pub fn partition_token(&self) -> Option<SyntaxToken> {
15674 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
15675 }
15676}
15677
15678#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15679pub struct PartitionBy {
15680 pub(crate) syntax: SyntaxNode,
15681}
15682impl PartitionBy {
15683 #[inline]
15684 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
15685 support::child(&self.syntax)
15686 }
15687 #[inline]
15688 pub fn by_token(&self) -> Option<SyntaxToken> {
15689 support::token(&self.syntax, SyntaxKind::BY_KW)
15690 }
15691 #[inline]
15692 pub fn ident_token(&self) -> Option<SyntaxToken> {
15693 support::token(&self.syntax, SyntaxKind::IDENT)
15694 }
15695 #[inline]
15696 pub fn partition_token(&self) -> Option<SyntaxToken> {
15697 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
15698 }
15699 #[inline]
15700 pub fn range_token(&self) -> Option<SyntaxToken> {
15701 support::token(&self.syntax, SyntaxKind::RANGE_KW)
15702 }
15703}
15704
15705#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15706pub struct PartitionDefault {
15707 pub(crate) syntax: SyntaxNode,
15708}
15709impl PartitionDefault {
15710 #[inline]
15711 pub fn default_token(&self) -> Option<SyntaxToken> {
15712 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
15713 }
15714}
15715
15716#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15717pub struct PartitionForValuesFrom {
15718 pub(crate) syntax: SyntaxNode,
15719}
15720impl PartitionForValuesFrom {
15721 #[inline]
15722 pub fn exprs(&self) -> AstChildren<Expr> {
15723 support::children(&self.syntax)
15724 }
15725 #[inline]
15726 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15727 support::token(&self.syntax, SyntaxKind::L_PAREN)
15728 }
15729 #[inline]
15730 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15731 support::token(&self.syntax, SyntaxKind::R_PAREN)
15732 }
15733 #[inline]
15734 pub fn for_token(&self) -> Option<SyntaxToken> {
15735 support::token(&self.syntax, SyntaxKind::FOR_KW)
15736 }
15737 #[inline]
15738 pub fn from_token(&self) -> Option<SyntaxToken> {
15739 support::token(&self.syntax, SyntaxKind::FROM_KW)
15740 }
15741 #[inline]
15742 pub fn to_token(&self) -> Option<SyntaxToken> {
15743 support::token(&self.syntax, SyntaxKind::TO_KW)
15744 }
15745 #[inline]
15746 pub fn values_token(&self) -> Option<SyntaxToken> {
15747 support::token(&self.syntax, SyntaxKind::VALUES_KW)
15748 }
15749}
15750
15751#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15752pub struct PartitionForValuesIn {
15753 pub(crate) syntax: SyntaxNode,
15754}
15755impl PartitionForValuesIn {
15756 #[inline]
15757 pub fn exprs(&self) -> AstChildren<Expr> {
15758 support::children(&self.syntax)
15759 }
15760 #[inline]
15761 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15762 support::token(&self.syntax, SyntaxKind::L_PAREN)
15763 }
15764 #[inline]
15765 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15766 support::token(&self.syntax, SyntaxKind::R_PAREN)
15767 }
15768 #[inline]
15769 pub fn for_token(&self) -> Option<SyntaxToken> {
15770 support::token(&self.syntax, SyntaxKind::FOR_KW)
15771 }
15772 #[inline]
15773 pub fn in_token(&self) -> Option<SyntaxToken> {
15774 support::token(&self.syntax, SyntaxKind::IN_KW)
15775 }
15776 #[inline]
15777 pub fn values_token(&self) -> Option<SyntaxToken> {
15778 support::token(&self.syntax, SyntaxKind::VALUES_KW)
15779 }
15780}
15781
15782#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15783pub struct PartitionForValuesWith {
15784 pub(crate) syntax: SyntaxNode,
15785}
15786impl PartitionForValuesWith {
15787 #[inline]
15788 pub fn literal(&self) -> Option<Literal> {
15789 support::child(&self.syntax)
15790 }
15791 #[inline]
15792 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15793 support::token(&self.syntax, SyntaxKind::L_PAREN)
15794 }
15795 #[inline]
15796 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15797 support::token(&self.syntax, SyntaxKind::R_PAREN)
15798 }
15799 #[inline]
15800 pub fn comma_token(&self) -> Option<SyntaxToken> {
15801 support::token(&self.syntax, SyntaxKind::COMMA)
15802 }
15803 #[inline]
15804 pub fn for_token(&self) -> Option<SyntaxToken> {
15805 support::token(&self.syntax, SyntaxKind::FOR_KW)
15806 }
15807 #[inline]
15808 pub fn ident_token(&self) -> Option<SyntaxToken> {
15809 support::token(&self.syntax, SyntaxKind::IDENT)
15810 }
15811 #[inline]
15812 pub fn values_token(&self) -> Option<SyntaxToken> {
15813 support::token(&self.syntax, SyntaxKind::VALUES_KW)
15814 }
15815 #[inline]
15816 pub fn with_token(&self) -> Option<SyntaxToken> {
15817 support::token(&self.syntax, SyntaxKind::WITH_KW)
15818 }
15819}
15820
15821#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15822pub struct PartitionItem {
15823 pub(crate) syntax: SyntaxNode,
15824}
15825impl PartitionItem {
15826 #[inline]
15827 pub fn attribute_list(&self) -> Option<AttributeList> {
15828 support::child(&self.syntax)
15829 }
15830 #[inline]
15831 pub fn collate(&self) -> Option<Collate> {
15832 support::child(&self.syntax)
15833 }
15834 #[inline]
15835 pub fn expr(&self) -> Option<Expr> {
15836 support::child(&self.syntax)
15837 }
15838 #[inline]
15839 pub fn nulls_first(&self) -> Option<NullsFirst> {
15840 support::child(&self.syntax)
15841 }
15842 #[inline]
15843 pub fn nulls_last(&self) -> Option<NullsLast> {
15844 support::child(&self.syntax)
15845 }
15846 #[inline]
15847 pub fn path(&self) -> Option<Path> {
15848 support::child(&self.syntax)
15849 }
15850 #[inline]
15851 pub fn sort_asc(&self) -> Option<SortAsc> {
15852 support::child(&self.syntax)
15853 }
15854 #[inline]
15855 pub fn sort_desc(&self) -> Option<SortDesc> {
15856 support::child(&self.syntax)
15857 }
15858 #[inline]
15859 pub fn sort_using(&self) -> Option<SortUsing> {
15860 support::child(&self.syntax)
15861 }
15862}
15863
15864#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15865pub struct PartitionItemList {
15866 pub(crate) syntax: SyntaxNode,
15867}
15868impl PartitionItemList {
15869 #[inline]
15870 pub fn partition_items(&self) -> AstChildren<PartitionItem> {
15871 support::children(&self.syntax)
15872 }
15873 #[inline]
15874 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15875 support::token(&self.syntax, SyntaxKind::L_PAREN)
15876 }
15877 #[inline]
15878 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15879 support::token(&self.syntax, SyntaxKind::R_PAREN)
15880 }
15881}
15882
15883#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15884pub struct PartitionList {
15885 pub(crate) syntax: SyntaxNode,
15886}
15887impl PartitionList {
15888 #[inline]
15889 pub fn partitions(&self) -> AstChildren<Partition> {
15890 support::children(&self.syntax)
15891 }
15892 #[inline]
15893 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15894 support::token(&self.syntax, SyntaxKind::L_PAREN)
15895 }
15896 #[inline]
15897 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15898 support::token(&self.syntax, SyntaxKind::R_PAREN)
15899 }
15900}
15901
15902#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15903pub struct PartitionOf {
15904 pub(crate) syntax: SyntaxNode,
15905}
15906impl PartitionOf {
15907 #[inline]
15908 pub fn path(&self) -> Option<Path> {
15909 support::child(&self.syntax)
15910 }
15911 #[inline]
15912 pub fn of_token(&self) -> Option<SyntaxToken> {
15913 support::token(&self.syntax, SyntaxKind::OF_KW)
15914 }
15915 #[inline]
15916 pub fn partition_token(&self) -> Option<SyntaxToken> {
15917 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
15918 }
15919}
15920
15921#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15922pub struct Path {
15923 pub(crate) syntax: SyntaxNode,
15924}
15925impl Path {
15926 #[inline]
15927 pub fn qualifier(&self) -> Option<Path> {
15928 support::child(&self.syntax)
15929 }
15930 #[inline]
15931 pub fn segment(&self) -> Option<PathSegment> {
15932 support::child(&self.syntax)
15933 }
15934 #[inline]
15935 pub fn dot_token(&self) -> Option<SyntaxToken> {
15936 support::token(&self.syntax, SyntaxKind::DOT)
15937 }
15938}
15939
15940#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15941pub struct PathFactor {
15942 pub(crate) syntax: SyntaxNode,
15943}
15944impl PathFactor {
15945 #[inline]
15946 pub fn graph_pattern_qualifier(&self) -> Option<GraphPatternQualifier> {
15947 support::child(&self.syntax)
15948 }
15949 #[inline]
15950 pub fn path_primary(&self) -> Option<PathPrimary> {
15951 support::child(&self.syntax)
15952 }
15953}
15954
15955#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15956pub struct PathList {
15957 pub(crate) syntax: SyntaxNode,
15958}
15959impl PathList {
15960 #[inline]
15961 pub fn paths(&self) -> AstChildren<Path> {
15962 support::children(&self.syntax)
15963 }
15964 #[inline]
15965 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15966 support::token(&self.syntax, SyntaxKind::L_PAREN)
15967 }
15968 #[inline]
15969 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15970 support::token(&self.syntax, SyntaxKind::R_PAREN)
15971 }
15972}
15973
15974#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15975pub struct PathPattern {
15976 pub(crate) syntax: SyntaxNode,
15977}
15978impl PathPattern {
15979 #[inline]
15980 pub fn path_factor(&self) -> Option<PathFactor> {
15981 support::child(&self.syntax)
15982 }
15983 #[inline]
15984 pub fn path_factors(&self) -> AstChildren<PathFactor> {
15985 support::children(&self.syntax)
15986 }
15987}
15988
15989#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15990pub struct PathPatternList {
15991 pub(crate) syntax: SyntaxNode,
15992}
15993impl PathPatternList {
15994 #[inline]
15995 pub fn path_patterns(&self) -> AstChildren<PathPattern> {
15996 support::children(&self.syntax)
15997 }
15998}
15999
16000#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16001pub struct PathSegment {
16002 pub(crate) syntax: SyntaxNode,
16003}
16004impl PathSegment {
16005 #[inline]
16006 pub fn name(&self) -> Option<Name> {
16007 support::child(&self.syntax)
16008 }
16009 #[inline]
16010 pub fn name_ref(&self) -> Option<NameRef> {
16011 support::child(&self.syntax)
16012 }
16013}
16014
16015#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16016pub struct PathType {
16017 pub(crate) syntax: SyntaxNode,
16018}
16019impl PathType {
16020 #[inline]
16021 pub fn arg_list(&self) -> Option<ArgList> {
16022 support::child(&self.syntax)
16023 }
16024 #[inline]
16025 pub fn path(&self) -> Option<Path> {
16026 support::child(&self.syntax)
16027 }
16028 #[inline]
16029 pub fn setof_token(&self) -> Option<SyntaxToken> {
16030 support::token(&self.syntax, SyntaxKind::SETOF_KW)
16031 }
16032}
16033
16034#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16035pub struct PercentType {
16036 pub(crate) syntax: SyntaxNode,
16037}
16038impl PercentType {
16039 #[inline]
16040 pub fn path(&self) -> Option<Path> {
16041 support::child(&self.syntax)
16042 }
16043 #[inline]
16044 pub fn percent_type_clause(&self) -> Option<PercentTypeClause> {
16045 support::child(&self.syntax)
16046 }
16047 #[inline]
16048 pub fn setof_token(&self) -> Option<SyntaxToken> {
16049 support::token(&self.syntax, SyntaxKind::SETOF_KW)
16050 }
16051}
16052
16053#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16054pub struct PercentTypeClause {
16055 pub(crate) syntax: SyntaxNode,
16056}
16057impl PercentTypeClause {
16058 #[inline]
16059 pub fn percent_token(&self) -> Option<SyntaxToken> {
16060 support::token(&self.syntax, SyntaxKind::PERCENT)
16061 }
16062 #[inline]
16063 pub fn type_token(&self) -> Option<SyntaxToken> {
16064 support::token(&self.syntax, SyntaxKind::TYPE_KW)
16065 }
16066}
16067
16068#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16069pub struct PositionFn {
16070 pub(crate) syntax: SyntaxNode,
16071}
16072impl PositionFn {
16073 #[inline]
16074 pub fn expr(&self) -> Option<Expr> {
16075 support::child(&self.syntax)
16076 }
16077 #[inline]
16078 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16079 support::token(&self.syntax, SyntaxKind::L_PAREN)
16080 }
16081 #[inline]
16082 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16083 support::token(&self.syntax, SyntaxKind::R_PAREN)
16084 }
16085 #[inline]
16086 pub fn in_token(&self) -> Option<SyntaxToken> {
16087 support::token(&self.syntax, SyntaxKind::IN_KW)
16088 }
16089 #[inline]
16090 pub fn position_token(&self) -> Option<SyntaxToken> {
16091 support::token(&self.syntax, SyntaxKind::POSITION_KW)
16092 }
16093}
16094
16095#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16096pub struct PostfixExpr {
16097 pub(crate) syntax: SyntaxNode,
16098}
16099impl PostfixExpr {
16100 #[inline]
16101 pub fn expr(&self) -> Option<Expr> {
16102 support::child(&self.syntax)
16103 }
16104}
16105
16106#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16107pub struct PrefixExpr {
16108 pub(crate) syntax: SyntaxNode,
16109}
16110impl PrefixExpr {
16111 #[inline]
16112 pub fn expr(&self) -> Option<Expr> {
16113 support::child(&self.syntax)
16114 }
16115}
16116
16117#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16118pub struct Prepare {
16119 pub(crate) syntax: SyntaxNode,
16120}
16121impl Prepare {
16122 #[inline]
16123 pub fn name(&self) -> Option<Name> {
16124 support::child(&self.syntax)
16125 }
16126 #[inline]
16127 pub fn param_list(&self) -> Option<ParamList> {
16128 support::child(&self.syntax)
16129 }
16130 #[inline]
16131 pub fn preparable_stmt(&self) -> Option<PreparableStmt> {
16132 support::child(&self.syntax)
16133 }
16134 #[inline]
16135 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
16136 support::token(&self.syntax, SyntaxKind::SEMICOLON)
16137 }
16138 #[inline]
16139 pub fn as_token(&self) -> Option<SyntaxToken> {
16140 support::token(&self.syntax, SyntaxKind::AS_KW)
16141 }
16142 #[inline]
16143 pub fn prepare_token(&self) -> Option<SyntaxToken> {
16144 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
16145 }
16146}
16147
16148#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16149pub struct PrepareTransaction {
16150 pub(crate) syntax: SyntaxNode,
16151}
16152impl PrepareTransaction {
16153 #[inline]
16154 pub fn literal(&self) -> Option<Literal> {
16155 support::child(&self.syntax)
16156 }
16157 #[inline]
16158 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
16159 support::token(&self.syntax, SyntaxKind::SEMICOLON)
16160 }
16161 #[inline]
16162 pub fn prepare_token(&self) -> Option<SyntaxToken> {
16163 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
16164 }
16165 #[inline]
16166 pub fn transaction_token(&self) -> Option<SyntaxToken> {
16167 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
16168 }
16169}
16170
16171#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16172pub struct PreserveRows {
16173 pub(crate) syntax: SyntaxNode,
16174}
16175impl PreserveRows {
16176 #[inline]
16177 pub fn preserve_token(&self) -> Option<SyntaxToken> {
16178 support::token(&self.syntax, SyntaxKind::PRESERVE_KW)
16179 }
16180 #[inline]
16181 pub fn rows_token(&self) -> Option<SyntaxToken> {
16182 support::token(&self.syntax, SyntaxKind::ROWS_KW)
16183 }
16184}
16185
16186#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16187pub struct PrimaryKeyConstraint {
16188 pub(crate) syntax: SyntaxNode,
16189}
16190impl PrimaryKeyConstraint {
16191 #[inline]
16192 pub fn column_list(&self) -> Option<ColumnList> {
16193 support::child(&self.syntax)
16194 }
16195 #[inline]
16196 pub fn constraint_include_clause(&self) -> Option<ConstraintIncludeClause> {
16197 support::child(&self.syntax)
16198 }
16199 #[inline]
16200 pub fn constraint_index_tablespace(&self) -> Option<ConstraintIndexTablespace> {
16201 support::child(&self.syntax)
16202 }
16203 #[inline]
16204 pub fn constraint_name(&self) -> Option<ConstraintName> {
16205 support::child(&self.syntax)
16206 }
16207 #[inline]
16208 pub fn using_index(&self) -> Option<UsingIndex> {
16209 support::child(&self.syntax)
16210 }
16211 #[inline]
16212 pub fn with_params(&self) -> Option<WithParams> {
16213 support::child(&self.syntax)
16214 }
16215 #[inline]
16216 pub fn key_token(&self) -> Option<SyntaxToken> {
16217 support::token(&self.syntax, SyntaxKind::KEY_KW)
16218 }
16219 #[inline]
16220 pub fn primary_token(&self) -> Option<SyntaxToken> {
16221 support::token(&self.syntax, SyntaxKind::PRIMARY_KW)
16222 }
16223}
16224
16225#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16226pub struct Prior {
16227 pub(crate) syntax: SyntaxNode,
16228}
16229impl Prior {
16230 #[inline]
16231 pub fn prior_token(&self) -> Option<SyntaxToken> {
16232 support::token(&self.syntax, SyntaxKind::PRIOR_KW)
16233 }
16234}
16235
16236#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16237pub struct PrivilegeObjects {
16238 pub(crate) syntax: SyntaxNode,
16239}
16240impl PrivilegeObjects {
16241 #[inline]
16242 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
16243 support::child(&self.syntax)
16244 }
16245 #[inline]
16246 pub fn literals(&self) -> AstChildren<Literal> {
16247 support::children(&self.syntax)
16248 }
16249 #[inline]
16250 pub fn name_refs(&self) -> AstChildren<NameRef> {
16251 support::children(&self.syntax)
16252 }
16253 #[inline]
16254 pub fn paths(&self) -> AstChildren<Path> {
16255 support::children(&self.syntax)
16256 }
16257 #[inline]
16258 pub fn types(&self) -> AstChildren<Type> {
16259 support::children(&self.syntax)
16260 }
16261 #[inline]
16262 pub fn all_token(&self) -> Option<SyntaxToken> {
16263 support::token(&self.syntax, SyntaxKind::ALL_KW)
16264 }
16265 #[inline]
16266 pub fn data_token(&self) -> Option<SyntaxToken> {
16267 support::token(&self.syntax, SyntaxKind::DATA_KW)
16268 }
16269 #[inline]
16270 pub fn database_token(&self) -> Option<SyntaxToken> {
16271 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
16272 }
16273 #[inline]
16274 pub fn domain_token(&self) -> Option<SyntaxToken> {
16275 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
16276 }
16277 #[inline]
16278 pub fn foreign_token(&self) -> Option<SyntaxToken> {
16279 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
16280 }
16281 #[inline]
16282 pub fn function_token(&self) -> Option<SyntaxToken> {
16283 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
16284 }
16285 #[inline]
16286 pub fn functions_token(&self) -> Option<SyntaxToken> {
16287 support::token(&self.syntax, SyntaxKind::FUNCTIONS_KW)
16288 }
16289 #[inline]
16290 pub fn graph_token(&self) -> Option<SyntaxToken> {
16291 support::token(&self.syntax, SyntaxKind::GRAPH_KW)
16292 }
16293 #[inline]
16294 pub fn in_token(&self) -> Option<SyntaxToken> {
16295 support::token(&self.syntax, SyntaxKind::IN_KW)
16296 }
16297 #[inline]
16298 pub fn language_token(&self) -> Option<SyntaxToken> {
16299 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
16300 }
16301 #[inline]
16302 pub fn large_token(&self) -> Option<SyntaxToken> {
16303 support::token(&self.syntax, SyntaxKind::LARGE_KW)
16304 }
16305 #[inline]
16306 pub fn object_token(&self) -> Option<SyntaxToken> {
16307 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
16308 }
16309 #[inline]
16310 pub fn parameter_token(&self) -> Option<SyntaxToken> {
16311 support::token(&self.syntax, SyntaxKind::PARAMETER_KW)
16312 }
16313 #[inline]
16314 pub fn procedure_token(&self) -> Option<SyntaxToken> {
16315 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
16316 }
16317 #[inline]
16318 pub fn procedures_token(&self) -> Option<SyntaxToken> {
16319 support::token(&self.syntax, SyntaxKind::PROCEDURES_KW)
16320 }
16321 #[inline]
16322 pub fn property_token(&self) -> Option<SyntaxToken> {
16323 support::token(&self.syntax, SyntaxKind::PROPERTY_KW)
16324 }
16325 #[inline]
16326 pub fn routine_token(&self) -> Option<SyntaxToken> {
16327 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
16328 }
16329 #[inline]
16330 pub fn routines_token(&self) -> Option<SyntaxToken> {
16331 support::token(&self.syntax, SyntaxKind::ROUTINES_KW)
16332 }
16333 #[inline]
16334 pub fn schema_token(&self) -> Option<SyntaxToken> {
16335 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
16336 }
16337 #[inline]
16338 pub fn sequence_token(&self) -> Option<SyntaxToken> {
16339 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
16340 }
16341 #[inline]
16342 pub fn sequences_token(&self) -> Option<SyntaxToken> {
16343 support::token(&self.syntax, SyntaxKind::SEQUENCES_KW)
16344 }
16345 #[inline]
16346 pub fn server_token(&self) -> Option<SyntaxToken> {
16347 support::token(&self.syntax, SyntaxKind::SERVER_KW)
16348 }
16349 #[inline]
16350 pub fn table_token(&self) -> Option<SyntaxToken> {
16351 support::token(&self.syntax, SyntaxKind::TABLE_KW)
16352 }
16353 #[inline]
16354 pub fn tables_token(&self) -> Option<SyntaxToken> {
16355 support::token(&self.syntax, SyntaxKind::TABLES_KW)
16356 }
16357 #[inline]
16358 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
16359 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
16360 }
16361 #[inline]
16362 pub fn type_token(&self) -> Option<SyntaxToken> {
16363 support::token(&self.syntax, SyntaxKind::TYPE_KW)
16364 }
16365 #[inline]
16366 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
16367 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
16368 }
16369}
16370
16371#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16372pub struct PrivilegeTarget {
16373 pub(crate) syntax: SyntaxNode,
16374}
16375impl PrivilegeTarget {
16376 #[inline]
16377 pub fn functions_token(&self) -> Option<SyntaxToken> {
16378 support::token(&self.syntax, SyntaxKind::FUNCTIONS_KW)
16379 }
16380 #[inline]
16381 pub fn large_token(&self) -> Option<SyntaxToken> {
16382 support::token(&self.syntax, SyntaxKind::LARGE_KW)
16383 }
16384 #[inline]
16385 pub fn objects_token(&self) -> Option<SyntaxToken> {
16386 support::token(&self.syntax, SyntaxKind::OBJECTS_KW)
16387 }
16388 #[inline]
16389 pub fn routines_token(&self) -> Option<SyntaxToken> {
16390 support::token(&self.syntax, SyntaxKind::ROUTINES_KW)
16391 }
16392 #[inline]
16393 pub fn schemas_token(&self) -> Option<SyntaxToken> {
16394 support::token(&self.syntax, SyntaxKind::SCHEMAS_KW)
16395 }
16396 #[inline]
16397 pub fn sequences_token(&self) -> Option<SyntaxToken> {
16398 support::token(&self.syntax, SyntaxKind::SEQUENCES_KW)
16399 }
16400 #[inline]
16401 pub fn tables_token(&self) -> Option<SyntaxToken> {
16402 support::token(&self.syntax, SyntaxKind::TABLES_KW)
16403 }
16404 #[inline]
16405 pub fn types_token(&self) -> Option<SyntaxToken> {
16406 support::token(&self.syntax, SyntaxKind::TYPES_KW)
16407 }
16408}
16409
16410#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16411pub struct Privileges {
16412 pub(crate) syntax: SyntaxNode,
16413}
16414impl Privileges {
16415 #[inline]
16416 pub fn column_list(&self) -> Option<ColumnList> {
16417 support::child(&self.syntax)
16418 }
16419 #[inline]
16420 pub fn revoke_command_list(&self) -> Option<RevokeCommandList> {
16421 support::child(&self.syntax)
16422 }
16423 #[inline]
16424 pub fn all_token(&self) -> Option<SyntaxToken> {
16425 support::token(&self.syntax, SyntaxKind::ALL_KW)
16426 }
16427 #[inline]
16428 pub fn privileges_token(&self) -> Option<SyntaxToken> {
16429 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
16430 }
16431}
16432
16433#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16434pub struct Properties {
16435 pub(crate) syntax: SyntaxNode,
16436}
16437impl Properties {
16438 #[inline]
16439 pub fn expr_as_name_list(&self) -> Option<ExprAsNameList> {
16440 support::child(&self.syntax)
16441 }
16442 #[inline]
16443 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16444 support::token(&self.syntax, SyntaxKind::L_PAREN)
16445 }
16446 #[inline]
16447 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16448 support::token(&self.syntax, SyntaxKind::R_PAREN)
16449 }
16450 #[inline]
16451 pub fn properties_token(&self) -> Option<SyntaxToken> {
16452 support::token(&self.syntax, SyntaxKind::PROPERTIES_KW)
16453 }
16454}
16455
16456#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16457pub struct PublicationObject {
16458 pub(crate) syntax: SyntaxNode,
16459}
16460impl PublicationObject {
16461 #[inline]
16462 pub fn column_list(&self) -> Option<ColumnList> {
16463 support::child(&self.syntax)
16464 }
16465 #[inline]
16466 pub fn name_ref(&self) -> Option<NameRef> {
16467 support::child(&self.syntax)
16468 }
16469 #[inline]
16470 pub fn path(&self) -> Option<Path> {
16471 support::child(&self.syntax)
16472 }
16473 #[inline]
16474 pub fn where_condition_clause(&self) -> Option<WhereConditionClause> {
16475 support::child(&self.syntax)
16476 }
16477 #[inline]
16478 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16479 support::token(&self.syntax, SyntaxKind::L_PAREN)
16480 }
16481 #[inline]
16482 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16483 support::token(&self.syntax, SyntaxKind::R_PAREN)
16484 }
16485 #[inline]
16486 pub fn star_token(&self) -> Option<SyntaxToken> {
16487 support::token(&self.syntax, SyntaxKind::STAR)
16488 }
16489 #[inline]
16490 pub fn current_schema_token(&self) -> Option<SyntaxToken> {
16491 support::token(&self.syntax, SyntaxKind::CURRENT_SCHEMA_KW)
16492 }
16493 #[inline]
16494 pub fn in_token(&self) -> Option<SyntaxToken> {
16495 support::token(&self.syntax, SyntaxKind::IN_KW)
16496 }
16497 #[inline]
16498 pub fn only_token(&self) -> Option<SyntaxToken> {
16499 support::token(&self.syntax, SyntaxKind::ONLY_KW)
16500 }
16501 #[inline]
16502 pub fn schema_token(&self) -> Option<SyntaxToken> {
16503 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
16504 }
16505 #[inline]
16506 pub fn table_token(&self) -> Option<SyntaxToken> {
16507 support::token(&self.syntax, SyntaxKind::TABLE_KW)
16508 }
16509 #[inline]
16510 pub fn tables_token(&self) -> Option<SyntaxToken> {
16511 support::token(&self.syntax, SyntaxKind::TABLES_KW)
16512 }
16513}
16514
16515#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16516pub struct ReadCommitted {
16517 pub(crate) syntax: SyntaxNode,
16518}
16519impl ReadCommitted {
16520 #[inline]
16521 pub fn committed_token(&self) -> Option<SyntaxToken> {
16522 support::token(&self.syntax, SyntaxKind::COMMITTED_KW)
16523 }
16524 #[inline]
16525 pub fn isolation_token(&self) -> Option<SyntaxToken> {
16526 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
16527 }
16528 #[inline]
16529 pub fn level_token(&self) -> Option<SyntaxToken> {
16530 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
16531 }
16532 #[inline]
16533 pub fn read_token(&self) -> Option<SyntaxToken> {
16534 support::token(&self.syntax, SyntaxKind::READ_KW)
16535 }
16536}
16537
16538#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16539pub struct ReadOnly {
16540 pub(crate) syntax: SyntaxNode,
16541}
16542impl ReadOnly {
16543 #[inline]
16544 pub fn only_token(&self) -> Option<SyntaxToken> {
16545 support::token(&self.syntax, SyntaxKind::ONLY_KW)
16546 }
16547 #[inline]
16548 pub fn read_token(&self) -> Option<SyntaxToken> {
16549 support::token(&self.syntax, SyntaxKind::READ_KW)
16550 }
16551}
16552
16553#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16554pub struct ReadUncommitted {
16555 pub(crate) syntax: SyntaxNode,
16556}
16557impl ReadUncommitted {
16558 #[inline]
16559 pub fn isolation_token(&self) -> Option<SyntaxToken> {
16560 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
16561 }
16562 #[inline]
16563 pub fn level_token(&self) -> Option<SyntaxToken> {
16564 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
16565 }
16566 #[inline]
16567 pub fn read_token(&self) -> Option<SyntaxToken> {
16568 support::token(&self.syntax, SyntaxKind::READ_KW)
16569 }
16570 #[inline]
16571 pub fn uncommitted_token(&self) -> Option<SyntaxToken> {
16572 support::token(&self.syntax, SyntaxKind::UNCOMMITTED_KW)
16573 }
16574}
16575
16576#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16577pub struct ReadWrite {
16578 pub(crate) syntax: SyntaxNode,
16579}
16580impl ReadWrite {
16581 #[inline]
16582 pub fn read_token(&self) -> Option<SyntaxToken> {
16583 support::token(&self.syntax, SyntaxKind::READ_KW)
16584 }
16585 #[inline]
16586 pub fn write_token(&self) -> Option<SyntaxToken> {
16587 support::token(&self.syntax, SyntaxKind::WRITE_KW)
16588 }
16589}
16590
16591#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16592pub struct Reassign {
16593 pub(crate) syntax: SyntaxNode,
16594}
16595impl Reassign {
16596 #[inline]
16597 pub fn new_roles(&self) -> Option<RoleRefList> {
16598 support::child(&self.syntax)
16599 }
16600 #[inline]
16601 pub fn old_roles(&self) -> Option<RoleRefList> {
16602 support::child(&self.syntax)
16603 }
16604 #[inline]
16605 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
16606 support::token(&self.syntax, SyntaxKind::SEMICOLON)
16607 }
16608 #[inline]
16609 pub fn by_token(&self) -> Option<SyntaxToken> {
16610 support::token(&self.syntax, SyntaxKind::BY_KW)
16611 }
16612 #[inline]
16613 pub fn owned_token(&self) -> Option<SyntaxToken> {
16614 support::token(&self.syntax, SyntaxKind::OWNED_KW)
16615 }
16616 #[inline]
16617 pub fn reassign_token(&self) -> Option<SyntaxToken> {
16618 support::token(&self.syntax, SyntaxKind::REASSIGN_KW)
16619 }
16620 #[inline]
16621 pub fn to_token(&self) -> Option<SyntaxToken> {
16622 support::token(&self.syntax, SyntaxKind::TO_KW)
16623 }
16624}
16625
16626#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16627pub struct ReferencesConstraint {
16628 pub(crate) syntax: SyntaxNode,
16629}
16630impl ReferencesConstraint {
16631 #[inline]
16632 pub fn column(&self) -> Option<NameRef> {
16633 support::child(&self.syntax)
16634 }
16635 #[inline]
16636 pub fn constraint_name(&self) -> Option<ConstraintName> {
16637 support::child(&self.syntax)
16638 }
16639 #[inline]
16640 pub fn match_type(&self) -> Option<MatchType> {
16641 support::child(&self.syntax)
16642 }
16643 #[inline]
16644 pub fn on_delete_action(&self) -> Option<OnDeleteAction> {
16645 support::child(&self.syntax)
16646 }
16647 #[inline]
16648 pub fn on_update_action(&self) -> Option<OnUpdateAction> {
16649 support::child(&self.syntax)
16650 }
16651 #[inline]
16652 pub fn table(&self) -> Option<Path> {
16653 support::child(&self.syntax)
16654 }
16655 #[inline]
16656 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16657 support::token(&self.syntax, SyntaxKind::L_PAREN)
16658 }
16659 #[inline]
16660 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16661 support::token(&self.syntax, SyntaxKind::R_PAREN)
16662 }
16663 #[inline]
16664 pub fn references_token(&self) -> Option<SyntaxToken> {
16665 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
16666 }
16667}
16668
16669#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16670pub struct ReferencesTable {
16671 pub(crate) syntax: SyntaxNode,
16672}
16673impl ReferencesTable {
16674 #[inline]
16675 pub fn column_list(&self) -> Option<ColumnList> {
16676 support::child(&self.syntax)
16677 }
16678 #[inline]
16679 pub fn name_ref(&self) -> Option<NameRef> {
16680 support::child(&self.syntax)
16681 }
16682 #[inline]
16683 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16684 support::token(&self.syntax, SyntaxKind::L_PAREN)
16685 }
16686 #[inline]
16687 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16688 support::token(&self.syntax, SyntaxKind::R_PAREN)
16689 }
16690 #[inline]
16691 pub fn references_token(&self) -> Option<SyntaxToken> {
16692 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
16693 }
16694}
16695
16696#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16697pub struct Referencing {
16698 pub(crate) syntax: SyntaxNode,
16699}
16700impl Referencing {
16701 #[inline]
16702 pub fn referencing_tables(&self) -> AstChildren<ReferencingTable> {
16703 support::children(&self.syntax)
16704 }
16705 #[inline]
16706 pub fn referencing_token(&self) -> Option<SyntaxToken> {
16707 support::token(&self.syntax, SyntaxKind::REFERENCING_KW)
16708 }
16709}
16710
16711#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16712pub struct ReferencingTable {
16713 pub(crate) syntax: SyntaxNode,
16714}
16715impl ReferencingTable {
16716 #[inline]
16717 pub fn name_ref(&self) -> Option<NameRef> {
16718 support::child(&self.syntax)
16719 }
16720 #[inline]
16721 pub fn as_token(&self) -> Option<SyntaxToken> {
16722 support::token(&self.syntax, SyntaxKind::AS_KW)
16723 }
16724 #[inline]
16725 pub fn new_token(&self) -> Option<SyntaxToken> {
16726 support::token(&self.syntax, SyntaxKind::NEW_KW)
16727 }
16728 #[inline]
16729 pub fn old_token(&self) -> Option<SyntaxToken> {
16730 support::token(&self.syntax, SyntaxKind::OLD_KW)
16731 }
16732 #[inline]
16733 pub fn table_token(&self) -> Option<SyntaxToken> {
16734 support::token(&self.syntax, SyntaxKind::TABLE_KW)
16735 }
16736}
16737
16738#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16739pub struct Refresh {
16740 pub(crate) syntax: SyntaxNode,
16741}
16742impl Refresh {
16743 #[inline]
16744 pub fn path(&self) -> Option<Path> {
16745 support::child(&self.syntax)
16746 }
16747 #[inline]
16748 pub fn with_data(&self) -> Option<WithData> {
16749 support::child(&self.syntax)
16750 }
16751 #[inline]
16752 pub fn with_no_data(&self) -> Option<WithNoData> {
16753 support::child(&self.syntax)
16754 }
16755 #[inline]
16756 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
16757 support::token(&self.syntax, SyntaxKind::SEMICOLON)
16758 }
16759 #[inline]
16760 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
16761 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
16762 }
16763 #[inline]
16764 pub fn materialized_token(&self) -> Option<SyntaxToken> {
16765 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
16766 }
16767 #[inline]
16768 pub fn refresh_token(&self) -> Option<SyntaxToken> {
16769 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
16770 }
16771 #[inline]
16772 pub fn view_token(&self) -> Option<SyntaxToken> {
16773 support::token(&self.syntax, SyntaxKind::VIEW_KW)
16774 }
16775}
16776
16777#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16778pub struct RefreshCollationVersion {
16779 pub(crate) syntax: SyntaxNode,
16780}
16781impl RefreshCollationVersion {
16782 #[inline]
16783 pub fn collation_token(&self) -> Option<SyntaxToken> {
16784 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
16785 }
16786 #[inline]
16787 pub fn refresh_token(&self) -> Option<SyntaxToken> {
16788 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
16789 }
16790 #[inline]
16791 pub fn version_token(&self) -> Option<SyntaxToken> {
16792 support::token(&self.syntax, SyntaxKind::VERSION_KW)
16793 }
16794}
16795
16796#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16797pub struct RefreshVersion {
16798 pub(crate) syntax: SyntaxNode,
16799}
16800impl RefreshVersion {
16801 #[inline]
16802 pub fn refresh_token(&self) -> Option<SyntaxToken> {
16803 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
16804 }
16805 #[inline]
16806 pub fn version_token(&self) -> Option<SyntaxToken> {
16807 support::token(&self.syntax, SyntaxKind::VERSION_KW)
16808 }
16809}
16810
16811#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16812pub struct Reindex {
16813 pub(crate) syntax: SyntaxNode,
16814}
16815impl Reindex {
16816 #[inline]
16817 pub fn path(&self) -> Option<Path> {
16818 support::child(&self.syntax)
16819 }
16820 #[inline]
16821 pub fn reindex_option_list(&self) -> Option<ReindexOptionList> {
16822 support::child(&self.syntax)
16823 }
16824 #[inline]
16825 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
16826 support::token(&self.syntax, SyntaxKind::SEMICOLON)
16827 }
16828 #[inline]
16829 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
16830 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
16831 }
16832 #[inline]
16833 pub fn database_token(&self) -> Option<SyntaxToken> {
16834 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
16835 }
16836 #[inline]
16837 pub fn index_token(&self) -> Option<SyntaxToken> {
16838 support::token(&self.syntax, SyntaxKind::INDEX_KW)
16839 }
16840 #[inline]
16841 pub fn reindex_token(&self) -> Option<SyntaxToken> {
16842 support::token(&self.syntax, SyntaxKind::REINDEX_KW)
16843 }
16844 #[inline]
16845 pub fn schema_token(&self) -> Option<SyntaxToken> {
16846 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
16847 }
16848 #[inline]
16849 pub fn system_token(&self) -> Option<SyntaxToken> {
16850 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
16851 }
16852 #[inline]
16853 pub fn table_token(&self) -> Option<SyntaxToken> {
16854 support::token(&self.syntax, SyntaxKind::TABLE_KW)
16855 }
16856}
16857
16858#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16859pub struct ReindexOption {
16860 pub(crate) syntax: SyntaxNode,
16861}
16862impl ReindexOption {
16863 #[inline]
16864 pub fn literal(&self) -> Option<Literal> {
16865 support::child(&self.syntax)
16866 }
16867 #[inline]
16868 pub fn name(&self) -> Option<Name> {
16869 support::child(&self.syntax)
16870 }
16871 #[inline]
16872 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
16873 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
16874 }
16875 #[inline]
16876 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
16877 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
16878 }
16879 #[inline]
16880 pub fn verbose_token(&self) -> Option<SyntaxToken> {
16881 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
16882 }
16883}
16884
16885#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16886pub struct ReindexOptionList {
16887 pub(crate) syntax: SyntaxNode,
16888}
16889impl ReindexOptionList {
16890 #[inline]
16891 pub fn reindex_options(&self) -> AstChildren<ReindexOption> {
16892 support::children(&self.syntax)
16893 }
16894 #[inline]
16895 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16896 support::token(&self.syntax, SyntaxKind::L_PAREN)
16897 }
16898 #[inline]
16899 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16900 support::token(&self.syntax, SyntaxKind::R_PAREN)
16901 }
16902}
16903
16904#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16905pub struct RelationName {
16906 pub(crate) syntax: SyntaxNode,
16907}
16908impl RelationName {
16909 #[inline]
16910 pub fn path(&self) -> Option<Path> {
16911 support::child(&self.syntax)
16912 }
16913 #[inline]
16914 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16915 support::token(&self.syntax, SyntaxKind::L_PAREN)
16916 }
16917 #[inline]
16918 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16919 support::token(&self.syntax, SyntaxKind::R_PAREN)
16920 }
16921 #[inline]
16922 pub fn star_token(&self) -> Option<SyntaxToken> {
16923 support::token(&self.syntax, SyntaxKind::STAR)
16924 }
16925 #[inline]
16926 pub fn only_token(&self) -> Option<SyntaxToken> {
16927 support::token(&self.syntax, SyntaxKind::ONLY_KW)
16928 }
16929}
16930
16931#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16932pub struct Relative {
16933 pub(crate) syntax: SyntaxNode,
16934}
16935impl Relative {
16936 #[inline]
16937 pub fn expr(&self) -> Option<Expr> {
16938 support::child(&self.syntax)
16939 }
16940 #[inline]
16941 pub fn relative_token(&self) -> Option<SyntaxToken> {
16942 support::token(&self.syntax, SyntaxKind::RELATIVE_KW)
16943 }
16944}
16945
16946#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16947pub struct ReleaseSavepoint {
16948 pub(crate) syntax: SyntaxNode,
16949}
16950impl ReleaseSavepoint {
16951 #[inline]
16952 pub fn name_ref(&self) -> Option<NameRef> {
16953 support::child(&self.syntax)
16954 }
16955 #[inline]
16956 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
16957 support::token(&self.syntax, SyntaxKind::SEMICOLON)
16958 }
16959 #[inline]
16960 pub fn release_token(&self) -> Option<SyntaxToken> {
16961 support::token(&self.syntax, SyntaxKind::RELEASE_KW)
16962 }
16963 #[inline]
16964 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
16965 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
16966 }
16967}
16968
16969#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16970pub struct RenameAttribute {
16971 pub(crate) syntax: SyntaxNode,
16972}
16973impl RenameAttribute {
16974 #[inline]
16975 pub fn cascade(&self) -> Option<Cascade> {
16976 support::child(&self.syntax)
16977 }
16978 #[inline]
16979 pub fn name(&self) -> Option<Name> {
16980 support::child(&self.syntax)
16981 }
16982 #[inline]
16983 pub fn name_ref(&self) -> Option<NameRef> {
16984 support::child(&self.syntax)
16985 }
16986 #[inline]
16987 pub fn restrict(&self) -> Option<Restrict> {
16988 support::child(&self.syntax)
16989 }
16990 #[inline]
16991 pub fn attribute_token(&self) -> Option<SyntaxToken> {
16992 support::token(&self.syntax, SyntaxKind::ATTRIBUTE_KW)
16993 }
16994 #[inline]
16995 pub fn rename_token(&self) -> Option<SyntaxToken> {
16996 support::token(&self.syntax, SyntaxKind::RENAME_KW)
16997 }
16998 #[inline]
16999 pub fn to_token(&self) -> Option<SyntaxToken> {
17000 support::token(&self.syntax, SyntaxKind::TO_KW)
17001 }
17002}
17003
17004#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17005pub struct RenameColumn {
17006 pub(crate) syntax: SyntaxNode,
17007}
17008impl RenameColumn {
17009 #[inline]
17010 pub fn column_token(&self) -> Option<SyntaxToken> {
17011 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
17012 }
17013 #[inline]
17014 pub fn rename_token(&self) -> Option<SyntaxToken> {
17015 support::token(&self.syntax, SyntaxKind::RENAME_KW)
17016 }
17017 #[inline]
17018 pub fn to_token(&self) -> Option<SyntaxToken> {
17019 support::token(&self.syntax, SyntaxKind::TO_KW)
17020 }
17021}
17022
17023#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17024pub struct RenameConstraint {
17025 pub(crate) syntax: SyntaxNode,
17026}
17027impl RenameConstraint {
17028 #[inline]
17029 pub fn name(&self) -> Option<Name> {
17030 support::child(&self.syntax)
17031 }
17032 #[inline]
17033 pub fn name_ref(&self) -> Option<NameRef> {
17034 support::child(&self.syntax)
17035 }
17036 #[inline]
17037 pub fn constraint_token(&self) -> Option<SyntaxToken> {
17038 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
17039 }
17040 #[inline]
17041 pub fn rename_token(&self) -> Option<SyntaxToken> {
17042 support::token(&self.syntax, SyntaxKind::RENAME_KW)
17043 }
17044 #[inline]
17045 pub fn to_token(&self) -> Option<SyntaxToken> {
17046 support::token(&self.syntax, SyntaxKind::TO_KW)
17047 }
17048}
17049
17050#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17051pub struct RenameTo {
17052 pub(crate) syntax: SyntaxNode,
17053}
17054impl RenameTo {
17055 #[inline]
17056 pub fn name(&self) -> Option<Name> {
17057 support::child(&self.syntax)
17058 }
17059 #[inline]
17060 pub fn rename_token(&self) -> Option<SyntaxToken> {
17061 support::token(&self.syntax, SyntaxKind::RENAME_KW)
17062 }
17063 #[inline]
17064 pub fn to_token(&self) -> Option<SyntaxToken> {
17065 support::token(&self.syntax, SyntaxKind::TO_KW)
17066 }
17067}
17068
17069#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17070pub struct RenameValue {
17071 pub(crate) syntax: SyntaxNode,
17072}
17073impl RenameValue {
17074 #[inline]
17075 pub fn literal(&self) -> Option<Literal> {
17076 support::child(&self.syntax)
17077 }
17078 #[inline]
17079 pub fn rename_token(&self) -> Option<SyntaxToken> {
17080 support::token(&self.syntax, SyntaxKind::RENAME_KW)
17081 }
17082 #[inline]
17083 pub fn to_token(&self) -> Option<SyntaxToken> {
17084 support::token(&self.syntax, SyntaxKind::TO_KW)
17085 }
17086 #[inline]
17087 pub fn value_token(&self) -> Option<SyntaxToken> {
17088 support::token(&self.syntax, SyntaxKind::VALUE_KW)
17089 }
17090}
17091
17092#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17093pub struct Repack {
17094 pub(crate) syntax: SyntaxNode,
17095}
17096impl Repack {
17097 #[inline]
17098 pub fn name_ref(&self) -> Option<NameRef> {
17099 support::child(&self.syntax)
17100 }
17101 #[inline]
17102 pub fn option_item_list(&self) -> Option<OptionItemList> {
17103 support::child(&self.syntax)
17104 }
17105 #[inline]
17106 pub fn table_and_columns_list(&self) -> Option<TableAndColumnsList> {
17107 support::child(&self.syntax)
17108 }
17109 #[inline]
17110 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
17111 support::token(&self.syntax, SyntaxKind::SEMICOLON)
17112 }
17113 #[inline]
17114 pub fn index_token(&self) -> Option<SyntaxToken> {
17115 support::token(&self.syntax, SyntaxKind::INDEX_KW)
17116 }
17117 #[inline]
17118 pub fn repack_token(&self) -> Option<SyntaxToken> {
17119 support::token(&self.syntax, SyntaxKind::REPACK_KW)
17120 }
17121 #[inline]
17122 pub fn using_token(&self) -> Option<SyntaxToken> {
17123 support::token(&self.syntax, SyntaxKind::USING_KW)
17124 }
17125}
17126
17127#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17128pub struct RepeatableClause {
17129 pub(crate) syntax: SyntaxNode,
17130}
17131impl RepeatableClause {
17132 #[inline]
17133 pub fn expr(&self) -> Option<Expr> {
17134 support::child(&self.syntax)
17135 }
17136 #[inline]
17137 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
17138 support::token(&self.syntax, SyntaxKind::L_PAREN)
17139 }
17140 #[inline]
17141 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
17142 support::token(&self.syntax, SyntaxKind::R_PAREN)
17143 }
17144 #[inline]
17145 pub fn repeatable_token(&self) -> Option<SyntaxToken> {
17146 support::token(&self.syntax, SyntaxKind::REPEATABLE_KW)
17147 }
17148}
17149
17150#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17151pub struct RepeatableRead {
17152 pub(crate) syntax: SyntaxNode,
17153}
17154impl RepeatableRead {
17155 #[inline]
17156 pub fn isolation_token(&self) -> Option<SyntaxToken> {
17157 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
17158 }
17159 #[inline]
17160 pub fn level_token(&self) -> Option<SyntaxToken> {
17161 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
17162 }
17163 #[inline]
17164 pub fn read_token(&self) -> Option<SyntaxToken> {
17165 support::token(&self.syntax, SyntaxKind::READ_KW)
17166 }
17167 #[inline]
17168 pub fn repeatable_token(&self) -> Option<SyntaxToken> {
17169 support::token(&self.syntax, SyntaxKind::REPEATABLE_KW)
17170 }
17171}
17172
17173#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17174pub struct ReplicaIdentity {
17175 pub(crate) syntax: SyntaxNode,
17176}
17177impl ReplicaIdentity {
17178 #[inline]
17179 pub fn name_ref(&self) -> Option<NameRef> {
17180 support::child(&self.syntax)
17181 }
17182 #[inline]
17183 pub fn default_token(&self) -> Option<SyntaxToken> {
17184 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
17185 }
17186 #[inline]
17187 pub fn full_token(&self) -> Option<SyntaxToken> {
17188 support::token(&self.syntax, SyntaxKind::FULL_KW)
17189 }
17190 #[inline]
17191 pub fn identity_token(&self) -> Option<SyntaxToken> {
17192 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
17193 }
17194 #[inline]
17195 pub fn index_token(&self) -> Option<SyntaxToken> {
17196 support::token(&self.syntax, SyntaxKind::INDEX_KW)
17197 }
17198 #[inline]
17199 pub fn nothing_token(&self) -> Option<SyntaxToken> {
17200 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
17201 }
17202 #[inline]
17203 pub fn replica_token(&self) -> Option<SyntaxToken> {
17204 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
17205 }
17206 #[inline]
17207 pub fn using_token(&self) -> Option<SyntaxToken> {
17208 support::token(&self.syntax, SyntaxKind::USING_KW)
17209 }
17210}
17211
17212#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17213pub struct Reset {
17214 pub(crate) syntax: SyntaxNode,
17215}
17216impl Reset {
17217 #[inline]
17218 pub fn path(&self) -> Option<Path> {
17219 support::child(&self.syntax)
17220 }
17221 #[inline]
17222 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
17223 support::token(&self.syntax, SyntaxKind::SEMICOLON)
17224 }
17225 #[inline]
17226 pub fn all_token(&self) -> Option<SyntaxToken> {
17227 support::token(&self.syntax, SyntaxKind::ALL_KW)
17228 }
17229 #[inline]
17230 pub fn authorization_token(&self) -> Option<SyntaxToken> {
17231 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
17232 }
17233 #[inline]
17234 pub fn isolation_token(&self) -> Option<SyntaxToken> {
17235 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
17236 }
17237 #[inline]
17238 pub fn level_token(&self) -> Option<SyntaxToken> {
17239 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
17240 }
17241 #[inline]
17242 pub fn reset_token(&self) -> Option<SyntaxToken> {
17243 support::token(&self.syntax, SyntaxKind::RESET_KW)
17244 }
17245 #[inline]
17246 pub fn session_token(&self) -> Option<SyntaxToken> {
17247 support::token(&self.syntax, SyntaxKind::SESSION_KW)
17248 }
17249 #[inline]
17250 pub fn time_token(&self) -> Option<SyntaxToken> {
17251 support::token(&self.syntax, SyntaxKind::TIME_KW)
17252 }
17253 #[inline]
17254 pub fn transaction_token(&self) -> Option<SyntaxToken> {
17255 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
17256 }
17257 #[inline]
17258 pub fn zone_token(&self) -> Option<SyntaxToken> {
17259 support::token(&self.syntax, SyntaxKind::ZONE_KW)
17260 }
17261}
17262
17263#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17264pub struct ResetConfigParam {
17265 pub(crate) syntax: SyntaxNode,
17266}
17267impl ResetConfigParam {
17268 #[inline]
17269 pub fn path(&self) -> Option<Path> {
17270 support::child(&self.syntax)
17271 }
17272 #[inline]
17273 pub fn all_token(&self) -> Option<SyntaxToken> {
17274 support::token(&self.syntax, SyntaxKind::ALL_KW)
17275 }
17276 #[inline]
17277 pub fn reset_token(&self) -> Option<SyntaxToken> {
17278 support::token(&self.syntax, SyntaxKind::RESET_KW)
17279 }
17280}
17281
17282#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17283pub struct ResetFuncOption {
17284 pub(crate) syntax: SyntaxNode,
17285}
17286impl ResetFuncOption {
17287 #[inline]
17288 pub fn name_ref(&self) -> Option<NameRef> {
17289 support::child(&self.syntax)
17290 }
17291 #[inline]
17292 pub fn reset_token(&self) -> Option<SyntaxToken> {
17293 support::token(&self.syntax, SyntaxKind::RESET_KW)
17294 }
17295}
17296
17297#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17298pub struct ResetOptions {
17299 pub(crate) syntax: SyntaxNode,
17300}
17301impl ResetOptions {
17302 #[inline]
17303 pub fn attribute_list(&self) -> Option<AttributeList> {
17304 support::child(&self.syntax)
17305 }
17306 #[inline]
17307 pub fn reset_token(&self) -> Option<SyntaxToken> {
17308 support::token(&self.syntax, SyntaxKind::RESET_KW)
17309 }
17310}
17311
17312#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17313pub struct ResetSessionAuth {
17314 pub(crate) syntax: SyntaxNode,
17315}
17316impl ResetSessionAuth {
17317 #[inline]
17318 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
17319 support::token(&self.syntax, SyntaxKind::SEMICOLON)
17320 }
17321 #[inline]
17322 pub fn authorization_token(&self) -> Option<SyntaxToken> {
17323 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
17324 }
17325 #[inline]
17326 pub fn reset_token(&self) -> Option<SyntaxToken> {
17327 support::token(&self.syntax, SyntaxKind::RESET_KW)
17328 }
17329 #[inline]
17330 pub fn session_token(&self) -> Option<SyntaxToken> {
17331 support::token(&self.syntax, SyntaxKind::SESSION_KW)
17332 }
17333}
17334
17335#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17336pub struct Restart {
17337 pub(crate) syntax: SyntaxNode,
17338}
17339impl Restart {
17340 #[inline]
17341 pub fn literal(&self) -> Option<Literal> {
17342 support::child(&self.syntax)
17343 }
17344 #[inline]
17345 pub fn restart_token(&self) -> Option<SyntaxToken> {
17346 support::token(&self.syntax, SyntaxKind::RESTART_KW)
17347 }
17348 #[inline]
17349 pub fn with_token(&self) -> Option<SyntaxToken> {
17350 support::token(&self.syntax, SyntaxKind::WITH_KW)
17351 }
17352}
17353
17354#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17355pub struct Restrict {
17356 pub(crate) syntax: SyntaxNode,
17357}
17358impl Restrict {
17359 #[inline]
17360 pub fn restrict_token(&self) -> Option<SyntaxToken> {
17361 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
17362 }
17363}
17364
17365#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17366pub struct RetType {
17367 pub(crate) syntax: SyntaxNode,
17368}
17369impl RetType {
17370 #[inline]
17371 pub fn table_arg_list(&self) -> Option<TableArgList> {
17372 support::child(&self.syntax)
17373 }
17374 #[inline]
17375 pub fn ty(&self) -> Option<Type> {
17376 support::child(&self.syntax)
17377 }
17378 #[inline]
17379 pub fn returns_token(&self) -> Option<SyntaxToken> {
17380 support::token(&self.syntax, SyntaxKind::RETURNS_KW)
17381 }
17382 #[inline]
17383 pub fn table_token(&self) -> Option<SyntaxToken> {
17384 support::token(&self.syntax, SyntaxKind::TABLE_KW)
17385 }
17386}
17387
17388#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17389pub struct ReturnFuncOption {
17390 pub(crate) syntax: SyntaxNode,
17391}
17392impl ReturnFuncOption {
17393 #[inline]
17394 pub fn expr(&self) -> Option<Expr> {
17395 support::child(&self.syntax)
17396 }
17397 #[inline]
17398 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
17399 support::token(&self.syntax, SyntaxKind::SEMICOLON)
17400 }
17401 #[inline]
17402 pub fn return_token(&self) -> Option<SyntaxToken> {
17403 support::token(&self.syntax, SyntaxKind::RETURN_KW)
17404 }
17405}
17406
17407#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17408pub struct ReturningClause {
17409 pub(crate) syntax: SyntaxNode,
17410}
17411impl ReturningClause {
17412 #[inline]
17413 pub fn returning_option_list(&self) -> Option<ReturningOptionList> {
17414 support::child(&self.syntax)
17415 }
17416 #[inline]
17417 pub fn target_list(&self) -> Option<TargetList> {
17418 support::child(&self.syntax)
17419 }
17420 #[inline]
17421 pub fn returning_token(&self) -> Option<SyntaxToken> {
17422 support::token(&self.syntax, SyntaxKind::RETURNING_KW)
17423 }
17424}
17425
17426#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17427pub struct ReturningOption {
17428 pub(crate) syntax: SyntaxNode,
17429}
17430impl ReturningOption {
17431 #[inline]
17432 pub fn name(&self) -> Option<Name> {
17433 support::child(&self.syntax)
17434 }
17435 #[inline]
17436 pub fn as_token(&self) -> Option<SyntaxToken> {
17437 support::token(&self.syntax, SyntaxKind::AS_KW)
17438 }
17439 #[inline]
17440 pub fn new_token(&self) -> Option<SyntaxToken> {
17441 support::token(&self.syntax, SyntaxKind::NEW_KW)
17442 }
17443 #[inline]
17444 pub fn old_token(&self) -> Option<SyntaxToken> {
17445 support::token(&self.syntax, SyntaxKind::OLD_KW)
17446 }
17447}
17448
17449#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17450pub struct ReturningOptionList {
17451 pub(crate) syntax: SyntaxNode,
17452}
17453impl ReturningOptionList {
17454 #[inline]
17455 pub fn returning_options(&self) -> AstChildren<ReturningOption> {
17456 support::children(&self.syntax)
17457 }
17458 #[inline]
17459 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
17460 support::token(&self.syntax, SyntaxKind::L_PAREN)
17461 }
17462 #[inline]
17463 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
17464 support::token(&self.syntax, SyntaxKind::R_PAREN)
17465 }
17466 #[inline]
17467 pub fn with_token(&self) -> Option<SyntaxToken> {
17468 support::token(&self.syntax, SyntaxKind::WITH_KW)
17469 }
17470}
17471
17472#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17473pub struct Revoke {
17474 pub(crate) syntax: SyntaxNode,
17475}
17476impl Revoke {
17477 #[inline]
17478 pub fn privilege_objects(&self) -> Option<PrivilegeObjects> {
17479 support::child(&self.syntax)
17480 }
17481 #[inline]
17482 pub fn privileges(&self) -> Option<Privileges> {
17483 support::child(&self.syntax)
17484 }
17485 #[inline]
17486 pub fn role_ref(&self) -> Option<RoleRef> {
17487 support::child(&self.syntax)
17488 }
17489 #[inline]
17490 pub fn role_ref_list(&self) -> Option<RoleRefList> {
17491 support::child(&self.syntax)
17492 }
17493 #[inline]
17494 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
17495 support::token(&self.syntax, SyntaxKind::SEMICOLON)
17496 }
17497 #[inline]
17498 pub fn admin_token(&self) -> Option<SyntaxToken> {
17499 support::token(&self.syntax, SyntaxKind::ADMIN_KW)
17500 }
17501 #[inline]
17502 pub fn by_token(&self) -> Option<SyntaxToken> {
17503 support::token(&self.syntax, SyntaxKind::BY_KW)
17504 }
17505 #[inline]
17506 pub fn cascade_token(&self) -> Option<SyntaxToken> {
17507 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
17508 }
17509 #[inline]
17510 pub fn for_token(&self) -> Option<SyntaxToken> {
17511 support::token(&self.syntax, SyntaxKind::FOR_KW)
17512 }
17513 #[inline]
17514 pub fn from_token(&self) -> Option<SyntaxToken> {
17515 support::token(&self.syntax, SyntaxKind::FROM_KW)
17516 }
17517 #[inline]
17518 pub fn grant_token(&self) -> Option<SyntaxToken> {
17519 support::token(&self.syntax, SyntaxKind::GRANT_KW)
17520 }
17521 #[inline]
17522 pub fn granted_token(&self) -> Option<SyntaxToken> {
17523 support::token(&self.syntax, SyntaxKind::GRANTED_KW)
17524 }
17525 #[inline]
17526 pub fn inherit_token(&self) -> Option<SyntaxToken> {
17527 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
17528 }
17529 #[inline]
17530 pub fn on_token(&self) -> Option<SyntaxToken> {
17531 support::token(&self.syntax, SyntaxKind::ON_KW)
17532 }
17533 #[inline]
17534 pub fn option_token(&self) -> Option<SyntaxToken> {
17535 support::token(&self.syntax, SyntaxKind::OPTION_KW)
17536 }
17537 #[inline]
17538 pub fn restrict_token(&self) -> Option<SyntaxToken> {
17539 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
17540 }
17541 #[inline]
17542 pub fn revoke_token(&self) -> Option<SyntaxToken> {
17543 support::token(&self.syntax, SyntaxKind::REVOKE_KW)
17544 }
17545 #[inline]
17546 pub fn set_token(&self) -> Option<SyntaxToken> {
17547 support::token(&self.syntax, SyntaxKind::SET_KW)
17548 }
17549}
17550
17551#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17552pub struct RevokeCommand {
17553 pub(crate) syntax: SyntaxNode,
17554}
17555impl RevokeCommand {
17556 #[inline]
17557 pub fn role_ref(&self) -> Option<RoleRef> {
17558 support::child(&self.syntax)
17559 }
17560 #[inline]
17561 pub fn all_token(&self) -> Option<SyntaxToken> {
17562 support::token(&self.syntax, SyntaxKind::ALL_KW)
17563 }
17564 #[inline]
17565 pub fn alter_token(&self) -> Option<SyntaxToken> {
17566 support::token(&self.syntax, SyntaxKind::ALTER_KW)
17567 }
17568 #[inline]
17569 pub fn create_token(&self) -> Option<SyntaxToken> {
17570 support::token(&self.syntax, SyntaxKind::CREATE_KW)
17571 }
17572 #[inline]
17573 pub fn delete_token(&self) -> Option<SyntaxToken> {
17574 support::token(&self.syntax, SyntaxKind::DELETE_KW)
17575 }
17576 #[inline]
17577 pub fn execute_token(&self) -> Option<SyntaxToken> {
17578 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
17579 }
17580 #[inline]
17581 pub fn ident_token(&self) -> Option<SyntaxToken> {
17582 support::token(&self.syntax, SyntaxKind::IDENT)
17583 }
17584 #[inline]
17585 pub fn insert_token(&self) -> Option<SyntaxToken> {
17586 support::token(&self.syntax, SyntaxKind::INSERT_KW)
17587 }
17588 #[inline]
17589 pub fn references_token(&self) -> Option<SyntaxToken> {
17590 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
17591 }
17592 #[inline]
17593 pub fn select_token(&self) -> Option<SyntaxToken> {
17594 support::token(&self.syntax, SyntaxKind::SELECT_KW)
17595 }
17596 #[inline]
17597 pub fn system_token(&self) -> Option<SyntaxToken> {
17598 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
17599 }
17600 #[inline]
17601 pub fn temp_token(&self) -> Option<SyntaxToken> {
17602 support::token(&self.syntax, SyntaxKind::TEMP_KW)
17603 }
17604 #[inline]
17605 pub fn temporary_token(&self) -> Option<SyntaxToken> {
17606 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
17607 }
17608 #[inline]
17609 pub fn trigger_token(&self) -> Option<SyntaxToken> {
17610 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
17611 }
17612 #[inline]
17613 pub fn truncate_token(&self) -> Option<SyntaxToken> {
17614 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
17615 }
17616 #[inline]
17617 pub fn update_token(&self) -> Option<SyntaxToken> {
17618 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
17619 }
17620}
17621
17622#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17623pub struct RevokeCommandList {
17624 pub(crate) syntax: SyntaxNode,
17625}
17626impl RevokeCommandList {
17627 #[inline]
17628 pub fn revoke_commands(&self) -> AstChildren<RevokeCommand> {
17629 support::children(&self.syntax)
17630 }
17631}
17632
17633#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17634pub struct RevokeDefaultPrivileges {
17635 pub(crate) syntax: SyntaxNode,
17636}
17637impl RevokeDefaultPrivileges {
17638 #[inline]
17639 pub fn privilege_target(&self) -> Option<PrivilegeTarget> {
17640 support::child(&self.syntax)
17641 }
17642 #[inline]
17643 pub fn privileges(&self) -> Option<Privileges> {
17644 support::child(&self.syntax)
17645 }
17646 #[inline]
17647 pub fn role_ref_list(&self) -> Option<RoleRefList> {
17648 support::child(&self.syntax)
17649 }
17650 #[inline]
17651 pub fn cascade_token(&self) -> Option<SyntaxToken> {
17652 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
17653 }
17654 #[inline]
17655 pub fn for_token(&self) -> Option<SyntaxToken> {
17656 support::token(&self.syntax, SyntaxKind::FOR_KW)
17657 }
17658 #[inline]
17659 pub fn from_token(&self) -> Option<SyntaxToken> {
17660 support::token(&self.syntax, SyntaxKind::FROM_KW)
17661 }
17662 #[inline]
17663 pub fn grant_token(&self) -> Option<SyntaxToken> {
17664 support::token(&self.syntax, SyntaxKind::GRANT_KW)
17665 }
17666 #[inline]
17667 pub fn on_token(&self) -> Option<SyntaxToken> {
17668 support::token(&self.syntax, SyntaxKind::ON_KW)
17669 }
17670 #[inline]
17671 pub fn option_token(&self) -> Option<SyntaxToken> {
17672 support::token(&self.syntax, SyntaxKind::OPTION_KW)
17673 }
17674 #[inline]
17675 pub fn restrict_token(&self) -> Option<SyntaxToken> {
17676 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
17677 }
17678 #[inline]
17679 pub fn revoke_token(&self) -> Option<SyntaxToken> {
17680 support::token(&self.syntax, SyntaxKind::REVOKE_KW)
17681 }
17682}
17683
17684#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17685pub struct Role {
17686 pub(crate) syntax: SyntaxNode,
17687}
17688impl Role {
17689 #[inline]
17690 pub fn name(&self) -> Option<Name> {
17691 support::child(&self.syntax)
17692 }
17693 #[inline]
17694 pub fn current_role_token(&self) -> Option<SyntaxToken> {
17695 support::token(&self.syntax, SyntaxKind::CURRENT_ROLE_KW)
17696 }
17697 #[inline]
17698 pub fn current_user_token(&self) -> Option<SyntaxToken> {
17699 support::token(&self.syntax, SyntaxKind::CURRENT_USER_KW)
17700 }
17701 #[inline]
17702 pub fn group_token(&self) -> Option<SyntaxToken> {
17703 support::token(&self.syntax, SyntaxKind::GROUP_KW)
17704 }
17705 #[inline]
17706 pub fn session_user_token(&self) -> Option<SyntaxToken> {
17707 support::token(&self.syntax, SyntaxKind::SESSION_USER_KW)
17708 }
17709}
17710
17711#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17712pub struct RoleOption {
17713 pub(crate) syntax: SyntaxNode,
17714}
17715impl RoleOption {
17716 #[inline]
17717 pub fn literal(&self) -> Option<Literal> {
17718 support::child(&self.syntax)
17719 }
17720 #[inline]
17721 pub fn role_ref_list(&self) -> Option<RoleRefList> {
17722 support::child(&self.syntax)
17723 }
17724 #[inline]
17725 pub fn admin_token(&self) -> Option<SyntaxToken> {
17726 support::token(&self.syntax, SyntaxKind::ADMIN_KW)
17727 }
17728 #[inline]
17729 pub fn connection_token(&self) -> Option<SyntaxToken> {
17730 support::token(&self.syntax, SyntaxKind::CONNECTION_KW)
17731 }
17732 #[inline]
17733 pub fn encrypted_token(&self) -> Option<SyntaxToken> {
17734 support::token(&self.syntax, SyntaxKind::ENCRYPTED_KW)
17735 }
17736 #[inline]
17737 pub fn group_token(&self) -> Option<SyntaxToken> {
17738 support::token(&self.syntax, SyntaxKind::GROUP_KW)
17739 }
17740 #[inline]
17741 pub fn ident_token(&self) -> Option<SyntaxToken> {
17742 support::token(&self.syntax, SyntaxKind::IDENT)
17743 }
17744 #[inline]
17745 pub fn in_token(&self) -> Option<SyntaxToken> {
17746 support::token(&self.syntax, SyntaxKind::IN_KW)
17747 }
17748 #[inline]
17749 pub fn inherit_token(&self) -> Option<SyntaxToken> {
17750 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
17751 }
17752 #[inline]
17753 pub fn limit_token(&self) -> Option<SyntaxToken> {
17754 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
17755 }
17756 #[inline]
17757 pub fn null_token(&self) -> Option<SyntaxToken> {
17758 support::token(&self.syntax, SyntaxKind::NULL_KW)
17759 }
17760 #[inline]
17761 pub fn password_token(&self) -> Option<SyntaxToken> {
17762 support::token(&self.syntax, SyntaxKind::PASSWORD_KW)
17763 }
17764 #[inline]
17765 pub fn role_token(&self) -> Option<SyntaxToken> {
17766 support::token(&self.syntax, SyntaxKind::ROLE_KW)
17767 }
17768 #[inline]
17769 pub fn sysid_token(&self) -> Option<SyntaxToken> {
17770 support::token(&self.syntax, SyntaxKind::SYSID_KW)
17771 }
17772 #[inline]
17773 pub fn until_token(&self) -> Option<SyntaxToken> {
17774 support::token(&self.syntax, SyntaxKind::UNTIL_KW)
17775 }
17776 #[inline]
17777 pub fn user_token(&self) -> Option<SyntaxToken> {
17778 support::token(&self.syntax, SyntaxKind::USER_KW)
17779 }
17780 #[inline]
17781 pub fn valid_token(&self) -> Option<SyntaxToken> {
17782 support::token(&self.syntax, SyntaxKind::VALID_KW)
17783 }
17784}
17785
17786#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17787pub struct RoleOptionList {
17788 pub(crate) syntax: SyntaxNode,
17789}
17790impl RoleOptionList {
17791 #[inline]
17792 pub fn role_options(&self) -> AstChildren<RoleOption> {
17793 support::children(&self.syntax)
17794 }
17795 #[inline]
17796 pub fn with_token(&self) -> Option<SyntaxToken> {
17797 support::token(&self.syntax, SyntaxKind::WITH_KW)
17798 }
17799}
17800
17801#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17802pub struct RoleRef {
17803 pub(crate) syntax: SyntaxNode,
17804}
17805impl RoleRef {
17806 #[inline]
17807 pub fn name_ref(&self) -> Option<NameRef> {
17808 support::child(&self.syntax)
17809 }
17810 #[inline]
17811 pub fn current_role_token(&self) -> Option<SyntaxToken> {
17812 support::token(&self.syntax, SyntaxKind::CURRENT_ROLE_KW)
17813 }
17814 #[inline]
17815 pub fn current_user_token(&self) -> Option<SyntaxToken> {
17816 support::token(&self.syntax, SyntaxKind::CURRENT_USER_KW)
17817 }
17818 #[inline]
17819 pub fn group_token(&self) -> Option<SyntaxToken> {
17820 support::token(&self.syntax, SyntaxKind::GROUP_KW)
17821 }
17822 #[inline]
17823 pub fn session_user_token(&self) -> Option<SyntaxToken> {
17824 support::token(&self.syntax, SyntaxKind::SESSION_USER_KW)
17825 }
17826}
17827
17828#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17829pub struct RoleRefList {
17830 pub(crate) syntax: SyntaxNode,
17831}
17832impl RoleRefList {
17833 #[inline]
17834 pub fn role_refs(&self) -> AstChildren<RoleRef> {
17835 support::children(&self.syntax)
17836 }
17837}
17838
17839#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17840pub struct Rollback {
17841 pub(crate) syntax: SyntaxNode,
17842}
17843impl Rollback {
17844 #[inline]
17845 pub fn literal(&self) -> Option<Literal> {
17846 support::child(&self.syntax)
17847 }
17848 #[inline]
17849 pub fn name_ref(&self) -> Option<NameRef> {
17850 support::child(&self.syntax)
17851 }
17852 #[inline]
17853 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
17854 support::token(&self.syntax, SyntaxKind::SEMICOLON)
17855 }
17856 #[inline]
17857 pub fn abort_token(&self) -> Option<SyntaxToken> {
17858 support::token(&self.syntax, SyntaxKind::ABORT_KW)
17859 }
17860 #[inline]
17861 pub fn and_token(&self) -> Option<SyntaxToken> {
17862 support::token(&self.syntax, SyntaxKind::AND_KW)
17863 }
17864 #[inline]
17865 pub fn chain_token(&self) -> Option<SyntaxToken> {
17866 support::token(&self.syntax, SyntaxKind::CHAIN_KW)
17867 }
17868 #[inline]
17869 pub fn no_token(&self) -> Option<SyntaxToken> {
17870 support::token(&self.syntax, SyntaxKind::NO_KW)
17871 }
17872 #[inline]
17873 pub fn prepared_token(&self) -> Option<SyntaxToken> {
17874 support::token(&self.syntax, SyntaxKind::PREPARED_KW)
17875 }
17876 #[inline]
17877 pub fn rollback_token(&self) -> Option<SyntaxToken> {
17878 support::token(&self.syntax, SyntaxKind::ROLLBACK_KW)
17879 }
17880 #[inline]
17881 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
17882 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
17883 }
17884 #[inline]
17885 pub fn to_token(&self) -> Option<SyntaxToken> {
17886 support::token(&self.syntax, SyntaxKind::TO_KW)
17887 }
17888 #[inline]
17889 pub fn transaction_token(&self) -> Option<SyntaxToken> {
17890 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
17891 }
17892 #[inline]
17893 pub fn work_token(&self) -> Option<SyntaxToken> {
17894 support::token(&self.syntax, SyntaxKind::WORK_KW)
17895 }
17896}
17897
17898#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17899pub struct Row {
17900 pub(crate) syntax: SyntaxNode,
17901}
17902impl Row {
17903 #[inline]
17904 pub fn exprs(&self) -> AstChildren<Expr> {
17905 support::children(&self.syntax)
17906 }
17907}
17908
17909#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17910pub struct RowExclusive {
17911 pub(crate) syntax: SyntaxNode,
17912}
17913impl RowExclusive {
17914 #[inline]
17915 pub fn exclusive_token(&self) -> Option<SyntaxToken> {
17916 support::token(&self.syntax, SyntaxKind::EXCLUSIVE_KW)
17917 }
17918 #[inline]
17919 pub fn row_token(&self) -> Option<SyntaxToken> {
17920 support::token(&self.syntax, SyntaxKind::ROW_KW)
17921 }
17922}
17923
17924#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17925pub struct RowList {
17926 pub(crate) syntax: SyntaxNode,
17927}
17928impl RowList {
17929 #[inline]
17930 pub fn rows(&self) -> AstChildren<Row> {
17931 support::children(&self.syntax)
17932 }
17933}
17934
17935#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17936pub struct RowShare {
17937 pub(crate) syntax: SyntaxNode,
17938}
17939impl RowShare {
17940 #[inline]
17941 pub fn row_token(&self) -> Option<SyntaxToken> {
17942 support::token(&self.syntax, SyntaxKind::ROW_KW)
17943 }
17944 #[inline]
17945 pub fn share_token(&self) -> Option<SyntaxToken> {
17946 support::token(&self.syntax, SyntaxKind::SHARE_KW)
17947 }
17948}
17949
17950#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17951pub struct RowsFuncOption {
17952 pub(crate) syntax: SyntaxNode,
17953}
17954impl RowsFuncOption {
17955 #[inline]
17956 pub fn literal(&self) -> Option<Literal> {
17957 support::child(&self.syntax)
17958 }
17959 #[inline]
17960 pub fn rows_token(&self) -> Option<SyntaxToken> {
17961 support::token(&self.syntax, SyntaxKind::ROWS_KW)
17962 }
17963}
17964
17965#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17966pub struct RuleDo {
17967 pub(crate) syntax: SyntaxNode,
17968}
17969impl RuleDo {
17970 #[inline]
17971 pub fn rule_action(&self) -> Option<RuleAction> {
17972 support::child(&self.syntax)
17973 }
17974 #[inline]
17975 pub fn also_token(&self) -> Option<SyntaxToken> {
17976 support::token(&self.syntax, SyntaxKind::ALSO_KW)
17977 }
17978 #[inline]
17979 pub fn do_token(&self) -> Option<SyntaxToken> {
17980 support::token(&self.syntax, SyntaxKind::DO_KW)
17981 }
17982 #[inline]
17983 pub fn instead_token(&self) -> Option<SyntaxToken> {
17984 support::token(&self.syntax, SyntaxKind::INSTEAD_KW)
17985 }
17986}
17987
17988#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17989pub struct RuleOn {
17990 pub(crate) syntax: SyntaxNode,
17991}
17992impl RuleOn {
17993 #[inline]
17994 pub fn path(&self) -> Option<Path> {
17995 support::child(&self.syntax)
17996 }
17997 #[inline]
17998 pub fn where_clause(&self) -> Option<WhereClause> {
17999 support::child(&self.syntax)
18000 }
18001 #[inline]
18002 pub fn delete_token(&self) -> Option<SyntaxToken> {
18003 support::token(&self.syntax, SyntaxKind::DELETE_KW)
18004 }
18005 #[inline]
18006 pub fn ident_token(&self) -> Option<SyntaxToken> {
18007 support::token(&self.syntax, SyntaxKind::IDENT)
18008 }
18009 #[inline]
18010 pub fn insert_token(&self) -> Option<SyntaxToken> {
18011 support::token(&self.syntax, SyntaxKind::INSERT_KW)
18012 }
18013 #[inline]
18014 pub fn on_token(&self) -> Option<SyntaxToken> {
18015 support::token(&self.syntax, SyntaxKind::ON_KW)
18016 }
18017 #[inline]
18018 pub fn select_token(&self) -> Option<SyntaxToken> {
18019 support::token(&self.syntax, SyntaxKind::SELECT_KW)
18020 }
18021 #[inline]
18022 pub fn to_token(&self) -> Option<SyntaxToken> {
18023 support::token(&self.syntax, SyntaxKind::TO_KW)
18024 }
18025 #[inline]
18026 pub fn update_token(&self) -> Option<SyntaxToken> {
18027 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
18028 }
18029}
18030
18031#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18032pub struct RuleStmtList {
18033 pub(crate) syntax: SyntaxNode,
18034}
18035impl RuleStmtList {
18036 #[inline]
18037 pub fn rule_stmts(&self) -> AstChildren<RuleStmt> {
18038 support::children(&self.syntax)
18039 }
18040 #[inline]
18041 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
18042 support::token(&self.syntax, SyntaxKind::L_PAREN)
18043 }
18044 #[inline]
18045 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
18046 support::token(&self.syntax, SyntaxKind::R_PAREN)
18047 }
18048}
18049
18050#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18051pub struct Savepoint {
18052 pub(crate) syntax: SyntaxNode,
18053}
18054impl Savepoint {
18055 #[inline]
18056 pub fn name(&self) -> Option<Name> {
18057 support::child(&self.syntax)
18058 }
18059 #[inline]
18060 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
18061 support::token(&self.syntax, SyntaxKind::SEMICOLON)
18062 }
18063 #[inline]
18064 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
18065 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
18066 }
18067}
18068
18069#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18070pub struct SearchClause {
18071 pub(crate) syntax: SyntaxNode,
18072}
18073impl SearchClause {
18074 #[inline]
18075 pub fn columns(&self) -> Option<SearchColumns> {
18076 support::child(&self.syntax)
18077 }
18078 #[inline]
18079 pub fn set_column(&self) -> Option<SearchSetColumn> {
18080 support::child(&self.syntax)
18081 }
18082 #[inline]
18083 pub fn breadth_token(&self) -> Option<SyntaxToken> {
18084 support::token(&self.syntax, SyntaxKind::BREADTH_KW)
18085 }
18086 #[inline]
18087 pub fn by_token(&self) -> Option<SyntaxToken> {
18088 support::token(&self.syntax, SyntaxKind::BY_KW)
18089 }
18090 #[inline]
18091 pub fn depth_token(&self) -> Option<SyntaxToken> {
18092 support::token(&self.syntax, SyntaxKind::DEPTH_KW)
18093 }
18094 #[inline]
18095 pub fn first_token(&self) -> Option<SyntaxToken> {
18096 support::token(&self.syntax, SyntaxKind::FIRST_KW)
18097 }
18098 #[inline]
18099 pub fn search_token(&self) -> Option<SyntaxToken> {
18100 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
18101 }
18102}
18103
18104#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18105pub struct SearchColumns {
18106 pub(crate) syntax: SyntaxNode,
18107}
18108impl SearchColumns {
18109 #[inline]
18110 pub fn name_refs(&self) -> AstChildren<NameRef> {
18111 support::children(&self.syntax)
18112 }
18113}
18114
18115#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18116pub struct SearchSetColumn {
18117 pub(crate) syntax: SyntaxNode,
18118}
18119impl SearchSetColumn {
18120 #[inline]
18121 pub fn name_ref(&self) -> Option<NameRef> {
18122 support::child(&self.syntax)
18123 }
18124 #[inline]
18125 pub fn set_token(&self) -> Option<SyntaxToken> {
18126 support::token(&self.syntax, SyntaxKind::SET_KW)
18127 }
18128}
18129
18130#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18131pub struct SecurityFuncOption {
18132 pub(crate) syntax: SyntaxNode,
18133}
18134impl SecurityFuncOption {
18135 #[inline]
18136 pub fn definer_token(&self) -> Option<SyntaxToken> {
18137 support::token(&self.syntax, SyntaxKind::DEFINER_KW)
18138 }
18139 #[inline]
18140 pub fn invoker_token(&self) -> Option<SyntaxToken> {
18141 support::token(&self.syntax, SyntaxKind::INVOKER_KW)
18142 }
18143 #[inline]
18144 pub fn security_token(&self) -> Option<SyntaxToken> {
18145 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
18146 }
18147}
18148
18149#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18150pub struct SecurityLabel {
18151 pub(crate) syntax: SyntaxNode,
18152}
18153impl SecurityLabel {
18154 #[inline]
18155 pub fn aggregate(&self) -> Option<Aggregate> {
18156 support::child(&self.syntax)
18157 }
18158 #[inline]
18159 pub fn for_provider(&self) -> Option<ForProvider> {
18160 support::child(&self.syntax)
18161 }
18162 #[inline]
18163 pub fn function_sig(&self) -> Option<FunctionSig> {
18164 support::child(&self.syntax)
18165 }
18166 #[inline]
18167 pub fn literal(&self) -> Option<Literal> {
18168 support::child(&self.syntax)
18169 }
18170 #[inline]
18171 pub fn path(&self) -> Option<Path> {
18172 support::child(&self.syntax)
18173 }
18174 #[inline]
18175 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
18176 support::token(&self.syntax, SyntaxKind::SEMICOLON)
18177 }
18178 #[inline]
18179 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
18180 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
18181 }
18182 #[inline]
18183 pub fn column_token(&self) -> Option<SyntaxToken> {
18184 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
18185 }
18186 #[inline]
18187 pub fn database_token(&self) -> Option<SyntaxToken> {
18188 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
18189 }
18190 #[inline]
18191 pub fn domain_token(&self) -> Option<SyntaxToken> {
18192 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
18193 }
18194 #[inline]
18195 pub fn event_token(&self) -> Option<SyntaxToken> {
18196 support::token(&self.syntax, SyntaxKind::EVENT_KW)
18197 }
18198 #[inline]
18199 pub fn foreign_token(&self) -> Option<SyntaxToken> {
18200 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
18201 }
18202 #[inline]
18203 pub fn function_token(&self) -> Option<SyntaxToken> {
18204 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
18205 }
18206 #[inline]
18207 pub fn is_token(&self) -> Option<SyntaxToken> {
18208 support::token(&self.syntax, SyntaxKind::IS_KW)
18209 }
18210 #[inline]
18211 pub fn label_token(&self) -> Option<SyntaxToken> {
18212 support::token(&self.syntax, SyntaxKind::LABEL_KW)
18213 }
18214 #[inline]
18215 pub fn language_token(&self) -> Option<SyntaxToken> {
18216 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
18217 }
18218 #[inline]
18219 pub fn large_token(&self) -> Option<SyntaxToken> {
18220 support::token(&self.syntax, SyntaxKind::LARGE_KW)
18221 }
18222 #[inline]
18223 pub fn materialized_token(&self) -> Option<SyntaxToken> {
18224 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
18225 }
18226 #[inline]
18227 pub fn null_token(&self) -> Option<SyntaxToken> {
18228 support::token(&self.syntax, SyntaxKind::NULL_KW)
18229 }
18230 #[inline]
18231 pub fn object_token(&self) -> Option<SyntaxToken> {
18232 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
18233 }
18234 #[inline]
18235 pub fn on_token(&self) -> Option<SyntaxToken> {
18236 support::token(&self.syntax, SyntaxKind::ON_KW)
18237 }
18238 #[inline]
18239 pub fn procedural_token(&self) -> Option<SyntaxToken> {
18240 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
18241 }
18242 #[inline]
18243 pub fn procedure_token(&self) -> Option<SyntaxToken> {
18244 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
18245 }
18246 #[inline]
18247 pub fn publication_token(&self) -> Option<SyntaxToken> {
18248 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
18249 }
18250 #[inline]
18251 pub fn role_token(&self) -> Option<SyntaxToken> {
18252 support::token(&self.syntax, SyntaxKind::ROLE_KW)
18253 }
18254 #[inline]
18255 pub fn routine_token(&self) -> Option<SyntaxToken> {
18256 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
18257 }
18258 #[inline]
18259 pub fn schema_token(&self) -> Option<SyntaxToken> {
18260 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
18261 }
18262 #[inline]
18263 pub fn security_token(&self) -> Option<SyntaxToken> {
18264 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
18265 }
18266 #[inline]
18267 pub fn sequence_token(&self) -> Option<SyntaxToken> {
18268 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
18269 }
18270 #[inline]
18271 pub fn subscription_token(&self) -> Option<SyntaxToken> {
18272 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
18273 }
18274 #[inline]
18275 pub fn table_token(&self) -> Option<SyntaxToken> {
18276 support::token(&self.syntax, SyntaxKind::TABLE_KW)
18277 }
18278 #[inline]
18279 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
18280 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
18281 }
18282 #[inline]
18283 pub fn trigger_token(&self) -> Option<SyntaxToken> {
18284 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
18285 }
18286 #[inline]
18287 pub fn type_token(&self) -> Option<SyntaxToken> {
18288 support::token(&self.syntax, SyntaxKind::TYPE_KW)
18289 }
18290 #[inline]
18291 pub fn view_token(&self) -> Option<SyntaxToken> {
18292 support::token(&self.syntax, SyntaxKind::VIEW_KW)
18293 }
18294}
18295
18296#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18297pub struct Select {
18298 pub(crate) syntax: SyntaxNode,
18299}
18300impl Select {
18301 #[inline]
18302 pub fn fetch_clause(&self) -> Option<FetchClause> {
18303 support::child(&self.syntax)
18304 }
18305 #[inline]
18306 pub fn filter_clause(&self) -> Option<FilterClause> {
18307 support::child(&self.syntax)
18308 }
18309 #[inline]
18310 pub fn from_clause(&self) -> Option<FromClause> {
18311 support::child(&self.syntax)
18312 }
18313 #[inline]
18314 pub fn group_by_clause(&self) -> Option<GroupByClause> {
18315 support::child(&self.syntax)
18316 }
18317 #[inline]
18318 pub fn having_clause(&self) -> Option<HavingClause> {
18319 support::child(&self.syntax)
18320 }
18321 #[inline]
18322 pub fn limit_clause(&self) -> Option<LimitClause> {
18323 support::child(&self.syntax)
18324 }
18325 #[inline]
18326 pub fn locking_clauses(&self) -> AstChildren<LockingClause> {
18327 support::children(&self.syntax)
18328 }
18329 #[inline]
18330 pub fn offset_clause(&self) -> Option<OffsetClause> {
18331 support::child(&self.syntax)
18332 }
18333 #[inline]
18334 pub fn order_by_clause(&self) -> Option<OrderByClause> {
18335 support::child(&self.syntax)
18336 }
18337 #[inline]
18338 pub fn select_clause(&self) -> Option<SelectClause> {
18339 support::child(&self.syntax)
18340 }
18341 #[inline]
18342 pub fn where_clause(&self) -> Option<WhereClause> {
18343 support::child(&self.syntax)
18344 }
18345 #[inline]
18346 pub fn window_clause(&self) -> Option<WindowClause> {
18347 support::child(&self.syntax)
18348 }
18349 #[inline]
18350 pub fn with_clause(&self) -> Option<WithClause> {
18351 support::child(&self.syntax)
18352 }
18353 #[inline]
18354 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
18355 support::token(&self.syntax, SyntaxKind::SEMICOLON)
18356 }
18357}
18358
18359#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18360pub struct SelectClause {
18361 pub(crate) syntax: SyntaxNode,
18362}
18363impl SelectClause {
18364 #[inline]
18365 pub fn distinct_clause(&self) -> Option<DistinctClause> {
18366 support::child(&self.syntax)
18367 }
18368 #[inline]
18369 pub fn target_list(&self) -> Option<TargetList> {
18370 support::child(&self.syntax)
18371 }
18372 #[inline]
18373 pub fn all_token(&self) -> Option<SyntaxToken> {
18374 support::token(&self.syntax, SyntaxKind::ALL_KW)
18375 }
18376 #[inline]
18377 pub fn select_token(&self) -> Option<SyntaxToken> {
18378 support::token(&self.syntax, SyntaxKind::SELECT_KW)
18379 }
18380}
18381
18382#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18383pub struct SelectInto {
18384 pub(crate) syntax: SyntaxNode,
18385}
18386impl SelectInto {
18387 #[inline]
18388 pub fn filter_clause(&self) -> Option<FilterClause> {
18389 support::child(&self.syntax)
18390 }
18391 #[inline]
18392 pub fn from_clause(&self) -> Option<FromClause> {
18393 support::child(&self.syntax)
18394 }
18395 #[inline]
18396 pub fn group_by_clause(&self) -> Option<GroupByClause> {
18397 support::child(&self.syntax)
18398 }
18399 #[inline]
18400 pub fn having_clause(&self) -> Option<HavingClause> {
18401 support::child(&self.syntax)
18402 }
18403 #[inline]
18404 pub fn into_clause(&self) -> Option<IntoClause> {
18405 support::child(&self.syntax)
18406 }
18407 #[inline]
18408 pub fn limit_clause(&self) -> Option<LimitClause> {
18409 support::child(&self.syntax)
18410 }
18411 #[inline]
18412 pub fn locking_clauses(&self) -> AstChildren<LockingClause> {
18413 support::children(&self.syntax)
18414 }
18415 #[inline]
18416 pub fn offset_clause(&self) -> Option<OffsetClause> {
18417 support::child(&self.syntax)
18418 }
18419 #[inline]
18420 pub fn order_by_clause(&self) -> Option<OrderByClause> {
18421 support::child(&self.syntax)
18422 }
18423 #[inline]
18424 pub fn select_clause(&self) -> Option<SelectClause> {
18425 support::child(&self.syntax)
18426 }
18427 #[inline]
18428 pub fn where_clause(&self) -> Option<WhereClause> {
18429 support::child(&self.syntax)
18430 }
18431 #[inline]
18432 pub fn window_clause(&self) -> Option<WindowClause> {
18433 support::child(&self.syntax)
18434 }
18435 #[inline]
18436 pub fn with_clause(&self) -> Option<WithClause> {
18437 support::child(&self.syntax)
18438 }
18439 #[inline]
18440 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
18441 support::token(&self.syntax, SyntaxKind::SEMICOLON)
18442 }
18443}
18444
18445#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18446pub struct SequenceOption {
18447 pub(crate) syntax: SyntaxNode,
18448}
18449impl SequenceOption {
18450 #[inline]
18451 pub fn literal(&self) -> Option<Literal> {
18452 support::child(&self.syntax)
18453 }
18454 #[inline]
18455 pub fn name_ref(&self) -> Option<NameRef> {
18456 support::child(&self.syntax)
18457 }
18458 #[inline]
18459 pub fn path(&self) -> Option<Path> {
18460 support::child(&self.syntax)
18461 }
18462 #[inline]
18463 pub fn ty(&self) -> Option<Type> {
18464 support::child(&self.syntax)
18465 }
18466 #[inline]
18467 pub fn as_token(&self) -> Option<SyntaxToken> {
18468 support::token(&self.syntax, SyntaxKind::AS_KW)
18469 }
18470 #[inline]
18471 pub fn by_token(&self) -> Option<SyntaxToken> {
18472 support::token(&self.syntax, SyntaxKind::BY_KW)
18473 }
18474 #[inline]
18475 pub fn cache_token(&self) -> Option<SyntaxToken> {
18476 support::token(&self.syntax, SyntaxKind::CACHE_KW)
18477 }
18478 #[inline]
18479 pub fn cycle_token(&self) -> Option<SyntaxToken> {
18480 support::token(&self.syntax, SyntaxKind::CYCLE_KW)
18481 }
18482 #[inline]
18483 pub fn increment_token(&self) -> Option<SyntaxToken> {
18484 support::token(&self.syntax, SyntaxKind::INCREMENT_KW)
18485 }
18486 #[inline]
18487 pub fn logged_token(&self) -> Option<SyntaxToken> {
18488 support::token(&self.syntax, SyntaxKind::LOGGED_KW)
18489 }
18490 #[inline]
18491 pub fn maxvalue_token(&self) -> Option<SyntaxToken> {
18492 support::token(&self.syntax, SyntaxKind::MAXVALUE_KW)
18493 }
18494 #[inline]
18495 pub fn minvalue_token(&self) -> Option<SyntaxToken> {
18496 support::token(&self.syntax, SyntaxKind::MINVALUE_KW)
18497 }
18498 #[inline]
18499 pub fn name_token(&self) -> Option<SyntaxToken> {
18500 support::token(&self.syntax, SyntaxKind::NAME_KW)
18501 }
18502 #[inline]
18503 pub fn no_token(&self) -> Option<SyntaxToken> {
18504 support::token(&self.syntax, SyntaxKind::NO_KW)
18505 }
18506 #[inline]
18507 pub fn none_token(&self) -> Option<SyntaxToken> {
18508 support::token(&self.syntax, SyntaxKind::NONE_KW)
18509 }
18510 #[inline]
18511 pub fn owned_token(&self) -> Option<SyntaxToken> {
18512 support::token(&self.syntax, SyntaxKind::OWNED_KW)
18513 }
18514 #[inline]
18515 pub fn restart_token(&self) -> Option<SyntaxToken> {
18516 support::token(&self.syntax, SyntaxKind::RESTART_KW)
18517 }
18518 #[inline]
18519 pub fn sequence_token(&self) -> Option<SyntaxToken> {
18520 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
18521 }
18522 #[inline]
18523 pub fn start_token(&self) -> Option<SyntaxToken> {
18524 support::token(&self.syntax, SyntaxKind::START_KW)
18525 }
18526 #[inline]
18527 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
18528 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
18529 }
18530 #[inline]
18531 pub fn with_token(&self) -> Option<SyntaxToken> {
18532 support::token(&self.syntax, SyntaxKind::WITH_KW)
18533 }
18534}
18535
18536#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18537pub struct SequenceOptionList {
18538 pub(crate) syntax: SyntaxNode,
18539}
18540impl SequenceOptionList {
18541 #[inline]
18542 pub fn sequence_options(&self) -> AstChildren<SequenceOption> {
18543 support::children(&self.syntax)
18544 }
18545 #[inline]
18546 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
18547 support::token(&self.syntax, SyntaxKind::L_PAREN)
18548 }
18549 #[inline]
18550 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
18551 support::token(&self.syntax, SyntaxKind::R_PAREN)
18552 }
18553}
18554
18555#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18556pub struct Serializable {
18557 pub(crate) syntax: SyntaxNode,
18558}
18559impl Serializable {
18560 #[inline]
18561 pub fn isolation_token(&self) -> Option<SyntaxToken> {
18562 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
18563 }
18564 #[inline]
18565 pub fn level_token(&self) -> Option<SyntaxToken> {
18566 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
18567 }
18568 #[inline]
18569 pub fn serializable_token(&self) -> Option<SyntaxToken> {
18570 support::token(&self.syntax, SyntaxKind::SERIALIZABLE_KW)
18571 }
18572}
18573
18574#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18575pub struct ServerName {
18576 pub(crate) syntax: SyntaxNode,
18577}
18578impl ServerName {
18579 #[inline]
18580 pub fn name_ref(&self) -> Option<NameRef> {
18581 support::child(&self.syntax)
18582 }
18583 #[inline]
18584 pub fn server_token(&self) -> Option<SyntaxToken> {
18585 support::token(&self.syntax, SyntaxKind::SERVER_KW)
18586 }
18587}
18588
18589#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18590pub struct SessionAuthorization {
18591 pub(crate) syntax: SyntaxNode,
18592}
18593impl SessionAuthorization {
18594 #[inline]
18595 pub fn authorization_token(&self) -> Option<SyntaxToken> {
18596 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
18597 }
18598 #[inline]
18599 pub fn session_token(&self) -> Option<SyntaxToken> {
18600 support::token(&self.syntax, SyntaxKind::SESSION_KW)
18601 }
18602}
18603
18604#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18605pub struct Set {
18606 pub(crate) syntax: SyntaxNode,
18607}
18608impl Set {
18609 #[inline]
18610 pub fn config_value(&self) -> Option<ConfigValue> {
18611 support::child(&self.syntax)
18612 }
18613 #[inline]
18614 pub fn config_values(&self) -> AstChildren<ConfigValue> {
18615 support::children(&self.syntax)
18616 }
18617 #[inline]
18618 pub fn literal(&self) -> Option<Literal> {
18619 support::child(&self.syntax)
18620 }
18621 #[inline]
18622 pub fn path(&self) -> Option<Path> {
18623 support::child(&self.syntax)
18624 }
18625 #[inline]
18626 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
18627 support::token(&self.syntax, SyntaxKind::SEMICOLON)
18628 }
18629 #[inline]
18630 pub fn eq_token(&self) -> Option<SyntaxToken> {
18631 support::token(&self.syntax, SyntaxKind::EQ)
18632 }
18633 #[inline]
18634 pub fn catalog_token(&self) -> Option<SyntaxToken> {
18635 support::token(&self.syntax, SyntaxKind::CATALOG_KW)
18636 }
18637 #[inline]
18638 pub fn content_token(&self) -> Option<SyntaxToken> {
18639 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
18640 }
18641 #[inline]
18642 pub fn current_token(&self) -> Option<SyntaxToken> {
18643 support::token(&self.syntax, SyntaxKind::CURRENT_KW)
18644 }
18645 #[inline]
18646 pub fn default_token(&self) -> Option<SyntaxToken> {
18647 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
18648 }
18649 #[inline]
18650 pub fn document_token(&self) -> Option<SyntaxToken> {
18651 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
18652 }
18653 #[inline]
18654 pub fn from_token(&self) -> Option<SyntaxToken> {
18655 support::token(&self.syntax, SyntaxKind::FROM_KW)
18656 }
18657 #[inline]
18658 pub fn local_token(&self) -> Option<SyntaxToken> {
18659 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
18660 }
18661 #[inline]
18662 pub fn option_token(&self) -> Option<SyntaxToken> {
18663 support::token(&self.syntax, SyntaxKind::OPTION_KW)
18664 }
18665 #[inline]
18666 pub fn schema_token(&self) -> Option<SyntaxToken> {
18667 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
18668 }
18669 #[inline]
18670 pub fn session_token(&self) -> Option<SyntaxToken> {
18671 support::token(&self.syntax, SyntaxKind::SESSION_KW)
18672 }
18673 #[inline]
18674 pub fn set_token(&self) -> Option<SyntaxToken> {
18675 support::token(&self.syntax, SyntaxKind::SET_KW)
18676 }
18677 #[inline]
18678 pub fn time_token(&self) -> Option<SyntaxToken> {
18679 support::token(&self.syntax, SyntaxKind::TIME_KW)
18680 }
18681 #[inline]
18682 pub fn to_token(&self) -> Option<SyntaxToken> {
18683 support::token(&self.syntax, SyntaxKind::TO_KW)
18684 }
18685 #[inline]
18686 pub fn xml_token(&self) -> Option<SyntaxToken> {
18687 support::token(&self.syntax, SyntaxKind::XML_KW)
18688 }
18689 #[inline]
18690 pub fn zone_token(&self) -> Option<SyntaxToken> {
18691 support::token(&self.syntax, SyntaxKind::ZONE_KW)
18692 }
18693}
18694
18695#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18696pub struct SetAccessMethod {
18697 pub(crate) syntax: SyntaxNode,
18698}
18699impl SetAccessMethod {
18700 #[inline]
18701 pub fn name_ref(&self) -> Option<NameRef> {
18702 support::child(&self.syntax)
18703 }
18704 #[inline]
18705 pub fn access_token(&self) -> Option<SyntaxToken> {
18706 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
18707 }
18708 #[inline]
18709 pub fn method_token(&self) -> Option<SyntaxToken> {
18710 support::token(&self.syntax, SyntaxKind::METHOD_KW)
18711 }
18712 #[inline]
18713 pub fn set_token(&self) -> Option<SyntaxToken> {
18714 support::token(&self.syntax, SyntaxKind::SET_KW)
18715 }
18716}
18717
18718#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18719pub struct SetClause {
18720 pub(crate) syntax: SyntaxNode,
18721}
18722impl SetClause {
18723 #[inline]
18724 pub fn set_column_list(&self) -> Option<SetColumnList> {
18725 support::child(&self.syntax)
18726 }
18727 #[inline]
18728 pub fn set_token(&self) -> Option<SyntaxToken> {
18729 support::token(&self.syntax, SyntaxKind::SET_KW)
18730 }
18731}
18732
18733#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18734pub struct SetColumnList {
18735 pub(crate) syntax: SyntaxNode,
18736}
18737impl SetColumnList {
18738 #[inline]
18739 pub fn set_columns(&self) -> AstChildren<SetColumn> {
18740 support::children(&self.syntax)
18741 }
18742}
18743
18744#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18745pub struct SetCompression {
18746 pub(crate) syntax: SyntaxNode,
18747}
18748impl SetCompression {
18749 #[inline]
18750 pub fn name_ref(&self) -> Option<NameRef> {
18751 support::child(&self.syntax)
18752 }
18753 #[inline]
18754 pub fn compression_token(&self) -> Option<SyntaxToken> {
18755 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
18756 }
18757 #[inline]
18758 pub fn default_token(&self) -> Option<SyntaxToken> {
18759 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
18760 }
18761 #[inline]
18762 pub fn set_token(&self) -> Option<SyntaxToken> {
18763 support::token(&self.syntax, SyntaxKind::SET_KW)
18764 }
18765}
18766
18767#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18768pub struct SetConfigParam {
18769 pub(crate) syntax: SyntaxNode,
18770}
18771impl SetConfigParam {
18772 #[inline]
18773 pub fn literals(&self) -> AstChildren<Literal> {
18774 support::children(&self.syntax)
18775 }
18776 #[inline]
18777 pub fn name_refs(&self) -> AstChildren<NameRef> {
18778 support::children(&self.syntax)
18779 }
18780 #[inline]
18781 pub fn path(&self) -> Option<Path> {
18782 support::child(&self.syntax)
18783 }
18784 #[inline]
18785 pub fn eq_token(&self) -> Option<SyntaxToken> {
18786 support::token(&self.syntax, SyntaxKind::EQ)
18787 }
18788 #[inline]
18789 pub fn current_token(&self) -> Option<SyntaxToken> {
18790 support::token(&self.syntax, SyntaxKind::CURRENT_KW)
18791 }
18792 #[inline]
18793 pub fn default_token(&self) -> Option<SyntaxToken> {
18794 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
18795 }
18796 #[inline]
18797 pub fn from_token(&self) -> Option<SyntaxToken> {
18798 support::token(&self.syntax, SyntaxKind::FROM_KW)
18799 }
18800 #[inline]
18801 pub fn null_token(&self) -> Option<SyntaxToken> {
18802 support::token(&self.syntax, SyntaxKind::NULL_KW)
18803 }
18804 #[inline]
18805 pub fn set_token(&self) -> Option<SyntaxToken> {
18806 support::token(&self.syntax, SyntaxKind::SET_KW)
18807 }
18808 #[inline]
18809 pub fn to_token(&self) -> Option<SyntaxToken> {
18810 support::token(&self.syntax, SyntaxKind::TO_KW)
18811 }
18812}
18813
18814#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18815pub struct SetConstraints {
18816 pub(crate) syntax: SyntaxNode,
18817}
18818impl SetConstraints {
18819 #[inline]
18820 pub fn paths(&self) -> AstChildren<Path> {
18821 support::children(&self.syntax)
18822 }
18823 #[inline]
18824 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
18825 support::token(&self.syntax, SyntaxKind::SEMICOLON)
18826 }
18827 #[inline]
18828 pub fn all_token(&self) -> Option<SyntaxToken> {
18829 support::token(&self.syntax, SyntaxKind::ALL_KW)
18830 }
18831 #[inline]
18832 pub fn constraints_token(&self) -> Option<SyntaxToken> {
18833 support::token(&self.syntax, SyntaxKind::CONSTRAINTS_KW)
18834 }
18835 #[inline]
18836 pub fn deferred_token(&self) -> Option<SyntaxToken> {
18837 support::token(&self.syntax, SyntaxKind::DEFERRED_KW)
18838 }
18839 #[inline]
18840 pub fn immediate_token(&self) -> Option<SyntaxToken> {
18841 support::token(&self.syntax, SyntaxKind::IMMEDIATE_KW)
18842 }
18843 #[inline]
18844 pub fn set_token(&self) -> Option<SyntaxToken> {
18845 support::token(&self.syntax, SyntaxKind::SET_KW)
18846 }
18847}
18848
18849#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18850pub struct SetDefault {
18851 pub(crate) syntax: SyntaxNode,
18852}
18853impl SetDefault {
18854 #[inline]
18855 pub fn expr(&self) -> Option<Expr> {
18856 support::child(&self.syntax)
18857 }
18858 #[inline]
18859 pub fn default_token(&self) -> Option<SyntaxToken> {
18860 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
18861 }
18862 #[inline]
18863 pub fn set_token(&self) -> Option<SyntaxToken> {
18864 support::token(&self.syntax, SyntaxKind::SET_KW)
18865 }
18866}
18867
18868#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18869pub struct SetDefaultColumns {
18870 pub(crate) syntax: SyntaxNode,
18871}
18872impl SetDefaultColumns {
18873 #[inline]
18874 pub fn column_list(&self) -> Option<ColumnList> {
18875 support::child(&self.syntax)
18876 }
18877 #[inline]
18878 pub fn default_token(&self) -> Option<SyntaxToken> {
18879 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
18880 }
18881 #[inline]
18882 pub fn set_token(&self) -> Option<SyntaxToken> {
18883 support::token(&self.syntax, SyntaxKind::SET_KW)
18884 }
18885}
18886
18887#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18888pub struct SetExpr {
18889 pub(crate) syntax: SyntaxNode,
18890}
18891impl SetExpr {
18892 #[inline]
18893 pub fn expr(&self) -> Option<Expr> {
18894 support::child(&self.syntax)
18895 }
18896 #[inline]
18897 pub fn default_token(&self) -> Option<SyntaxToken> {
18898 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
18899 }
18900}
18901
18902#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18903pub struct SetExprList {
18904 pub(crate) syntax: SyntaxNode,
18905}
18906impl SetExprList {
18907 #[inline]
18908 pub fn set_exprs(&self) -> AstChildren<SetExpr> {
18909 support::children(&self.syntax)
18910 }
18911 #[inline]
18912 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
18913 support::token(&self.syntax, SyntaxKind::L_PAREN)
18914 }
18915 #[inline]
18916 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
18917 support::token(&self.syntax, SyntaxKind::R_PAREN)
18918 }
18919 #[inline]
18920 pub fn row_token(&self) -> Option<SyntaxToken> {
18921 support::token(&self.syntax, SyntaxKind::ROW_KW)
18922 }
18923}
18924
18925#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18926pub struct SetExpression {
18927 pub(crate) syntax: SyntaxNode,
18928}
18929impl SetExpression {
18930 #[inline]
18931 pub fn expr(&self) -> Option<Expr> {
18932 support::child(&self.syntax)
18933 }
18934 #[inline]
18935 pub fn expression_token(&self) -> Option<SyntaxToken> {
18936 support::token(&self.syntax, SyntaxKind::EXPRESSION_KW)
18937 }
18938 #[inline]
18939 pub fn set_token(&self) -> Option<SyntaxToken> {
18940 support::token(&self.syntax, SyntaxKind::SET_KW)
18941 }
18942}
18943
18944#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18945pub struct SetFuncOption {
18946 pub(crate) syntax: SyntaxNode,
18947}
18948impl SetFuncOption {
18949 #[inline]
18950 pub fn set_config_param(&self) -> Option<SetConfigParam> {
18951 support::child(&self.syntax)
18952 }
18953}
18954
18955#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18956pub struct SetGenerated {
18957 pub(crate) syntax: SyntaxNode,
18958}
18959impl SetGenerated {
18960 #[inline]
18961 pub fn always_token(&self) -> Option<SyntaxToken> {
18962 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
18963 }
18964 #[inline]
18965 pub fn by_token(&self) -> Option<SyntaxToken> {
18966 support::token(&self.syntax, SyntaxKind::BY_KW)
18967 }
18968 #[inline]
18969 pub fn default_token(&self) -> Option<SyntaxToken> {
18970 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
18971 }
18972 #[inline]
18973 pub fn generated_token(&self) -> Option<SyntaxToken> {
18974 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
18975 }
18976 #[inline]
18977 pub fn set_token(&self) -> Option<SyntaxToken> {
18978 support::token(&self.syntax, SyntaxKind::SET_KW)
18979 }
18980}
18981
18982#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18983pub struct SetGeneratedOptions {
18984 pub(crate) syntax: SyntaxNode,
18985}
18986impl SetGeneratedOptions {
18987 #[inline]
18988 pub fn generated_token(&self) -> Option<SyntaxToken> {
18989 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
18990 }
18991 #[inline]
18992 pub fn set_token(&self) -> Option<SyntaxToken> {
18993 support::token(&self.syntax, SyntaxKind::SET_KW)
18994 }
18995}
18996
18997#[derive(Debug, Clone, PartialEq, Eq, Hash)]
18998pub struct SetLogged {
18999 pub(crate) syntax: SyntaxNode,
19000}
19001impl SetLogged {
19002 #[inline]
19003 pub fn logged_token(&self) -> Option<SyntaxToken> {
19004 support::token(&self.syntax, SyntaxKind::LOGGED_KW)
19005 }
19006 #[inline]
19007 pub fn set_token(&self) -> Option<SyntaxToken> {
19008 support::token(&self.syntax, SyntaxKind::SET_KW)
19009 }
19010}
19011
19012#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19013pub struct SetMultipleColumns {
19014 pub(crate) syntax: SyntaxNode,
19015}
19016impl SetMultipleColumns {
19017 #[inline]
19018 pub fn column_list(&self) -> Option<ColumnList> {
19019 support::child(&self.syntax)
19020 }
19021 #[inline]
19022 pub fn paren_select(&self) -> Option<ParenSelect> {
19023 support::child(&self.syntax)
19024 }
19025 #[inline]
19026 pub fn set_expr_list(&self) -> Option<SetExprList> {
19027 support::child(&self.syntax)
19028 }
19029 #[inline]
19030 pub fn eq_token(&self) -> Option<SyntaxToken> {
19031 support::token(&self.syntax, SyntaxKind::EQ)
19032 }
19033}
19034
19035#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19036pub struct SetNotNull {
19037 pub(crate) syntax: SyntaxNode,
19038}
19039impl SetNotNull {
19040 #[inline]
19041 pub fn not_token(&self) -> Option<SyntaxToken> {
19042 support::token(&self.syntax, SyntaxKind::NOT_KW)
19043 }
19044 #[inline]
19045 pub fn null_token(&self) -> Option<SyntaxToken> {
19046 support::token(&self.syntax, SyntaxKind::NULL_KW)
19047 }
19048 #[inline]
19049 pub fn set_token(&self) -> Option<SyntaxToken> {
19050 support::token(&self.syntax, SyntaxKind::SET_KW)
19051 }
19052}
19053
19054#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19055pub struct SetNullColumns {
19056 pub(crate) syntax: SyntaxNode,
19057}
19058impl SetNullColumns {
19059 #[inline]
19060 pub fn column_list(&self) -> Option<ColumnList> {
19061 support::child(&self.syntax)
19062 }
19063 #[inline]
19064 pub fn null_token(&self) -> Option<SyntaxToken> {
19065 support::token(&self.syntax, SyntaxKind::NULL_KW)
19066 }
19067 #[inline]
19068 pub fn set_token(&self) -> Option<SyntaxToken> {
19069 support::token(&self.syntax, SyntaxKind::SET_KW)
19070 }
19071}
19072
19073#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19074pub struct SetOptions {
19075 pub(crate) syntax: SyntaxNode,
19076}
19077impl SetOptions {
19078 #[inline]
19079 pub fn attribute_list(&self) -> Option<AttributeList> {
19080 support::child(&self.syntax)
19081 }
19082 #[inline]
19083 pub fn set_token(&self) -> Option<SyntaxToken> {
19084 support::token(&self.syntax, SyntaxKind::SET_KW)
19085 }
19086}
19087
19088#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19089pub struct SetOptionsList {
19090 pub(crate) syntax: SyntaxNode,
19091}
19092impl SetOptionsList {
19093 #[inline]
19094 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
19095 support::child(&self.syntax)
19096 }
19097 #[inline]
19098 pub fn options_token(&self) -> Option<SyntaxToken> {
19099 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
19100 }
19101 #[inline]
19102 pub fn set_token(&self) -> Option<SyntaxToken> {
19103 support::token(&self.syntax, SyntaxKind::SET_KW)
19104 }
19105}
19106
19107#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19108pub struct SetRole {
19109 pub(crate) syntax: SyntaxNode,
19110}
19111impl SetRole {
19112 #[inline]
19113 pub fn role_ref(&self) -> Option<RoleRef> {
19114 support::child(&self.syntax)
19115 }
19116 #[inline]
19117 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
19118 support::token(&self.syntax, SyntaxKind::SEMICOLON)
19119 }
19120 #[inline]
19121 pub fn local_token(&self) -> Option<SyntaxToken> {
19122 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
19123 }
19124 #[inline]
19125 pub fn none_token(&self) -> Option<SyntaxToken> {
19126 support::token(&self.syntax, SyntaxKind::NONE_KW)
19127 }
19128 #[inline]
19129 pub fn reset_token(&self) -> Option<SyntaxToken> {
19130 support::token(&self.syntax, SyntaxKind::RESET_KW)
19131 }
19132 #[inline]
19133 pub fn role_token(&self) -> Option<SyntaxToken> {
19134 support::token(&self.syntax, SyntaxKind::ROLE_KW)
19135 }
19136 #[inline]
19137 pub fn session_token(&self) -> Option<SyntaxToken> {
19138 support::token(&self.syntax, SyntaxKind::SESSION_KW)
19139 }
19140 #[inline]
19141 pub fn set_token(&self) -> Option<SyntaxToken> {
19142 support::token(&self.syntax, SyntaxKind::SET_KW)
19143 }
19144}
19145
19146#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19147pub struct SetSchema {
19148 pub(crate) syntax: SyntaxNode,
19149}
19150impl SetSchema {
19151 #[inline]
19152 pub fn name_ref(&self) -> Option<NameRef> {
19153 support::child(&self.syntax)
19154 }
19155 #[inline]
19156 pub fn schema_token(&self) -> Option<SyntaxToken> {
19157 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
19158 }
19159 #[inline]
19160 pub fn set_token(&self) -> Option<SyntaxToken> {
19161 support::token(&self.syntax, SyntaxKind::SET_KW)
19162 }
19163}
19164
19165#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19166pub struct SetSequenceOption {
19167 pub(crate) syntax: SyntaxNode,
19168}
19169impl SetSequenceOption {
19170 #[inline]
19171 pub fn sequence_option(&self) -> Option<SequenceOption> {
19172 support::child(&self.syntax)
19173 }
19174 #[inline]
19175 pub fn set_token(&self) -> Option<SyntaxToken> {
19176 support::token(&self.syntax, SyntaxKind::SET_KW)
19177 }
19178}
19179
19180#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19181pub struct SetSessionAuth {
19182 pub(crate) syntax: SyntaxNode,
19183}
19184impl SetSessionAuth {
19185 #[inline]
19186 pub fn literal(&self) -> Option<Literal> {
19187 support::child(&self.syntax)
19188 }
19189 #[inline]
19190 pub fn role_ref(&self) -> Option<RoleRef> {
19191 support::child(&self.syntax)
19192 }
19193 #[inline]
19194 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
19195 support::token(&self.syntax, SyntaxKind::SEMICOLON)
19196 }
19197 #[inline]
19198 pub fn authorization_token(&self) -> Option<SyntaxToken> {
19199 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
19200 }
19201 #[inline]
19202 pub fn default_token(&self) -> Option<SyntaxToken> {
19203 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
19204 }
19205 #[inline]
19206 pub fn local_token(&self) -> Option<SyntaxToken> {
19207 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
19208 }
19209 #[inline]
19210 pub fn session_token(&self) -> Option<SyntaxToken> {
19211 support::token(&self.syntax, SyntaxKind::SESSION_KW)
19212 }
19213 #[inline]
19214 pub fn set_token(&self) -> Option<SyntaxToken> {
19215 support::token(&self.syntax, SyntaxKind::SET_KW)
19216 }
19217}
19218
19219#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19220pub struct SetSingleColumn {
19221 pub(crate) syntax: SyntaxNode,
19222}
19223impl SetSingleColumn {
19224 #[inline]
19225 pub fn column(&self) -> Option<Column> {
19226 support::child(&self.syntax)
19227 }
19228 #[inline]
19229 pub fn set_expr(&self) -> Option<SetExpr> {
19230 support::child(&self.syntax)
19231 }
19232 #[inline]
19233 pub fn eq_token(&self) -> Option<SyntaxToken> {
19234 support::token(&self.syntax, SyntaxKind::EQ)
19235 }
19236}
19237
19238#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19239pub struct SetStatistics {
19240 pub(crate) syntax: SyntaxNode,
19241}
19242impl SetStatistics {
19243 #[inline]
19244 pub fn literal(&self) -> Option<Literal> {
19245 support::child(&self.syntax)
19246 }
19247 #[inline]
19248 pub fn default_token(&self) -> Option<SyntaxToken> {
19249 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
19250 }
19251 #[inline]
19252 pub fn set_token(&self) -> Option<SyntaxToken> {
19253 support::token(&self.syntax, SyntaxKind::SET_KW)
19254 }
19255 #[inline]
19256 pub fn statistics_token(&self) -> Option<SyntaxToken> {
19257 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
19258 }
19259}
19260
19261#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19262pub struct SetStorage {
19263 pub(crate) syntax: SyntaxNode,
19264}
19265impl SetStorage {
19266 #[inline]
19267 pub fn name_ref(&self) -> Option<NameRef> {
19268 support::child(&self.syntax)
19269 }
19270 #[inline]
19271 pub fn default_token(&self) -> Option<SyntaxToken> {
19272 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
19273 }
19274 #[inline]
19275 pub fn set_token(&self) -> Option<SyntaxToken> {
19276 support::token(&self.syntax, SyntaxKind::SET_KW)
19277 }
19278 #[inline]
19279 pub fn storage_token(&self) -> Option<SyntaxToken> {
19280 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
19281 }
19282}
19283
19284#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19285pub struct SetTablespace {
19286 pub(crate) syntax: SyntaxNode,
19287}
19288impl SetTablespace {
19289 #[inline]
19290 pub fn path(&self) -> Option<Path> {
19291 support::child(&self.syntax)
19292 }
19293 #[inline]
19294 pub fn set_token(&self) -> Option<SyntaxToken> {
19295 support::token(&self.syntax, SyntaxKind::SET_KW)
19296 }
19297 #[inline]
19298 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
19299 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
19300 }
19301}
19302
19303#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19304pub struct SetTransaction {
19305 pub(crate) syntax: SyntaxNode,
19306}
19307impl SetTransaction {
19308 #[inline]
19309 pub fn literal(&self) -> Option<Literal> {
19310 support::child(&self.syntax)
19311 }
19312 #[inline]
19313 pub fn transaction_mode_list(&self) -> Option<TransactionModeList> {
19314 support::child(&self.syntax)
19315 }
19316 #[inline]
19317 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
19318 support::token(&self.syntax, SyntaxKind::SEMICOLON)
19319 }
19320 #[inline]
19321 pub fn as_token(&self) -> Option<SyntaxToken> {
19322 support::token(&self.syntax, SyntaxKind::AS_KW)
19323 }
19324 #[inline]
19325 pub fn characteristics_token(&self) -> Option<SyntaxToken> {
19326 support::token(&self.syntax, SyntaxKind::CHARACTERISTICS_KW)
19327 }
19328 #[inline]
19329 pub fn session_token(&self) -> Option<SyntaxToken> {
19330 support::token(&self.syntax, SyntaxKind::SESSION_KW)
19331 }
19332 #[inline]
19333 pub fn set_token(&self) -> Option<SyntaxToken> {
19334 support::token(&self.syntax, SyntaxKind::SET_KW)
19335 }
19336 #[inline]
19337 pub fn snapshot_token(&self) -> Option<SyntaxToken> {
19338 support::token(&self.syntax, SyntaxKind::SNAPSHOT_KW)
19339 }
19340 #[inline]
19341 pub fn transaction_token(&self) -> Option<SyntaxToken> {
19342 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
19343 }
19344}
19345
19346#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19347pub struct SetType {
19348 pub(crate) syntax: SyntaxNode,
19349}
19350impl SetType {
19351 #[inline]
19352 pub fn collate(&self) -> Option<Collate> {
19353 support::child(&self.syntax)
19354 }
19355 #[inline]
19356 pub fn ty(&self) -> Option<Type> {
19357 support::child(&self.syntax)
19358 }
19359 #[inline]
19360 pub fn set_token(&self) -> Option<SyntaxToken> {
19361 support::token(&self.syntax, SyntaxKind::SET_KW)
19362 }
19363 #[inline]
19364 pub fn type_token(&self) -> Option<SyntaxToken> {
19365 support::token(&self.syntax, SyntaxKind::TYPE_KW)
19366 }
19367}
19368
19369#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19370pub struct SetUnlogged {
19371 pub(crate) syntax: SyntaxNode,
19372}
19373impl SetUnlogged {
19374 #[inline]
19375 pub fn set_token(&self) -> Option<SyntaxToken> {
19376 support::token(&self.syntax, SyntaxKind::SET_KW)
19377 }
19378 #[inline]
19379 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
19380 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
19381 }
19382}
19383
19384#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19385pub struct SetWithoutCluster {
19386 pub(crate) syntax: SyntaxNode,
19387}
19388impl SetWithoutCluster {
19389 #[inline]
19390 pub fn cluster_token(&self) -> Option<SyntaxToken> {
19391 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
19392 }
19393 #[inline]
19394 pub fn set_token(&self) -> Option<SyntaxToken> {
19395 support::token(&self.syntax, SyntaxKind::SET_KW)
19396 }
19397 #[inline]
19398 pub fn without_token(&self) -> Option<SyntaxToken> {
19399 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
19400 }
19401}
19402
19403#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19404pub struct SetWithoutOids {
19405 pub(crate) syntax: SyntaxNode,
19406}
19407impl SetWithoutOids {
19408 #[inline]
19409 pub fn oids_token(&self) -> Option<SyntaxToken> {
19410 support::token(&self.syntax, SyntaxKind::OIDS_KW)
19411 }
19412 #[inline]
19413 pub fn set_token(&self) -> Option<SyntaxToken> {
19414 support::token(&self.syntax, SyntaxKind::SET_KW)
19415 }
19416 #[inline]
19417 pub fn without_token(&self) -> Option<SyntaxToken> {
19418 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
19419 }
19420}
19421
19422#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19423pub struct Share {
19424 pub(crate) syntax: SyntaxNode,
19425}
19426impl Share {
19427 #[inline]
19428 pub fn share_token(&self) -> Option<SyntaxToken> {
19429 support::token(&self.syntax, SyntaxKind::SHARE_KW)
19430 }
19431}
19432
19433#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19434pub struct ShareRowExclusive {
19435 pub(crate) syntax: SyntaxNode,
19436}
19437impl ShareRowExclusive {
19438 #[inline]
19439 pub fn exclusive_token(&self) -> Option<SyntaxToken> {
19440 support::token(&self.syntax, SyntaxKind::EXCLUSIVE_KW)
19441 }
19442 #[inline]
19443 pub fn row_token(&self) -> Option<SyntaxToken> {
19444 support::token(&self.syntax, SyntaxKind::ROW_KW)
19445 }
19446 #[inline]
19447 pub fn share_token(&self) -> Option<SyntaxToken> {
19448 support::token(&self.syntax, SyntaxKind::SHARE_KW)
19449 }
19450}
19451
19452#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19453pub struct ShareUpdateExclusive {
19454 pub(crate) syntax: SyntaxNode,
19455}
19456impl ShareUpdateExclusive {
19457 #[inline]
19458 pub fn exclusive_token(&self) -> Option<SyntaxToken> {
19459 support::token(&self.syntax, SyntaxKind::EXCLUSIVE_KW)
19460 }
19461 #[inline]
19462 pub fn share_token(&self) -> Option<SyntaxToken> {
19463 support::token(&self.syntax, SyntaxKind::SHARE_KW)
19464 }
19465 #[inline]
19466 pub fn update_token(&self) -> Option<SyntaxToken> {
19467 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
19468 }
19469}
19470
19471#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19472pub struct Show {
19473 pub(crate) syntax: SyntaxNode,
19474}
19475impl Show {
19476 #[inline]
19477 pub fn all(&self) -> Option<All> {
19478 support::child(&self.syntax)
19479 }
19480 #[inline]
19481 pub fn path(&self) -> Option<Path> {
19482 support::child(&self.syntax)
19483 }
19484 #[inline]
19485 pub fn session_authorization(&self) -> Option<SessionAuthorization> {
19486 support::child(&self.syntax)
19487 }
19488 #[inline]
19489 pub fn time_zone(&self) -> Option<TimeZone> {
19490 support::child(&self.syntax)
19491 }
19492 #[inline]
19493 pub fn transaction_isolation_level(&self) -> Option<TransactionIsolationLevel> {
19494 support::child(&self.syntax)
19495 }
19496 #[inline]
19497 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
19498 support::token(&self.syntax, SyntaxKind::SEMICOLON)
19499 }
19500 #[inline]
19501 pub fn show_token(&self) -> Option<SyntaxToken> {
19502 support::token(&self.syntax, SyntaxKind::SHOW_KW)
19503 }
19504}
19505
19506#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19507pub struct SimilarTo {
19508 pub(crate) syntax: SyntaxNode,
19509}
19510impl SimilarTo {
19511 #[inline]
19512 pub fn similar_token(&self) -> Option<SyntaxToken> {
19513 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
19514 }
19515 #[inline]
19516 pub fn to_token(&self) -> Option<SyntaxToken> {
19517 support::token(&self.syntax, SyntaxKind::TO_KW)
19518 }
19519}
19520
19521#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19522pub struct SliceExpr {
19523 pub(crate) syntax: SyntaxNode,
19524}
19525impl SliceExpr {
19526 #[inline]
19527 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
19528 support::token(&self.syntax, SyntaxKind::L_BRACK)
19529 }
19530 #[inline]
19531 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
19532 support::token(&self.syntax, SyntaxKind::R_BRACK)
19533 }
19534 #[inline]
19535 pub fn colon_token(&self) -> Option<SyntaxToken> {
19536 support::token(&self.syntax, SyntaxKind::COLON)
19537 }
19538}
19539
19540#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19541pub struct SomeFn {
19542 pub(crate) syntax: SyntaxNode,
19543}
19544impl SomeFn {
19545 #[inline]
19546 pub fn expr(&self) -> Option<Expr> {
19547 support::child(&self.syntax)
19548 }
19549 #[inline]
19550 pub fn select_variant(&self) -> Option<SelectVariant> {
19551 support::child(&self.syntax)
19552 }
19553 #[inline]
19554 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
19555 support::token(&self.syntax, SyntaxKind::L_PAREN)
19556 }
19557 #[inline]
19558 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
19559 support::token(&self.syntax, SyntaxKind::R_PAREN)
19560 }
19561 #[inline]
19562 pub fn some_token(&self) -> Option<SyntaxToken> {
19563 support::token(&self.syntax, SyntaxKind::SOME_KW)
19564 }
19565}
19566
19567#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19568pub struct SortAsc {
19569 pub(crate) syntax: SyntaxNode,
19570}
19571impl SortAsc {
19572 #[inline]
19573 pub fn asc_token(&self) -> Option<SyntaxToken> {
19574 support::token(&self.syntax, SyntaxKind::ASC_KW)
19575 }
19576}
19577
19578#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19579pub struct SortBy {
19580 pub(crate) syntax: SyntaxNode,
19581}
19582impl SortBy {
19583 #[inline]
19584 pub fn expr(&self) -> Option<Expr> {
19585 support::child(&self.syntax)
19586 }
19587 #[inline]
19588 pub fn nulls_first(&self) -> Option<NullsFirst> {
19589 support::child(&self.syntax)
19590 }
19591 #[inline]
19592 pub fn nulls_last(&self) -> Option<NullsLast> {
19593 support::child(&self.syntax)
19594 }
19595 #[inline]
19596 pub fn sort_asc(&self) -> Option<SortAsc> {
19597 support::child(&self.syntax)
19598 }
19599 #[inline]
19600 pub fn sort_desc(&self) -> Option<SortDesc> {
19601 support::child(&self.syntax)
19602 }
19603 #[inline]
19604 pub fn sort_using(&self) -> Option<SortUsing> {
19605 support::child(&self.syntax)
19606 }
19607}
19608
19609#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19610pub struct SortByList {
19611 pub(crate) syntax: SyntaxNode,
19612}
19613impl SortByList {
19614 #[inline]
19615 pub fn sort_bys(&self) -> AstChildren<SortBy> {
19616 support::children(&self.syntax)
19617 }
19618}
19619
19620#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19621pub struct SortDesc {
19622 pub(crate) syntax: SyntaxNode,
19623}
19624impl SortDesc {
19625 #[inline]
19626 pub fn desc_token(&self) -> Option<SyntaxToken> {
19627 support::token(&self.syntax, SyntaxKind::DESC_KW)
19628 }
19629}
19630
19631#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19632pub struct SortUsing {
19633 pub(crate) syntax: SyntaxNode,
19634}
19635impl SortUsing {
19636 #[inline]
19637 pub fn op(&self) -> Option<Op> {
19638 support::child(&self.syntax)
19639 }
19640 #[inline]
19641 pub fn using_token(&self) -> Option<SyntaxToken> {
19642 support::token(&self.syntax, SyntaxKind::USING_KW)
19643 }
19644}
19645
19646#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19647pub struct SourceFile {
19648 pub(crate) syntax: SyntaxNode,
19649}
19650impl SourceFile {
19651 #[inline]
19652 pub fn stmts(&self) -> AstChildren<Stmt> {
19653 support::children(&self.syntax)
19654 }
19655}
19656
19657#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19658pub struct SourceVertexTable {
19659 pub(crate) syntax: SyntaxNode,
19660}
19661impl SourceVertexTable {
19662 #[inline]
19663 pub fn column_list(&self) -> Option<ColumnList> {
19664 support::child(&self.syntax)
19665 }
19666 #[inline]
19667 pub fn name_ref(&self) -> Option<NameRef> {
19668 support::child(&self.syntax)
19669 }
19670 #[inline]
19671 pub fn references_table(&self) -> Option<ReferencesTable> {
19672 support::child(&self.syntax)
19673 }
19674 #[inline]
19675 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
19676 support::token(&self.syntax, SyntaxKind::L_PAREN)
19677 }
19678 #[inline]
19679 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
19680 support::token(&self.syntax, SyntaxKind::R_PAREN)
19681 }
19682 #[inline]
19683 pub fn key_token(&self) -> Option<SyntaxToken> {
19684 support::token(&self.syntax, SyntaxKind::KEY_KW)
19685 }
19686 #[inline]
19687 pub fn source_token(&self) -> Option<SyntaxToken> {
19688 support::token(&self.syntax, SyntaxKind::SOURCE_KW)
19689 }
19690}
19691
19692#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19693pub struct SplitPartition {
19694 pub(crate) syntax: SyntaxNode,
19695}
19696impl SplitPartition {
19697 #[inline]
19698 pub fn partition_list(&self) -> Option<PartitionList> {
19699 support::child(&self.syntax)
19700 }
19701 #[inline]
19702 pub fn into_token(&self) -> Option<SyntaxToken> {
19703 support::token(&self.syntax, SyntaxKind::INTO_KW)
19704 }
19705 #[inline]
19706 pub fn partition_token(&self) -> Option<SyntaxToken> {
19707 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
19708 }
19709 #[inline]
19710 pub fn split_token(&self) -> Option<SyntaxToken> {
19711 support::token(&self.syntax, SyntaxKind::SPLIT_KW)
19712 }
19713}
19714
19715#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19716pub struct Storage {
19717 pub(crate) syntax: SyntaxNode,
19718}
19719impl Storage {
19720 #[inline]
19721 pub fn default_token(&self) -> Option<SyntaxToken> {
19722 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
19723 }
19724 #[inline]
19725 pub fn external_token(&self) -> Option<SyntaxToken> {
19726 support::token(&self.syntax, SyntaxKind::EXTERNAL_KW)
19727 }
19728 #[inline]
19729 pub fn ident_token(&self) -> Option<SyntaxToken> {
19730 support::token(&self.syntax, SyntaxKind::IDENT)
19731 }
19732 #[inline]
19733 pub fn storage_token(&self) -> Option<SyntaxToken> {
19734 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
19735 }
19736}
19737
19738#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19739pub struct StrictFuncOption {
19740 pub(crate) syntax: SyntaxNode,
19741}
19742impl StrictFuncOption {
19743 #[inline]
19744 pub fn called_token(&self) -> Option<SyntaxToken> {
19745 support::token(&self.syntax, SyntaxKind::CALLED_KW)
19746 }
19747 #[inline]
19748 pub fn input_token(&self) -> Option<SyntaxToken> {
19749 support::token(&self.syntax, SyntaxKind::INPUT_KW)
19750 }
19751 #[inline]
19752 pub fn null_token(&self) -> Option<SyntaxToken> {
19753 support::token(&self.syntax, SyntaxKind::NULL_KW)
19754 }
19755 #[inline]
19756 pub fn on_token(&self) -> Option<SyntaxToken> {
19757 support::token(&self.syntax, SyntaxKind::ON_KW)
19758 }
19759 #[inline]
19760 pub fn returns_token(&self) -> Option<SyntaxToken> {
19761 support::token(&self.syntax, SyntaxKind::RETURNS_KW)
19762 }
19763 #[inline]
19764 pub fn strict_token(&self) -> Option<SyntaxToken> {
19765 support::token(&self.syntax, SyntaxKind::STRICT_KW)
19766 }
19767}
19768
19769#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19770pub struct SubstringFn {
19771 pub(crate) syntax: SyntaxNode,
19772}
19773impl SubstringFn {
19774 #[inline]
19775 pub fn expr(&self) -> Option<Expr> {
19776 support::child(&self.syntax)
19777 }
19778 #[inline]
19779 pub fn exprs(&self) -> AstChildren<Expr> {
19780 support::children(&self.syntax)
19781 }
19782 #[inline]
19783 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
19784 support::token(&self.syntax, SyntaxKind::L_PAREN)
19785 }
19786 #[inline]
19787 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
19788 support::token(&self.syntax, SyntaxKind::R_PAREN)
19789 }
19790 #[inline]
19791 pub fn for_token(&self) -> Option<SyntaxToken> {
19792 support::token(&self.syntax, SyntaxKind::FOR_KW)
19793 }
19794 #[inline]
19795 pub fn from_token(&self) -> Option<SyntaxToken> {
19796 support::token(&self.syntax, SyntaxKind::FROM_KW)
19797 }
19798 #[inline]
19799 pub fn similar_token(&self) -> Option<SyntaxToken> {
19800 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
19801 }
19802 #[inline]
19803 pub fn substring_token(&self) -> Option<SyntaxToken> {
19804 support::token(&self.syntax, SyntaxKind::SUBSTRING_KW)
19805 }
19806}
19807
19808#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19809pub struct SupportFuncOption {
19810 pub(crate) syntax: SyntaxNode,
19811}
19812impl SupportFuncOption {
19813 #[inline]
19814 pub fn path(&self) -> Option<Path> {
19815 support::child(&self.syntax)
19816 }
19817 #[inline]
19818 pub fn support_token(&self) -> Option<SyntaxToken> {
19819 support::token(&self.syntax, SyntaxKind::SUPPORT_KW)
19820 }
19821}
19822
19823#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19824pub struct Table {
19825 pub(crate) syntax: SyntaxNode,
19826}
19827impl Table {
19828 #[inline]
19829 pub fn fetch_clause(&self) -> Option<FetchClause> {
19830 support::child(&self.syntax)
19831 }
19832 #[inline]
19833 pub fn limit_clause(&self) -> Option<LimitClause> {
19834 support::child(&self.syntax)
19835 }
19836 #[inline]
19837 pub fn locking_clauses(&self) -> AstChildren<LockingClause> {
19838 support::children(&self.syntax)
19839 }
19840 #[inline]
19841 pub fn offset_clause(&self) -> Option<OffsetClause> {
19842 support::child(&self.syntax)
19843 }
19844 #[inline]
19845 pub fn order_by_clause(&self) -> Option<OrderByClause> {
19846 support::child(&self.syntax)
19847 }
19848 #[inline]
19849 pub fn relation_name(&self) -> Option<RelationName> {
19850 support::child(&self.syntax)
19851 }
19852 #[inline]
19853 pub fn with_clause(&self) -> Option<WithClause> {
19854 support::child(&self.syntax)
19855 }
19856 #[inline]
19857 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
19858 support::token(&self.syntax, SyntaxKind::SEMICOLON)
19859 }
19860 #[inline]
19861 pub fn table_token(&self) -> Option<SyntaxToken> {
19862 support::token(&self.syntax, SyntaxKind::TABLE_KW)
19863 }
19864}
19865
19866#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19867pub struct TableAndColumns {
19868 pub(crate) syntax: SyntaxNode,
19869}
19870impl TableAndColumns {
19871 #[inline]
19872 pub fn column_list(&self) -> Option<ColumnList> {
19873 support::child(&self.syntax)
19874 }
19875 #[inline]
19876 pub fn relation_name(&self) -> Option<RelationName> {
19877 support::child(&self.syntax)
19878 }
19879}
19880
19881#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19882pub struct TableAndColumnsList {
19883 pub(crate) syntax: SyntaxNode,
19884}
19885impl TableAndColumnsList {
19886 #[inline]
19887 pub fn table_and_columnss(&self) -> AstChildren<TableAndColumns> {
19888 support::children(&self.syntax)
19889 }
19890}
19891
19892#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19893pub struct TableArgList {
19894 pub(crate) syntax: SyntaxNode,
19895}
19896impl TableArgList {
19897 #[inline]
19898 pub fn args(&self) -> AstChildren<TableArg> {
19899 support::children(&self.syntax)
19900 }
19901 #[inline]
19902 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
19903 support::token(&self.syntax, SyntaxKind::L_PAREN)
19904 }
19905 #[inline]
19906 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
19907 support::token(&self.syntax, SyntaxKind::R_PAREN)
19908 }
19909}
19910
19911#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19912pub struct TableList {
19913 pub(crate) syntax: SyntaxNode,
19914}
19915impl TableList {
19916 #[inline]
19917 pub fn relation_names(&self) -> AstChildren<RelationName> {
19918 support::children(&self.syntax)
19919 }
19920}
19921
19922#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19923pub struct TablesampleClause {
19924 pub(crate) syntax: SyntaxNode,
19925}
19926impl TablesampleClause {
19927 #[inline]
19928 pub fn call_expr(&self) -> Option<CallExpr> {
19929 support::child(&self.syntax)
19930 }
19931 #[inline]
19932 pub fn repeatable_clause(&self) -> Option<RepeatableClause> {
19933 support::child(&self.syntax)
19934 }
19935 #[inline]
19936 pub fn tablesample_token(&self) -> Option<SyntaxToken> {
19937 support::token(&self.syntax, SyntaxKind::TABLESAMPLE_KW)
19938 }
19939}
19940
19941#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19942pub struct Tablespace {
19943 pub(crate) syntax: SyntaxNode,
19944}
19945impl Tablespace {
19946 #[inline]
19947 pub fn name_ref(&self) -> Option<NameRef> {
19948 support::child(&self.syntax)
19949 }
19950 #[inline]
19951 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
19952 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
19953 }
19954}
19955
19956#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19957pub struct Target {
19958 pub(crate) syntax: SyntaxNode,
19959}
19960impl Target {
19961 #[inline]
19962 pub fn as_name(&self) -> Option<AsName> {
19963 support::child(&self.syntax)
19964 }
19965 #[inline]
19966 pub fn expr(&self) -> Option<Expr> {
19967 support::child(&self.syntax)
19968 }
19969 #[inline]
19970 pub fn star_token(&self) -> Option<SyntaxToken> {
19971 support::token(&self.syntax, SyntaxKind::STAR)
19972 }
19973}
19974
19975#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19976pub struct TargetList {
19977 pub(crate) syntax: SyntaxNode,
19978}
19979impl TargetList {
19980 #[inline]
19981 pub fn targets(&self) -> AstChildren<Target> {
19982 support::children(&self.syntax)
19983 }
19984}
19985
19986#[derive(Debug, Clone, PartialEq, Eq, Hash)]
19987pub struct Temp {
19988 pub(crate) syntax: SyntaxNode,
19989}
19990impl Temp {
19991 #[inline]
19992 pub fn global_token(&self) -> Option<SyntaxToken> {
19993 support::token(&self.syntax, SyntaxKind::GLOBAL_KW)
19994 }
19995 #[inline]
19996 pub fn local_token(&self) -> Option<SyntaxToken> {
19997 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
19998 }
19999 #[inline]
20000 pub fn temp_token(&self) -> Option<SyntaxToken> {
20001 support::token(&self.syntax, SyntaxKind::TEMP_KW)
20002 }
20003 #[inline]
20004 pub fn temporary_token(&self) -> Option<SyntaxToken> {
20005 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
20006 }
20007}
20008
20009#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20010pub struct Ties {
20011 pub(crate) syntax: SyntaxNode,
20012}
20013impl Ties {
20014 #[inline]
20015 pub fn ties_token(&self) -> Option<SyntaxToken> {
20016 support::token(&self.syntax, SyntaxKind::TIES_KW)
20017 }
20018}
20019
20020#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20021pub struct TimeType {
20022 pub(crate) syntax: SyntaxNode,
20023}
20024impl TimeType {
20025 #[inline]
20026 pub fn literal(&self) -> Option<Literal> {
20027 support::child(&self.syntax)
20028 }
20029 #[inline]
20030 pub fn timezone(&self) -> Option<Timezone> {
20031 support::child(&self.syntax)
20032 }
20033 #[inline]
20034 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
20035 support::token(&self.syntax, SyntaxKind::L_PAREN)
20036 }
20037 #[inline]
20038 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
20039 support::token(&self.syntax, SyntaxKind::R_PAREN)
20040 }
20041 #[inline]
20042 pub fn setof_token(&self) -> Option<SyntaxToken> {
20043 support::token(&self.syntax, SyntaxKind::SETOF_KW)
20044 }
20045 #[inline]
20046 pub fn time_token(&self) -> Option<SyntaxToken> {
20047 support::token(&self.syntax, SyntaxKind::TIME_KW)
20048 }
20049 #[inline]
20050 pub fn timestamp_token(&self) -> Option<SyntaxToken> {
20051 support::token(&self.syntax, SyntaxKind::TIMESTAMP_KW)
20052 }
20053}
20054
20055#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20056pub struct TimeZone {
20057 pub(crate) syntax: SyntaxNode,
20058}
20059impl TimeZone {
20060 #[inline]
20061 pub fn time_token(&self) -> Option<SyntaxToken> {
20062 support::token(&self.syntax, SyntaxKind::TIME_KW)
20063 }
20064 #[inline]
20065 pub fn zone_token(&self) -> Option<SyntaxToken> {
20066 support::token(&self.syntax, SyntaxKind::ZONE_KW)
20067 }
20068}
20069
20070#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20071pub struct Timing {
20072 pub(crate) syntax: SyntaxNode,
20073}
20074impl Timing {
20075 #[inline]
20076 pub fn after_token(&self) -> Option<SyntaxToken> {
20077 support::token(&self.syntax, SyntaxKind::AFTER_KW)
20078 }
20079 #[inline]
20080 pub fn before_token(&self) -> Option<SyntaxToken> {
20081 support::token(&self.syntax, SyntaxKind::BEFORE_KW)
20082 }
20083 #[inline]
20084 pub fn instead_token(&self) -> Option<SyntaxToken> {
20085 support::token(&self.syntax, SyntaxKind::INSTEAD_KW)
20086 }
20087 #[inline]
20088 pub fn of_token(&self) -> Option<SyntaxToken> {
20089 support::token(&self.syntax, SyntaxKind::OF_KW)
20090 }
20091}
20092
20093#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20094pub struct TransactionIsolationLevel {
20095 pub(crate) syntax: SyntaxNode,
20096}
20097impl TransactionIsolationLevel {
20098 #[inline]
20099 pub fn isolation_token(&self) -> Option<SyntaxToken> {
20100 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
20101 }
20102 #[inline]
20103 pub fn level_token(&self) -> Option<SyntaxToken> {
20104 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
20105 }
20106 #[inline]
20107 pub fn transaction_token(&self) -> Option<SyntaxToken> {
20108 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
20109 }
20110}
20111
20112#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20113pub struct TransactionModeList {
20114 pub(crate) syntax: SyntaxNode,
20115}
20116impl TransactionModeList {
20117 #[inline]
20118 pub fn transaction_modes(&self) -> AstChildren<TransactionMode> {
20119 support::children(&self.syntax)
20120 }
20121}
20122
20123#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20124pub struct TransformFromFunc {
20125 pub(crate) syntax: SyntaxNode,
20126}
20127impl TransformFromFunc {
20128 #[inline]
20129 pub fn function_sig(&self) -> Option<FunctionSig> {
20130 support::child(&self.syntax)
20131 }
20132 #[inline]
20133 pub fn from_token(&self) -> Option<SyntaxToken> {
20134 support::token(&self.syntax, SyntaxKind::FROM_KW)
20135 }
20136 #[inline]
20137 pub fn function_token(&self) -> Option<SyntaxToken> {
20138 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
20139 }
20140 #[inline]
20141 pub fn sql_token(&self) -> Option<SyntaxToken> {
20142 support::token(&self.syntax, SyntaxKind::SQL_KW)
20143 }
20144 #[inline]
20145 pub fn with_token(&self) -> Option<SyntaxToken> {
20146 support::token(&self.syntax, SyntaxKind::WITH_KW)
20147 }
20148}
20149
20150#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20151pub struct TransformFuncOption {
20152 pub(crate) syntax: SyntaxNode,
20153}
20154impl TransformFuncOption {
20155 #[inline]
20156 pub fn types(&self) -> AstChildren<Type> {
20157 support::children(&self.syntax)
20158 }
20159 #[inline]
20160 pub fn transform_token(&self) -> Option<SyntaxToken> {
20161 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
20162 }
20163}
20164
20165#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20166pub struct TransformToFunc {
20167 pub(crate) syntax: SyntaxNode,
20168}
20169impl TransformToFunc {
20170 #[inline]
20171 pub fn function_sig(&self) -> Option<FunctionSig> {
20172 support::child(&self.syntax)
20173 }
20174 #[inline]
20175 pub fn function_token(&self) -> Option<SyntaxToken> {
20176 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
20177 }
20178 #[inline]
20179 pub fn sql_token(&self) -> Option<SyntaxToken> {
20180 support::token(&self.syntax, SyntaxKind::SQL_KW)
20181 }
20182 #[inline]
20183 pub fn to_token(&self) -> Option<SyntaxToken> {
20184 support::token(&self.syntax, SyntaxKind::TO_KW)
20185 }
20186 #[inline]
20187 pub fn with_token(&self) -> Option<SyntaxToken> {
20188 support::token(&self.syntax, SyntaxKind::WITH_KW)
20189 }
20190}
20191
20192#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20193pub struct TriggerEvent {
20194 pub(crate) syntax: SyntaxNode,
20195}
20196impl TriggerEvent {
20197 #[inline]
20198 pub fn trigger_event_update(&self) -> Option<TriggerEventUpdate> {
20199 support::child(&self.syntax)
20200 }
20201 #[inline]
20202 pub fn delete_token(&self) -> Option<SyntaxToken> {
20203 support::token(&self.syntax, SyntaxKind::DELETE_KW)
20204 }
20205 #[inline]
20206 pub fn insert_token(&self) -> Option<SyntaxToken> {
20207 support::token(&self.syntax, SyntaxKind::INSERT_KW)
20208 }
20209 #[inline]
20210 pub fn truncate_token(&self) -> Option<SyntaxToken> {
20211 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
20212 }
20213}
20214
20215#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20216pub struct TriggerEventList {
20217 pub(crate) syntax: SyntaxNode,
20218}
20219impl TriggerEventList {
20220 #[inline]
20221 pub fn trigger_events(&self) -> AstChildren<TriggerEvent> {
20222 support::children(&self.syntax)
20223 }
20224}
20225
20226#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20227pub struct TriggerEventUpdate {
20228 pub(crate) syntax: SyntaxNode,
20229}
20230impl TriggerEventUpdate {
20231 #[inline]
20232 pub fn name_refs(&self) -> AstChildren<NameRef> {
20233 support::children(&self.syntax)
20234 }
20235 #[inline]
20236 pub fn of_token(&self) -> Option<SyntaxToken> {
20237 support::token(&self.syntax, SyntaxKind::OF_KW)
20238 }
20239 #[inline]
20240 pub fn update_token(&self) -> Option<SyntaxToken> {
20241 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
20242 }
20243}
20244
20245#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20246pub struct TrimFn {
20247 pub(crate) syntax: SyntaxNode,
20248}
20249impl TrimFn {
20250 #[inline]
20251 pub fn expr(&self) -> Option<Expr> {
20252 support::child(&self.syntax)
20253 }
20254 #[inline]
20255 pub fn exprs(&self) -> AstChildren<Expr> {
20256 support::children(&self.syntax)
20257 }
20258 #[inline]
20259 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
20260 support::token(&self.syntax, SyntaxKind::L_PAREN)
20261 }
20262 #[inline]
20263 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
20264 support::token(&self.syntax, SyntaxKind::R_PAREN)
20265 }
20266 #[inline]
20267 pub fn both_token(&self) -> Option<SyntaxToken> {
20268 support::token(&self.syntax, SyntaxKind::BOTH_KW)
20269 }
20270 #[inline]
20271 pub fn from_token(&self) -> Option<SyntaxToken> {
20272 support::token(&self.syntax, SyntaxKind::FROM_KW)
20273 }
20274 #[inline]
20275 pub fn leading_token(&self) -> Option<SyntaxToken> {
20276 support::token(&self.syntax, SyntaxKind::LEADING_KW)
20277 }
20278 #[inline]
20279 pub fn trailing_token(&self) -> Option<SyntaxToken> {
20280 support::token(&self.syntax, SyntaxKind::TRAILING_KW)
20281 }
20282 #[inline]
20283 pub fn trim_token(&self) -> Option<SyntaxToken> {
20284 support::token(&self.syntax, SyntaxKind::TRIM_KW)
20285 }
20286}
20287
20288#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20289pub struct Truncate {
20290 pub(crate) syntax: SyntaxNode,
20291}
20292impl Truncate {
20293 #[inline]
20294 pub fn table_list(&self) -> Option<TableList> {
20295 support::child(&self.syntax)
20296 }
20297 #[inline]
20298 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
20299 support::token(&self.syntax, SyntaxKind::SEMICOLON)
20300 }
20301 #[inline]
20302 pub fn cascade_token(&self) -> Option<SyntaxToken> {
20303 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
20304 }
20305 #[inline]
20306 pub fn continue_token(&self) -> Option<SyntaxToken> {
20307 support::token(&self.syntax, SyntaxKind::CONTINUE_KW)
20308 }
20309 #[inline]
20310 pub fn identity_token(&self) -> Option<SyntaxToken> {
20311 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
20312 }
20313 #[inline]
20314 pub fn restart_token(&self) -> Option<SyntaxToken> {
20315 support::token(&self.syntax, SyntaxKind::RESTART_KW)
20316 }
20317 #[inline]
20318 pub fn restrict_token(&self) -> Option<SyntaxToken> {
20319 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
20320 }
20321 #[inline]
20322 pub fn table_token(&self) -> Option<SyntaxToken> {
20323 support::token(&self.syntax, SyntaxKind::TABLE_KW)
20324 }
20325 #[inline]
20326 pub fn truncate_token(&self) -> Option<SyntaxToken> {
20327 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
20328 }
20329}
20330
20331#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20332pub struct TupleExpr {
20333 pub(crate) syntax: SyntaxNode,
20334}
20335impl TupleExpr {
20336 #[inline]
20337 pub fn exprs(&self) -> AstChildren<Expr> {
20338 support::children(&self.syntax)
20339 }
20340 #[inline]
20341 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
20342 support::token(&self.syntax, SyntaxKind::L_PAREN)
20343 }
20344 #[inline]
20345 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
20346 support::token(&self.syntax, SyntaxKind::R_PAREN)
20347 }
20348}
20349
20350#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20351pub struct UnboundedFollowing {
20352 pub(crate) syntax: SyntaxNode,
20353}
20354impl UnboundedFollowing {
20355 #[inline]
20356 pub fn following_token(&self) -> Option<SyntaxToken> {
20357 support::token(&self.syntax, SyntaxKind::FOLLOWING_KW)
20358 }
20359 #[inline]
20360 pub fn unbounded_token(&self) -> Option<SyntaxToken> {
20361 support::token(&self.syntax, SyntaxKind::UNBOUNDED_KW)
20362 }
20363}
20364
20365#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20366pub struct UnboundedPreceding {
20367 pub(crate) syntax: SyntaxNode,
20368}
20369impl UnboundedPreceding {
20370 #[inline]
20371 pub fn preceding_token(&self) -> Option<SyntaxToken> {
20372 support::token(&self.syntax, SyntaxKind::PRECEDING_KW)
20373 }
20374 #[inline]
20375 pub fn unbounded_token(&self) -> Option<SyntaxToken> {
20376 support::token(&self.syntax, SyntaxKind::UNBOUNDED_KW)
20377 }
20378}
20379
20380#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20381pub struct UnicodeNormalForm {
20382 pub(crate) syntax: SyntaxNode,
20383}
20384impl UnicodeNormalForm {
20385 #[inline]
20386 pub fn nfc_token(&self) -> Option<SyntaxToken> {
20387 support::token(&self.syntax, SyntaxKind::NFC_KW)
20388 }
20389 #[inline]
20390 pub fn nfd_token(&self) -> Option<SyntaxToken> {
20391 support::token(&self.syntax, SyntaxKind::NFD_KW)
20392 }
20393 #[inline]
20394 pub fn nfkc_token(&self) -> Option<SyntaxToken> {
20395 support::token(&self.syntax, SyntaxKind::NFKC_KW)
20396 }
20397 #[inline]
20398 pub fn nfkd_token(&self) -> Option<SyntaxToken> {
20399 support::token(&self.syntax, SyntaxKind::NFKD_KW)
20400 }
20401}
20402
20403#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20404pub struct UniqueConstraint {
20405 pub(crate) syntax: SyntaxNode,
20406}
20407impl UniqueConstraint {
20408 #[inline]
20409 pub fn column_list(&self) -> Option<ColumnList> {
20410 support::child(&self.syntax)
20411 }
20412 #[inline]
20413 pub fn constraint_include_clause(&self) -> Option<ConstraintIncludeClause> {
20414 support::child(&self.syntax)
20415 }
20416 #[inline]
20417 pub fn constraint_index_tablespace(&self) -> Option<ConstraintIndexTablespace> {
20418 support::child(&self.syntax)
20419 }
20420 #[inline]
20421 pub fn constraint_name(&self) -> Option<ConstraintName> {
20422 support::child(&self.syntax)
20423 }
20424 #[inline]
20425 pub fn nulls_distinct(&self) -> Option<NullsDistinct> {
20426 support::child(&self.syntax)
20427 }
20428 #[inline]
20429 pub fn nulls_not_distinct(&self) -> Option<NullsNotDistinct> {
20430 support::child(&self.syntax)
20431 }
20432 #[inline]
20433 pub fn using_index(&self) -> Option<UsingIndex> {
20434 support::child(&self.syntax)
20435 }
20436 #[inline]
20437 pub fn with_params(&self) -> Option<WithParams> {
20438 support::child(&self.syntax)
20439 }
20440 #[inline]
20441 pub fn unique_token(&self) -> Option<SyntaxToken> {
20442 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
20443 }
20444}
20445
20446#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20447pub struct Unlisten {
20448 pub(crate) syntax: SyntaxNode,
20449}
20450impl Unlisten {
20451 #[inline]
20452 pub fn name_ref(&self) -> Option<NameRef> {
20453 support::child(&self.syntax)
20454 }
20455 #[inline]
20456 pub fn star_token(&self) -> Option<SyntaxToken> {
20457 support::token(&self.syntax, SyntaxKind::STAR)
20458 }
20459 #[inline]
20460 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
20461 support::token(&self.syntax, SyntaxKind::SEMICOLON)
20462 }
20463 #[inline]
20464 pub fn unlisten_token(&self) -> Option<SyntaxToken> {
20465 support::token(&self.syntax, SyntaxKind::UNLISTEN_KW)
20466 }
20467}
20468
20469#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20470pub struct Unlogged {
20471 pub(crate) syntax: SyntaxNode,
20472}
20473impl Unlogged {
20474 #[inline]
20475 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
20476 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
20477 }
20478}
20479
20480#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20481pub struct Update {
20482 pub(crate) syntax: SyntaxNode,
20483}
20484impl Update {
20485 #[inline]
20486 pub fn alias(&self) -> Option<Alias> {
20487 support::child(&self.syntax)
20488 }
20489 #[inline]
20490 pub fn for_portion_of(&self) -> Option<ForPortionOf> {
20491 support::child(&self.syntax)
20492 }
20493 #[inline]
20494 pub fn from_clause(&self) -> Option<FromClause> {
20495 support::child(&self.syntax)
20496 }
20497 #[inline]
20498 pub fn relation_name(&self) -> Option<RelationName> {
20499 support::child(&self.syntax)
20500 }
20501 #[inline]
20502 pub fn returning_clause(&self) -> Option<ReturningClause> {
20503 support::child(&self.syntax)
20504 }
20505 #[inline]
20506 pub fn set_clause(&self) -> Option<SetClause> {
20507 support::child(&self.syntax)
20508 }
20509 #[inline]
20510 pub fn where_clause(&self) -> Option<WhereClause> {
20511 support::child(&self.syntax)
20512 }
20513 #[inline]
20514 pub fn where_current_of(&self) -> Option<WhereCurrentOf> {
20515 support::child(&self.syntax)
20516 }
20517 #[inline]
20518 pub fn with_clause(&self) -> Option<WithClause> {
20519 support::child(&self.syntax)
20520 }
20521 #[inline]
20522 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
20523 support::token(&self.syntax, SyntaxKind::SEMICOLON)
20524 }
20525 #[inline]
20526 pub fn update_token(&self) -> Option<SyntaxToken> {
20527 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
20528 }
20529}
20530
20531#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20532pub struct UsingClause {
20533 pub(crate) syntax: SyntaxNode,
20534}
20535impl UsingClause {
20536 #[inline]
20537 pub fn from_items(&self) -> AstChildren<FromItem> {
20538 support::children(&self.syntax)
20539 }
20540 #[inline]
20541 pub fn using_token(&self) -> Option<SyntaxToken> {
20542 support::token(&self.syntax, SyntaxKind::USING_KW)
20543 }
20544}
20545
20546#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20547pub struct UsingExprClause {
20548 pub(crate) syntax: SyntaxNode,
20549}
20550impl UsingExprClause {
20551 #[inline]
20552 pub fn expr(&self) -> Option<Expr> {
20553 support::child(&self.syntax)
20554 }
20555 #[inline]
20556 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
20557 support::token(&self.syntax, SyntaxKind::L_PAREN)
20558 }
20559 #[inline]
20560 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
20561 support::token(&self.syntax, SyntaxKind::R_PAREN)
20562 }
20563 #[inline]
20564 pub fn using_token(&self) -> Option<SyntaxToken> {
20565 support::token(&self.syntax, SyntaxKind::USING_KW)
20566 }
20567}
20568
20569#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20570pub struct UsingIndex {
20571 pub(crate) syntax: SyntaxNode,
20572}
20573impl UsingIndex {
20574 #[inline]
20575 pub fn name_ref(&self) -> Option<NameRef> {
20576 support::child(&self.syntax)
20577 }
20578 #[inline]
20579 pub fn index_token(&self) -> Option<SyntaxToken> {
20580 support::token(&self.syntax, SyntaxKind::INDEX_KW)
20581 }
20582 #[inline]
20583 pub fn using_token(&self) -> Option<SyntaxToken> {
20584 support::token(&self.syntax, SyntaxKind::USING_KW)
20585 }
20586}
20587
20588#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20589pub struct UsingMethod {
20590 pub(crate) syntax: SyntaxNode,
20591}
20592impl UsingMethod {
20593 #[inline]
20594 pub fn name_ref(&self) -> Option<NameRef> {
20595 support::child(&self.syntax)
20596 }
20597 #[inline]
20598 pub fn using_token(&self) -> Option<SyntaxToken> {
20599 support::token(&self.syntax, SyntaxKind::USING_KW)
20600 }
20601}
20602
20603#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20604pub struct UsingOnClause {
20605 pub(crate) syntax: SyntaxNode,
20606}
20607impl UsingOnClause {
20608 #[inline]
20609 pub fn from_item(&self) -> Option<FromItem> {
20610 support::child(&self.syntax)
20611 }
20612 #[inline]
20613 pub fn on_clause(&self) -> Option<OnClause> {
20614 support::child(&self.syntax)
20615 }
20616 #[inline]
20617 pub fn using_token(&self) -> Option<SyntaxToken> {
20618 support::token(&self.syntax, SyntaxKind::USING_KW)
20619 }
20620}
20621
20622#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20623pub struct Vacuum {
20624 pub(crate) syntax: SyntaxNode,
20625}
20626impl Vacuum {
20627 #[inline]
20628 pub fn table_and_columns_list(&self) -> Option<TableAndColumnsList> {
20629 support::child(&self.syntax)
20630 }
20631 #[inline]
20632 pub fn vacuum_option_list(&self) -> Option<VacuumOptionList> {
20633 support::child(&self.syntax)
20634 }
20635 #[inline]
20636 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
20637 support::token(&self.syntax, SyntaxKind::SEMICOLON)
20638 }
20639 #[inline]
20640 pub fn analyse_token(&self) -> Option<SyntaxToken> {
20641 support::token(&self.syntax, SyntaxKind::ANALYSE_KW)
20642 }
20643 #[inline]
20644 pub fn analyze_token(&self) -> Option<SyntaxToken> {
20645 support::token(&self.syntax, SyntaxKind::ANALYZE_KW)
20646 }
20647 #[inline]
20648 pub fn freeze_token(&self) -> Option<SyntaxToken> {
20649 support::token(&self.syntax, SyntaxKind::FREEZE_KW)
20650 }
20651 #[inline]
20652 pub fn full_token(&self) -> Option<SyntaxToken> {
20653 support::token(&self.syntax, SyntaxKind::FULL_KW)
20654 }
20655 #[inline]
20656 pub fn vacuum_token(&self) -> Option<SyntaxToken> {
20657 support::token(&self.syntax, SyntaxKind::VACUUM_KW)
20658 }
20659 #[inline]
20660 pub fn verbose_token(&self) -> Option<SyntaxToken> {
20661 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
20662 }
20663}
20664
20665#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20666pub struct VacuumOption {
20667 pub(crate) syntax: SyntaxNode,
20668}
20669impl VacuumOption {
20670 #[inline]
20671 pub fn name(&self) -> Option<Name> {
20672 support::child(&self.syntax)
20673 }
20674 #[inline]
20675 pub fn vacuum_option_value(&self) -> Option<VacuumOptionValue> {
20676 support::child(&self.syntax)
20677 }
20678}
20679
20680#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20681pub struct VacuumOptionList {
20682 pub(crate) syntax: SyntaxNode,
20683}
20684impl VacuumOptionList {
20685 #[inline]
20686 pub fn vacuum_options(&self) -> AstChildren<VacuumOption> {
20687 support::children(&self.syntax)
20688 }
20689 #[inline]
20690 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
20691 support::token(&self.syntax, SyntaxKind::L_PAREN)
20692 }
20693 #[inline]
20694 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
20695 support::token(&self.syntax, SyntaxKind::R_PAREN)
20696 }
20697}
20698
20699#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20700pub struct VacuumOptionValue {
20701 pub(crate) syntax: SyntaxNode,
20702}
20703impl VacuumOptionValue {
20704 #[inline]
20705 pub fn literal(&self) -> Option<Literal> {
20706 support::child(&self.syntax)
20707 }
20708 #[inline]
20709 pub fn name(&self) -> Option<Name> {
20710 support::child(&self.syntax)
20711 }
20712}
20713
20714#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20715pub struct ValidateConstraint {
20716 pub(crate) syntax: SyntaxNode,
20717}
20718impl ValidateConstraint {
20719 #[inline]
20720 pub fn name_ref(&self) -> Option<NameRef> {
20721 support::child(&self.syntax)
20722 }
20723 #[inline]
20724 pub fn constraint_token(&self) -> Option<SyntaxToken> {
20725 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
20726 }
20727 #[inline]
20728 pub fn validate_token(&self) -> Option<SyntaxToken> {
20729 support::token(&self.syntax, SyntaxKind::VALIDATE_KW)
20730 }
20731}
20732
20733#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20734pub struct Values {
20735 pub(crate) syntax: SyntaxNode,
20736}
20737impl Values {
20738 #[inline]
20739 pub fn fetch_clause(&self) -> Option<FetchClause> {
20740 support::child(&self.syntax)
20741 }
20742 #[inline]
20743 pub fn limit_clause(&self) -> Option<LimitClause> {
20744 support::child(&self.syntax)
20745 }
20746 #[inline]
20747 pub fn offset_clause(&self) -> Option<OffsetClause> {
20748 support::child(&self.syntax)
20749 }
20750 #[inline]
20751 pub fn order_by_clause(&self) -> Option<OrderByClause> {
20752 support::child(&self.syntax)
20753 }
20754 #[inline]
20755 pub fn row_list(&self) -> Option<RowList> {
20756 support::child(&self.syntax)
20757 }
20758 #[inline]
20759 pub fn with_clause(&self) -> Option<WithClause> {
20760 support::child(&self.syntax)
20761 }
20762 #[inline]
20763 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
20764 support::token(&self.syntax, SyntaxKind::SEMICOLON)
20765 }
20766 #[inline]
20767 pub fn values_token(&self) -> Option<SyntaxToken> {
20768 support::token(&self.syntax, SyntaxKind::VALUES_KW)
20769 }
20770}
20771
20772#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20773pub struct Variant {
20774 pub(crate) syntax: SyntaxNode,
20775}
20776impl Variant {
20777 #[inline]
20778 pub fn literal(&self) -> Option<Literal> {
20779 support::child(&self.syntax)
20780 }
20781}
20782
20783#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20784pub struct VariantList {
20785 pub(crate) syntax: SyntaxNode,
20786}
20787impl VariantList {
20788 #[inline]
20789 pub fn variants(&self) -> AstChildren<Variant> {
20790 support::children(&self.syntax)
20791 }
20792 #[inline]
20793 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
20794 support::token(&self.syntax, SyntaxKind::L_PAREN)
20795 }
20796 #[inline]
20797 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
20798 support::token(&self.syntax, SyntaxKind::R_PAREN)
20799 }
20800}
20801
20802#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20803pub struct VertexPattern {
20804 pub(crate) syntax: SyntaxNode,
20805}
20806impl VertexPattern {
20807 #[inline]
20808 pub fn is_label(&self) -> Option<IsLabel> {
20809 support::child(&self.syntax)
20810 }
20811 #[inline]
20812 pub fn name(&self) -> Option<Name> {
20813 support::child(&self.syntax)
20814 }
20815 #[inline]
20816 pub fn where_clause(&self) -> Option<WhereClause> {
20817 support::child(&self.syntax)
20818 }
20819 #[inline]
20820 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
20821 support::token(&self.syntax, SyntaxKind::L_PAREN)
20822 }
20823 #[inline]
20824 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
20825 support::token(&self.syntax, SyntaxKind::R_PAREN)
20826 }
20827}
20828
20829#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20830pub struct VertexTableDef {
20831 pub(crate) syntax: SyntaxNode,
20832}
20833impl VertexTableDef {
20834 #[inline]
20835 pub fn column_list(&self) -> Option<ColumnList> {
20836 support::child(&self.syntax)
20837 }
20838 #[inline]
20839 pub fn element_table_label_and_properties(&self) -> Option<ElementTableLabelAndProperties> {
20840 support::child(&self.syntax)
20841 }
20842 #[inline]
20843 pub fn name(&self) -> Option<Name> {
20844 support::child(&self.syntax)
20845 }
20846 #[inline]
20847 pub fn path(&self) -> Option<Path> {
20848 support::child(&self.syntax)
20849 }
20850 #[inline]
20851 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
20852 support::token(&self.syntax, SyntaxKind::L_PAREN)
20853 }
20854 #[inline]
20855 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
20856 support::token(&self.syntax, SyntaxKind::R_PAREN)
20857 }
20858 #[inline]
20859 pub fn as_token(&self) -> Option<SyntaxToken> {
20860 support::token(&self.syntax, SyntaxKind::AS_KW)
20861 }
20862 #[inline]
20863 pub fn key_token(&self) -> Option<SyntaxToken> {
20864 support::token(&self.syntax, SyntaxKind::KEY_KW)
20865 }
20866}
20867
20868#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20869pub struct VertexTables {
20870 pub(crate) syntax: SyntaxNode,
20871}
20872impl VertexTables {
20873 #[inline]
20874 pub fn vertex_table_defs(&self) -> AstChildren<VertexTableDef> {
20875 support::children(&self.syntax)
20876 }
20877 #[inline]
20878 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
20879 support::token(&self.syntax, SyntaxKind::L_PAREN)
20880 }
20881 #[inline]
20882 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
20883 support::token(&self.syntax, SyntaxKind::R_PAREN)
20884 }
20885 #[inline]
20886 pub fn node_token(&self) -> Option<SyntaxToken> {
20887 support::token(&self.syntax, SyntaxKind::NODE_KW)
20888 }
20889 #[inline]
20890 pub fn tables_token(&self) -> Option<SyntaxToken> {
20891 support::token(&self.syntax, SyntaxKind::TABLES_KW)
20892 }
20893 #[inline]
20894 pub fn vertex_token(&self) -> Option<SyntaxToken> {
20895 support::token(&self.syntax, SyntaxKind::VERTEX_KW)
20896 }
20897}
20898
20899#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20900pub struct VolatilityFuncOption {
20901 pub(crate) syntax: SyntaxNode,
20902}
20903impl VolatilityFuncOption {
20904 #[inline]
20905 pub fn immutable_token(&self) -> Option<SyntaxToken> {
20906 support::token(&self.syntax, SyntaxKind::IMMUTABLE_KW)
20907 }
20908 #[inline]
20909 pub fn stable_token(&self) -> Option<SyntaxToken> {
20910 support::token(&self.syntax, SyntaxKind::STABLE_KW)
20911 }
20912 #[inline]
20913 pub fn volatile_token(&self) -> Option<SyntaxToken> {
20914 support::token(&self.syntax, SyntaxKind::VOLATILE_KW)
20915 }
20916}
20917
20918#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20919pub struct WhenClause {
20920 pub(crate) syntax: SyntaxNode,
20921}
20922impl WhenClause {
20923 #[inline]
20924 pub fn then_token(&self) -> Option<SyntaxToken> {
20925 support::token(&self.syntax, SyntaxKind::THEN_KW)
20926 }
20927 #[inline]
20928 pub fn when_token(&self) -> Option<SyntaxToken> {
20929 support::token(&self.syntax, SyntaxKind::WHEN_KW)
20930 }
20931}
20932
20933#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20934pub struct WhenClauseList {
20935 pub(crate) syntax: SyntaxNode,
20936}
20937impl WhenClauseList {
20938 #[inline]
20939 pub fn when_clause(&self) -> Option<WhenClause> {
20940 support::child(&self.syntax)
20941 }
20942 #[inline]
20943 pub fn when_clauses(&self) -> AstChildren<WhenClause> {
20944 support::children(&self.syntax)
20945 }
20946}
20947
20948#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20949pub struct WhenCondition {
20950 pub(crate) syntax: SyntaxNode,
20951}
20952impl WhenCondition {
20953 #[inline]
20954 pub fn expr(&self) -> Option<Expr> {
20955 support::child(&self.syntax)
20956 }
20957 #[inline]
20958 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
20959 support::token(&self.syntax, SyntaxKind::L_PAREN)
20960 }
20961 #[inline]
20962 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
20963 support::token(&self.syntax, SyntaxKind::R_PAREN)
20964 }
20965 #[inline]
20966 pub fn when_token(&self) -> Option<SyntaxToken> {
20967 support::token(&self.syntax, SyntaxKind::WHEN_KW)
20968 }
20969}
20970
20971#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20972pub struct WhereClause {
20973 pub(crate) syntax: SyntaxNode,
20974}
20975impl WhereClause {
20976 #[inline]
20977 pub fn expr(&self) -> Option<Expr> {
20978 support::child(&self.syntax)
20979 }
20980 #[inline]
20981 pub fn where_token(&self) -> Option<SyntaxToken> {
20982 support::token(&self.syntax, SyntaxKind::WHERE_KW)
20983 }
20984}
20985
20986#[derive(Debug, Clone, PartialEq, Eq, Hash)]
20987pub struct WhereConditionClause {
20988 pub(crate) syntax: SyntaxNode,
20989}
20990impl WhereConditionClause {
20991 #[inline]
20992 pub fn expr(&self) -> Option<Expr> {
20993 support::child(&self.syntax)
20994 }
20995 #[inline]
20996 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
20997 support::token(&self.syntax, SyntaxKind::L_PAREN)
20998 }
20999 #[inline]
21000 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
21001 support::token(&self.syntax, SyntaxKind::R_PAREN)
21002 }
21003 #[inline]
21004 pub fn where_token(&self) -> Option<SyntaxToken> {
21005 support::token(&self.syntax, SyntaxKind::WHERE_KW)
21006 }
21007}
21008
21009#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21010pub struct WhereCurrentOf {
21011 pub(crate) syntax: SyntaxNode,
21012}
21013impl WhereCurrentOf {
21014 #[inline]
21015 pub fn name_ref(&self) -> Option<NameRef> {
21016 support::child(&self.syntax)
21017 }
21018 #[inline]
21019 pub fn current_token(&self) -> Option<SyntaxToken> {
21020 support::token(&self.syntax, SyntaxKind::CURRENT_KW)
21021 }
21022 #[inline]
21023 pub fn of_token(&self) -> Option<SyntaxToken> {
21024 support::token(&self.syntax, SyntaxKind::OF_KW)
21025 }
21026 #[inline]
21027 pub fn where_token(&self) -> Option<SyntaxToken> {
21028 support::token(&self.syntax, SyntaxKind::WHERE_KW)
21029 }
21030}
21031
21032#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21033pub struct WindowClause {
21034 pub(crate) syntax: SyntaxNode,
21035}
21036impl WindowClause {
21037 #[inline]
21038 pub fn window_defs(&self) -> AstChildren<WindowDef> {
21039 support::children(&self.syntax)
21040 }
21041 #[inline]
21042 pub fn window_token(&self) -> Option<SyntaxToken> {
21043 support::token(&self.syntax, SyntaxKind::WINDOW_KW)
21044 }
21045}
21046
21047#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21048pub struct WindowDef {
21049 pub(crate) syntax: SyntaxNode,
21050}
21051impl WindowDef {
21052 #[inline]
21053 pub fn name(&self) -> Option<Name> {
21054 support::child(&self.syntax)
21055 }
21056 #[inline]
21057 pub fn window_spec(&self) -> Option<WindowSpec> {
21058 support::child(&self.syntax)
21059 }
21060 #[inline]
21061 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
21062 support::token(&self.syntax, SyntaxKind::L_PAREN)
21063 }
21064 #[inline]
21065 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
21066 support::token(&self.syntax, SyntaxKind::R_PAREN)
21067 }
21068 #[inline]
21069 pub fn as_token(&self) -> Option<SyntaxToken> {
21070 support::token(&self.syntax, SyntaxKind::AS_KW)
21071 }
21072}
21073
21074#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21075pub struct WindowFuncOption {
21076 pub(crate) syntax: SyntaxNode,
21077}
21078impl WindowFuncOption {
21079 #[inline]
21080 pub fn window_token(&self) -> Option<SyntaxToken> {
21081 support::token(&self.syntax, SyntaxKind::WINDOW_KW)
21082 }
21083}
21084
21085#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21086pub struct WindowSpec {
21087 pub(crate) syntax: SyntaxNode,
21088}
21089impl WindowSpec {
21090 #[inline]
21091 pub fn exprs(&self) -> AstChildren<Expr> {
21092 support::children(&self.syntax)
21093 }
21094 #[inline]
21095 pub fn frame_clause(&self) -> Option<FrameClause> {
21096 support::child(&self.syntax)
21097 }
21098 #[inline]
21099 pub fn order_by_clause(&self) -> Option<OrderByClause> {
21100 support::child(&self.syntax)
21101 }
21102 #[inline]
21103 pub fn by_token(&self) -> Option<SyntaxToken> {
21104 support::token(&self.syntax, SyntaxKind::BY_KW)
21105 }
21106 #[inline]
21107 pub fn ident_token(&self) -> Option<SyntaxToken> {
21108 support::token(&self.syntax, SyntaxKind::IDENT)
21109 }
21110 #[inline]
21111 pub fn partition_token(&self) -> Option<SyntaxToken> {
21112 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
21113 }
21114}
21115
21116#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21117pub struct WithCheckExprClause {
21118 pub(crate) syntax: SyntaxNode,
21119}
21120impl WithCheckExprClause {
21121 #[inline]
21122 pub fn expr(&self) -> Option<Expr> {
21123 support::child(&self.syntax)
21124 }
21125 #[inline]
21126 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
21127 support::token(&self.syntax, SyntaxKind::L_PAREN)
21128 }
21129 #[inline]
21130 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
21131 support::token(&self.syntax, SyntaxKind::R_PAREN)
21132 }
21133 #[inline]
21134 pub fn check_token(&self) -> Option<SyntaxToken> {
21135 support::token(&self.syntax, SyntaxKind::CHECK_KW)
21136 }
21137 #[inline]
21138 pub fn with_token(&self) -> Option<SyntaxToken> {
21139 support::token(&self.syntax, SyntaxKind::WITH_KW)
21140 }
21141}
21142
21143#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21144pub struct WithClause {
21145 pub(crate) syntax: SyntaxNode,
21146}
21147impl WithClause {
21148 #[inline]
21149 pub fn with_tables(&self) -> AstChildren<WithTable> {
21150 support::children(&self.syntax)
21151 }
21152 #[inline]
21153 pub fn recursive_token(&self) -> Option<SyntaxToken> {
21154 support::token(&self.syntax, SyntaxKind::RECURSIVE_KW)
21155 }
21156 #[inline]
21157 pub fn with_token(&self) -> Option<SyntaxToken> {
21158 support::token(&self.syntax, SyntaxKind::WITH_KW)
21159 }
21160}
21161
21162#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21163pub struct WithData {
21164 pub(crate) syntax: SyntaxNode,
21165}
21166impl WithData {
21167 #[inline]
21168 pub fn data_token(&self) -> Option<SyntaxToken> {
21169 support::token(&self.syntax, SyntaxKind::DATA_KW)
21170 }
21171 #[inline]
21172 pub fn with_token(&self) -> Option<SyntaxToken> {
21173 support::token(&self.syntax, SyntaxKind::WITH_KW)
21174 }
21175}
21176
21177#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21178pub struct WithNoData {
21179 pub(crate) syntax: SyntaxNode,
21180}
21181impl WithNoData {
21182 #[inline]
21183 pub fn data_token(&self) -> Option<SyntaxToken> {
21184 support::token(&self.syntax, SyntaxKind::DATA_KW)
21185 }
21186 #[inline]
21187 pub fn no_token(&self) -> Option<SyntaxToken> {
21188 support::token(&self.syntax, SyntaxKind::NO_KW)
21189 }
21190 #[inline]
21191 pub fn with_token(&self) -> Option<SyntaxToken> {
21192 support::token(&self.syntax, SyntaxKind::WITH_KW)
21193 }
21194}
21195
21196#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21197pub struct WithOptions {
21198 pub(crate) syntax: SyntaxNode,
21199}
21200impl WithOptions {
21201 #[inline]
21202 pub fn options_token(&self) -> Option<SyntaxToken> {
21203 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
21204 }
21205 #[inline]
21206 pub fn with_token(&self) -> Option<SyntaxToken> {
21207 support::token(&self.syntax, SyntaxKind::WITH_KW)
21208 }
21209}
21210
21211#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21212pub struct WithParams {
21213 pub(crate) syntax: SyntaxNode,
21214}
21215impl WithParams {
21216 #[inline]
21217 pub fn attribute_list(&self) -> Option<AttributeList> {
21218 support::child(&self.syntax)
21219 }
21220 #[inline]
21221 pub fn with_token(&self) -> Option<SyntaxToken> {
21222 support::token(&self.syntax, SyntaxKind::WITH_KW)
21223 }
21224}
21225
21226#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21227pub struct WithTable {
21228 pub(crate) syntax: SyntaxNode,
21229}
21230impl WithTable {
21231 #[inline]
21232 pub fn column_list(&self) -> Option<ColumnList> {
21233 support::child(&self.syntax)
21234 }
21235 #[inline]
21236 pub fn cycle_clause(&self) -> Option<CycleClause> {
21237 support::child(&self.syntax)
21238 }
21239 #[inline]
21240 pub fn materialized(&self) -> Option<Materialized> {
21241 support::child(&self.syntax)
21242 }
21243 #[inline]
21244 pub fn name(&self) -> Option<Name> {
21245 support::child(&self.syntax)
21246 }
21247 #[inline]
21248 pub fn not_materialized(&self) -> Option<NotMaterialized> {
21249 support::child(&self.syntax)
21250 }
21251 #[inline]
21252 pub fn query(&self) -> Option<WithQuery> {
21253 support::child(&self.syntax)
21254 }
21255 #[inline]
21256 pub fn search_clause(&self) -> Option<SearchClause> {
21257 support::child(&self.syntax)
21258 }
21259 #[inline]
21260 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
21261 support::token(&self.syntax, SyntaxKind::L_PAREN)
21262 }
21263 #[inline]
21264 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
21265 support::token(&self.syntax, SyntaxKind::R_PAREN)
21266 }
21267 #[inline]
21268 pub fn as_token(&self) -> Option<SyntaxToken> {
21269 support::token(&self.syntax, SyntaxKind::AS_KW)
21270 }
21271}
21272
21273#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21274pub struct WithTimezone {
21275 pub(crate) syntax: SyntaxNode,
21276}
21277impl WithTimezone {
21278 #[inline]
21279 pub fn time_token(&self) -> Option<SyntaxToken> {
21280 support::token(&self.syntax, SyntaxKind::TIME_KW)
21281 }
21282 #[inline]
21283 pub fn with_token(&self) -> Option<SyntaxToken> {
21284 support::token(&self.syntax, SyntaxKind::WITH_KW)
21285 }
21286 #[inline]
21287 pub fn zone_token(&self) -> Option<SyntaxToken> {
21288 support::token(&self.syntax, SyntaxKind::ZONE_KW)
21289 }
21290}
21291
21292#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21293pub struct WithinClause {
21294 pub(crate) syntax: SyntaxNode,
21295}
21296impl WithinClause {
21297 #[inline]
21298 pub fn order_by_clause(&self) -> Option<OrderByClause> {
21299 support::child(&self.syntax)
21300 }
21301 #[inline]
21302 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
21303 support::token(&self.syntax, SyntaxKind::L_PAREN)
21304 }
21305 #[inline]
21306 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
21307 support::token(&self.syntax, SyntaxKind::R_PAREN)
21308 }
21309 #[inline]
21310 pub fn group_token(&self) -> Option<SyntaxToken> {
21311 support::token(&self.syntax, SyntaxKind::GROUP_KW)
21312 }
21313 #[inline]
21314 pub fn within_token(&self) -> Option<SyntaxToken> {
21315 support::token(&self.syntax, SyntaxKind::WITHIN_KW)
21316 }
21317}
21318
21319#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21320pub struct WithoutOids {
21321 pub(crate) syntax: SyntaxNode,
21322}
21323impl WithoutOids {
21324 #[inline]
21325 pub fn oids_token(&self) -> Option<SyntaxToken> {
21326 support::token(&self.syntax, SyntaxKind::OIDS_KW)
21327 }
21328 #[inline]
21329 pub fn without_token(&self) -> Option<SyntaxToken> {
21330 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
21331 }
21332}
21333
21334#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21335pub struct WithoutTimezone {
21336 pub(crate) syntax: SyntaxNode,
21337}
21338impl WithoutTimezone {
21339 #[inline]
21340 pub fn time_token(&self) -> Option<SyntaxToken> {
21341 support::token(&self.syntax, SyntaxKind::TIME_KW)
21342 }
21343 #[inline]
21344 pub fn without_token(&self) -> Option<SyntaxToken> {
21345 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
21346 }
21347 #[inline]
21348 pub fn zone_token(&self) -> Option<SyntaxToken> {
21349 support::token(&self.syntax, SyntaxKind::ZONE_KW)
21350 }
21351}
21352
21353#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21354pub struct XmlColumnOption {
21355 pub(crate) syntax: SyntaxNode,
21356}
21357impl XmlColumnOption {
21358 #[inline]
21359 pub fn expr(&self) -> Option<Expr> {
21360 support::child(&self.syntax)
21361 }
21362 #[inline]
21363 pub fn default_token(&self) -> Option<SyntaxToken> {
21364 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
21365 }
21366 #[inline]
21367 pub fn ident_token(&self) -> Option<SyntaxToken> {
21368 support::token(&self.syntax, SyntaxKind::IDENT)
21369 }
21370 #[inline]
21371 pub fn not_token(&self) -> Option<SyntaxToken> {
21372 support::token(&self.syntax, SyntaxKind::NOT_KW)
21373 }
21374 #[inline]
21375 pub fn null_token(&self) -> Option<SyntaxToken> {
21376 support::token(&self.syntax, SyntaxKind::NULL_KW)
21377 }
21378 #[inline]
21379 pub fn path_token(&self) -> Option<SyntaxToken> {
21380 support::token(&self.syntax, SyntaxKind::PATH_KW)
21381 }
21382}
21383
21384#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21385pub struct XmlColumnOptionList {
21386 pub(crate) syntax: SyntaxNode,
21387}
21388impl XmlColumnOptionList {
21389 #[inline]
21390 pub fn xml_column_option(&self) -> Option<XmlColumnOption> {
21391 support::child(&self.syntax)
21392 }
21393 #[inline]
21394 pub fn xml_column_options(&self) -> AstChildren<XmlColumnOption> {
21395 support::children(&self.syntax)
21396 }
21397}
21398
21399#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21400pub struct XmlElementFn {
21401 pub(crate) syntax: SyntaxNode,
21402}
21403impl XmlElementFn {
21404 #[inline]
21405 pub fn expr_as_name_list(&self) -> Option<ExprAsNameList> {
21406 support::child(&self.syntax)
21407 }
21408 #[inline]
21409 pub fn exprs(&self) -> AstChildren<Expr> {
21410 support::children(&self.syntax)
21411 }
21412 #[inline]
21413 pub fn name(&self) -> Option<Name> {
21414 support::child(&self.syntax)
21415 }
21416 #[inline]
21417 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
21418 support::token(&self.syntax, SyntaxKind::L_PAREN)
21419 }
21420 #[inline]
21421 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
21422 support::token(&self.syntax, SyntaxKind::R_PAREN)
21423 }
21424 #[inline]
21425 pub fn comma_token(&self) -> Option<SyntaxToken> {
21426 support::token(&self.syntax, SyntaxKind::COMMA)
21427 }
21428 #[inline]
21429 pub fn name_token(&self) -> Option<SyntaxToken> {
21430 support::token(&self.syntax, SyntaxKind::NAME_KW)
21431 }
21432 #[inline]
21433 pub fn xmlattributes_token(&self) -> Option<SyntaxToken> {
21434 support::token(&self.syntax, SyntaxKind::XMLATTRIBUTES_KW)
21435 }
21436 #[inline]
21437 pub fn xmlelement_token(&self) -> Option<SyntaxToken> {
21438 support::token(&self.syntax, SyntaxKind::XMLELEMENT_KW)
21439 }
21440}
21441
21442#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21443pub struct XmlExistsFn {
21444 pub(crate) syntax: SyntaxNode,
21445}
21446impl XmlExistsFn {
21447 #[inline]
21448 pub fn expr(&self) -> Option<Expr> {
21449 support::child(&self.syntax)
21450 }
21451 #[inline]
21452 pub fn xml_passing_mech(&self) -> Option<XmlPassingMech> {
21453 support::child(&self.syntax)
21454 }
21455 #[inline]
21456 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
21457 support::token(&self.syntax, SyntaxKind::L_PAREN)
21458 }
21459 #[inline]
21460 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
21461 support::token(&self.syntax, SyntaxKind::R_PAREN)
21462 }
21463 #[inline]
21464 pub fn passing_token(&self) -> Option<SyntaxToken> {
21465 support::token(&self.syntax, SyntaxKind::PASSING_KW)
21466 }
21467 #[inline]
21468 pub fn xmlexists_token(&self) -> Option<SyntaxToken> {
21469 support::token(&self.syntax, SyntaxKind::XMLEXISTS_KW)
21470 }
21471}
21472
21473#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21474pub struct XmlForestFn {
21475 pub(crate) syntax: SyntaxNode,
21476}
21477impl XmlForestFn {
21478 #[inline]
21479 pub fn expr_as_name_list(&self) -> Option<ExprAsNameList> {
21480 support::child(&self.syntax)
21481 }
21482 #[inline]
21483 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
21484 support::token(&self.syntax, SyntaxKind::L_PAREN)
21485 }
21486 #[inline]
21487 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
21488 support::token(&self.syntax, SyntaxKind::R_PAREN)
21489 }
21490 #[inline]
21491 pub fn xmlforest_token(&self) -> Option<SyntaxToken> {
21492 support::token(&self.syntax, SyntaxKind::XMLFOREST_KW)
21493 }
21494}
21495
21496#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21497pub struct XmlNamespace {
21498 pub(crate) syntax: SyntaxNode,
21499}
21500impl XmlNamespace {
21501 #[inline]
21502 pub fn expr(&self) -> Option<Expr> {
21503 support::child(&self.syntax)
21504 }
21505 #[inline]
21506 pub fn name(&self) -> Option<Name> {
21507 support::child(&self.syntax)
21508 }
21509 #[inline]
21510 pub fn as_token(&self) -> Option<SyntaxToken> {
21511 support::token(&self.syntax, SyntaxKind::AS_KW)
21512 }
21513 #[inline]
21514 pub fn default_token(&self) -> Option<SyntaxToken> {
21515 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
21516 }
21517}
21518
21519#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21520pub struct XmlNamespaceList {
21521 pub(crate) syntax: SyntaxNode,
21522}
21523impl XmlNamespaceList {
21524 #[inline]
21525 pub fn xml_namespaces(&self) -> AstChildren<XmlNamespace> {
21526 support::children(&self.syntax)
21527 }
21528 #[inline]
21529 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
21530 support::token(&self.syntax, SyntaxKind::L_PAREN)
21531 }
21532 #[inline]
21533 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
21534 support::token(&self.syntax, SyntaxKind::R_PAREN)
21535 }
21536}
21537
21538#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21539pub struct XmlParseFn {
21540 pub(crate) syntax: SyntaxNode,
21541}
21542impl XmlParseFn {
21543 #[inline]
21544 pub fn expr(&self) -> Option<Expr> {
21545 support::child(&self.syntax)
21546 }
21547 #[inline]
21548 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
21549 support::token(&self.syntax, SyntaxKind::L_PAREN)
21550 }
21551 #[inline]
21552 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
21553 support::token(&self.syntax, SyntaxKind::R_PAREN)
21554 }
21555 #[inline]
21556 pub fn content_token(&self) -> Option<SyntaxToken> {
21557 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
21558 }
21559 #[inline]
21560 pub fn document_token(&self) -> Option<SyntaxToken> {
21561 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
21562 }
21563 #[inline]
21564 pub fn preserve_token(&self) -> Option<SyntaxToken> {
21565 support::token(&self.syntax, SyntaxKind::PRESERVE_KW)
21566 }
21567 #[inline]
21568 pub fn strip_token(&self) -> Option<SyntaxToken> {
21569 support::token(&self.syntax, SyntaxKind::STRIP_KW)
21570 }
21571 #[inline]
21572 pub fn whitespace_token(&self) -> Option<SyntaxToken> {
21573 support::token(&self.syntax, SyntaxKind::WHITESPACE_KW)
21574 }
21575 #[inline]
21576 pub fn xmlparse_token(&self) -> Option<SyntaxToken> {
21577 support::token(&self.syntax, SyntaxKind::XMLPARSE_KW)
21578 }
21579}
21580
21581#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21582pub struct XmlPassingMech {
21583 pub(crate) syntax: SyntaxNode,
21584}
21585impl XmlPassingMech {
21586 #[inline]
21587 pub fn by_token(&self) -> Option<SyntaxToken> {
21588 support::token(&self.syntax, SyntaxKind::BY_KW)
21589 }
21590 #[inline]
21591 pub fn ref_token(&self) -> Option<SyntaxToken> {
21592 support::token(&self.syntax, SyntaxKind::REF_KW)
21593 }
21594 #[inline]
21595 pub fn value_token(&self) -> Option<SyntaxToken> {
21596 support::token(&self.syntax, SyntaxKind::VALUE_KW)
21597 }
21598}
21599
21600#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21601pub struct XmlPiFn {
21602 pub(crate) syntax: SyntaxNode,
21603}
21604impl XmlPiFn {
21605 #[inline]
21606 pub fn expr(&self) -> Option<Expr> {
21607 support::child(&self.syntax)
21608 }
21609 #[inline]
21610 pub fn name(&self) -> Option<Name> {
21611 support::child(&self.syntax)
21612 }
21613 #[inline]
21614 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
21615 support::token(&self.syntax, SyntaxKind::L_PAREN)
21616 }
21617 #[inline]
21618 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
21619 support::token(&self.syntax, SyntaxKind::R_PAREN)
21620 }
21621 #[inline]
21622 pub fn comma_token(&self) -> Option<SyntaxToken> {
21623 support::token(&self.syntax, SyntaxKind::COMMA)
21624 }
21625 #[inline]
21626 pub fn name_token(&self) -> Option<SyntaxToken> {
21627 support::token(&self.syntax, SyntaxKind::NAME_KW)
21628 }
21629 #[inline]
21630 pub fn xmlpi_token(&self) -> Option<SyntaxToken> {
21631 support::token(&self.syntax, SyntaxKind::XMLPI_KW)
21632 }
21633}
21634
21635#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21636pub struct XmlRootFn {
21637 pub(crate) syntax: SyntaxNode,
21638}
21639impl XmlRootFn {
21640 #[inline]
21641 pub fn expr(&self) -> Option<Expr> {
21642 support::child(&self.syntax)
21643 }
21644 #[inline]
21645 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
21646 support::token(&self.syntax, SyntaxKind::L_PAREN)
21647 }
21648 #[inline]
21649 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
21650 support::token(&self.syntax, SyntaxKind::R_PAREN)
21651 }
21652 #[inline]
21653 pub fn comma_token(&self) -> Option<SyntaxToken> {
21654 support::token(&self.syntax, SyntaxKind::COMMA)
21655 }
21656 #[inline]
21657 pub fn no_token(&self) -> Option<SyntaxToken> {
21658 support::token(&self.syntax, SyntaxKind::NO_KW)
21659 }
21660 #[inline]
21661 pub fn standalone_token(&self) -> Option<SyntaxToken> {
21662 support::token(&self.syntax, SyntaxKind::STANDALONE_KW)
21663 }
21664 #[inline]
21665 pub fn value_token(&self) -> Option<SyntaxToken> {
21666 support::token(&self.syntax, SyntaxKind::VALUE_KW)
21667 }
21668 #[inline]
21669 pub fn version_token(&self) -> Option<SyntaxToken> {
21670 support::token(&self.syntax, SyntaxKind::VERSION_KW)
21671 }
21672 #[inline]
21673 pub fn xmlroot_token(&self) -> Option<SyntaxToken> {
21674 support::token(&self.syntax, SyntaxKind::XMLROOT_KW)
21675 }
21676 #[inline]
21677 pub fn yes_token(&self) -> Option<SyntaxToken> {
21678 support::token(&self.syntax, SyntaxKind::YES_KW)
21679 }
21680}
21681
21682#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21683pub struct XmlRowPassingClause {
21684 pub(crate) syntax: SyntaxNode,
21685}
21686impl XmlRowPassingClause {
21687 #[inline]
21688 pub fn expr(&self) -> Option<Expr> {
21689 support::child(&self.syntax)
21690 }
21691 #[inline]
21692 pub fn xml_passing_mech(&self) -> Option<XmlPassingMech> {
21693 support::child(&self.syntax)
21694 }
21695 #[inline]
21696 pub fn passing_token(&self) -> Option<SyntaxToken> {
21697 support::token(&self.syntax, SyntaxKind::PASSING_KW)
21698 }
21699}
21700
21701#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21702pub struct XmlSerializeFn {
21703 pub(crate) syntax: SyntaxNode,
21704}
21705impl XmlSerializeFn {
21706 #[inline]
21707 pub fn expr(&self) -> Option<Expr> {
21708 support::child(&self.syntax)
21709 }
21710 #[inline]
21711 pub fn ty(&self) -> Option<Type> {
21712 support::child(&self.syntax)
21713 }
21714 #[inline]
21715 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
21716 support::token(&self.syntax, SyntaxKind::L_PAREN)
21717 }
21718 #[inline]
21719 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
21720 support::token(&self.syntax, SyntaxKind::R_PAREN)
21721 }
21722 #[inline]
21723 pub fn as_token(&self) -> Option<SyntaxToken> {
21724 support::token(&self.syntax, SyntaxKind::AS_KW)
21725 }
21726 #[inline]
21727 pub fn content_token(&self) -> Option<SyntaxToken> {
21728 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
21729 }
21730 #[inline]
21731 pub fn document_token(&self) -> Option<SyntaxToken> {
21732 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
21733 }
21734 #[inline]
21735 pub fn indent_token(&self) -> Option<SyntaxToken> {
21736 support::token(&self.syntax, SyntaxKind::INDENT_KW)
21737 }
21738 #[inline]
21739 pub fn no_token(&self) -> Option<SyntaxToken> {
21740 support::token(&self.syntax, SyntaxKind::NO_KW)
21741 }
21742 #[inline]
21743 pub fn xmlserialize_token(&self) -> Option<SyntaxToken> {
21744 support::token(&self.syntax, SyntaxKind::XMLSERIALIZE_KW)
21745 }
21746}
21747
21748#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21749pub struct XmlTable {
21750 pub(crate) syntax: SyntaxNode,
21751}
21752impl XmlTable {
21753 #[inline]
21754 pub fn xml_namespace_list(&self) -> Option<XmlNamespaceList> {
21755 support::child(&self.syntax)
21756 }
21757 #[inline]
21758 pub fn xml_row_passing_clause(&self) -> Option<XmlRowPassingClause> {
21759 support::child(&self.syntax)
21760 }
21761 #[inline]
21762 pub fn xml_table_column_list(&self) -> Option<XmlTableColumnList> {
21763 support::child(&self.syntax)
21764 }
21765 #[inline]
21766 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
21767 support::token(&self.syntax, SyntaxKind::L_PAREN)
21768 }
21769 #[inline]
21770 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
21771 support::token(&self.syntax, SyntaxKind::R_PAREN)
21772 }
21773 #[inline]
21774 pub fn comma_token(&self) -> Option<SyntaxToken> {
21775 support::token(&self.syntax, SyntaxKind::COMMA)
21776 }
21777 #[inline]
21778 pub fn xmlnamespaces_token(&self) -> Option<SyntaxToken> {
21779 support::token(&self.syntax, SyntaxKind::XMLNAMESPACES_KW)
21780 }
21781 #[inline]
21782 pub fn xmltable_token(&self) -> Option<SyntaxToken> {
21783 support::token(&self.syntax, SyntaxKind::XMLTABLE_KW)
21784 }
21785}
21786
21787#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21788pub struct XmlTableColumn {
21789 pub(crate) syntax: SyntaxNode,
21790}
21791impl XmlTableColumn {
21792 #[inline]
21793 pub fn name(&self) -> Option<Name> {
21794 support::child(&self.syntax)
21795 }
21796 #[inline]
21797 pub fn ty(&self) -> Option<Type> {
21798 support::child(&self.syntax)
21799 }
21800 #[inline]
21801 pub fn xml_column_option_list(&self) -> Option<XmlColumnOptionList> {
21802 support::child(&self.syntax)
21803 }
21804 #[inline]
21805 pub fn for_token(&self) -> Option<SyntaxToken> {
21806 support::token(&self.syntax, SyntaxKind::FOR_KW)
21807 }
21808 #[inline]
21809 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
21810 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
21811 }
21812}
21813
21814#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21815pub struct XmlTableColumnList {
21816 pub(crate) syntax: SyntaxNode,
21817}
21818impl XmlTableColumnList {
21819 #[inline]
21820 pub fn xml_table_columns(&self) -> AstChildren<XmlTableColumn> {
21821 support::children(&self.syntax)
21822 }
21823 #[inline]
21824 pub fn columns_token(&self) -> Option<SyntaxToken> {
21825 support::token(&self.syntax, SyntaxKind::COLUMNS_KW)
21826 }
21827}
21828
21829#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21830pub enum AlterColumnOption {
21831 AddGenerated(AddGenerated),
21832 DropDefault(DropDefault),
21833 DropExpression(DropExpression),
21834 DropIdentity(DropIdentity),
21835 DropNotNull(DropNotNull),
21836 Inherit(Inherit),
21837 NoInherit(NoInherit),
21838 ResetOptions(ResetOptions),
21839 Restart(Restart),
21840 SetCompression(SetCompression),
21841 SetDefault(SetDefault),
21842 SetExpression(SetExpression),
21843 SetGenerated(SetGenerated),
21844 SetGeneratedOptions(SetGeneratedOptions),
21845 SetNotNull(SetNotNull),
21846 SetOptions(SetOptions),
21847 SetOptionsList(SetOptionsList),
21848 SetSequenceOption(SetSequenceOption),
21849 SetStatistics(SetStatistics),
21850 SetStorage(SetStorage),
21851 SetType(SetType),
21852}
21853
21854#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21855pub enum AlterDomainAction {
21856 AddConstraint(AddConstraint),
21857 DropConstraint(DropConstraint),
21858 DropDefault(DropDefault),
21859 DropNotNull(DropNotNull),
21860 OwnerTo(OwnerTo),
21861 RenameConstraint(RenameConstraint),
21862 RenameTo(RenameTo),
21863 SetDefault(SetDefault),
21864 SetNotNull(SetNotNull),
21865 SetSchema(SetSchema),
21866 ValidateConstraint(ValidateConstraint),
21867}
21868
21869#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21870pub enum AlterIndexAction {
21871 AlterSetStatistics(AlterSetStatistics),
21872 AttachPartition(AttachPartition),
21873 DependsOnExtension(DependsOnExtension),
21874 NoDependsOnExtension(NoDependsOnExtension),
21875 RenameTo(RenameTo),
21876 ResetOptions(ResetOptions),
21877 SetOptions(SetOptions),
21878 SetTablespace(SetTablespace),
21879}
21880
21881#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21882pub enum AlterMaterializedViewAction {
21883 DependsOnExtension(DependsOnExtension),
21884 NoDependsOnExtension(NoDependsOnExtension),
21885 RenameColumn(RenameColumn),
21886 RenameTo(RenameTo),
21887 SetSchema(SetSchema),
21888 AlterTableAction(AlterTableAction),
21889}
21890
21891#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21892pub enum AlterPropertyGraphAction {
21893 AddVertexEdgeLabelProperties(AddVertexEdgeLabelProperties),
21894 AddVertexEdgeTables(AddVertexEdgeTables),
21895 AlterVertexEdgeLabels(AlterVertexEdgeLabels),
21896 DropEdgeTables(DropEdgeTables),
21897 DropVertexEdgeLabel(DropVertexEdgeLabel),
21898 DropVertexEdgeLabelProperties(DropVertexEdgeLabelProperties),
21899 DropVertexTables(DropVertexTables),
21900 OwnerTo(OwnerTo),
21901 RenameTo(RenameTo),
21902 SetSchema(SetSchema),
21903}
21904
21905#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21906pub enum AlterTableAction {
21907 AddColumn(AddColumn),
21908 AddConstraint(AddConstraint),
21909 AlterColumn(AlterColumn),
21910 AlterConstraint(AlterConstraint),
21911 AttachPartition(AttachPartition),
21912 ClusterOn(ClusterOn),
21913 DetachPartition(DetachPartition),
21914 DisableRls(DisableRls),
21915 DisableRule(DisableRule),
21916 DisableTrigger(DisableTrigger),
21917 DropColumn(DropColumn),
21918 DropConstraint(DropConstraint),
21919 EnableAlwaysRule(EnableAlwaysRule),
21920 EnableAlwaysTrigger(EnableAlwaysTrigger),
21921 EnableReplicaRule(EnableReplicaRule),
21922 EnableReplicaTrigger(EnableReplicaTrigger),
21923 EnableRls(EnableRls),
21924 EnableRule(EnableRule),
21925 EnableTrigger(EnableTrigger),
21926 ForceRls(ForceRls),
21927 InheritTable(InheritTable),
21928 MergePartitions(MergePartitions),
21929 NoForceRls(NoForceRls),
21930 NoInheritTable(NoInheritTable),
21931 NotOf(NotOf),
21932 OfType(OfType),
21933 OptionItemList(OptionItemList),
21934 OwnerTo(OwnerTo),
21935 RenameColumn(RenameColumn),
21936 RenameConstraint(RenameConstraint),
21937 RenameTo(RenameTo),
21938 ReplicaIdentity(ReplicaIdentity),
21939 ResetOptions(ResetOptions),
21940 SetAccessMethod(SetAccessMethod),
21941 SetLogged(SetLogged),
21942 SetOptions(SetOptions),
21943 SetSchema(SetSchema),
21944 SetTablespace(SetTablespace),
21945 SetUnlogged(SetUnlogged),
21946 SetWithoutCluster(SetWithoutCluster),
21947 SetWithoutOids(SetWithoutOids),
21948 SplitPartition(SplitPartition),
21949 ValidateConstraint(ValidateConstraint),
21950}
21951
21952#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21953pub enum AlterTypeAction {
21954 AddAttribute(AddAttribute),
21955 AlterAttribute(AlterAttribute),
21956 DropAttribute(DropAttribute),
21957}
21958
21959#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21960pub enum BeginFuncOption {
21961 ReturnFuncOption(ReturnFuncOption),
21962 Stmt(Stmt),
21963}
21964
21965#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21966pub enum ColumnConstraint {
21967 CheckConstraint(CheckConstraint),
21968 DefaultConstraint(DefaultConstraint),
21969 ExcludeConstraint(ExcludeConstraint),
21970 GeneratedConstraint(GeneratedConstraint),
21971 NotNullConstraint(NotNullConstraint),
21972 NullConstraint(NullConstraint),
21973 PrimaryKeyConstraint(PrimaryKeyConstraint),
21974 ReferencesConstraint(ReferencesConstraint),
21975 UniqueConstraint(UniqueConstraint),
21976}
21977
21978#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21979pub enum ConfigValue {
21980 Literal(Literal),
21981 NameRef(NameRef),
21982}
21983
21984#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21985pub enum ConflictAction {
21986 ConflictDoNothing(ConflictDoNothing),
21987 ConflictDoSelect(ConflictDoSelect),
21988 ConflictDoUpdateSet(ConflictDoUpdateSet),
21989}
21990
21991#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21992pub enum ConflictTarget {
21993 ConflictOnConstraint(ConflictOnConstraint),
21994 ConflictOnIndex(ConflictOnIndex),
21995}
21996
21997#[derive(Debug, Clone, PartialEq, Eq, Hash)]
21998pub enum Constraint {
21999 CheckConstraint(CheckConstraint),
22000 DefaultConstraint(DefaultConstraint),
22001 ForeignKeyConstraint(ForeignKeyConstraint),
22002 GeneratedConstraint(GeneratedConstraint),
22003 NotNullConstraint(NotNullConstraint),
22004 NullConstraint(NullConstraint),
22005 PrimaryKeyConstraint(PrimaryKeyConstraint),
22006 ReferencesConstraint(ReferencesConstraint),
22007 UniqueConstraint(UniqueConstraint),
22008}
22009
22010#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22011pub enum CreateTableAsQuery {
22012 Execute(Execute),
22013 SelectVariant(SelectVariant),
22014}
22015
22016#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22017pub enum ElementTableLabelAndProperties {
22018 LabelAndPropertiesList(LabelAndPropertiesList),
22019 ElementTableProperties(ElementTableProperties),
22020}
22021
22022#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22023pub enum ElementTableProperties {
22024 AllProperties(AllProperties),
22025 NoProperties(NoProperties),
22026 Properties(Properties),
22027}
22028
22029#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22030pub enum ExplainStmt {
22031 CompoundSelect(CompoundSelect),
22032 CreateMaterializedView(CreateMaterializedView),
22033 CreateTableAs(CreateTableAs),
22034 Declare(Declare),
22035 Delete(Delete),
22036 Execute(Execute),
22037 Insert(Insert),
22038 Merge(Merge),
22039 ParenSelect(ParenSelect),
22040 Select(Select),
22041 SelectInto(SelectInto),
22042 Table(Table),
22043 Update(Update),
22044 Values(Values),
22045}
22046
22047#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22048pub enum Expr {
22049 ArrayExpr(ArrayExpr),
22050 BetweenExpr(BetweenExpr),
22051 BinExpr(BinExpr),
22052 CallExpr(CallExpr),
22053 CaseExpr(CaseExpr),
22054 CastExpr(CastExpr),
22055 FieldExpr(FieldExpr),
22056 IndexExpr(IndexExpr),
22057 Literal(Literal),
22058 NameRef(NameRef),
22059 ParenExpr(ParenExpr),
22060 PostfixExpr(PostfixExpr),
22061 PrefixExpr(PrefixExpr),
22062 SliceExpr(SliceExpr),
22063 TupleExpr(TupleExpr),
22064}
22065
22066#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22067pub enum FrameBound {
22068 CurrentRow(CurrentRow),
22069 ExprFollowing(ExprFollowing),
22070 ExprPreceding(ExprPreceding),
22071 UnboundedFollowing(UnboundedFollowing),
22072 UnboundedPreceding(UnboundedPreceding),
22073}
22074
22075#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22076pub enum FuncOption {
22077 AsFuncOption(AsFuncOption),
22078 BeginFuncOptionList(BeginFuncOptionList),
22079 CostFuncOption(CostFuncOption),
22080 LanguageFuncOption(LanguageFuncOption),
22081 LeakproofFuncOption(LeakproofFuncOption),
22082 ParallelFuncOption(ParallelFuncOption),
22083 ResetFuncOption(ResetFuncOption),
22084 ReturnFuncOption(ReturnFuncOption),
22085 RowsFuncOption(RowsFuncOption),
22086 SecurityFuncOption(SecurityFuncOption),
22087 SetFuncOption(SetFuncOption),
22088 StrictFuncOption(StrictFuncOption),
22089 SupportFuncOption(SupportFuncOption),
22090 TransformFuncOption(TransformFuncOption),
22091 VolatilityFuncOption(VolatilityFuncOption),
22092 WindowFuncOption(WindowFuncOption),
22093}
22094
22095#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22096pub enum GroupBy {
22097 GroupingCube(GroupingCube),
22098 GroupingExpr(GroupingExpr),
22099 GroupingRollup(GroupingRollup),
22100 GroupingSets(GroupingSets),
22101}
22102
22103#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22104pub enum JoinType {
22105 JoinCross(JoinCross),
22106 JoinFull(JoinFull),
22107 JoinInner(JoinInner),
22108 JoinLeft(JoinLeft),
22109 JoinRight(JoinRight),
22110}
22111
22112#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22113pub enum JsonBehavior {
22114 JsonBehaviorDefault(JsonBehaviorDefault),
22115 JsonBehaviorEmptyArray(JsonBehaviorEmptyArray),
22116 JsonBehaviorEmptyObject(JsonBehaviorEmptyObject),
22117 JsonBehaviorError(JsonBehaviorError),
22118 JsonBehaviorFalse(JsonBehaviorFalse),
22119 JsonBehaviorNull(JsonBehaviorNull),
22120 JsonBehaviorTrue(JsonBehaviorTrue),
22121 JsonBehaviorUnknown(JsonBehaviorUnknown),
22122}
22123
22124#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22125pub enum LockMode {
22126 AccessExclusive(AccessExclusive),
22127 AccessShare(AccessShare),
22128 Exclusive(Exclusive),
22129 RowExclusive(RowExclusive),
22130 RowShare(RowShare),
22131 Share(Share),
22132 ShareRowExclusive(ShareRowExclusive),
22133 ShareUpdateExclusive(ShareUpdateExclusive),
22134}
22135
22136#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22137pub enum MatchType {
22138 MatchFull(MatchFull),
22139 MatchPartial(MatchPartial),
22140 MatchSimple(MatchSimple),
22141}
22142
22143#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22144pub enum MergeAction {
22145 MergeDelete(MergeDelete),
22146 MergeDoNothing(MergeDoNothing),
22147 MergeInsert(MergeInsert),
22148 MergeUpdate(MergeUpdate),
22149}
22150
22151#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22152pub enum MergeWhenClause {
22153 MergeWhenMatched(MergeWhenMatched),
22154 MergeWhenNotMatchedSource(MergeWhenNotMatchedSource),
22155 MergeWhenNotMatchedTarget(MergeWhenNotMatchedTarget),
22156}
22157
22158#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22159pub enum OnCommitAction {
22160 DeleteRows(DeleteRows),
22161 Drop(Drop),
22162 PreserveRows(PreserveRows),
22163}
22164
22165#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22166pub enum ParamMode {
22167 ParamIn(ParamIn),
22168 ParamInOut(ParamInOut),
22169 ParamOut(ParamOut),
22170 ParamVariadic(ParamVariadic),
22171}
22172
22173#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22174pub enum PartitionType {
22175 PartitionDefault(PartitionDefault),
22176 PartitionForValuesFrom(PartitionForValuesFrom),
22177 PartitionForValuesIn(PartitionForValuesIn),
22178 PartitionForValuesWith(PartitionForValuesWith),
22179}
22180
22181#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22182pub enum PathPrimary {
22183 EdgeAny(EdgeAny),
22184 EdgeLeft(EdgeLeft),
22185 EdgeRight(EdgeRight),
22186 ParenGraphPattern(ParenGraphPattern),
22187 VertexPattern(VertexPattern),
22188}
22189
22190#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22191pub enum Persistence {
22192 Temp(Temp),
22193 Unlogged(Unlogged),
22194}
22195
22196#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22197pub enum PreparableStmt {
22198 CompoundSelect(CompoundSelect),
22199 Delete(Delete),
22200 Insert(Insert),
22201 Merge(Merge),
22202 Select(Select),
22203 SelectInto(SelectInto),
22204 Table(Table),
22205 Update(Update),
22206 Values(Values),
22207}
22208
22209#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22210pub enum RefAction {
22211 Cascade(Cascade),
22212 NoAction(NoAction),
22213 Restrict(Restrict),
22214 SetDefaultColumns(SetDefaultColumns),
22215 SetNullColumns(SetNullColumns),
22216}
22217
22218#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22219pub enum RuleAction {
22220 Nothing(Nothing),
22221 RuleStmtList(RuleStmtList),
22222 RuleStmt(RuleStmt),
22223}
22224
22225#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22226pub enum RuleStmt {
22227 Delete(Delete),
22228 Insert(Insert),
22229 Notify(Notify),
22230 Update(Update),
22231 SelectVariant(SelectVariant),
22232}
22233
22234#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22235pub enum SchemaElement {
22236 CreateIndex(CreateIndex),
22237 CreateSequence(CreateSequence),
22238 CreateTable(CreateTable),
22239 CreateTrigger(CreateTrigger),
22240 CreateView(CreateView),
22241 Grant(Grant),
22242}
22243
22244#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22245pub enum SelectVariant {
22246 CompoundSelect(CompoundSelect),
22247 ParenSelect(ParenSelect),
22248 Select(Select),
22249 SelectInto(SelectInto),
22250 Table(Table),
22251 Values(Values),
22252}
22253
22254#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22255pub enum SetColumn {
22256 SetMultipleColumns(SetMultipleColumns),
22257 SetSingleColumn(SetSingleColumn),
22258}
22259
22260#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22261pub enum Stmt {
22262 AlterAggregate(AlterAggregate),
22263 AlterCollation(AlterCollation),
22264 AlterConversion(AlterConversion),
22265 AlterDatabase(AlterDatabase),
22266 AlterDefaultPrivileges(AlterDefaultPrivileges),
22267 AlterDomain(AlterDomain),
22268 AlterEventTrigger(AlterEventTrigger),
22269 AlterExtension(AlterExtension),
22270 AlterForeignDataWrapper(AlterForeignDataWrapper),
22271 AlterForeignTable(AlterForeignTable),
22272 AlterFunction(AlterFunction),
22273 AlterGroup(AlterGroup),
22274 AlterIndex(AlterIndex),
22275 AlterLanguage(AlterLanguage),
22276 AlterLargeObject(AlterLargeObject),
22277 AlterMaterializedView(AlterMaterializedView),
22278 AlterOperator(AlterOperator),
22279 AlterOperatorClass(AlterOperatorClass),
22280 AlterOperatorFamily(AlterOperatorFamily),
22281 AlterPolicy(AlterPolicy),
22282 AlterProcedure(AlterProcedure),
22283 AlterPropertyGraph(AlterPropertyGraph),
22284 AlterPublication(AlterPublication),
22285 AlterRole(AlterRole),
22286 AlterRoutine(AlterRoutine),
22287 AlterRule(AlterRule),
22288 AlterSchema(AlterSchema),
22289 AlterSequence(AlterSequence),
22290 AlterServer(AlterServer),
22291 AlterStatistics(AlterStatistics),
22292 AlterSubscription(AlterSubscription),
22293 AlterSystem(AlterSystem),
22294 AlterTable(AlterTable),
22295 AlterTablespace(AlterTablespace),
22296 AlterTextSearchConfiguration(AlterTextSearchConfiguration),
22297 AlterTextSearchDictionary(AlterTextSearchDictionary),
22298 AlterTextSearchParser(AlterTextSearchParser),
22299 AlterTextSearchTemplate(AlterTextSearchTemplate),
22300 AlterTrigger(AlterTrigger),
22301 AlterType(AlterType),
22302 AlterUser(AlterUser),
22303 AlterUserMapping(AlterUserMapping),
22304 AlterView(AlterView),
22305 Analyze(Analyze),
22306 Begin(Begin),
22307 Call(Call),
22308 Checkpoint(Checkpoint),
22309 Close(Close),
22310 Cluster(Cluster),
22311 CommentOn(CommentOn),
22312 Commit(Commit),
22313 Copy(Copy),
22314 CreateAccessMethod(CreateAccessMethod),
22315 CreateAggregate(CreateAggregate),
22316 CreateCast(CreateCast),
22317 CreateCollation(CreateCollation),
22318 CreateConversion(CreateConversion),
22319 CreateDatabase(CreateDatabase),
22320 CreateDomain(CreateDomain),
22321 CreateEventTrigger(CreateEventTrigger),
22322 CreateExtension(CreateExtension),
22323 CreateForeignDataWrapper(CreateForeignDataWrapper),
22324 CreateForeignTable(CreateForeignTable),
22325 CreateFunction(CreateFunction),
22326 CreateGroup(CreateGroup),
22327 CreateIndex(CreateIndex),
22328 CreateLanguage(CreateLanguage),
22329 CreateMaterializedView(CreateMaterializedView),
22330 CreateOperator(CreateOperator),
22331 CreateOperatorClass(CreateOperatorClass),
22332 CreateOperatorFamily(CreateOperatorFamily),
22333 CreatePolicy(CreatePolicy),
22334 CreateProcedure(CreateProcedure),
22335 CreatePropertyGraph(CreatePropertyGraph),
22336 CreatePublication(CreatePublication),
22337 CreateRole(CreateRole),
22338 CreateRule(CreateRule),
22339 CreateSchema(CreateSchema),
22340 CreateSequence(CreateSequence),
22341 CreateServer(CreateServer),
22342 CreateStatistics(CreateStatistics),
22343 CreateSubscription(CreateSubscription),
22344 CreateTable(CreateTable),
22345 CreateTableAs(CreateTableAs),
22346 CreateTablespace(CreateTablespace),
22347 CreateTextSearchConfiguration(CreateTextSearchConfiguration),
22348 CreateTextSearchDictionary(CreateTextSearchDictionary),
22349 CreateTextSearchParser(CreateTextSearchParser),
22350 CreateTextSearchTemplate(CreateTextSearchTemplate),
22351 CreateTransform(CreateTransform),
22352 CreateTrigger(CreateTrigger),
22353 CreateType(CreateType),
22354 CreateUser(CreateUser),
22355 CreateUserMapping(CreateUserMapping),
22356 CreateView(CreateView),
22357 Deallocate(Deallocate),
22358 Declare(Declare),
22359 Delete(Delete),
22360 Discard(Discard),
22361 Do(Do),
22362 DropAccessMethod(DropAccessMethod),
22363 DropAggregate(DropAggregate),
22364 DropCast(DropCast),
22365 DropCollation(DropCollation),
22366 DropConversion(DropConversion),
22367 DropDatabase(DropDatabase),
22368 DropDomain(DropDomain),
22369 DropEventTrigger(DropEventTrigger),
22370 DropExtension(DropExtension),
22371 DropForeignDataWrapper(DropForeignDataWrapper),
22372 DropForeignTable(DropForeignTable),
22373 DropFunction(DropFunction),
22374 DropGroup(DropGroup),
22375 DropIndex(DropIndex),
22376 DropLanguage(DropLanguage),
22377 DropMaterializedView(DropMaterializedView),
22378 DropOperator(DropOperator),
22379 DropOperatorClass(DropOperatorClass),
22380 DropOperatorFamily(DropOperatorFamily),
22381 DropOwned(DropOwned),
22382 DropPolicy(DropPolicy),
22383 DropProcedure(DropProcedure),
22384 DropPropertyGraph(DropPropertyGraph),
22385 DropPublication(DropPublication),
22386 DropRole(DropRole),
22387 DropRoutine(DropRoutine),
22388 DropRule(DropRule),
22389 DropSchema(DropSchema),
22390 DropSequence(DropSequence),
22391 DropServer(DropServer),
22392 DropStatistics(DropStatistics),
22393 DropSubscription(DropSubscription),
22394 DropTable(DropTable),
22395 DropTablespace(DropTablespace),
22396 DropTextSearchConfig(DropTextSearchConfig),
22397 DropTextSearchDict(DropTextSearchDict),
22398 DropTextSearchParser(DropTextSearchParser),
22399 DropTextSearchTemplate(DropTextSearchTemplate),
22400 DropTransform(DropTransform),
22401 DropTrigger(DropTrigger),
22402 DropType(DropType),
22403 DropUser(DropUser),
22404 DropUserMapping(DropUserMapping),
22405 DropView(DropView),
22406 EmptyStmt(EmptyStmt),
22407 Execute(Execute),
22408 Explain(Explain),
22409 Fetch(Fetch),
22410 Grant(Grant),
22411 ImportForeignSchema(ImportForeignSchema),
22412 Insert(Insert),
22413 Listen(Listen),
22414 Load(Load),
22415 Lock(Lock),
22416 Merge(Merge),
22417 Move(Move),
22418 Notify(Notify),
22419 ParenSelect(ParenSelect),
22420 Prepare(Prepare),
22421 PrepareTransaction(PrepareTransaction),
22422 Reassign(Reassign),
22423 Refresh(Refresh),
22424 Reindex(Reindex),
22425 ReleaseSavepoint(ReleaseSavepoint),
22426 Repack(Repack),
22427 Reset(Reset),
22428 ResetSessionAuth(ResetSessionAuth),
22429 Revoke(Revoke),
22430 Rollback(Rollback),
22431 Savepoint(Savepoint),
22432 SecurityLabel(SecurityLabel),
22433 Select(Select),
22434 SelectInto(SelectInto),
22435 Set(Set),
22436 SetConstraints(SetConstraints),
22437 SetRole(SetRole),
22438 SetSessionAuth(SetSessionAuth),
22439 SetTransaction(SetTransaction),
22440 Show(Show),
22441 Table(Table),
22442 Truncate(Truncate),
22443 Unlisten(Unlisten),
22444 Update(Update),
22445 Vacuum(Vacuum),
22446 Values(Values),
22447}
22448
22449#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22450pub enum TableArg {
22451 Column(Column),
22452 LikeClause(LikeClause),
22453 TableConstraint(TableConstraint),
22454}
22455
22456#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22457pub enum TableConstraint {
22458 CheckConstraint(CheckConstraint),
22459 ExcludeConstraint(ExcludeConstraint),
22460 ForeignKeyConstraint(ForeignKeyConstraint),
22461 PrimaryKeyConstraint(PrimaryKeyConstraint),
22462 UniqueConstraint(UniqueConstraint),
22463}
22464
22465#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22466pub enum Timezone {
22467 WithTimezone(WithTimezone),
22468 WithoutTimezone(WithoutTimezone),
22469}
22470
22471#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22472pub enum TransactionMode {
22473 Deferrable(Deferrable),
22474 NotDeferrable(NotDeferrable),
22475 ReadCommitted(ReadCommitted),
22476 ReadOnly(ReadOnly),
22477 ReadUncommitted(ReadUncommitted),
22478 ReadWrite(ReadWrite),
22479 RepeatableRead(RepeatableRead),
22480 Serializable(Serializable),
22481}
22482
22483#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22484pub enum Type {
22485 ArrayType(ArrayType),
22486 BitType(BitType),
22487 CharType(CharType),
22488 DoubleType(DoubleType),
22489 ExprType(ExprType),
22490 IntervalType(IntervalType),
22491 PathType(PathType),
22492 PercentType(PercentType),
22493 TimeType(TimeType),
22494}
22495
22496#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22497pub enum ValuePosition {
22498 AfterValue(AfterValue),
22499 BeforeValue(BeforeValue),
22500}
22501
22502#[derive(Debug, Clone, PartialEq, Eq, Hash)]
22503pub enum WithQuery {
22504 CompoundSelect(CompoundSelect),
22505 Delete(Delete),
22506 Insert(Insert),
22507 Merge(Merge),
22508 ParenSelect(ParenSelect),
22509 Select(Select),
22510 Table(Table),
22511 Update(Update),
22512 Values(Values),
22513}
22514impl AstNode for Absolute {
22515 #[inline]
22516 fn can_cast(kind: SyntaxKind) -> bool {
22517 kind == SyntaxKind::ABSOLUTE
22518 }
22519 #[inline]
22520 fn cast(syntax: SyntaxNode) -> Option<Self> {
22521 if Self::can_cast(syntax.kind()) {
22522 Some(Self { syntax })
22523 } else {
22524 None
22525 }
22526 }
22527 #[inline]
22528 fn syntax(&self) -> &SyntaxNode {
22529 &self.syntax
22530 }
22531}
22532impl AstNode for AccessExclusive {
22533 #[inline]
22534 fn can_cast(kind: SyntaxKind) -> bool {
22535 kind == SyntaxKind::ACCESS_EXCLUSIVE
22536 }
22537 #[inline]
22538 fn cast(syntax: SyntaxNode) -> Option<Self> {
22539 if Self::can_cast(syntax.kind()) {
22540 Some(Self { syntax })
22541 } else {
22542 None
22543 }
22544 }
22545 #[inline]
22546 fn syntax(&self) -> &SyntaxNode {
22547 &self.syntax
22548 }
22549}
22550impl AstNode for AccessShare {
22551 #[inline]
22552 fn can_cast(kind: SyntaxKind) -> bool {
22553 kind == SyntaxKind::ACCESS_SHARE
22554 }
22555 #[inline]
22556 fn cast(syntax: SyntaxNode) -> Option<Self> {
22557 if Self::can_cast(syntax.kind()) {
22558 Some(Self { syntax })
22559 } else {
22560 None
22561 }
22562 }
22563 #[inline]
22564 fn syntax(&self) -> &SyntaxNode {
22565 &self.syntax
22566 }
22567}
22568impl AstNode for AddAttribute {
22569 #[inline]
22570 fn can_cast(kind: SyntaxKind) -> bool {
22571 kind == SyntaxKind::ADD_ATTRIBUTE
22572 }
22573 #[inline]
22574 fn cast(syntax: SyntaxNode) -> Option<Self> {
22575 if Self::can_cast(syntax.kind()) {
22576 Some(Self { syntax })
22577 } else {
22578 None
22579 }
22580 }
22581 #[inline]
22582 fn syntax(&self) -> &SyntaxNode {
22583 &self.syntax
22584 }
22585}
22586impl AstNode for AddColumn {
22587 #[inline]
22588 fn can_cast(kind: SyntaxKind) -> bool {
22589 kind == SyntaxKind::ADD_COLUMN
22590 }
22591 #[inline]
22592 fn cast(syntax: SyntaxNode) -> Option<Self> {
22593 if Self::can_cast(syntax.kind()) {
22594 Some(Self { syntax })
22595 } else {
22596 None
22597 }
22598 }
22599 #[inline]
22600 fn syntax(&self) -> &SyntaxNode {
22601 &self.syntax
22602 }
22603}
22604impl AstNode for AddConstraint {
22605 #[inline]
22606 fn can_cast(kind: SyntaxKind) -> bool {
22607 kind == SyntaxKind::ADD_CONSTRAINT
22608 }
22609 #[inline]
22610 fn cast(syntax: SyntaxNode) -> Option<Self> {
22611 if Self::can_cast(syntax.kind()) {
22612 Some(Self { syntax })
22613 } else {
22614 None
22615 }
22616 }
22617 #[inline]
22618 fn syntax(&self) -> &SyntaxNode {
22619 &self.syntax
22620 }
22621}
22622impl AstNode for AddGenerated {
22623 #[inline]
22624 fn can_cast(kind: SyntaxKind) -> bool {
22625 kind == SyntaxKind::ADD_GENERATED
22626 }
22627 #[inline]
22628 fn cast(syntax: SyntaxNode) -> Option<Self> {
22629 if Self::can_cast(syntax.kind()) {
22630 Some(Self { syntax })
22631 } else {
22632 None
22633 }
22634 }
22635 #[inline]
22636 fn syntax(&self) -> &SyntaxNode {
22637 &self.syntax
22638 }
22639}
22640impl AstNode for AddLabel {
22641 #[inline]
22642 fn can_cast(kind: SyntaxKind) -> bool {
22643 kind == SyntaxKind::ADD_LABEL
22644 }
22645 #[inline]
22646 fn cast(syntax: SyntaxNode) -> Option<Self> {
22647 if Self::can_cast(syntax.kind()) {
22648 Some(Self { syntax })
22649 } else {
22650 None
22651 }
22652 }
22653 #[inline]
22654 fn syntax(&self) -> &SyntaxNode {
22655 &self.syntax
22656 }
22657}
22658impl AstNode for AddOpClassOptions {
22659 #[inline]
22660 fn can_cast(kind: SyntaxKind) -> bool {
22661 kind == SyntaxKind::ADD_OP_CLASS_OPTIONS
22662 }
22663 #[inline]
22664 fn cast(syntax: SyntaxNode) -> Option<Self> {
22665 if Self::can_cast(syntax.kind()) {
22666 Some(Self { syntax })
22667 } else {
22668 None
22669 }
22670 }
22671 #[inline]
22672 fn syntax(&self) -> &SyntaxNode {
22673 &self.syntax
22674 }
22675}
22676impl AstNode for AddValue {
22677 #[inline]
22678 fn can_cast(kind: SyntaxKind) -> bool {
22679 kind == SyntaxKind::ADD_VALUE
22680 }
22681 #[inline]
22682 fn cast(syntax: SyntaxNode) -> Option<Self> {
22683 if Self::can_cast(syntax.kind()) {
22684 Some(Self { syntax })
22685 } else {
22686 None
22687 }
22688 }
22689 #[inline]
22690 fn syntax(&self) -> &SyntaxNode {
22691 &self.syntax
22692 }
22693}
22694impl AstNode for AddVertexEdgeLabelProperties {
22695 #[inline]
22696 fn can_cast(kind: SyntaxKind) -> bool {
22697 kind == SyntaxKind::ADD_VERTEX_EDGE_LABEL_PROPERTIES
22698 }
22699 #[inline]
22700 fn cast(syntax: SyntaxNode) -> Option<Self> {
22701 if Self::can_cast(syntax.kind()) {
22702 Some(Self { syntax })
22703 } else {
22704 None
22705 }
22706 }
22707 #[inline]
22708 fn syntax(&self) -> &SyntaxNode {
22709 &self.syntax
22710 }
22711}
22712impl AstNode for AddVertexEdgeTables {
22713 #[inline]
22714 fn can_cast(kind: SyntaxKind) -> bool {
22715 kind == SyntaxKind::ADD_VERTEX_EDGE_TABLES
22716 }
22717 #[inline]
22718 fn cast(syntax: SyntaxNode) -> Option<Self> {
22719 if Self::can_cast(syntax.kind()) {
22720 Some(Self { syntax })
22721 } else {
22722 None
22723 }
22724 }
22725 #[inline]
22726 fn syntax(&self) -> &SyntaxNode {
22727 &self.syntax
22728 }
22729}
22730impl AstNode for AfterValue {
22731 #[inline]
22732 fn can_cast(kind: SyntaxKind) -> bool {
22733 kind == SyntaxKind::AFTER_VALUE
22734 }
22735 #[inline]
22736 fn cast(syntax: SyntaxNode) -> Option<Self> {
22737 if Self::can_cast(syntax.kind()) {
22738 Some(Self { syntax })
22739 } else {
22740 None
22741 }
22742 }
22743 #[inline]
22744 fn syntax(&self) -> &SyntaxNode {
22745 &self.syntax
22746 }
22747}
22748impl AstNode for Aggregate {
22749 #[inline]
22750 fn can_cast(kind: SyntaxKind) -> bool {
22751 kind == SyntaxKind::AGGREGATE
22752 }
22753 #[inline]
22754 fn cast(syntax: SyntaxNode) -> Option<Self> {
22755 if Self::can_cast(syntax.kind()) {
22756 Some(Self { syntax })
22757 } else {
22758 None
22759 }
22760 }
22761 #[inline]
22762 fn syntax(&self) -> &SyntaxNode {
22763 &self.syntax
22764 }
22765}
22766impl AstNode for Alias {
22767 #[inline]
22768 fn can_cast(kind: SyntaxKind) -> bool {
22769 kind == SyntaxKind::ALIAS
22770 }
22771 #[inline]
22772 fn cast(syntax: SyntaxNode) -> Option<Self> {
22773 if Self::can_cast(syntax.kind()) {
22774 Some(Self { syntax })
22775 } else {
22776 None
22777 }
22778 }
22779 #[inline]
22780 fn syntax(&self) -> &SyntaxNode {
22781 &self.syntax
22782 }
22783}
22784impl AstNode for All {
22785 #[inline]
22786 fn can_cast(kind: SyntaxKind) -> bool {
22787 kind == SyntaxKind::ALL
22788 }
22789 #[inline]
22790 fn cast(syntax: SyntaxNode) -> Option<Self> {
22791 if Self::can_cast(syntax.kind()) {
22792 Some(Self { syntax })
22793 } else {
22794 None
22795 }
22796 }
22797 #[inline]
22798 fn syntax(&self) -> &SyntaxNode {
22799 &self.syntax
22800 }
22801}
22802impl AstNode for AllFn {
22803 #[inline]
22804 fn can_cast(kind: SyntaxKind) -> bool {
22805 kind == SyntaxKind::ALL_FN
22806 }
22807 #[inline]
22808 fn cast(syntax: SyntaxNode) -> Option<Self> {
22809 if Self::can_cast(syntax.kind()) {
22810 Some(Self { syntax })
22811 } else {
22812 None
22813 }
22814 }
22815 #[inline]
22816 fn syntax(&self) -> &SyntaxNode {
22817 &self.syntax
22818 }
22819}
22820impl AstNode for AllProperties {
22821 #[inline]
22822 fn can_cast(kind: SyntaxKind) -> bool {
22823 kind == SyntaxKind::ALL_PROPERTIES
22824 }
22825 #[inline]
22826 fn cast(syntax: SyntaxNode) -> Option<Self> {
22827 if Self::can_cast(syntax.kind()) {
22828 Some(Self { syntax })
22829 } else {
22830 None
22831 }
22832 }
22833 #[inline]
22834 fn syntax(&self) -> &SyntaxNode {
22835 &self.syntax
22836 }
22837}
22838impl AstNode for AlterAggregate {
22839 #[inline]
22840 fn can_cast(kind: SyntaxKind) -> bool {
22841 kind == SyntaxKind::ALTER_AGGREGATE
22842 }
22843 #[inline]
22844 fn cast(syntax: SyntaxNode) -> Option<Self> {
22845 if Self::can_cast(syntax.kind()) {
22846 Some(Self { syntax })
22847 } else {
22848 None
22849 }
22850 }
22851 #[inline]
22852 fn syntax(&self) -> &SyntaxNode {
22853 &self.syntax
22854 }
22855}
22856impl AstNode for AlterAttribute {
22857 #[inline]
22858 fn can_cast(kind: SyntaxKind) -> bool {
22859 kind == SyntaxKind::ALTER_ATTRIBUTE
22860 }
22861 #[inline]
22862 fn cast(syntax: SyntaxNode) -> Option<Self> {
22863 if Self::can_cast(syntax.kind()) {
22864 Some(Self { syntax })
22865 } else {
22866 None
22867 }
22868 }
22869 #[inline]
22870 fn syntax(&self) -> &SyntaxNode {
22871 &self.syntax
22872 }
22873}
22874impl AstNode for AlterCollation {
22875 #[inline]
22876 fn can_cast(kind: SyntaxKind) -> bool {
22877 kind == SyntaxKind::ALTER_COLLATION
22878 }
22879 #[inline]
22880 fn cast(syntax: SyntaxNode) -> Option<Self> {
22881 if Self::can_cast(syntax.kind()) {
22882 Some(Self { syntax })
22883 } else {
22884 None
22885 }
22886 }
22887 #[inline]
22888 fn syntax(&self) -> &SyntaxNode {
22889 &self.syntax
22890 }
22891}
22892impl AstNode for AlterColumn {
22893 #[inline]
22894 fn can_cast(kind: SyntaxKind) -> bool {
22895 kind == SyntaxKind::ALTER_COLUMN
22896 }
22897 #[inline]
22898 fn cast(syntax: SyntaxNode) -> Option<Self> {
22899 if Self::can_cast(syntax.kind()) {
22900 Some(Self { syntax })
22901 } else {
22902 None
22903 }
22904 }
22905 #[inline]
22906 fn syntax(&self) -> &SyntaxNode {
22907 &self.syntax
22908 }
22909}
22910impl AstNode for AlterConstraint {
22911 #[inline]
22912 fn can_cast(kind: SyntaxKind) -> bool {
22913 kind == SyntaxKind::ALTER_CONSTRAINT
22914 }
22915 #[inline]
22916 fn cast(syntax: SyntaxNode) -> Option<Self> {
22917 if Self::can_cast(syntax.kind()) {
22918 Some(Self { syntax })
22919 } else {
22920 None
22921 }
22922 }
22923 #[inline]
22924 fn syntax(&self) -> &SyntaxNode {
22925 &self.syntax
22926 }
22927}
22928impl AstNode for AlterConversion {
22929 #[inline]
22930 fn can_cast(kind: SyntaxKind) -> bool {
22931 kind == SyntaxKind::ALTER_CONVERSION
22932 }
22933 #[inline]
22934 fn cast(syntax: SyntaxNode) -> Option<Self> {
22935 if Self::can_cast(syntax.kind()) {
22936 Some(Self { syntax })
22937 } else {
22938 None
22939 }
22940 }
22941 #[inline]
22942 fn syntax(&self) -> &SyntaxNode {
22943 &self.syntax
22944 }
22945}
22946impl AstNode for AlterDatabase {
22947 #[inline]
22948 fn can_cast(kind: SyntaxKind) -> bool {
22949 kind == SyntaxKind::ALTER_DATABASE
22950 }
22951 #[inline]
22952 fn cast(syntax: SyntaxNode) -> Option<Self> {
22953 if Self::can_cast(syntax.kind()) {
22954 Some(Self { syntax })
22955 } else {
22956 None
22957 }
22958 }
22959 #[inline]
22960 fn syntax(&self) -> &SyntaxNode {
22961 &self.syntax
22962 }
22963}
22964impl AstNode for AlterDefaultPrivileges {
22965 #[inline]
22966 fn can_cast(kind: SyntaxKind) -> bool {
22967 kind == SyntaxKind::ALTER_DEFAULT_PRIVILEGES
22968 }
22969 #[inline]
22970 fn cast(syntax: SyntaxNode) -> Option<Self> {
22971 if Self::can_cast(syntax.kind()) {
22972 Some(Self { syntax })
22973 } else {
22974 None
22975 }
22976 }
22977 #[inline]
22978 fn syntax(&self) -> &SyntaxNode {
22979 &self.syntax
22980 }
22981}
22982impl AstNode for AlterDomain {
22983 #[inline]
22984 fn can_cast(kind: SyntaxKind) -> bool {
22985 kind == SyntaxKind::ALTER_DOMAIN
22986 }
22987 #[inline]
22988 fn cast(syntax: SyntaxNode) -> Option<Self> {
22989 if Self::can_cast(syntax.kind()) {
22990 Some(Self { syntax })
22991 } else {
22992 None
22993 }
22994 }
22995 #[inline]
22996 fn syntax(&self) -> &SyntaxNode {
22997 &self.syntax
22998 }
22999}
23000impl AstNode for AlterEventTrigger {
23001 #[inline]
23002 fn can_cast(kind: SyntaxKind) -> bool {
23003 kind == SyntaxKind::ALTER_EVENT_TRIGGER
23004 }
23005 #[inline]
23006 fn cast(syntax: SyntaxNode) -> Option<Self> {
23007 if Self::can_cast(syntax.kind()) {
23008 Some(Self { syntax })
23009 } else {
23010 None
23011 }
23012 }
23013 #[inline]
23014 fn syntax(&self) -> &SyntaxNode {
23015 &self.syntax
23016 }
23017}
23018impl AstNode for AlterExtension {
23019 #[inline]
23020 fn can_cast(kind: SyntaxKind) -> bool {
23021 kind == SyntaxKind::ALTER_EXTENSION
23022 }
23023 #[inline]
23024 fn cast(syntax: SyntaxNode) -> Option<Self> {
23025 if Self::can_cast(syntax.kind()) {
23026 Some(Self { syntax })
23027 } else {
23028 None
23029 }
23030 }
23031 #[inline]
23032 fn syntax(&self) -> &SyntaxNode {
23033 &self.syntax
23034 }
23035}
23036impl AstNode for AlterForeignDataWrapper {
23037 #[inline]
23038 fn can_cast(kind: SyntaxKind) -> bool {
23039 kind == SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER
23040 }
23041 #[inline]
23042 fn cast(syntax: SyntaxNode) -> Option<Self> {
23043 if Self::can_cast(syntax.kind()) {
23044 Some(Self { syntax })
23045 } else {
23046 None
23047 }
23048 }
23049 #[inline]
23050 fn syntax(&self) -> &SyntaxNode {
23051 &self.syntax
23052 }
23053}
23054impl AstNode for AlterForeignTable {
23055 #[inline]
23056 fn can_cast(kind: SyntaxKind) -> bool {
23057 kind == SyntaxKind::ALTER_FOREIGN_TABLE
23058 }
23059 #[inline]
23060 fn cast(syntax: SyntaxNode) -> Option<Self> {
23061 if Self::can_cast(syntax.kind()) {
23062 Some(Self { syntax })
23063 } else {
23064 None
23065 }
23066 }
23067 #[inline]
23068 fn syntax(&self) -> &SyntaxNode {
23069 &self.syntax
23070 }
23071}
23072impl AstNode for AlterFunction {
23073 #[inline]
23074 fn can_cast(kind: SyntaxKind) -> bool {
23075 kind == SyntaxKind::ALTER_FUNCTION
23076 }
23077 #[inline]
23078 fn cast(syntax: SyntaxNode) -> Option<Self> {
23079 if Self::can_cast(syntax.kind()) {
23080 Some(Self { syntax })
23081 } else {
23082 None
23083 }
23084 }
23085 #[inline]
23086 fn syntax(&self) -> &SyntaxNode {
23087 &self.syntax
23088 }
23089}
23090impl AstNode for AlterGroup {
23091 #[inline]
23092 fn can_cast(kind: SyntaxKind) -> bool {
23093 kind == SyntaxKind::ALTER_GROUP
23094 }
23095 #[inline]
23096 fn cast(syntax: SyntaxNode) -> Option<Self> {
23097 if Self::can_cast(syntax.kind()) {
23098 Some(Self { syntax })
23099 } else {
23100 None
23101 }
23102 }
23103 #[inline]
23104 fn syntax(&self) -> &SyntaxNode {
23105 &self.syntax
23106 }
23107}
23108impl AstNode for AlterIndex {
23109 #[inline]
23110 fn can_cast(kind: SyntaxKind) -> bool {
23111 kind == SyntaxKind::ALTER_INDEX
23112 }
23113 #[inline]
23114 fn cast(syntax: SyntaxNode) -> Option<Self> {
23115 if Self::can_cast(syntax.kind()) {
23116 Some(Self { syntax })
23117 } else {
23118 None
23119 }
23120 }
23121 #[inline]
23122 fn syntax(&self) -> &SyntaxNode {
23123 &self.syntax
23124 }
23125}
23126impl AstNode for AlterLanguage {
23127 #[inline]
23128 fn can_cast(kind: SyntaxKind) -> bool {
23129 kind == SyntaxKind::ALTER_LANGUAGE
23130 }
23131 #[inline]
23132 fn cast(syntax: SyntaxNode) -> Option<Self> {
23133 if Self::can_cast(syntax.kind()) {
23134 Some(Self { syntax })
23135 } else {
23136 None
23137 }
23138 }
23139 #[inline]
23140 fn syntax(&self) -> &SyntaxNode {
23141 &self.syntax
23142 }
23143}
23144impl AstNode for AlterLargeObject {
23145 #[inline]
23146 fn can_cast(kind: SyntaxKind) -> bool {
23147 kind == SyntaxKind::ALTER_LARGE_OBJECT
23148 }
23149 #[inline]
23150 fn cast(syntax: SyntaxNode) -> Option<Self> {
23151 if Self::can_cast(syntax.kind()) {
23152 Some(Self { syntax })
23153 } else {
23154 None
23155 }
23156 }
23157 #[inline]
23158 fn syntax(&self) -> &SyntaxNode {
23159 &self.syntax
23160 }
23161}
23162impl AstNode for AlterMaterializedView {
23163 #[inline]
23164 fn can_cast(kind: SyntaxKind) -> bool {
23165 kind == SyntaxKind::ALTER_MATERIALIZED_VIEW
23166 }
23167 #[inline]
23168 fn cast(syntax: SyntaxNode) -> Option<Self> {
23169 if Self::can_cast(syntax.kind()) {
23170 Some(Self { syntax })
23171 } else {
23172 None
23173 }
23174 }
23175 #[inline]
23176 fn syntax(&self) -> &SyntaxNode {
23177 &self.syntax
23178 }
23179}
23180impl AstNode for AlterOperator {
23181 #[inline]
23182 fn can_cast(kind: SyntaxKind) -> bool {
23183 kind == SyntaxKind::ALTER_OPERATOR
23184 }
23185 #[inline]
23186 fn cast(syntax: SyntaxNode) -> Option<Self> {
23187 if Self::can_cast(syntax.kind()) {
23188 Some(Self { syntax })
23189 } else {
23190 None
23191 }
23192 }
23193 #[inline]
23194 fn syntax(&self) -> &SyntaxNode {
23195 &self.syntax
23196 }
23197}
23198impl AstNode for AlterOperatorClass {
23199 #[inline]
23200 fn can_cast(kind: SyntaxKind) -> bool {
23201 kind == SyntaxKind::ALTER_OPERATOR_CLASS
23202 }
23203 #[inline]
23204 fn cast(syntax: SyntaxNode) -> Option<Self> {
23205 if Self::can_cast(syntax.kind()) {
23206 Some(Self { syntax })
23207 } else {
23208 None
23209 }
23210 }
23211 #[inline]
23212 fn syntax(&self) -> &SyntaxNode {
23213 &self.syntax
23214 }
23215}
23216impl AstNode for AlterOperatorFamily {
23217 #[inline]
23218 fn can_cast(kind: SyntaxKind) -> bool {
23219 kind == SyntaxKind::ALTER_OPERATOR_FAMILY
23220 }
23221 #[inline]
23222 fn cast(syntax: SyntaxNode) -> Option<Self> {
23223 if Self::can_cast(syntax.kind()) {
23224 Some(Self { syntax })
23225 } else {
23226 None
23227 }
23228 }
23229 #[inline]
23230 fn syntax(&self) -> &SyntaxNode {
23231 &self.syntax
23232 }
23233}
23234impl AstNode for AlterOption {
23235 #[inline]
23236 fn can_cast(kind: SyntaxKind) -> bool {
23237 kind == SyntaxKind::ALTER_OPTION
23238 }
23239 #[inline]
23240 fn cast(syntax: SyntaxNode) -> Option<Self> {
23241 if Self::can_cast(syntax.kind()) {
23242 Some(Self { syntax })
23243 } else {
23244 None
23245 }
23246 }
23247 #[inline]
23248 fn syntax(&self) -> &SyntaxNode {
23249 &self.syntax
23250 }
23251}
23252impl AstNode for AlterOptionList {
23253 #[inline]
23254 fn can_cast(kind: SyntaxKind) -> bool {
23255 kind == SyntaxKind::ALTER_OPTION_LIST
23256 }
23257 #[inline]
23258 fn cast(syntax: SyntaxNode) -> Option<Self> {
23259 if Self::can_cast(syntax.kind()) {
23260 Some(Self { syntax })
23261 } else {
23262 None
23263 }
23264 }
23265 #[inline]
23266 fn syntax(&self) -> &SyntaxNode {
23267 &self.syntax
23268 }
23269}
23270impl AstNode for AlterPolicy {
23271 #[inline]
23272 fn can_cast(kind: SyntaxKind) -> bool {
23273 kind == SyntaxKind::ALTER_POLICY
23274 }
23275 #[inline]
23276 fn cast(syntax: SyntaxNode) -> Option<Self> {
23277 if Self::can_cast(syntax.kind()) {
23278 Some(Self { syntax })
23279 } else {
23280 None
23281 }
23282 }
23283 #[inline]
23284 fn syntax(&self) -> &SyntaxNode {
23285 &self.syntax
23286 }
23287}
23288impl AstNode for AlterProcedure {
23289 #[inline]
23290 fn can_cast(kind: SyntaxKind) -> bool {
23291 kind == SyntaxKind::ALTER_PROCEDURE
23292 }
23293 #[inline]
23294 fn cast(syntax: SyntaxNode) -> Option<Self> {
23295 if Self::can_cast(syntax.kind()) {
23296 Some(Self { syntax })
23297 } else {
23298 None
23299 }
23300 }
23301 #[inline]
23302 fn syntax(&self) -> &SyntaxNode {
23303 &self.syntax
23304 }
23305}
23306impl AstNode for AlterPropertyGraph {
23307 #[inline]
23308 fn can_cast(kind: SyntaxKind) -> bool {
23309 kind == SyntaxKind::ALTER_PROPERTY_GRAPH
23310 }
23311 #[inline]
23312 fn cast(syntax: SyntaxNode) -> Option<Self> {
23313 if Self::can_cast(syntax.kind()) {
23314 Some(Self { syntax })
23315 } else {
23316 None
23317 }
23318 }
23319 #[inline]
23320 fn syntax(&self) -> &SyntaxNode {
23321 &self.syntax
23322 }
23323}
23324impl AstNode for AlterPublication {
23325 #[inline]
23326 fn can_cast(kind: SyntaxKind) -> bool {
23327 kind == SyntaxKind::ALTER_PUBLICATION
23328 }
23329 #[inline]
23330 fn cast(syntax: SyntaxNode) -> Option<Self> {
23331 if Self::can_cast(syntax.kind()) {
23332 Some(Self { syntax })
23333 } else {
23334 None
23335 }
23336 }
23337 #[inline]
23338 fn syntax(&self) -> &SyntaxNode {
23339 &self.syntax
23340 }
23341}
23342impl AstNode for AlterRole {
23343 #[inline]
23344 fn can_cast(kind: SyntaxKind) -> bool {
23345 kind == SyntaxKind::ALTER_ROLE
23346 }
23347 #[inline]
23348 fn cast(syntax: SyntaxNode) -> Option<Self> {
23349 if Self::can_cast(syntax.kind()) {
23350 Some(Self { syntax })
23351 } else {
23352 None
23353 }
23354 }
23355 #[inline]
23356 fn syntax(&self) -> &SyntaxNode {
23357 &self.syntax
23358 }
23359}
23360impl AstNode for AlterRoutine {
23361 #[inline]
23362 fn can_cast(kind: SyntaxKind) -> bool {
23363 kind == SyntaxKind::ALTER_ROUTINE
23364 }
23365 #[inline]
23366 fn cast(syntax: SyntaxNode) -> Option<Self> {
23367 if Self::can_cast(syntax.kind()) {
23368 Some(Self { syntax })
23369 } else {
23370 None
23371 }
23372 }
23373 #[inline]
23374 fn syntax(&self) -> &SyntaxNode {
23375 &self.syntax
23376 }
23377}
23378impl AstNode for AlterRule {
23379 #[inline]
23380 fn can_cast(kind: SyntaxKind) -> bool {
23381 kind == SyntaxKind::ALTER_RULE
23382 }
23383 #[inline]
23384 fn cast(syntax: SyntaxNode) -> Option<Self> {
23385 if Self::can_cast(syntax.kind()) {
23386 Some(Self { syntax })
23387 } else {
23388 None
23389 }
23390 }
23391 #[inline]
23392 fn syntax(&self) -> &SyntaxNode {
23393 &self.syntax
23394 }
23395}
23396impl AstNode for AlterSchema {
23397 #[inline]
23398 fn can_cast(kind: SyntaxKind) -> bool {
23399 kind == SyntaxKind::ALTER_SCHEMA
23400 }
23401 #[inline]
23402 fn cast(syntax: SyntaxNode) -> Option<Self> {
23403 if Self::can_cast(syntax.kind()) {
23404 Some(Self { syntax })
23405 } else {
23406 None
23407 }
23408 }
23409 #[inline]
23410 fn syntax(&self) -> &SyntaxNode {
23411 &self.syntax
23412 }
23413}
23414impl AstNode for AlterSequence {
23415 #[inline]
23416 fn can_cast(kind: SyntaxKind) -> bool {
23417 kind == SyntaxKind::ALTER_SEQUENCE
23418 }
23419 #[inline]
23420 fn cast(syntax: SyntaxNode) -> Option<Self> {
23421 if Self::can_cast(syntax.kind()) {
23422 Some(Self { syntax })
23423 } else {
23424 None
23425 }
23426 }
23427 #[inline]
23428 fn syntax(&self) -> &SyntaxNode {
23429 &self.syntax
23430 }
23431}
23432impl AstNode for AlterServer {
23433 #[inline]
23434 fn can_cast(kind: SyntaxKind) -> bool {
23435 kind == SyntaxKind::ALTER_SERVER
23436 }
23437 #[inline]
23438 fn cast(syntax: SyntaxNode) -> Option<Self> {
23439 if Self::can_cast(syntax.kind()) {
23440 Some(Self { syntax })
23441 } else {
23442 None
23443 }
23444 }
23445 #[inline]
23446 fn syntax(&self) -> &SyntaxNode {
23447 &self.syntax
23448 }
23449}
23450impl AstNode for AlterSetStatistics {
23451 #[inline]
23452 fn can_cast(kind: SyntaxKind) -> bool {
23453 kind == SyntaxKind::ALTER_SET_STATISTICS
23454 }
23455 #[inline]
23456 fn cast(syntax: SyntaxNode) -> Option<Self> {
23457 if Self::can_cast(syntax.kind()) {
23458 Some(Self { syntax })
23459 } else {
23460 None
23461 }
23462 }
23463 #[inline]
23464 fn syntax(&self) -> &SyntaxNode {
23465 &self.syntax
23466 }
23467}
23468impl AstNode for AlterStatistics {
23469 #[inline]
23470 fn can_cast(kind: SyntaxKind) -> bool {
23471 kind == SyntaxKind::ALTER_STATISTICS
23472 }
23473 #[inline]
23474 fn cast(syntax: SyntaxNode) -> Option<Self> {
23475 if Self::can_cast(syntax.kind()) {
23476 Some(Self { syntax })
23477 } else {
23478 None
23479 }
23480 }
23481 #[inline]
23482 fn syntax(&self) -> &SyntaxNode {
23483 &self.syntax
23484 }
23485}
23486impl AstNode for AlterSubscription {
23487 #[inline]
23488 fn can_cast(kind: SyntaxKind) -> bool {
23489 kind == SyntaxKind::ALTER_SUBSCRIPTION
23490 }
23491 #[inline]
23492 fn cast(syntax: SyntaxNode) -> Option<Self> {
23493 if Self::can_cast(syntax.kind()) {
23494 Some(Self { syntax })
23495 } else {
23496 None
23497 }
23498 }
23499 #[inline]
23500 fn syntax(&self) -> &SyntaxNode {
23501 &self.syntax
23502 }
23503}
23504impl AstNode for AlterSystem {
23505 #[inline]
23506 fn can_cast(kind: SyntaxKind) -> bool {
23507 kind == SyntaxKind::ALTER_SYSTEM
23508 }
23509 #[inline]
23510 fn cast(syntax: SyntaxNode) -> Option<Self> {
23511 if Self::can_cast(syntax.kind()) {
23512 Some(Self { syntax })
23513 } else {
23514 None
23515 }
23516 }
23517 #[inline]
23518 fn syntax(&self) -> &SyntaxNode {
23519 &self.syntax
23520 }
23521}
23522impl AstNode for AlterTable {
23523 #[inline]
23524 fn can_cast(kind: SyntaxKind) -> bool {
23525 kind == SyntaxKind::ALTER_TABLE
23526 }
23527 #[inline]
23528 fn cast(syntax: SyntaxNode) -> Option<Self> {
23529 if Self::can_cast(syntax.kind()) {
23530 Some(Self { syntax })
23531 } else {
23532 None
23533 }
23534 }
23535 #[inline]
23536 fn syntax(&self) -> &SyntaxNode {
23537 &self.syntax
23538 }
23539}
23540impl AstNode for AlterTablespace {
23541 #[inline]
23542 fn can_cast(kind: SyntaxKind) -> bool {
23543 kind == SyntaxKind::ALTER_TABLESPACE
23544 }
23545 #[inline]
23546 fn cast(syntax: SyntaxNode) -> Option<Self> {
23547 if Self::can_cast(syntax.kind()) {
23548 Some(Self { syntax })
23549 } else {
23550 None
23551 }
23552 }
23553 #[inline]
23554 fn syntax(&self) -> &SyntaxNode {
23555 &self.syntax
23556 }
23557}
23558impl AstNode for AlterTextSearchConfiguration {
23559 #[inline]
23560 fn can_cast(kind: SyntaxKind) -> bool {
23561 kind == SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION
23562 }
23563 #[inline]
23564 fn cast(syntax: SyntaxNode) -> Option<Self> {
23565 if Self::can_cast(syntax.kind()) {
23566 Some(Self { syntax })
23567 } else {
23568 None
23569 }
23570 }
23571 #[inline]
23572 fn syntax(&self) -> &SyntaxNode {
23573 &self.syntax
23574 }
23575}
23576impl AstNode for AlterTextSearchDictionary {
23577 #[inline]
23578 fn can_cast(kind: SyntaxKind) -> bool {
23579 kind == SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY
23580 }
23581 #[inline]
23582 fn cast(syntax: SyntaxNode) -> Option<Self> {
23583 if Self::can_cast(syntax.kind()) {
23584 Some(Self { syntax })
23585 } else {
23586 None
23587 }
23588 }
23589 #[inline]
23590 fn syntax(&self) -> &SyntaxNode {
23591 &self.syntax
23592 }
23593}
23594impl AstNode for AlterTextSearchParser {
23595 #[inline]
23596 fn can_cast(kind: SyntaxKind) -> bool {
23597 kind == SyntaxKind::ALTER_TEXT_SEARCH_PARSER
23598 }
23599 #[inline]
23600 fn cast(syntax: SyntaxNode) -> Option<Self> {
23601 if Self::can_cast(syntax.kind()) {
23602 Some(Self { syntax })
23603 } else {
23604 None
23605 }
23606 }
23607 #[inline]
23608 fn syntax(&self) -> &SyntaxNode {
23609 &self.syntax
23610 }
23611}
23612impl AstNode for AlterTextSearchTemplate {
23613 #[inline]
23614 fn can_cast(kind: SyntaxKind) -> bool {
23615 kind == SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE
23616 }
23617 #[inline]
23618 fn cast(syntax: SyntaxNode) -> Option<Self> {
23619 if Self::can_cast(syntax.kind()) {
23620 Some(Self { syntax })
23621 } else {
23622 None
23623 }
23624 }
23625 #[inline]
23626 fn syntax(&self) -> &SyntaxNode {
23627 &self.syntax
23628 }
23629}
23630impl AstNode for AlterTrigger {
23631 #[inline]
23632 fn can_cast(kind: SyntaxKind) -> bool {
23633 kind == SyntaxKind::ALTER_TRIGGER
23634 }
23635 #[inline]
23636 fn cast(syntax: SyntaxNode) -> Option<Self> {
23637 if Self::can_cast(syntax.kind()) {
23638 Some(Self { syntax })
23639 } else {
23640 None
23641 }
23642 }
23643 #[inline]
23644 fn syntax(&self) -> &SyntaxNode {
23645 &self.syntax
23646 }
23647}
23648impl AstNode for AlterType {
23649 #[inline]
23650 fn can_cast(kind: SyntaxKind) -> bool {
23651 kind == SyntaxKind::ALTER_TYPE
23652 }
23653 #[inline]
23654 fn cast(syntax: SyntaxNode) -> Option<Self> {
23655 if Self::can_cast(syntax.kind()) {
23656 Some(Self { syntax })
23657 } else {
23658 None
23659 }
23660 }
23661 #[inline]
23662 fn syntax(&self) -> &SyntaxNode {
23663 &self.syntax
23664 }
23665}
23666impl AstNode for AlterUser {
23667 #[inline]
23668 fn can_cast(kind: SyntaxKind) -> bool {
23669 kind == SyntaxKind::ALTER_USER
23670 }
23671 #[inline]
23672 fn cast(syntax: SyntaxNode) -> Option<Self> {
23673 if Self::can_cast(syntax.kind()) {
23674 Some(Self { syntax })
23675 } else {
23676 None
23677 }
23678 }
23679 #[inline]
23680 fn syntax(&self) -> &SyntaxNode {
23681 &self.syntax
23682 }
23683}
23684impl AstNode for AlterUserMapping {
23685 #[inline]
23686 fn can_cast(kind: SyntaxKind) -> bool {
23687 kind == SyntaxKind::ALTER_USER_MAPPING
23688 }
23689 #[inline]
23690 fn cast(syntax: SyntaxNode) -> Option<Self> {
23691 if Self::can_cast(syntax.kind()) {
23692 Some(Self { syntax })
23693 } else {
23694 None
23695 }
23696 }
23697 #[inline]
23698 fn syntax(&self) -> &SyntaxNode {
23699 &self.syntax
23700 }
23701}
23702impl AstNode for AlterVertexEdgeLabels {
23703 #[inline]
23704 fn can_cast(kind: SyntaxKind) -> bool {
23705 kind == SyntaxKind::ALTER_VERTEX_EDGE_LABELS
23706 }
23707 #[inline]
23708 fn cast(syntax: SyntaxNode) -> Option<Self> {
23709 if Self::can_cast(syntax.kind()) {
23710 Some(Self { syntax })
23711 } else {
23712 None
23713 }
23714 }
23715 #[inline]
23716 fn syntax(&self) -> &SyntaxNode {
23717 &self.syntax
23718 }
23719}
23720impl AstNode for AlterView {
23721 #[inline]
23722 fn can_cast(kind: SyntaxKind) -> bool {
23723 kind == SyntaxKind::ALTER_VIEW
23724 }
23725 #[inline]
23726 fn cast(syntax: SyntaxNode) -> Option<Self> {
23727 if Self::can_cast(syntax.kind()) {
23728 Some(Self { syntax })
23729 } else {
23730 None
23731 }
23732 }
23733 #[inline]
23734 fn syntax(&self) -> &SyntaxNode {
23735 &self.syntax
23736 }
23737}
23738impl AstNode for Analyze {
23739 #[inline]
23740 fn can_cast(kind: SyntaxKind) -> bool {
23741 kind == SyntaxKind::ANALYZE
23742 }
23743 #[inline]
23744 fn cast(syntax: SyntaxNode) -> Option<Self> {
23745 if Self::can_cast(syntax.kind()) {
23746 Some(Self { syntax })
23747 } else {
23748 None
23749 }
23750 }
23751 #[inline]
23752 fn syntax(&self) -> &SyntaxNode {
23753 &self.syntax
23754 }
23755}
23756impl AstNode for AnyFn {
23757 #[inline]
23758 fn can_cast(kind: SyntaxKind) -> bool {
23759 kind == SyntaxKind::ANY_FN
23760 }
23761 #[inline]
23762 fn cast(syntax: SyntaxNode) -> Option<Self> {
23763 if Self::can_cast(syntax.kind()) {
23764 Some(Self { syntax })
23765 } else {
23766 None
23767 }
23768 }
23769 #[inline]
23770 fn syntax(&self) -> &SyntaxNode {
23771 &self.syntax
23772 }
23773}
23774impl AstNode for Arg {
23775 #[inline]
23776 fn can_cast(kind: SyntaxKind) -> bool {
23777 kind == SyntaxKind::ARG
23778 }
23779 #[inline]
23780 fn cast(syntax: SyntaxNode) -> Option<Self> {
23781 if Self::can_cast(syntax.kind()) {
23782 Some(Self { syntax })
23783 } else {
23784 None
23785 }
23786 }
23787 #[inline]
23788 fn syntax(&self) -> &SyntaxNode {
23789 &self.syntax
23790 }
23791}
23792impl AstNode for ArgList {
23793 #[inline]
23794 fn can_cast(kind: SyntaxKind) -> bool {
23795 kind == SyntaxKind::ARG_LIST
23796 }
23797 #[inline]
23798 fn cast(syntax: SyntaxNode) -> Option<Self> {
23799 if Self::can_cast(syntax.kind()) {
23800 Some(Self { syntax })
23801 } else {
23802 None
23803 }
23804 }
23805 #[inline]
23806 fn syntax(&self) -> &SyntaxNode {
23807 &self.syntax
23808 }
23809}
23810impl AstNode for ArrayExpr {
23811 #[inline]
23812 fn can_cast(kind: SyntaxKind) -> bool {
23813 kind == SyntaxKind::ARRAY_EXPR
23814 }
23815 #[inline]
23816 fn cast(syntax: SyntaxNode) -> Option<Self> {
23817 if Self::can_cast(syntax.kind()) {
23818 Some(Self { syntax })
23819 } else {
23820 None
23821 }
23822 }
23823 #[inline]
23824 fn syntax(&self) -> &SyntaxNode {
23825 &self.syntax
23826 }
23827}
23828impl AstNode for ArrayType {
23829 #[inline]
23830 fn can_cast(kind: SyntaxKind) -> bool {
23831 kind == SyntaxKind::ARRAY_TYPE
23832 }
23833 #[inline]
23834 fn cast(syntax: SyntaxNode) -> Option<Self> {
23835 if Self::can_cast(syntax.kind()) {
23836 Some(Self { syntax })
23837 } else {
23838 None
23839 }
23840 }
23841 #[inline]
23842 fn syntax(&self) -> &SyntaxNode {
23843 &self.syntax
23844 }
23845}
23846impl AstNode for AsFuncOption {
23847 #[inline]
23848 fn can_cast(kind: SyntaxKind) -> bool {
23849 kind == SyntaxKind::AS_FUNC_OPTION
23850 }
23851 #[inline]
23852 fn cast(syntax: SyntaxNode) -> Option<Self> {
23853 if Self::can_cast(syntax.kind()) {
23854 Some(Self { syntax })
23855 } else {
23856 None
23857 }
23858 }
23859 #[inline]
23860 fn syntax(&self) -> &SyntaxNode {
23861 &self.syntax
23862 }
23863}
23864impl AstNode for AsName {
23865 #[inline]
23866 fn can_cast(kind: SyntaxKind) -> bool {
23867 kind == SyntaxKind::AS_NAME
23868 }
23869 #[inline]
23870 fn cast(syntax: SyntaxNode) -> Option<Self> {
23871 if Self::can_cast(syntax.kind()) {
23872 Some(Self { syntax })
23873 } else {
23874 None
23875 }
23876 }
23877 #[inline]
23878 fn syntax(&self) -> &SyntaxNode {
23879 &self.syntax
23880 }
23881}
23882impl AstNode for AsPolicyType {
23883 #[inline]
23884 fn can_cast(kind: SyntaxKind) -> bool {
23885 kind == SyntaxKind::AS_POLICY_TYPE
23886 }
23887 #[inline]
23888 fn cast(syntax: SyntaxNode) -> Option<Self> {
23889 if Self::can_cast(syntax.kind()) {
23890 Some(Self { syntax })
23891 } else {
23892 None
23893 }
23894 }
23895 #[inline]
23896 fn syntax(&self) -> &SyntaxNode {
23897 &self.syntax
23898 }
23899}
23900impl AstNode for AtLocal {
23901 #[inline]
23902 fn can_cast(kind: SyntaxKind) -> bool {
23903 kind == SyntaxKind::AT_LOCAL
23904 }
23905 #[inline]
23906 fn cast(syntax: SyntaxNode) -> Option<Self> {
23907 if Self::can_cast(syntax.kind()) {
23908 Some(Self { syntax })
23909 } else {
23910 None
23911 }
23912 }
23913 #[inline]
23914 fn syntax(&self) -> &SyntaxNode {
23915 &self.syntax
23916 }
23917}
23918impl AstNode for AtTimeZone {
23919 #[inline]
23920 fn can_cast(kind: SyntaxKind) -> bool {
23921 kind == SyntaxKind::AT_TIME_ZONE
23922 }
23923 #[inline]
23924 fn cast(syntax: SyntaxNode) -> Option<Self> {
23925 if Self::can_cast(syntax.kind()) {
23926 Some(Self { syntax })
23927 } else {
23928 None
23929 }
23930 }
23931 #[inline]
23932 fn syntax(&self) -> &SyntaxNode {
23933 &self.syntax
23934 }
23935}
23936impl AstNode for AttachPartition {
23937 #[inline]
23938 fn can_cast(kind: SyntaxKind) -> bool {
23939 kind == SyntaxKind::ATTACH_PARTITION
23940 }
23941 #[inline]
23942 fn cast(syntax: SyntaxNode) -> Option<Self> {
23943 if Self::can_cast(syntax.kind()) {
23944 Some(Self { syntax })
23945 } else {
23946 None
23947 }
23948 }
23949 #[inline]
23950 fn syntax(&self) -> &SyntaxNode {
23951 &self.syntax
23952 }
23953}
23954impl AstNode for AttributeList {
23955 #[inline]
23956 fn can_cast(kind: SyntaxKind) -> bool {
23957 kind == SyntaxKind::ATTRIBUTE_LIST
23958 }
23959 #[inline]
23960 fn cast(syntax: SyntaxNode) -> Option<Self> {
23961 if Self::can_cast(syntax.kind()) {
23962 Some(Self { syntax })
23963 } else {
23964 None
23965 }
23966 }
23967 #[inline]
23968 fn syntax(&self) -> &SyntaxNode {
23969 &self.syntax
23970 }
23971}
23972impl AstNode for AttributeOption {
23973 #[inline]
23974 fn can_cast(kind: SyntaxKind) -> bool {
23975 kind == SyntaxKind::ATTRIBUTE_OPTION
23976 }
23977 #[inline]
23978 fn cast(syntax: SyntaxNode) -> Option<Self> {
23979 if Self::can_cast(syntax.kind()) {
23980 Some(Self { syntax })
23981 } else {
23982 None
23983 }
23984 }
23985 #[inline]
23986 fn syntax(&self) -> &SyntaxNode {
23987 &self.syntax
23988 }
23989}
23990impl AstNode for AttributeValue {
23991 #[inline]
23992 fn can_cast(kind: SyntaxKind) -> bool {
23993 kind == SyntaxKind::ATTRIBUTE_VALUE
23994 }
23995 #[inline]
23996 fn cast(syntax: SyntaxNode) -> Option<Self> {
23997 if Self::can_cast(syntax.kind()) {
23998 Some(Self { syntax })
23999 } else {
24000 None
24001 }
24002 }
24003 #[inline]
24004 fn syntax(&self) -> &SyntaxNode {
24005 &self.syntax
24006 }
24007}
24008impl AstNode for Backward {
24009 #[inline]
24010 fn can_cast(kind: SyntaxKind) -> bool {
24011 kind == SyntaxKind::BACKWARD
24012 }
24013 #[inline]
24014 fn cast(syntax: SyntaxNode) -> Option<Self> {
24015 if Self::can_cast(syntax.kind()) {
24016 Some(Self { syntax })
24017 } else {
24018 None
24019 }
24020 }
24021 #[inline]
24022 fn syntax(&self) -> &SyntaxNode {
24023 &self.syntax
24024 }
24025}
24026impl AstNode for BeforeValue {
24027 #[inline]
24028 fn can_cast(kind: SyntaxKind) -> bool {
24029 kind == SyntaxKind::BEFORE_VALUE
24030 }
24031 #[inline]
24032 fn cast(syntax: SyntaxNode) -> Option<Self> {
24033 if Self::can_cast(syntax.kind()) {
24034 Some(Self { syntax })
24035 } else {
24036 None
24037 }
24038 }
24039 #[inline]
24040 fn syntax(&self) -> &SyntaxNode {
24041 &self.syntax
24042 }
24043}
24044impl AstNode for Begin {
24045 #[inline]
24046 fn can_cast(kind: SyntaxKind) -> bool {
24047 kind == SyntaxKind::BEGIN
24048 }
24049 #[inline]
24050 fn cast(syntax: SyntaxNode) -> Option<Self> {
24051 if Self::can_cast(syntax.kind()) {
24052 Some(Self { syntax })
24053 } else {
24054 None
24055 }
24056 }
24057 #[inline]
24058 fn syntax(&self) -> &SyntaxNode {
24059 &self.syntax
24060 }
24061}
24062impl AstNode for BeginFuncOptionList {
24063 #[inline]
24064 fn can_cast(kind: SyntaxKind) -> bool {
24065 kind == SyntaxKind::BEGIN_FUNC_OPTION_LIST
24066 }
24067 #[inline]
24068 fn cast(syntax: SyntaxNode) -> Option<Self> {
24069 if Self::can_cast(syntax.kind()) {
24070 Some(Self { syntax })
24071 } else {
24072 None
24073 }
24074 }
24075 #[inline]
24076 fn syntax(&self) -> &SyntaxNode {
24077 &self.syntax
24078 }
24079}
24080impl AstNode for BetweenExpr {
24081 #[inline]
24082 fn can_cast(kind: SyntaxKind) -> bool {
24083 kind == SyntaxKind::BETWEEN_EXPR
24084 }
24085 #[inline]
24086 fn cast(syntax: SyntaxNode) -> Option<Self> {
24087 if Self::can_cast(syntax.kind()) {
24088 Some(Self { syntax })
24089 } else {
24090 None
24091 }
24092 }
24093 #[inline]
24094 fn syntax(&self) -> &SyntaxNode {
24095 &self.syntax
24096 }
24097}
24098impl AstNode for BinExpr {
24099 #[inline]
24100 fn can_cast(kind: SyntaxKind) -> bool {
24101 kind == SyntaxKind::BIN_EXPR
24102 }
24103 #[inline]
24104 fn cast(syntax: SyntaxNode) -> Option<Self> {
24105 if Self::can_cast(syntax.kind()) {
24106 Some(Self { syntax })
24107 } else {
24108 None
24109 }
24110 }
24111 #[inline]
24112 fn syntax(&self) -> &SyntaxNode {
24113 &self.syntax
24114 }
24115}
24116impl AstNode for BitType {
24117 #[inline]
24118 fn can_cast(kind: SyntaxKind) -> bool {
24119 kind == SyntaxKind::BIT_TYPE
24120 }
24121 #[inline]
24122 fn cast(syntax: SyntaxNode) -> Option<Self> {
24123 if Self::can_cast(syntax.kind()) {
24124 Some(Self { syntax })
24125 } else {
24126 None
24127 }
24128 }
24129 #[inline]
24130 fn syntax(&self) -> &SyntaxNode {
24131 &self.syntax
24132 }
24133}
24134impl AstNode for Call {
24135 #[inline]
24136 fn can_cast(kind: SyntaxKind) -> bool {
24137 kind == SyntaxKind::CALL
24138 }
24139 #[inline]
24140 fn cast(syntax: SyntaxNode) -> Option<Self> {
24141 if Self::can_cast(syntax.kind()) {
24142 Some(Self { syntax })
24143 } else {
24144 None
24145 }
24146 }
24147 #[inline]
24148 fn syntax(&self) -> &SyntaxNode {
24149 &self.syntax
24150 }
24151}
24152impl AstNode for CallExpr {
24153 #[inline]
24154 fn can_cast(kind: SyntaxKind) -> bool {
24155 kind == SyntaxKind::CALL_EXPR
24156 }
24157 #[inline]
24158 fn cast(syntax: SyntaxNode) -> Option<Self> {
24159 if Self::can_cast(syntax.kind()) {
24160 Some(Self { syntax })
24161 } else {
24162 None
24163 }
24164 }
24165 #[inline]
24166 fn syntax(&self) -> &SyntaxNode {
24167 &self.syntax
24168 }
24169}
24170impl AstNode for Cascade {
24171 #[inline]
24172 fn can_cast(kind: SyntaxKind) -> bool {
24173 kind == SyntaxKind::CASCADE
24174 }
24175 #[inline]
24176 fn cast(syntax: SyntaxNode) -> Option<Self> {
24177 if Self::can_cast(syntax.kind()) {
24178 Some(Self { syntax })
24179 } else {
24180 None
24181 }
24182 }
24183 #[inline]
24184 fn syntax(&self) -> &SyntaxNode {
24185 &self.syntax
24186 }
24187}
24188impl AstNode for CaseExpr {
24189 #[inline]
24190 fn can_cast(kind: SyntaxKind) -> bool {
24191 kind == SyntaxKind::CASE_EXPR
24192 }
24193 #[inline]
24194 fn cast(syntax: SyntaxNode) -> Option<Self> {
24195 if Self::can_cast(syntax.kind()) {
24196 Some(Self { syntax })
24197 } else {
24198 None
24199 }
24200 }
24201 #[inline]
24202 fn syntax(&self) -> &SyntaxNode {
24203 &self.syntax
24204 }
24205}
24206impl AstNode for CastExpr {
24207 #[inline]
24208 fn can_cast(kind: SyntaxKind) -> bool {
24209 kind == SyntaxKind::CAST_EXPR
24210 }
24211 #[inline]
24212 fn cast(syntax: SyntaxNode) -> Option<Self> {
24213 if Self::can_cast(syntax.kind()) {
24214 Some(Self { syntax })
24215 } else {
24216 None
24217 }
24218 }
24219 #[inline]
24220 fn syntax(&self) -> &SyntaxNode {
24221 &self.syntax
24222 }
24223}
24224impl AstNode for CastSig {
24225 #[inline]
24226 fn can_cast(kind: SyntaxKind) -> bool {
24227 kind == SyntaxKind::CAST_SIG
24228 }
24229 #[inline]
24230 fn cast(syntax: SyntaxNode) -> Option<Self> {
24231 if Self::can_cast(syntax.kind()) {
24232 Some(Self { syntax })
24233 } else {
24234 None
24235 }
24236 }
24237 #[inline]
24238 fn syntax(&self) -> &SyntaxNode {
24239 &self.syntax
24240 }
24241}
24242impl AstNode for CharType {
24243 #[inline]
24244 fn can_cast(kind: SyntaxKind) -> bool {
24245 kind == SyntaxKind::CHAR_TYPE
24246 }
24247 #[inline]
24248 fn cast(syntax: SyntaxNode) -> Option<Self> {
24249 if Self::can_cast(syntax.kind()) {
24250 Some(Self { syntax })
24251 } else {
24252 None
24253 }
24254 }
24255 #[inline]
24256 fn syntax(&self) -> &SyntaxNode {
24257 &self.syntax
24258 }
24259}
24260impl AstNode for CheckConstraint {
24261 #[inline]
24262 fn can_cast(kind: SyntaxKind) -> bool {
24263 kind == SyntaxKind::CHECK_CONSTRAINT
24264 }
24265 #[inline]
24266 fn cast(syntax: SyntaxNode) -> Option<Self> {
24267 if Self::can_cast(syntax.kind()) {
24268 Some(Self { syntax })
24269 } else {
24270 None
24271 }
24272 }
24273 #[inline]
24274 fn syntax(&self) -> &SyntaxNode {
24275 &self.syntax
24276 }
24277}
24278impl AstNode for Checkpoint {
24279 #[inline]
24280 fn can_cast(kind: SyntaxKind) -> bool {
24281 kind == SyntaxKind::CHECKPOINT
24282 }
24283 #[inline]
24284 fn cast(syntax: SyntaxNode) -> Option<Self> {
24285 if Self::can_cast(syntax.kind()) {
24286 Some(Self { syntax })
24287 } else {
24288 None
24289 }
24290 }
24291 #[inline]
24292 fn syntax(&self) -> &SyntaxNode {
24293 &self.syntax
24294 }
24295}
24296impl AstNode for CheckpointOption {
24297 #[inline]
24298 fn can_cast(kind: SyntaxKind) -> bool {
24299 kind == SyntaxKind::CHECKPOINT_OPTION
24300 }
24301 #[inline]
24302 fn cast(syntax: SyntaxNode) -> Option<Self> {
24303 if Self::can_cast(syntax.kind()) {
24304 Some(Self { syntax })
24305 } else {
24306 None
24307 }
24308 }
24309 #[inline]
24310 fn syntax(&self) -> &SyntaxNode {
24311 &self.syntax
24312 }
24313}
24314impl AstNode for CheckpointOptionList {
24315 #[inline]
24316 fn can_cast(kind: SyntaxKind) -> bool {
24317 kind == SyntaxKind::CHECKPOINT_OPTION_LIST
24318 }
24319 #[inline]
24320 fn cast(syntax: SyntaxNode) -> Option<Self> {
24321 if Self::can_cast(syntax.kind()) {
24322 Some(Self { syntax })
24323 } else {
24324 None
24325 }
24326 }
24327 #[inline]
24328 fn syntax(&self) -> &SyntaxNode {
24329 &self.syntax
24330 }
24331}
24332impl AstNode for Close {
24333 #[inline]
24334 fn can_cast(kind: SyntaxKind) -> bool {
24335 kind == SyntaxKind::CLOSE
24336 }
24337 #[inline]
24338 fn cast(syntax: SyntaxNode) -> Option<Self> {
24339 if Self::can_cast(syntax.kind()) {
24340 Some(Self { syntax })
24341 } else {
24342 None
24343 }
24344 }
24345 #[inline]
24346 fn syntax(&self) -> &SyntaxNode {
24347 &self.syntax
24348 }
24349}
24350impl AstNode for Cluster {
24351 #[inline]
24352 fn can_cast(kind: SyntaxKind) -> bool {
24353 kind == SyntaxKind::CLUSTER
24354 }
24355 #[inline]
24356 fn cast(syntax: SyntaxNode) -> Option<Self> {
24357 if Self::can_cast(syntax.kind()) {
24358 Some(Self { syntax })
24359 } else {
24360 None
24361 }
24362 }
24363 #[inline]
24364 fn syntax(&self) -> &SyntaxNode {
24365 &self.syntax
24366 }
24367}
24368impl AstNode for ClusterOn {
24369 #[inline]
24370 fn can_cast(kind: SyntaxKind) -> bool {
24371 kind == SyntaxKind::CLUSTER_ON
24372 }
24373 #[inline]
24374 fn cast(syntax: SyntaxNode) -> Option<Self> {
24375 if Self::can_cast(syntax.kind()) {
24376 Some(Self { syntax })
24377 } else {
24378 None
24379 }
24380 }
24381 #[inline]
24382 fn syntax(&self) -> &SyntaxNode {
24383 &self.syntax
24384 }
24385}
24386impl AstNode for Collate {
24387 #[inline]
24388 fn can_cast(kind: SyntaxKind) -> bool {
24389 kind == SyntaxKind::COLLATE
24390 }
24391 #[inline]
24392 fn cast(syntax: SyntaxNode) -> Option<Self> {
24393 if Self::can_cast(syntax.kind()) {
24394 Some(Self { syntax })
24395 } else {
24396 None
24397 }
24398 }
24399 #[inline]
24400 fn syntax(&self) -> &SyntaxNode {
24401 &self.syntax
24402 }
24403}
24404impl AstNode for CollationForFn {
24405 #[inline]
24406 fn can_cast(kind: SyntaxKind) -> bool {
24407 kind == SyntaxKind::COLLATION_FOR_FN
24408 }
24409 #[inline]
24410 fn cast(syntax: SyntaxNode) -> Option<Self> {
24411 if Self::can_cast(syntax.kind()) {
24412 Some(Self { syntax })
24413 } else {
24414 None
24415 }
24416 }
24417 #[inline]
24418 fn syntax(&self) -> &SyntaxNode {
24419 &self.syntax
24420 }
24421}
24422impl AstNode for CollationFrom {
24423 #[inline]
24424 fn can_cast(kind: SyntaxKind) -> bool {
24425 kind == SyntaxKind::COLLATION_FROM
24426 }
24427 #[inline]
24428 fn cast(syntax: SyntaxNode) -> Option<Self> {
24429 if Self::can_cast(syntax.kind()) {
24430 Some(Self { syntax })
24431 } else {
24432 None
24433 }
24434 }
24435 #[inline]
24436 fn syntax(&self) -> &SyntaxNode {
24437 &self.syntax
24438 }
24439}
24440impl AstNode for ColonColon {
24441 #[inline]
24442 fn can_cast(kind: SyntaxKind) -> bool {
24443 kind == SyntaxKind::COLON_COLON
24444 }
24445 #[inline]
24446 fn cast(syntax: SyntaxNode) -> Option<Self> {
24447 if Self::can_cast(syntax.kind()) {
24448 Some(Self { syntax })
24449 } else {
24450 None
24451 }
24452 }
24453 #[inline]
24454 fn syntax(&self) -> &SyntaxNode {
24455 &self.syntax
24456 }
24457}
24458impl AstNode for ColonEq {
24459 #[inline]
24460 fn can_cast(kind: SyntaxKind) -> bool {
24461 kind == SyntaxKind::COLON_EQ
24462 }
24463 #[inline]
24464 fn cast(syntax: SyntaxNode) -> Option<Self> {
24465 if Self::can_cast(syntax.kind()) {
24466 Some(Self { syntax })
24467 } else {
24468 None
24469 }
24470 }
24471 #[inline]
24472 fn syntax(&self) -> &SyntaxNode {
24473 &self.syntax
24474 }
24475}
24476impl AstNode for Column {
24477 #[inline]
24478 fn can_cast(kind: SyntaxKind) -> bool {
24479 kind == SyntaxKind::COLUMN
24480 }
24481 #[inline]
24482 fn cast(syntax: SyntaxNode) -> Option<Self> {
24483 if Self::can_cast(syntax.kind()) {
24484 Some(Self { syntax })
24485 } else {
24486 None
24487 }
24488 }
24489 #[inline]
24490 fn syntax(&self) -> &SyntaxNode {
24491 &self.syntax
24492 }
24493}
24494impl AstNode for ColumnList {
24495 #[inline]
24496 fn can_cast(kind: SyntaxKind) -> bool {
24497 kind == SyntaxKind::COLUMN_LIST
24498 }
24499 #[inline]
24500 fn cast(syntax: SyntaxNode) -> Option<Self> {
24501 if Self::can_cast(syntax.kind()) {
24502 Some(Self { syntax })
24503 } else {
24504 None
24505 }
24506 }
24507 #[inline]
24508 fn syntax(&self) -> &SyntaxNode {
24509 &self.syntax
24510 }
24511}
24512impl AstNode for CommentOn {
24513 #[inline]
24514 fn can_cast(kind: SyntaxKind) -> bool {
24515 kind == SyntaxKind::COMMENT_ON
24516 }
24517 #[inline]
24518 fn cast(syntax: SyntaxNode) -> Option<Self> {
24519 if Self::can_cast(syntax.kind()) {
24520 Some(Self { syntax })
24521 } else {
24522 None
24523 }
24524 }
24525 #[inline]
24526 fn syntax(&self) -> &SyntaxNode {
24527 &self.syntax
24528 }
24529}
24530impl AstNode for Commit {
24531 #[inline]
24532 fn can_cast(kind: SyntaxKind) -> bool {
24533 kind == SyntaxKind::COMMIT
24534 }
24535 #[inline]
24536 fn cast(syntax: SyntaxNode) -> Option<Self> {
24537 if Self::can_cast(syntax.kind()) {
24538 Some(Self { syntax })
24539 } else {
24540 None
24541 }
24542 }
24543 #[inline]
24544 fn syntax(&self) -> &SyntaxNode {
24545 &self.syntax
24546 }
24547}
24548impl AstNode for CompoundSelect {
24549 #[inline]
24550 fn can_cast(kind: SyntaxKind) -> bool {
24551 kind == SyntaxKind::COMPOUND_SELECT
24552 }
24553 #[inline]
24554 fn cast(syntax: SyntaxNode) -> Option<Self> {
24555 if Self::can_cast(syntax.kind()) {
24556 Some(Self { syntax })
24557 } else {
24558 None
24559 }
24560 }
24561 #[inline]
24562 fn syntax(&self) -> &SyntaxNode {
24563 &self.syntax
24564 }
24565}
24566impl AstNode for CompressionMethod {
24567 #[inline]
24568 fn can_cast(kind: SyntaxKind) -> bool {
24569 kind == SyntaxKind::COMPRESSION_METHOD
24570 }
24571 #[inline]
24572 fn cast(syntax: SyntaxNode) -> Option<Self> {
24573 if Self::can_cast(syntax.kind()) {
24574 Some(Self { syntax })
24575 } else {
24576 None
24577 }
24578 }
24579 #[inline]
24580 fn syntax(&self) -> &SyntaxNode {
24581 &self.syntax
24582 }
24583}
24584impl AstNode for ConflictDoNothing {
24585 #[inline]
24586 fn can_cast(kind: SyntaxKind) -> bool {
24587 kind == SyntaxKind::CONFLICT_DO_NOTHING
24588 }
24589 #[inline]
24590 fn cast(syntax: SyntaxNode) -> Option<Self> {
24591 if Self::can_cast(syntax.kind()) {
24592 Some(Self { syntax })
24593 } else {
24594 None
24595 }
24596 }
24597 #[inline]
24598 fn syntax(&self) -> &SyntaxNode {
24599 &self.syntax
24600 }
24601}
24602impl AstNode for ConflictDoSelect {
24603 #[inline]
24604 fn can_cast(kind: SyntaxKind) -> bool {
24605 kind == SyntaxKind::CONFLICT_DO_SELECT
24606 }
24607 #[inline]
24608 fn cast(syntax: SyntaxNode) -> Option<Self> {
24609 if Self::can_cast(syntax.kind()) {
24610 Some(Self { syntax })
24611 } else {
24612 None
24613 }
24614 }
24615 #[inline]
24616 fn syntax(&self) -> &SyntaxNode {
24617 &self.syntax
24618 }
24619}
24620impl AstNode for ConflictDoUpdateSet {
24621 #[inline]
24622 fn can_cast(kind: SyntaxKind) -> bool {
24623 kind == SyntaxKind::CONFLICT_DO_UPDATE_SET
24624 }
24625 #[inline]
24626 fn cast(syntax: SyntaxNode) -> Option<Self> {
24627 if Self::can_cast(syntax.kind()) {
24628 Some(Self { syntax })
24629 } else {
24630 None
24631 }
24632 }
24633 #[inline]
24634 fn syntax(&self) -> &SyntaxNode {
24635 &self.syntax
24636 }
24637}
24638impl AstNode for ConflictIndexItem {
24639 #[inline]
24640 fn can_cast(kind: SyntaxKind) -> bool {
24641 kind == SyntaxKind::CONFLICT_INDEX_ITEM
24642 }
24643 #[inline]
24644 fn cast(syntax: SyntaxNode) -> Option<Self> {
24645 if Self::can_cast(syntax.kind()) {
24646 Some(Self { syntax })
24647 } else {
24648 None
24649 }
24650 }
24651 #[inline]
24652 fn syntax(&self) -> &SyntaxNode {
24653 &self.syntax
24654 }
24655}
24656impl AstNode for ConflictIndexItemList {
24657 #[inline]
24658 fn can_cast(kind: SyntaxKind) -> bool {
24659 kind == SyntaxKind::CONFLICT_INDEX_ITEM_LIST
24660 }
24661 #[inline]
24662 fn cast(syntax: SyntaxNode) -> Option<Self> {
24663 if Self::can_cast(syntax.kind()) {
24664 Some(Self { syntax })
24665 } else {
24666 None
24667 }
24668 }
24669 #[inline]
24670 fn syntax(&self) -> &SyntaxNode {
24671 &self.syntax
24672 }
24673}
24674impl AstNode for ConflictOnConstraint {
24675 #[inline]
24676 fn can_cast(kind: SyntaxKind) -> bool {
24677 kind == SyntaxKind::CONFLICT_ON_CONSTRAINT
24678 }
24679 #[inline]
24680 fn cast(syntax: SyntaxNode) -> Option<Self> {
24681 if Self::can_cast(syntax.kind()) {
24682 Some(Self { syntax })
24683 } else {
24684 None
24685 }
24686 }
24687 #[inline]
24688 fn syntax(&self) -> &SyntaxNode {
24689 &self.syntax
24690 }
24691}
24692impl AstNode for ConflictOnIndex {
24693 #[inline]
24694 fn can_cast(kind: SyntaxKind) -> bool {
24695 kind == SyntaxKind::CONFLICT_ON_INDEX
24696 }
24697 #[inline]
24698 fn cast(syntax: SyntaxNode) -> Option<Self> {
24699 if Self::can_cast(syntax.kind()) {
24700 Some(Self { syntax })
24701 } else {
24702 None
24703 }
24704 }
24705 #[inline]
24706 fn syntax(&self) -> &SyntaxNode {
24707 &self.syntax
24708 }
24709}
24710impl AstNode for ConstraintExclusion {
24711 #[inline]
24712 fn can_cast(kind: SyntaxKind) -> bool {
24713 kind == SyntaxKind::CONSTRAINT_EXCLUSION
24714 }
24715 #[inline]
24716 fn cast(syntax: SyntaxNode) -> Option<Self> {
24717 if Self::can_cast(syntax.kind()) {
24718 Some(Self { syntax })
24719 } else {
24720 None
24721 }
24722 }
24723 #[inline]
24724 fn syntax(&self) -> &SyntaxNode {
24725 &self.syntax
24726 }
24727}
24728impl AstNode for ConstraintExclusionList {
24729 #[inline]
24730 fn can_cast(kind: SyntaxKind) -> bool {
24731 kind == SyntaxKind::CONSTRAINT_EXCLUSION_LIST
24732 }
24733 #[inline]
24734 fn cast(syntax: SyntaxNode) -> Option<Self> {
24735 if Self::can_cast(syntax.kind()) {
24736 Some(Self { syntax })
24737 } else {
24738 None
24739 }
24740 }
24741 #[inline]
24742 fn syntax(&self) -> &SyntaxNode {
24743 &self.syntax
24744 }
24745}
24746impl AstNode for ConstraintIncludeClause {
24747 #[inline]
24748 fn can_cast(kind: SyntaxKind) -> bool {
24749 kind == SyntaxKind::CONSTRAINT_INCLUDE_CLAUSE
24750 }
24751 #[inline]
24752 fn cast(syntax: SyntaxNode) -> Option<Self> {
24753 if Self::can_cast(syntax.kind()) {
24754 Some(Self { syntax })
24755 } else {
24756 None
24757 }
24758 }
24759 #[inline]
24760 fn syntax(&self) -> &SyntaxNode {
24761 &self.syntax
24762 }
24763}
24764impl AstNode for ConstraintIndexMethod {
24765 #[inline]
24766 fn can_cast(kind: SyntaxKind) -> bool {
24767 kind == SyntaxKind::CONSTRAINT_INDEX_METHOD
24768 }
24769 #[inline]
24770 fn cast(syntax: SyntaxNode) -> Option<Self> {
24771 if Self::can_cast(syntax.kind()) {
24772 Some(Self { syntax })
24773 } else {
24774 None
24775 }
24776 }
24777 #[inline]
24778 fn syntax(&self) -> &SyntaxNode {
24779 &self.syntax
24780 }
24781}
24782impl AstNode for ConstraintIndexTablespace {
24783 #[inline]
24784 fn can_cast(kind: SyntaxKind) -> bool {
24785 kind == SyntaxKind::CONSTRAINT_INDEX_TABLESPACE
24786 }
24787 #[inline]
24788 fn cast(syntax: SyntaxNode) -> Option<Self> {
24789 if Self::can_cast(syntax.kind()) {
24790 Some(Self { syntax })
24791 } else {
24792 None
24793 }
24794 }
24795 #[inline]
24796 fn syntax(&self) -> &SyntaxNode {
24797 &self.syntax
24798 }
24799}
24800impl AstNode for ConstraintName {
24801 #[inline]
24802 fn can_cast(kind: SyntaxKind) -> bool {
24803 kind == SyntaxKind::CONSTRAINT_NAME
24804 }
24805 #[inline]
24806 fn cast(syntax: SyntaxNode) -> Option<Self> {
24807 if Self::can_cast(syntax.kind()) {
24808 Some(Self { syntax })
24809 } else {
24810 None
24811 }
24812 }
24813 #[inline]
24814 fn syntax(&self) -> &SyntaxNode {
24815 &self.syntax
24816 }
24817}
24818impl AstNode for Copy {
24819 #[inline]
24820 fn can_cast(kind: SyntaxKind) -> bool {
24821 kind == SyntaxKind::COPY
24822 }
24823 #[inline]
24824 fn cast(syntax: SyntaxNode) -> Option<Self> {
24825 if Self::can_cast(syntax.kind()) {
24826 Some(Self { syntax })
24827 } else {
24828 None
24829 }
24830 }
24831 #[inline]
24832 fn syntax(&self) -> &SyntaxNode {
24833 &self.syntax
24834 }
24835}
24836impl AstNode for CopyLegacyOption {
24837 #[inline]
24838 fn can_cast(kind: SyntaxKind) -> bool {
24839 kind == SyntaxKind::COPY_LEGACY_OPTION
24840 }
24841 #[inline]
24842 fn cast(syntax: SyntaxNode) -> Option<Self> {
24843 if Self::can_cast(syntax.kind()) {
24844 Some(Self { syntax })
24845 } else {
24846 None
24847 }
24848 }
24849 #[inline]
24850 fn syntax(&self) -> &SyntaxNode {
24851 &self.syntax
24852 }
24853}
24854impl AstNode for CopyOption {
24855 #[inline]
24856 fn can_cast(kind: SyntaxKind) -> bool {
24857 kind == SyntaxKind::COPY_OPTION
24858 }
24859 #[inline]
24860 fn cast(syntax: SyntaxNode) -> Option<Self> {
24861 if Self::can_cast(syntax.kind()) {
24862 Some(Self { syntax })
24863 } else {
24864 None
24865 }
24866 }
24867 #[inline]
24868 fn syntax(&self) -> &SyntaxNode {
24869 &self.syntax
24870 }
24871}
24872impl AstNode for CopyOptionList {
24873 #[inline]
24874 fn can_cast(kind: SyntaxKind) -> bool {
24875 kind == SyntaxKind::COPY_OPTION_LIST
24876 }
24877 #[inline]
24878 fn cast(syntax: SyntaxNode) -> Option<Self> {
24879 if Self::can_cast(syntax.kind()) {
24880 Some(Self { syntax })
24881 } else {
24882 None
24883 }
24884 }
24885 #[inline]
24886 fn syntax(&self) -> &SyntaxNode {
24887 &self.syntax
24888 }
24889}
24890impl AstNode for CostFuncOption {
24891 #[inline]
24892 fn can_cast(kind: SyntaxKind) -> bool {
24893 kind == SyntaxKind::COST_FUNC_OPTION
24894 }
24895 #[inline]
24896 fn cast(syntax: SyntaxNode) -> Option<Self> {
24897 if Self::can_cast(syntax.kind()) {
24898 Some(Self { syntax })
24899 } else {
24900 None
24901 }
24902 }
24903 #[inline]
24904 fn syntax(&self) -> &SyntaxNode {
24905 &self.syntax
24906 }
24907}
24908impl AstNode for CreateAccessMethod {
24909 #[inline]
24910 fn can_cast(kind: SyntaxKind) -> bool {
24911 kind == SyntaxKind::CREATE_ACCESS_METHOD
24912 }
24913 #[inline]
24914 fn cast(syntax: SyntaxNode) -> Option<Self> {
24915 if Self::can_cast(syntax.kind()) {
24916 Some(Self { syntax })
24917 } else {
24918 None
24919 }
24920 }
24921 #[inline]
24922 fn syntax(&self) -> &SyntaxNode {
24923 &self.syntax
24924 }
24925}
24926impl AstNode for CreateAggregate {
24927 #[inline]
24928 fn can_cast(kind: SyntaxKind) -> bool {
24929 kind == SyntaxKind::CREATE_AGGREGATE
24930 }
24931 #[inline]
24932 fn cast(syntax: SyntaxNode) -> Option<Self> {
24933 if Self::can_cast(syntax.kind()) {
24934 Some(Self { syntax })
24935 } else {
24936 None
24937 }
24938 }
24939 #[inline]
24940 fn syntax(&self) -> &SyntaxNode {
24941 &self.syntax
24942 }
24943}
24944impl AstNode for CreateCast {
24945 #[inline]
24946 fn can_cast(kind: SyntaxKind) -> bool {
24947 kind == SyntaxKind::CREATE_CAST
24948 }
24949 #[inline]
24950 fn cast(syntax: SyntaxNode) -> Option<Self> {
24951 if Self::can_cast(syntax.kind()) {
24952 Some(Self { syntax })
24953 } else {
24954 None
24955 }
24956 }
24957 #[inline]
24958 fn syntax(&self) -> &SyntaxNode {
24959 &self.syntax
24960 }
24961}
24962impl AstNode for CreateCollation {
24963 #[inline]
24964 fn can_cast(kind: SyntaxKind) -> bool {
24965 kind == SyntaxKind::CREATE_COLLATION
24966 }
24967 #[inline]
24968 fn cast(syntax: SyntaxNode) -> Option<Self> {
24969 if Self::can_cast(syntax.kind()) {
24970 Some(Self { syntax })
24971 } else {
24972 None
24973 }
24974 }
24975 #[inline]
24976 fn syntax(&self) -> &SyntaxNode {
24977 &self.syntax
24978 }
24979}
24980impl AstNode for CreateConversion {
24981 #[inline]
24982 fn can_cast(kind: SyntaxKind) -> bool {
24983 kind == SyntaxKind::CREATE_CONVERSION
24984 }
24985 #[inline]
24986 fn cast(syntax: SyntaxNode) -> Option<Self> {
24987 if Self::can_cast(syntax.kind()) {
24988 Some(Self { syntax })
24989 } else {
24990 None
24991 }
24992 }
24993 #[inline]
24994 fn syntax(&self) -> &SyntaxNode {
24995 &self.syntax
24996 }
24997}
24998impl AstNode for CreateDatabase {
24999 #[inline]
25000 fn can_cast(kind: SyntaxKind) -> bool {
25001 kind == SyntaxKind::CREATE_DATABASE
25002 }
25003 #[inline]
25004 fn cast(syntax: SyntaxNode) -> Option<Self> {
25005 if Self::can_cast(syntax.kind()) {
25006 Some(Self { syntax })
25007 } else {
25008 None
25009 }
25010 }
25011 #[inline]
25012 fn syntax(&self) -> &SyntaxNode {
25013 &self.syntax
25014 }
25015}
25016impl AstNode for CreateDomain {
25017 #[inline]
25018 fn can_cast(kind: SyntaxKind) -> bool {
25019 kind == SyntaxKind::CREATE_DOMAIN
25020 }
25021 #[inline]
25022 fn cast(syntax: SyntaxNode) -> Option<Self> {
25023 if Self::can_cast(syntax.kind()) {
25024 Some(Self { syntax })
25025 } else {
25026 None
25027 }
25028 }
25029 #[inline]
25030 fn syntax(&self) -> &SyntaxNode {
25031 &self.syntax
25032 }
25033}
25034impl AstNode for CreateEventTrigger {
25035 #[inline]
25036 fn can_cast(kind: SyntaxKind) -> bool {
25037 kind == SyntaxKind::CREATE_EVENT_TRIGGER
25038 }
25039 #[inline]
25040 fn cast(syntax: SyntaxNode) -> Option<Self> {
25041 if Self::can_cast(syntax.kind()) {
25042 Some(Self { syntax })
25043 } else {
25044 None
25045 }
25046 }
25047 #[inline]
25048 fn syntax(&self) -> &SyntaxNode {
25049 &self.syntax
25050 }
25051}
25052impl AstNode for CreateExtension {
25053 #[inline]
25054 fn can_cast(kind: SyntaxKind) -> bool {
25055 kind == SyntaxKind::CREATE_EXTENSION
25056 }
25057 #[inline]
25058 fn cast(syntax: SyntaxNode) -> Option<Self> {
25059 if Self::can_cast(syntax.kind()) {
25060 Some(Self { syntax })
25061 } else {
25062 None
25063 }
25064 }
25065 #[inline]
25066 fn syntax(&self) -> &SyntaxNode {
25067 &self.syntax
25068 }
25069}
25070impl AstNode for CreateForeignDataWrapper {
25071 #[inline]
25072 fn can_cast(kind: SyntaxKind) -> bool {
25073 kind == SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER
25074 }
25075 #[inline]
25076 fn cast(syntax: SyntaxNode) -> Option<Self> {
25077 if Self::can_cast(syntax.kind()) {
25078 Some(Self { syntax })
25079 } else {
25080 None
25081 }
25082 }
25083 #[inline]
25084 fn syntax(&self) -> &SyntaxNode {
25085 &self.syntax
25086 }
25087}
25088impl AstNode for CreateForeignTable {
25089 #[inline]
25090 fn can_cast(kind: SyntaxKind) -> bool {
25091 kind == SyntaxKind::CREATE_FOREIGN_TABLE
25092 }
25093 #[inline]
25094 fn cast(syntax: SyntaxNode) -> Option<Self> {
25095 if Self::can_cast(syntax.kind()) {
25096 Some(Self { syntax })
25097 } else {
25098 None
25099 }
25100 }
25101 #[inline]
25102 fn syntax(&self) -> &SyntaxNode {
25103 &self.syntax
25104 }
25105}
25106impl AstNode for CreateFunction {
25107 #[inline]
25108 fn can_cast(kind: SyntaxKind) -> bool {
25109 kind == SyntaxKind::CREATE_FUNCTION
25110 }
25111 #[inline]
25112 fn cast(syntax: SyntaxNode) -> Option<Self> {
25113 if Self::can_cast(syntax.kind()) {
25114 Some(Self { syntax })
25115 } else {
25116 None
25117 }
25118 }
25119 #[inline]
25120 fn syntax(&self) -> &SyntaxNode {
25121 &self.syntax
25122 }
25123}
25124impl AstNode for CreateGroup {
25125 #[inline]
25126 fn can_cast(kind: SyntaxKind) -> bool {
25127 kind == SyntaxKind::CREATE_GROUP
25128 }
25129 #[inline]
25130 fn cast(syntax: SyntaxNode) -> Option<Self> {
25131 if Self::can_cast(syntax.kind()) {
25132 Some(Self { syntax })
25133 } else {
25134 None
25135 }
25136 }
25137 #[inline]
25138 fn syntax(&self) -> &SyntaxNode {
25139 &self.syntax
25140 }
25141}
25142impl AstNode for CreateIndex {
25143 #[inline]
25144 fn can_cast(kind: SyntaxKind) -> bool {
25145 kind == SyntaxKind::CREATE_INDEX
25146 }
25147 #[inline]
25148 fn cast(syntax: SyntaxNode) -> Option<Self> {
25149 if Self::can_cast(syntax.kind()) {
25150 Some(Self { syntax })
25151 } else {
25152 None
25153 }
25154 }
25155 #[inline]
25156 fn syntax(&self) -> &SyntaxNode {
25157 &self.syntax
25158 }
25159}
25160impl AstNode for CreateLanguage {
25161 #[inline]
25162 fn can_cast(kind: SyntaxKind) -> bool {
25163 kind == SyntaxKind::CREATE_LANGUAGE
25164 }
25165 #[inline]
25166 fn cast(syntax: SyntaxNode) -> Option<Self> {
25167 if Self::can_cast(syntax.kind()) {
25168 Some(Self { syntax })
25169 } else {
25170 None
25171 }
25172 }
25173 #[inline]
25174 fn syntax(&self) -> &SyntaxNode {
25175 &self.syntax
25176 }
25177}
25178impl AstNode for CreateMaterializedView {
25179 #[inline]
25180 fn can_cast(kind: SyntaxKind) -> bool {
25181 kind == SyntaxKind::CREATE_MATERIALIZED_VIEW
25182 }
25183 #[inline]
25184 fn cast(syntax: SyntaxNode) -> Option<Self> {
25185 if Self::can_cast(syntax.kind()) {
25186 Some(Self { syntax })
25187 } else {
25188 None
25189 }
25190 }
25191 #[inline]
25192 fn syntax(&self) -> &SyntaxNode {
25193 &self.syntax
25194 }
25195}
25196impl AstNode for CreateOperator {
25197 #[inline]
25198 fn can_cast(kind: SyntaxKind) -> bool {
25199 kind == SyntaxKind::CREATE_OPERATOR
25200 }
25201 #[inline]
25202 fn cast(syntax: SyntaxNode) -> Option<Self> {
25203 if Self::can_cast(syntax.kind()) {
25204 Some(Self { syntax })
25205 } else {
25206 None
25207 }
25208 }
25209 #[inline]
25210 fn syntax(&self) -> &SyntaxNode {
25211 &self.syntax
25212 }
25213}
25214impl AstNode for CreateOperatorClass {
25215 #[inline]
25216 fn can_cast(kind: SyntaxKind) -> bool {
25217 kind == SyntaxKind::CREATE_OPERATOR_CLASS
25218 }
25219 #[inline]
25220 fn cast(syntax: SyntaxNode) -> Option<Self> {
25221 if Self::can_cast(syntax.kind()) {
25222 Some(Self { syntax })
25223 } else {
25224 None
25225 }
25226 }
25227 #[inline]
25228 fn syntax(&self) -> &SyntaxNode {
25229 &self.syntax
25230 }
25231}
25232impl AstNode for CreateOperatorFamily {
25233 #[inline]
25234 fn can_cast(kind: SyntaxKind) -> bool {
25235 kind == SyntaxKind::CREATE_OPERATOR_FAMILY
25236 }
25237 #[inline]
25238 fn cast(syntax: SyntaxNode) -> Option<Self> {
25239 if Self::can_cast(syntax.kind()) {
25240 Some(Self { syntax })
25241 } else {
25242 None
25243 }
25244 }
25245 #[inline]
25246 fn syntax(&self) -> &SyntaxNode {
25247 &self.syntax
25248 }
25249}
25250impl AstNode for CreatePolicy {
25251 #[inline]
25252 fn can_cast(kind: SyntaxKind) -> bool {
25253 kind == SyntaxKind::CREATE_POLICY
25254 }
25255 #[inline]
25256 fn cast(syntax: SyntaxNode) -> Option<Self> {
25257 if Self::can_cast(syntax.kind()) {
25258 Some(Self { syntax })
25259 } else {
25260 None
25261 }
25262 }
25263 #[inline]
25264 fn syntax(&self) -> &SyntaxNode {
25265 &self.syntax
25266 }
25267}
25268impl AstNode for CreateProcedure {
25269 #[inline]
25270 fn can_cast(kind: SyntaxKind) -> bool {
25271 kind == SyntaxKind::CREATE_PROCEDURE
25272 }
25273 #[inline]
25274 fn cast(syntax: SyntaxNode) -> Option<Self> {
25275 if Self::can_cast(syntax.kind()) {
25276 Some(Self { syntax })
25277 } else {
25278 None
25279 }
25280 }
25281 #[inline]
25282 fn syntax(&self) -> &SyntaxNode {
25283 &self.syntax
25284 }
25285}
25286impl AstNode for CreatePropertyGraph {
25287 #[inline]
25288 fn can_cast(kind: SyntaxKind) -> bool {
25289 kind == SyntaxKind::CREATE_PROPERTY_GRAPH
25290 }
25291 #[inline]
25292 fn cast(syntax: SyntaxNode) -> Option<Self> {
25293 if Self::can_cast(syntax.kind()) {
25294 Some(Self { syntax })
25295 } else {
25296 None
25297 }
25298 }
25299 #[inline]
25300 fn syntax(&self) -> &SyntaxNode {
25301 &self.syntax
25302 }
25303}
25304impl AstNode for CreatePublication {
25305 #[inline]
25306 fn can_cast(kind: SyntaxKind) -> bool {
25307 kind == SyntaxKind::CREATE_PUBLICATION
25308 }
25309 #[inline]
25310 fn cast(syntax: SyntaxNode) -> Option<Self> {
25311 if Self::can_cast(syntax.kind()) {
25312 Some(Self { syntax })
25313 } else {
25314 None
25315 }
25316 }
25317 #[inline]
25318 fn syntax(&self) -> &SyntaxNode {
25319 &self.syntax
25320 }
25321}
25322impl AstNode for CreateRole {
25323 #[inline]
25324 fn can_cast(kind: SyntaxKind) -> bool {
25325 kind == SyntaxKind::CREATE_ROLE
25326 }
25327 #[inline]
25328 fn cast(syntax: SyntaxNode) -> Option<Self> {
25329 if Self::can_cast(syntax.kind()) {
25330 Some(Self { syntax })
25331 } else {
25332 None
25333 }
25334 }
25335 #[inline]
25336 fn syntax(&self) -> &SyntaxNode {
25337 &self.syntax
25338 }
25339}
25340impl AstNode for CreateRule {
25341 #[inline]
25342 fn can_cast(kind: SyntaxKind) -> bool {
25343 kind == SyntaxKind::CREATE_RULE
25344 }
25345 #[inline]
25346 fn cast(syntax: SyntaxNode) -> Option<Self> {
25347 if Self::can_cast(syntax.kind()) {
25348 Some(Self { syntax })
25349 } else {
25350 None
25351 }
25352 }
25353 #[inline]
25354 fn syntax(&self) -> &SyntaxNode {
25355 &self.syntax
25356 }
25357}
25358impl AstNode for CreateSchema {
25359 #[inline]
25360 fn can_cast(kind: SyntaxKind) -> bool {
25361 kind == SyntaxKind::CREATE_SCHEMA
25362 }
25363 #[inline]
25364 fn cast(syntax: SyntaxNode) -> Option<Self> {
25365 if Self::can_cast(syntax.kind()) {
25366 Some(Self { syntax })
25367 } else {
25368 None
25369 }
25370 }
25371 #[inline]
25372 fn syntax(&self) -> &SyntaxNode {
25373 &self.syntax
25374 }
25375}
25376impl AstNode for CreateSequence {
25377 #[inline]
25378 fn can_cast(kind: SyntaxKind) -> bool {
25379 kind == SyntaxKind::CREATE_SEQUENCE
25380 }
25381 #[inline]
25382 fn cast(syntax: SyntaxNode) -> Option<Self> {
25383 if Self::can_cast(syntax.kind()) {
25384 Some(Self { syntax })
25385 } else {
25386 None
25387 }
25388 }
25389 #[inline]
25390 fn syntax(&self) -> &SyntaxNode {
25391 &self.syntax
25392 }
25393}
25394impl AstNode for CreateServer {
25395 #[inline]
25396 fn can_cast(kind: SyntaxKind) -> bool {
25397 kind == SyntaxKind::CREATE_SERVER
25398 }
25399 #[inline]
25400 fn cast(syntax: SyntaxNode) -> Option<Self> {
25401 if Self::can_cast(syntax.kind()) {
25402 Some(Self { syntax })
25403 } else {
25404 None
25405 }
25406 }
25407 #[inline]
25408 fn syntax(&self) -> &SyntaxNode {
25409 &self.syntax
25410 }
25411}
25412impl AstNode for CreateStatistics {
25413 #[inline]
25414 fn can_cast(kind: SyntaxKind) -> bool {
25415 kind == SyntaxKind::CREATE_STATISTICS
25416 }
25417 #[inline]
25418 fn cast(syntax: SyntaxNode) -> Option<Self> {
25419 if Self::can_cast(syntax.kind()) {
25420 Some(Self { syntax })
25421 } else {
25422 None
25423 }
25424 }
25425 #[inline]
25426 fn syntax(&self) -> &SyntaxNode {
25427 &self.syntax
25428 }
25429}
25430impl AstNode for CreateSubscription {
25431 #[inline]
25432 fn can_cast(kind: SyntaxKind) -> bool {
25433 kind == SyntaxKind::CREATE_SUBSCRIPTION
25434 }
25435 #[inline]
25436 fn cast(syntax: SyntaxNode) -> Option<Self> {
25437 if Self::can_cast(syntax.kind()) {
25438 Some(Self { syntax })
25439 } else {
25440 None
25441 }
25442 }
25443 #[inline]
25444 fn syntax(&self) -> &SyntaxNode {
25445 &self.syntax
25446 }
25447}
25448impl AstNode for CreateTable {
25449 #[inline]
25450 fn can_cast(kind: SyntaxKind) -> bool {
25451 kind == SyntaxKind::CREATE_TABLE
25452 }
25453 #[inline]
25454 fn cast(syntax: SyntaxNode) -> Option<Self> {
25455 if Self::can_cast(syntax.kind()) {
25456 Some(Self { syntax })
25457 } else {
25458 None
25459 }
25460 }
25461 #[inline]
25462 fn syntax(&self) -> &SyntaxNode {
25463 &self.syntax
25464 }
25465}
25466impl AstNode for CreateTableAs {
25467 #[inline]
25468 fn can_cast(kind: SyntaxKind) -> bool {
25469 kind == SyntaxKind::CREATE_TABLE_AS
25470 }
25471 #[inline]
25472 fn cast(syntax: SyntaxNode) -> Option<Self> {
25473 if Self::can_cast(syntax.kind()) {
25474 Some(Self { syntax })
25475 } else {
25476 None
25477 }
25478 }
25479 #[inline]
25480 fn syntax(&self) -> &SyntaxNode {
25481 &self.syntax
25482 }
25483}
25484impl AstNode for CreateTablespace {
25485 #[inline]
25486 fn can_cast(kind: SyntaxKind) -> bool {
25487 kind == SyntaxKind::CREATE_TABLESPACE
25488 }
25489 #[inline]
25490 fn cast(syntax: SyntaxNode) -> Option<Self> {
25491 if Self::can_cast(syntax.kind()) {
25492 Some(Self { syntax })
25493 } else {
25494 None
25495 }
25496 }
25497 #[inline]
25498 fn syntax(&self) -> &SyntaxNode {
25499 &self.syntax
25500 }
25501}
25502impl AstNode for CreateTextSearchConfiguration {
25503 #[inline]
25504 fn can_cast(kind: SyntaxKind) -> bool {
25505 kind == SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION
25506 }
25507 #[inline]
25508 fn cast(syntax: SyntaxNode) -> Option<Self> {
25509 if Self::can_cast(syntax.kind()) {
25510 Some(Self { syntax })
25511 } else {
25512 None
25513 }
25514 }
25515 #[inline]
25516 fn syntax(&self) -> &SyntaxNode {
25517 &self.syntax
25518 }
25519}
25520impl AstNode for CreateTextSearchDictionary {
25521 #[inline]
25522 fn can_cast(kind: SyntaxKind) -> bool {
25523 kind == SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY
25524 }
25525 #[inline]
25526 fn cast(syntax: SyntaxNode) -> Option<Self> {
25527 if Self::can_cast(syntax.kind()) {
25528 Some(Self { syntax })
25529 } else {
25530 None
25531 }
25532 }
25533 #[inline]
25534 fn syntax(&self) -> &SyntaxNode {
25535 &self.syntax
25536 }
25537}
25538impl AstNode for CreateTextSearchParser {
25539 #[inline]
25540 fn can_cast(kind: SyntaxKind) -> bool {
25541 kind == SyntaxKind::CREATE_TEXT_SEARCH_PARSER
25542 }
25543 #[inline]
25544 fn cast(syntax: SyntaxNode) -> Option<Self> {
25545 if Self::can_cast(syntax.kind()) {
25546 Some(Self { syntax })
25547 } else {
25548 None
25549 }
25550 }
25551 #[inline]
25552 fn syntax(&self) -> &SyntaxNode {
25553 &self.syntax
25554 }
25555}
25556impl AstNode for CreateTextSearchTemplate {
25557 #[inline]
25558 fn can_cast(kind: SyntaxKind) -> bool {
25559 kind == SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE
25560 }
25561 #[inline]
25562 fn cast(syntax: SyntaxNode) -> Option<Self> {
25563 if Self::can_cast(syntax.kind()) {
25564 Some(Self { syntax })
25565 } else {
25566 None
25567 }
25568 }
25569 #[inline]
25570 fn syntax(&self) -> &SyntaxNode {
25571 &self.syntax
25572 }
25573}
25574impl AstNode for CreateTransform {
25575 #[inline]
25576 fn can_cast(kind: SyntaxKind) -> bool {
25577 kind == SyntaxKind::CREATE_TRANSFORM
25578 }
25579 #[inline]
25580 fn cast(syntax: SyntaxNode) -> Option<Self> {
25581 if Self::can_cast(syntax.kind()) {
25582 Some(Self { syntax })
25583 } else {
25584 None
25585 }
25586 }
25587 #[inline]
25588 fn syntax(&self) -> &SyntaxNode {
25589 &self.syntax
25590 }
25591}
25592impl AstNode for CreateTrigger {
25593 #[inline]
25594 fn can_cast(kind: SyntaxKind) -> bool {
25595 kind == SyntaxKind::CREATE_TRIGGER
25596 }
25597 #[inline]
25598 fn cast(syntax: SyntaxNode) -> Option<Self> {
25599 if Self::can_cast(syntax.kind()) {
25600 Some(Self { syntax })
25601 } else {
25602 None
25603 }
25604 }
25605 #[inline]
25606 fn syntax(&self) -> &SyntaxNode {
25607 &self.syntax
25608 }
25609}
25610impl AstNode for CreateType {
25611 #[inline]
25612 fn can_cast(kind: SyntaxKind) -> bool {
25613 kind == SyntaxKind::CREATE_TYPE
25614 }
25615 #[inline]
25616 fn cast(syntax: SyntaxNode) -> Option<Self> {
25617 if Self::can_cast(syntax.kind()) {
25618 Some(Self { syntax })
25619 } else {
25620 None
25621 }
25622 }
25623 #[inline]
25624 fn syntax(&self) -> &SyntaxNode {
25625 &self.syntax
25626 }
25627}
25628impl AstNode for CreateUser {
25629 #[inline]
25630 fn can_cast(kind: SyntaxKind) -> bool {
25631 kind == SyntaxKind::CREATE_USER
25632 }
25633 #[inline]
25634 fn cast(syntax: SyntaxNode) -> Option<Self> {
25635 if Self::can_cast(syntax.kind()) {
25636 Some(Self { syntax })
25637 } else {
25638 None
25639 }
25640 }
25641 #[inline]
25642 fn syntax(&self) -> &SyntaxNode {
25643 &self.syntax
25644 }
25645}
25646impl AstNode for CreateUserMapping {
25647 #[inline]
25648 fn can_cast(kind: SyntaxKind) -> bool {
25649 kind == SyntaxKind::CREATE_USER_MAPPING
25650 }
25651 #[inline]
25652 fn cast(syntax: SyntaxNode) -> Option<Self> {
25653 if Self::can_cast(syntax.kind()) {
25654 Some(Self { syntax })
25655 } else {
25656 None
25657 }
25658 }
25659 #[inline]
25660 fn syntax(&self) -> &SyntaxNode {
25661 &self.syntax
25662 }
25663}
25664impl AstNode for CreateView {
25665 #[inline]
25666 fn can_cast(kind: SyntaxKind) -> bool {
25667 kind == SyntaxKind::CREATE_VIEW
25668 }
25669 #[inline]
25670 fn cast(syntax: SyntaxNode) -> Option<Self> {
25671 if Self::can_cast(syntax.kind()) {
25672 Some(Self { syntax })
25673 } else {
25674 None
25675 }
25676 }
25677 #[inline]
25678 fn syntax(&self) -> &SyntaxNode {
25679 &self.syntax
25680 }
25681}
25682impl AstNode for CurrentRow {
25683 #[inline]
25684 fn can_cast(kind: SyntaxKind) -> bool {
25685 kind == SyntaxKind::CURRENT_ROW
25686 }
25687 #[inline]
25688 fn cast(syntax: SyntaxNode) -> Option<Self> {
25689 if Self::can_cast(syntax.kind()) {
25690 Some(Self { syntax })
25691 } else {
25692 None
25693 }
25694 }
25695 #[inline]
25696 fn syntax(&self) -> &SyntaxNode {
25697 &self.syntax
25698 }
25699}
25700impl AstNode for CustomOp {
25701 #[inline]
25702 fn can_cast(kind: SyntaxKind) -> bool {
25703 kind == SyntaxKind::CUSTOM_OP
25704 }
25705 #[inline]
25706 fn cast(syntax: SyntaxNode) -> Option<Self> {
25707 if Self::can_cast(syntax.kind()) {
25708 Some(Self { syntax })
25709 } else {
25710 None
25711 }
25712 }
25713 #[inline]
25714 fn syntax(&self) -> &SyntaxNode {
25715 &self.syntax
25716 }
25717}
25718impl AstNode for CycleClause {
25719 #[inline]
25720 fn can_cast(kind: SyntaxKind) -> bool {
25721 kind == SyntaxKind::CYCLE_CLAUSE
25722 }
25723 #[inline]
25724 fn cast(syntax: SyntaxNode) -> Option<Self> {
25725 if Self::can_cast(syntax.kind()) {
25726 Some(Self { syntax })
25727 } else {
25728 None
25729 }
25730 }
25731 #[inline]
25732 fn syntax(&self) -> &SyntaxNode {
25733 &self.syntax
25734 }
25735}
25736impl AstNode for CycleColumnTo {
25737 #[inline]
25738 fn can_cast(kind: SyntaxKind) -> bool {
25739 kind == SyntaxKind::CYCLE_COLUMN_TO
25740 }
25741 #[inline]
25742 fn cast(syntax: SyntaxNode) -> Option<Self> {
25743 if Self::can_cast(syntax.kind()) {
25744 Some(Self { syntax })
25745 } else {
25746 None
25747 }
25748 }
25749 #[inline]
25750 fn syntax(&self) -> &SyntaxNode {
25751 &self.syntax
25752 }
25753}
25754impl AstNode for CycleColumns {
25755 #[inline]
25756 fn can_cast(kind: SyntaxKind) -> bool {
25757 kind == SyntaxKind::CYCLE_COLUMNS
25758 }
25759 #[inline]
25760 fn cast(syntax: SyntaxNode) -> Option<Self> {
25761 if Self::can_cast(syntax.kind()) {
25762 Some(Self { syntax })
25763 } else {
25764 None
25765 }
25766 }
25767 #[inline]
25768 fn syntax(&self) -> &SyntaxNode {
25769 &self.syntax
25770 }
25771}
25772impl AstNode for CycleDefault {
25773 #[inline]
25774 fn can_cast(kind: SyntaxKind) -> bool {
25775 kind == SyntaxKind::CYCLE_DEFAULT
25776 }
25777 #[inline]
25778 fn cast(syntax: SyntaxNode) -> Option<Self> {
25779 if Self::can_cast(syntax.kind()) {
25780 Some(Self { syntax })
25781 } else {
25782 None
25783 }
25784 }
25785 #[inline]
25786 fn syntax(&self) -> &SyntaxNode {
25787 &self.syntax
25788 }
25789}
25790impl AstNode for CyclePath {
25791 #[inline]
25792 fn can_cast(kind: SyntaxKind) -> bool {
25793 kind == SyntaxKind::CYCLE_PATH
25794 }
25795 #[inline]
25796 fn cast(syntax: SyntaxNode) -> Option<Self> {
25797 if Self::can_cast(syntax.kind()) {
25798 Some(Self { syntax })
25799 } else {
25800 None
25801 }
25802 }
25803 #[inline]
25804 fn syntax(&self) -> &SyntaxNode {
25805 &self.syntax
25806 }
25807}
25808impl AstNode for CycleSetColumn {
25809 #[inline]
25810 fn can_cast(kind: SyntaxKind) -> bool {
25811 kind == SyntaxKind::CYCLE_SET_COLUMN
25812 }
25813 #[inline]
25814 fn cast(syntax: SyntaxNode) -> Option<Self> {
25815 if Self::can_cast(syntax.kind()) {
25816 Some(Self { syntax })
25817 } else {
25818 None
25819 }
25820 }
25821 #[inline]
25822 fn syntax(&self) -> &SyntaxNode {
25823 &self.syntax
25824 }
25825}
25826impl AstNode for DatabaseOption {
25827 #[inline]
25828 fn can_cast(kind: SyntaxKind) -> bool {
25829 kind == SyntaxKind::DATABASE_OPTION
25830 }
25831 #[inline]
25832 fn cast(syntax: SyntaxNode) -> Option<Self> {
25833 if Self::can_cast(syntax.kind()) {
25834 Some(Self { syntax })
25835 } else {
25836 None
25837 }
25838 }
25839 #[inline]
25840 fn syntax(&self) -> &SyntaxNode {
25841 &self.syntax
25842 }
25843}
25844impl AstNode for DatabaseOptionList {
25845 #[inline]
25846 fn can_cast(kind: SyntaxKind) -> bool {
25847 kind == SyntaxKind::DATABASE_OPTION_LIST
25848 }
25849 #[inline]
25850 fn cast(syntax: SyntaxNode) -> Option<Self> {
25851 if Self::can_cast(syntax.kind()) {
25852 Some(Self { syntax })
25853 } else {
25854 None
25855 }
25856 }
25857 #[inline]
25858 fn syntax(&self) -> &SyntaxNode {
25859 &self.syntax
25860 }
25861}
25862impl AstNode for Deallocate {
25863 #[inline]
25864 fn can_cast(kind: SyntaxKind) -> bool {
25865 kind == SyntaxKind::DEALLOCATE
25866 }
25867 #[inline]
25868 fn cast(syntax: SyntaxNode) -> Option<Self> {
25869 if Self::can_cast(syntax.kind()) {
25870 Some(Self { syntax })
25871 } else {
25872 None
25873 }
25874 }
25875 #[inline]
25876 fn syntax(&self) -> &SyntaxNode {
25877 &self.syntax
25878 }
25879}
25880impl AstNode for Declare {
25881 #[inline]
25882 fn can_cast(kind: SyntaxKind) -> bool {
25883 kind == SyntaxKind::DECLARE
25884 }
25885 #[inline]
25886 fn cast(syntax: SyntaxNode) -> Option<Self> {
25887 if Self::can_cast(syntax.kind()) {
25888 Some(Self { syntax })
25889 } else {
25890 None
25891 }
25892 }
25893 #[inline]
25894 fn syntax(&self) -> &SyntaxNode {
25895 &self.syntax
25896 }
25897}
25898impl AstNode for DefaultConstraint {
25899 #[inline]
25900 fn can_cast(kind: SyntaxKind) -> bool {
25901 kind == SyntaxKind::DEFAULT_CONSTRAINT
25902 }
25903 #[inline]
25904 fn cast(syntax: SyntaxNode) -> Option<Self> {
25905 if Self::can_cast(syntax.kind()) {
25906 Some(Self { syntax })
25907 } else {
25908 None
25909 }
25910 }
25911 #[inline]
25912 fn syntax(&self) -> &SyntaxNode {
25913 &self.syntax
25914 }
25915}
25916impl AstNode for Deferrable {
25917 #[inline]
25918 fn can_cast(kind: SyntaxKind) -> bool {
25919 kind == SyntaxKind::DEFERRABLE
25920 }
25921 #[inline]
25922 fn cast(syntax: SyntaxNode) -> Option<Self> {
25923 if Self::can_cast(syntax.kind()) {
25924 Some(Self { syntax })
25925 } else {
25926 None
25927 }
25928 }
25929 #[inline]
25930 fn syntax(&self) -> &SyntaxNode {
25931 &self.syntax
25932 }
25933}
25934impl AstNode for DeferrableConstraintOption {
25935 #[inline]
25936 fn can_cast(kind: SyntaxKind) -> bool {
25937 kind == SyntaxKind::DEFERRABLE_CONSTRAINT_OPTION
25938 }
25939 #[inline]
25940 fn cast(syntax: SyntaxNode) -> Option<Self> {
25941 if Self::can_cast(syntax.kind()) {
25942 Some(Self { syntax })
25943 } else {
25944 None
25945 }
25946 }
25947 #[inline]
25948 fn syntax(&self) -> &SyntaxNode {
25949 &self.syntax
25950 }
25951}
25952impl AstNode for Delete {
25953 #[inline]
25954 fn can_cast(kind: SyntaxKind) -> bool {
25955 kind == SyntaxKind::DELETE
25956 }
25957 #[inline]
25958 fn cast(syntax: SyntaxNode) -> Option<Self> {
25959 if Self::can_cast(syntax.kind()) {
25960 Some(Self { syntax })
25961 } else {
25962 None
25963 }
25964 }
25965 #[inline]
25966 fn syntax(&self) -> &SyntaxNode {
25967 &self.syntax
25968 }
25969}
25970impl AstNode for DeleteRows {
25971 #[inline]
25972 fn can_cast(kind: SyntaxKind) -> bool {
25973 kind == SyntaxKind::DELETE_ROWS
25974 }
25975 #[inline]
25976 fn cast(syntax: SyntaxNode) -> Option<Self> {
25977 if Self::can_cast(syntax.kind()) {
25978 Some(Self { syntax })
25979 } else {
25980 None
25981 }
25982 }
25983 #[inline]
25984 fn syntax(&self) -> &SyntaxNode {
25985 &self.syntax
25986 }
25987}
25988impl AstNode for DependsOnExtension {
25989 #[inline]
25990 fn can_cast(kind: SyntaxKind) -> bool {
25991 kind == SyntaxKind::DEPENDS_ON_EXTENSION
25992 }
25993 #[inline]
25994 fn cast(syntax: SyntaxNode) -> Option<Self> {
25995 if Self::can_cast(syntax.kind()) {
25996 Some(Self { syntax })
25997 } else {
25998 None
25999 }
26000 }
26001 #[inline]
26002 fn syntax(&self) -> &SyntaxNode {
26003 &self.syntax
26004 }
26005}
26006impl AstNode for DestVertexTable {
26007 #[inline]
26008 fn can_cast(kind: SyntaxKind) -> bool {
26009 kind == SyntaxKind::DEST_VERTEX_TABLE
26010 }
26011 #[inline]
26012 fn cast(syntax: SyntaxNode) -> Option<Self> {
26013 if Self::can_cast(syntax.kind()) {
26014 Some(Self { syntax })
26015 } else {
26016 None
26017 }
26018 }
26019 #[inline]
26020 fn syntax(&self) -> &SyntaxNode {
26021 &self.syntax
26022 }
26023}
26024impl AstNode for DetachPartition {
26025 #[inline]
26026 fn can_cast(kind: SyntaxKind) -> bool {
26027 kind == SyntaxKind::DETACH_PARTITION
26028 }
26029 #[inline]
26030 fn cast(syntax: SyntaxNode) -> Option<Self> {
26031 if Self::can_cast(syntax.kind()) {
26032 Some(Self { syntax })
26033 } else {
26034 None
26035 }
26036 }
26037 #[inline]
26038 fn syntax(&self) -> &SyntaxNode {
26039 &self.syntax
26040 }
26041}
26042impl AstNode for DisableRls {
26043 #[inline]
26044 fn can_cast(kind: SyntaxKind) -> bool {
26045 kind == SyntaxKind::DISABLE_RLS
26046 }
26047 #[inline]
26048 fn cast(syntax: SyntaxNode) -> Option<Self> {
26049 if Self::can_cast(syntax.kind()) {
26050 Some(Self { syntax })
26051 } else {
26052 None
26053 }
26054 }
26055 #[inline]
26056 fn syntax(&self) -> &SyntaxNode {
26057 &self.syntax
26058 }
26059}
26060impl AstNode for DisableRule {
26061 #[inline]
26062 fn can_cast(kind: SyntaxKind) -> bool {
26063 kind == SyntaxKind::DISABLE_RULE
26064 }
26065 #[inline]
26066 fn cast(syntax: SyntaxNode) -> Option<Self> {
26067 if Self::can_cast(syntax.kind()) {
26068 Some(Self { syntax })
26069 } else {
26070 None
26071 }
26072 }
26073 #[inline]
26074 fn syntax(&self) -> &SyntaxNode {
26075 &self.syntax
26076 }
26077}
26078impl AstNode for DisableTrigger {
26079 #[inline]
26080 fn can_cast(kind: SyntaxKind) -> bool {
26081 kind == SyntaxKind::DISABLE_TRIGGER
26082 }
26083 #[inline]
26084 fn cast(syntax: SyntaxNode) -> Option<Self> {
26085 if Self::can_cast(syntax.kind()) {
26086 Some(Self { syntax })
26087 } else {
26088 None
26089 }
26090 }
26091 #[inline]
26092 fn syntax(&self) -> &SyntaxNode {
26093 &self.syntax
26094 }
26095}
26096impl AstNode for Discard {
26097 #[inline]
26098 fn can_cast(kind: SyntaxKind) -> bool {
26099 kind == SyntaxKind::DISCARD
26100 }
26101 #[inline]
26102 fn cast(syntax: SyntaxNode) -> Option<Self> {
26103 if Self::can_cast(syntax.kind()) {
26104 Some(Self { syntax })
26105 } else {
26106 None
26107 }
26108 }
26109 #[inline]
26110 fn syntax(&self) -> &SyntaxNode {
26111 &self.syntax
26112 }
26113}
26114impl AstNode for DistinctClause {
26115 #[inline]
26116 fn can_cast(kind: SyntaxKind) -> bool {
26117 kind == SyntaxKind::DISTINCT_CLAUSE
26118 }
26119 #[inline]
26120 fn cast(syntax: SyntaxNode) -> Option<Self> {
26121 if Self::can_cast(syntax.kind()) {
26122 Some(Self { syntax })
26123 } else {
26124 None
26125 }
26126 }
26127 #[inline]
26128 fn syntax(&self) -> &SyntaxNode {
26129 &self.syntax
26130 }
26131}
26132impl AstNode for Do {
26133 #[inline]
26134 fn can_cast(kind: SyntaxKind) -> bool {
26135 kind == SyntaxKind::DO
26136 }
26137 #[inline]
26138 fn cast(syntax: SyntaxNode) -> Option<Self> {
26139 if Self::can_cast(syntax.kind()) {
26140 Some(Self { syntax })
26141 } else {
26142 None
26143 }
26144 }
26145 #[inline]
26146 fn syntax(&self) -> &SyntaxNode {
26147 &self.syntax
26148 }
26149}
26150impl AstNode for DoubleType {
26151 #[inline]
26152 fn can_cast(kind: SyntaxKind) -> bool {
26153 kind == SyntaxKind::DOUBLE_TYPE
26154 }
26155 #[inline]
26156 fn cast(syntax: SyntaxNode) -> Option<Self> {
26157 if Self::can_cast(syntax.kind()) {
26158 Some(Self { syntax })
26159 } else {
26160 None
26161 }
26162 }
26163 #[inline]
26164 fn syntax(&self) -> &SyntaxNode {
26165 &self.syntax
26166 }
26167}
26168impl AstNode for Drop {
26169 #[inline]
26170 fn can_cast(kind: SyntaxKind) -> bool {
26171 kind == SyntaxKind::DROP
26172 }
26173 #[inline]
26174 fn cast(syntax: SyntaxNode) -> Option<Self> {
26175 if Self::can_cast(syntax.kind()) {
26176 Some(Self { syntax })
26177 } else {
26178 None
26179 }
26180 }
26181 #[inline]
26182 fn syntax(&self) -> &SyntaxNode {
26183 &self.syntax
26184 }
26185}
26186impl AstNode for DropAccessMethod {
26187 #[inline]
26188 fn can_cast(kind: SyntaxKind) -> bool {
26189 kind == SyntaxKind::DROP_ACCESS_METHOD
26190 }
26191 #[inline]
26192 fn cast(syntax: SyntaxNode) -> Option<Self> {
26193 if Self::can_cast(syntax.kind()) {
26194 Some(Self { syntax })
26195 } else {
26196 None
26197 }
26198 }
26199 #[inline]
26200 fn syntax(&self) -> &SyntaxNode {
26201 &self.syntax
26202 }
26203}
26204impl AstNode for DropAggregate {
26205 #[inline]
26206 fn can_cast(kind: SyntaxKind) -> bool {
26207 kind == SyntaxKind::DROP_AGGREGATE
26208 }
26209 #[inline]
26210 fn cast(syntax: SyntaxNode) -> Option<Self> {
26211 if Self::can_cast(syntax.kind()) {
26212 Some(Self { syntax })
26213 } else {
26214 None
26215 }
26216 }
26217 #[inline]
26218 fn syntax(&self) -> &SyntaxNode {
26219 &self.syntax
26220 }
26221}
26222impl AstNode for DropAttribute {
26223 #[inline]
26224 fn can_cast(kind: SyntaxKind) -> bool {
26225 kind == SyntaxKind::DROP_ATTRIBUTE
26226 }
26227 #[inline]
26228 fn cast(syntax: SyntaxNode) -> Option<Self> {
26229 if Self::can_cast(syntax.kind()) {
26230 Some(Self { syntax })
26231 } else {
26232 None
26233 }
26234 }
26235 #[inline]
26236 fn syntax(&self) -> &SyntaxNode {
26237 &self.syntax
26238 }
26239}
26240impl AstNode for DropCast {
26241 #[inline]
26242 fn can_cast(kind: SyntaxKind) -> bool {
26243 kind == SyntaxKind::DROP_CAST
26244 }
26245 #[inline]
26246 fn cast(syntax: SyntaxNode) -> Option<Self> {
26247 if Self::can_cast(syntax.kind()) {
26248 Some(Self { syntax })
26249 } else {
26250 None
26251 }
26252 }
26253 #[inline]
26254 fn syntax(&self) -> &SyntaxNode {
26255 &self.syntax
26256 }
26257}
26258impl AstNode for DropCollation {
26259 #[inline]
26260 fn can_cast(kind: SyntaxKind) -> bool {
26261 kind == SyntaxKind::DROP_COLLATION
26262 }
26263 #[inline]
26264 fn cast(syntax: SyntaxNode) -> Option<Self> {
26265 if Self::can_cast(syntax.kind()) {
26266 Some(Self { syntax })
26267 } else {
26268 None
26269 }
26270 }
26271 #[inline]
26272 fn syntax(&self) -> &SyntaxNode {
26273 &self.syntax
26274 }
26275}
26276impl AstNode for DropColumn {
26277 #[inline]
26278 fn can_cast(kind: SyntaxKind) -> bool {
26279 kind == SyntaxKind::DROP_COLUMN
26280 }
26281 #[inline]
26282 fn cast(syntax: SyntaxNode) -> Option<Self> {
26283 if Self::can_cast(syntax.kind()) {
26284 Some(Self { syntax })
26285 } else {
26286 None
26287 }
26288 }
26289 #[inline]
26290 fn syntax(&self) -> &SyntaxNode {
26291 &self.syntax
26292 }
26293}
26294impl AstNode for DropConstraint {
26295 #[inline]
26296 fn can_cast(kind: SyntaxKind) -> bool {
26297 kind == SyntaxKind::DROP_CONSTRAINT
26298 }
26299 #[inline]
26300 fn cast(syntax: SyntaxNode) -> Option<Self> {
26301 if Self::can_cast(syntax.kind()) {
26302 Some(Self { syntax })
26303 } else {
26304 None
26305 }
26306 }
26307 #[inline]
26308 fn syntax(&self) -> &SyntaxNode {
26309 &self.syntax
26310 }
26311}
26312impl AstNode for DropConversion {
26313 #[inline]
26314 fn can_cast(kind: SyntaxKind) -> bool {
26315 kind == SyntaxKind::DROP_CONVERSION
26316 }
26317 #[inline]
26318 fn cast(syntax: SyntaxNode) -> Option<Self> {
26319 if Self::can_cast(syntax.kind()) {
26320 Some(Self { syntax })
26321 } else {
26322 None
26323 }
26324 }
26325 #[inline]
26326 fn syntax(&self) -> &SyntaxNode {
26327 &self.syntax
26328 }
26329}
26330impl AstNode for DropDatabase {
26331 #[inline]
26332 fn can_cast(kind: SyntaxKind) -> bool {
26333 kind == SyntaxKind::DROP_DATABASE
26334 }
26335 #[inline]
26336 fn cast(syntax: SyntaxNode) -> Option<Self> {
26337 if Self::can_cast(syntax.kind()) {
26338 Some(Self { syntax })
26339 } else {
26340 None
26341 }
26342 }
26343 #[inline]
26344 fn syntax(&self) -> &SyntaxNode {
26345 &self.syntax
26346 }
26347}
26348impl AstNode for DropDefault {
26349 #[inline]
26350 fn can_cast(kind: SyntaxKind) -> bool {
26351 kind == SyntaxKind::DROP_DEFAULT
26352 }
26353 #[inline]
26354 fn cast(syntax: SyntaxNode) -> Option<Self> {
26355 if Self::can_cast(syntax.kind()) {
26356 Some(Self { syntax })
26357 } else {
26358 None
26359 }
26360 }
26361 #[inline]
26362 fn syntax(&self) -> &SyntaxNode {
26363 &self.syntax
26364 }
26365}
26366impl AstNode for DropDomain {
26367 #[inline]
26368 fn can_cast(kind: SyntaxKind) -> bool {
26369 kind == SyntaxKind::DROP_DOMAIN
26370 }
26371 #[inline]
26372 fn cast(syntax: SyntaxNode) -> Option<Self> {
26373 if Self::can_cast(syntax.kind()) {
26374 Some(Self { syntax })
26375 } else {
26376 None
26377 }
26378 }
26379 #[inline]
26380 fn syntax(&self) -> &SyntaxNode {
26381 &self.syntax
26382 }
26383}
26384impl AstNode for DropEdgeTables {
26385 #[inline]
26386 fn can_cast(kind: SyntaxKind) -> bool {
26387 kind == SyntaxKind::DROP_EDGE_TABLES
26388 }
26389 #[inline]
26390 fn cast(syntax: SyntaxNode) -> Option<Self> {
26391 if Self::can_cast(syntax.kind()) {
26392 Some(Self { syntax })
26393 } else {
26394 None
26395 }
26396 }
26397 #[inline]
26398 fn syntax(&self) -> &SyntaxNode {
26399 &self.syntax
26400 }
26401}
26402impl AstNode for DropEventTrigger {
26403 #[inline]
26404 fn can_cast(kind: SyntaxKind) -> bool {
26405 kind == SyntaxKind::DROP_EVENT_TRIGGER
26406 }
26407 #[inline]
26408 fn cast(syntax: SyntaxNode) -> Option<Self> {
26409 if Self::can_cast(syntax.kind()) {
26410 Some(Self { syntax })
26411 } else {
26412 None
26413 }
26414 }
26415 #[inline]
26416 fn syntax(&self) -> &SyntaxNode {
26417 &self.syntax
26418 }
26419}
26420impl AstNode for DropExpression {
26421 #[inline]
26422 fn can_cast(kind: SyntaxKind) -> bool {
26423 kind == SyntaxKind::DROP_EXPRESSION
26424 }
26425 #[inline]
26426 fn cast(syntax: SyntaxNode) -> Option<Self> {
26427 if Self::can_cast(syntax.kind()) {
26428 Some(Self { syntax })
26429 } else {
26430 None
26431 }
26432 }
26433 #[inline]
26434 fn syntax(&self) -> &SyntaxNode {
26435 &self.syntax
26436 }
26437}
26438impl AstNode for DropExtension {
26439 #[inline]
26440 fn can_cast(kind: SyntaxKind) -> bool {
26441 kind == SyntaxKind::DROP_EXTENSION
26442 }
26443 #[inline]
26444 fn cast(syntax: SyntaxNode) -> Option<Self> {
26445 if Self::can_cast(syntax.kind()) {
26446 Some(Self { syntax })
26447 } else {
26448 None
26449 }
26450 }
26451 #[inline]
26452 fn syntax(&self) -> &SyntaxNode {
26453 &self.syntax
26454 }
26455}
26456impl AstNode for DropForeignDataWrapper {
26457 #[inline]
26458 fn can_cast(kind: SyntaxKind) -> bool {
26459 kind == SyntaxKind::DROP_FOREIGN_DATA_WRAPPER
26460 }
26461 #[inline]
26462 fn cast(syntax: SyntaxNode) -> Option<Self> {
26463 if Self::can_cast(syntax.kind()) {
26464 Some(Self { syntax })
26465 } else {
26466 None
26467 }
26468 }
26469 #[inline]
26470 fn syntax(&self) -> &SyntaxNode {
26471 &self.syntax
26472 }
26473}
26474impl AstNode for DropForeignTable {
26475 #[inline]
26476 fn can_cast(kind: SyntaxKind) -> bool {
26477 kind == SyntaxKind::DROP_FOREIGN_TABLE
26478 }
26479 #[inline]
26480 fn cast(syntax: SyntaxNode) -> Option<Self> {
26481 if Self::can_cast(syntax.kind()) {
26482 Some(Self { syntax })
26483 } else {
26484 None
26485 }
26486 }
26487 #[inline]
26488 fn syntax(&self) -> &SyntaxNode {
26489 &self.syntax
26490 }
26491}
26492impl AstNode for DropFunction {
26493 #[inline]
26494 fn can_cast(kind: SyntaxKind) -> bool {
26495 kind == SyntaxKind::DROP_FUNCTION
26496 }
26497 #[inline]
26498 fn cast(syntax: SyntaxNode) -> Option<Self> {
26499 if Self::can_cast(syntax.kind()) {
26500 Some(Self { syntax })
26501 } else {
26502 None
26503 }
26504 }
26505 #[inline]
26506 fn syntax(&self) -> &SyntaxNode {
26507 &self.syntax
26508 }
26509}
26510impl AstNode for DropGroup {
26511 #[inline]
26512 fn can_cast(kind: SyntaxKind) -> bool {
26513 kind == SyntaxKind::DROP_GROUP
26514 }
26515 #[inline]
26516 fn cast(syntax: SyntaxNode) -> Option<Self> {
26517 if Self::can_cast(syntax.kind()) {
26518 Some(Self { syntax })
26519 } else {
26520 None
26521 }
26522 }
26523 #[inline]
26524 fn syntax(&self) -> &SyntaxNode {
26525 &self.syntax
26526 }
26527}
26528impl AstNode for DropIdentity {
26529 #[inline]
26530 fn can_cast(kind: SyntaxKind) -> bool {
26531 kind == SyntaxKind::DROP_IDENTITY
26532 }
26533 #[inline]
26534 fn cast(syntax: SyntaxNode) -> Option<Self> {
26535 if Self::can_cast(syntax.kind()) {
26536 Some(Self { syntax })
26537 } else {
26538 None
26539 }
26540 }
26541 #[inline]
26542 fn syntax(&self) -> &SyntaxNode {
26543 &self.syntax
26544 }
26545}
26546impl AstNode for DropIndex {
26547 #[inline]
26548 fn can_cast(kind: SyntaxKind) -> bool {
26549 kind == SyntaxKind::DROP_INDEX
26550 }
26551 #[inline]
26552 fn cast(syntax: SyntaxNode) -> Option<Self> {
26553 if Self::can_cast(syntax.kind()) {
26554 Some(Self { syntax })
26555 } else {
26556 None
26557 }
26558 }
26559 #[inline]
26560 fn syntax(&self) -> &SyntaxNode {
26561 &self.syntax
26562 }
26563}
26564impl AstNode for DropLanguage {
26565 #[inline]
26566 fn can_cast(kind: SyntaxKind) -> bool {
26567 kind == SyntaxKind::DROP_LANGUAGE
26568 }
26569 #[inline]
26570 fn cast(syntax: SyntaxNode) -> Option<Self> {
26571 if Self::can_cast(syntax.kind()) {
26572 Some(Self { syntax })
26573 } else {
26574 None
26575 }
26576 }
26577 #[inline]
26578 fn syntax(&self) -> &SyntaxNode {
26579 &self.syntax
26580 }
26581}
26582impl AstNode for DropMaterializedView {
26583 #[inline]
26584 fn can_cast(kind: SyntaxKind) -> bool {
26585 kind == SyntaxKind::DROP_MATERIALIZED_VIEW
26586 }
26587 #[inline]
26588 fn cast(syntax: SyntaxNode) -> Option<Self> {
26589 if Self::can_cast(syntax.kind()) {
26590 Some(Self { syntax })
26591 } else {
26592 None
26593 }
26594 }
26595 #[inline]
26596 fn syntax(&self) -> &SyntaxNode {
26597 &self.syntax
26598 }
26599}
26600impl AstNode for DropNotNull {
26601 #[inline]
26602 fn can_cast(kind: SyntaxKind) -> bool {
26603 kind == SyntaxKind::DROP_NOT_NULL
26604 }
26605 #[inline]
26606 fn cast(syntax: SyntaxNode) -> Option<Self> {
26607 if Self::can_cast(syntax.kind()) {
26608 Some(Self { syntax })
26609 } else {
26610 None
26611 }
26612 }
26613 #[inline]
26614 fn syntax(&self) -> &SyntaxNode {
26615 &self.syntax
26616 }
26617}
26618impl AstNode for DropOpClassOption {
26619 #[inline]
26620 fn can_cast(kind: SyntaxKind) -> bool {
26621 kind == SyntaxKind::DROP_OP_CLASS_OPTION
26622 }
26623 #[inline]
26624 fn cast(syntax: SyntaxNode) -> Option<Self> {
26625 if Self::can_cast(syntax.kind()) {
26626 Some(Self { syntax })
26627 } else {
26628 None
26629 }
26630 }
26631 #[inline]
26632 fn syntax(&self) -> &SyntaxNode {
26633 &self.syntax
26634 }
26635}
26636impl AstNode for DropOpClassOptionList {
26637 #[inline]
26638 fn can_cast(kind: SyntaxKind) -> bool {
26639 kind == SyntaxKind::DROP_OP_CLASS_OPTION_LIST
26640 }
26641 #[inline]
26642 fn cast(syntax: SyntaxNode) -> Option<Self> {
26643 if Self::can_cast(syntax.kind()) {
26644 Some(Self { syntax })
26645 } else {
26646 None
26647 }
26648 }
26649 #[inline]
26650 fn syntax(&self) -> &SyntaxNode {
26651 &self.syntax
26652 }
26653}
26654impl AstNode for DropOpClassOptions {
26655 #[inline]
26656 fn can_cast(kind: SyntaxKind) -> bool {
26657 kind == SyntaxKind::DROP_OP_CLASS_OPTIONS
26658 }
26659 #[inline]
26660 fn cast(syntax: SyntaxNode) -> Option<Self> {
26661 if Self::can_cast(syntax.kind()) {
26662 Some(Self { syntax })
26663 } else {
26664 None
26665 }
26666 }
26667 #[inline]
26668 fn syntax(&self) -> &SyntaxNode {
26669 &self.syntax
26670 }
26671}
26672impl AstNode for DropOperator {
26673 #[inline]
26674 fn can_cast(kind: SyntaxKind) -> bool {
26675 kind == SyntaxKind::DROP_OPERATOR
26676 }
26677 #[inline]
26678 fn cast(syntax: SyntaxNode) -> Option<Self> {
26679 if Self::can_cast(syntax.kind()) {
26680 Some(Self { syntax })
26681 } else {
26682 None
26683 }
26684 }
26685 #[inline]
26686 fn syntax(&self) -> &SyntaxNode {
26687 &self.syntax
26688 }
26689}
26690impl AstNode for DropOperatorClass {
26691 #[inline]
26692 fn can_cast(kind: SyntaxKind) -> bool {
26693 kind == SyntaxKind::DROP_OPERATOR_CLASS
26694 }
26695 #[inline]
26696 fn cast(syntax: SyntaxNode) -> Option<Self> {
26697 if Self::can_cast(syntax.kind()) {
26698 Some(Self { syntax })
26699 } else {
26700 None
26701 }
26702 }
26703 #[inline]
26704 fn syntax(&self) -> &SyntaxNode {
26705 &self.syntax
26706 }
26707}
26708impl AstNode for DropOperatorFamily {
26709 #[inline]
26710 fn can_cast(kind: SyntaxKind) -> bool {
26711 kind == SyntaxKind::DROP_OPERATOR_FAMILY
26712 }
26713 #[inline]
26714 fn cast(syntax: SyntaxNode) -> Option<Self> {
26715 if Self::can_cast(syntax.kind()) {
26716 Some(Self { syntax })
26717 } else {
26718 None
26719 }
26720 }
26721 #[inline]
26722 fn syntax(&self) -> &SyntaxNode {
26723 &self.syntax
26724 }
26725}
26726impl AstNode for DropOwned {
26727 #[inline]
26728 fn can_cast(kind: SyntaxKind) -> bool {
26729 kind == SyntaxKind::DROP_OWNED
26730 }
26731 #[inline]
26732 fn cast(syntax: SyntaxNode) -> Option<Self> {
26733 if Self::can_cast(syntax.kind()) {
26734 Some(Self { syntax })
26735 } else {
26736 None
26737 }
26738 }
26739 #[inline]
26740 fn syntax(&self) -> &SyntaxNode {
26741 &self.syntax
26742 }
26743}
26744impl AstNode for DropPolicy {
26745 #[inline]
26746 fn can_cast(kind: SyntaxKind) -> bool {
26747 kind == SyntaxKind::DROP_POLICY
26748 }
26749 #[inline]
26750 fn cast(syntax: SyntaxNode) -> Option<Self> {
26751 if Self::can_cast(syntax.kind()) {
26752 Some(Self { syntax })
26753 } else {
26754 None
26755 }
26756 }
26757 #[inline]
26758 fn syntax(&self) -> &SyntaxNode {
26759 &self.syntax
26760 }
26761}
26762impl AstNode for DropProcedure {
26763 #[inline]
26764 fn can_cast(kind: SyntaxKind) -> bool {
26765 kind == SyntaxKind::DROP_PROCEDURE
26766 }
26767 #[inline]
26768 fn cast(syntax: SyntaxNode) -> Option<Self> {
26769 if Self::can_cast(syntax.kind()) {
26770 Some(Self { syntax })
26771 } else {
26772 None
26773 }
26774 }
26775 #[inline]
26776 fn syntax(&self) -> &SyntaxNode {
26777 &self.syntax
26778 }
26779}
26780impl AstNode for DropPropertyGraph {
26781 #[inline]
26782 fn can_cast(kind: SyntaxKind) -> bool {
26783 kind == SyntaxKind::DROP_PROPERTY_GRAPH
26784 }
26785 #[inline]
26786 fn cast(syntax: SyntaxNode) -> Option<Self> {
26787 if Self::can_cast(syntax.kind()) {
26788 Some(Self { syntax })
26789 } else {
26790 None
26791 }
26792 }
26793 #[inline]
26794 fn syntax(&self) -> &SyntaxNode {
26795 &self.syntax
26796 }
26797}
26798impl AstNode for DropPublication {
26799 #[inline]
26800 fn can_cast(kind: SyntaxKind) -> bool {
26801 kind == SyntaxKind::DROP_PUBLICATION
26802 }
26803 #[inline]
26804 fn cast(syntax: SyntaxNode) -> Option<Self> {
26805 if Self::can_cast(syntax.kind()) {
26806 Some(Self { syntax })
26807 } else {
26808 None
26809 }
26810 }
26811 #[inline]
26812 fn syntax(&self) -> &SyntaxNode {
26813 &self.syntax
26814 }
26815}
26816impl AstNode for DropRole {
26817 #[inline]
26818 fn can_cast(kind: SyntaxKind) -> bool {
26819 kind == SyntaxKind::DROP_ROLE
26820 }
26821 #[inline]
26822 fn cast(syntax: SyntaxNode) -> Option<Self> {
26823 if Self::can_cast(syntax.kind()) {
26824 Some(Self { syntax })
26825 } else {
26826 None
26827 }
26828 }
26829 #[inline]
26830 fn syntax(&self) -> &SyntaxNode {
26831 &self.syntax
26832 }
26833}
26834impl AstNode for DropRoutine {
26835 #[inline]
26836 fn can_cast(kind: SyntaxKind) -> bool {
26837 kind == SyntaxKind::DROP_ROUTINE
26838 }
26839 #[inline]
26840 fn cast(syntax: SyntaxNode) -> Option<Self> {
26841 if Self::can_cast(syntax.kind()) {
26842 Some(Self { syntax })
26843 } else {
26844 None
26845 }
26846 }
26847 #[inline]
26848 fn syntax(&self) -> &SyntaxNode {
26849 &self.syntax
26850 }
26851}
26852impl AstNode for DropRule {
26853 #[inline]
26854 fn can_cast(kind: SyntaxKind) -> bool {
26855 kind == SyntaxKind::DROP_RULE
26856 }
26857 #[inline]
26858 fn cast(syntax: SyntaxNode) -> Option<Self> {
26859 if Self::can_cast(syntax.kind()) {
26860 Some(Self { syntax })
26861 } else {
26862 None
26863 }
26864 }
26865 #[inline]
26866 fn syntax(&self) -> &SyntaxNode {
26867 &self.syntax
26868 }
26869}
26870impl AstNode for DropSchema {
26871 #[inline]
26872 fn can_cast(kind: SyntaxKind) -> bool {
26873 kind == SyntaxKind::DROP_SCHEMA
26874 }
26875 #[inline]
26876 fn cast(syntax: SyntaxNode) -> Option<Self> {
26877 if Self::can_cast(syntax.kind()) {
26878 Some(Self { syntax })
26879 } else {
26880 None
26881 }
26882 }
26883 #[inline]
26884 fn syntax(&self) -> &SyntaxNode {
26885 &self.syntax
26886 }
26887}
26888impl AstNode for DropSequence {
26889 #[inline]
26890 fn can_cast(kind: SyntaxKind) -> bool {
26891 kind == SyntaxKind::DROP_SEQUENCE
26892 }
26893 #[inline]
26894 fn cast(syntax: SyntaxNode) -> Option<Self> {
26895 if Self::can_cast(syntax.kind()) {
26896 Some(Self { syntax })
26897 } else {
26898 None
26899 }
26900 }
26901 #[inline]
26902 fn syntax(&self) -> &SyntaxNode {
26903 &self.syntax
26904 }
26905}
26906impl AstNode for DropServer {
26907 #[inline]
26908 fn can_cast(kind: SyntaxKind) -> bool {
26909 kind == SyntaxKind::DROP_SERVER
26910 }
26911 #[inline]
26912 fn cast(syntax: SyntaxNode) -> Option<Self> {
26913 if Self::can_cast(syntax.kind()) {
26914 Some(Self { syntax })
26915 } else {
26916 None
26917 }
26918 }
26919 #[inline]
26920 fn syntax(&self) -> &SyntaxNode {
26921 &self.syntax
26922 }
26923}
26924impl AstNode for DropStatistics {
26925 #[inline]
26926 fn can_cast(kind: SyntaxKind) -> bool {
26927 kind == SyntaxKind::DROP_STATISTICS
26928 }
26929 #[inline]
26930 fn cast(syntax: SyntaxNode) -> Option<Self> {
26931 if Self::can_cast(syntax.kind()) {
26932 Some(Self { syntax })
26933 } else {
26934 None
26935 }
26936 }
26937 #[inline]
26938 fn syntax(&self) -> &SyntaxNode {
26939 &self.syntax
26940 }
26941}
26942impl AstNode for DropSubscription {
26943 #[inline]
26944 fn can_cast(kind: SyntaxKind) -> bool {
26945 kind == SyntaxKind::DROP_SUBSCRIPTION
26946 }
26947 #[inline]
26948 fn cast(syntax: SyntaxNode) -> Option<Self> {
26949 if Self::can_cast(syntax.kind()) {
26950 Some(Self { syntax })
26951 } else {
26952 None
26953 }
26954 }
26955 #[inline]
26956 fn syntax(&self) -> &SyntaxNode {
26957 &self.syntax
26958 }
26959}
26960impl AstNode for DropTable {
26961 #[inline]
26962 fn can_cast(kind: SyntaxKind) -> bool {
26963 kind == SyntaxKind::DROP_TABLE
26964 }
26965 #[inline]
26966 fn cast(syntax: SyntaxNode) -> Option<Self> {
26967 if Self::can_cast(syntax.kind()) {
26968 Some(Self { syntax })
26969 } else {
26970 None
26971 }
26972 }
26973 #[inline]
26974 fn syntax(&self) -> &SyntaxNode {
26975 &self.syntax
26976 }
26977}
26978impl AstNode for DropTablespace {
26979 #[inline]
26980 fn can_cast(kind: SyntaxKind) -> bool {
26981 kind == SyntaxKind::DROP_TABLESPACE
26982 }
26983 #[inline]
26984 fn cast(syntax: SyntaxNode) -> Option<Self> {
26985 if Self::can_cast(syntax.kind()) {
26986 Some(Self { syntax })
26987 } else {
26988 None
26989 }
26990 }
26991 #[inline]
26992 fn syntax(&self) -> &SyntaxNode {
26993 &self.syntax
26994 }
26995}
26996impl AstNode for DropTextSearchConfig {
26997 #[inline]
26998 fn can_cast(kind: SyntaxKind) -> bool {
26999 kind == SyntaxKind::DROP_TEXT_SEARCH_CONFIG
27000 }
27001 #[inline]
27002 fn cast(syntax: SyntaxNode) -> Option<Self> {
27003 if Self::can_cast(syntax.kind()) {
27004 Some(Self { syntax })
27005 } else {
27006 None
27007 }
27008 }
27009 #[inline]
27010 fn syntax(&self) -> &SyntaxNode {
27011 &self.syntax
27012 }
27013}
27014impl AstNode for DropTextSearchDict {
27015 #[inline]
27016 fn can_cast(kind: SyntaxKind) -> bool {
27017 kind == SyntaxKind::DROP_TEXT_SEARCH_DICT
27018 }
27019 #[inline]
27020 fn cast(syntax: SyntaxNode) -> Option<Self> {
27021 if Self::can_cast(syntax.kind()) {
27022 Some(Self { syntax })
27023 } else {
27024 None
27025 }
27026 }
27027 #[inline]
27028 fn syntax(&self) -> &SyntaxNode {
27029 &self.syntax
27030 }
27031}
27032impl AstNode for DropTextSearchParser {
27033 #[inline]
27034 fn can_cast(kind: SyntaxKind) -> bool {
27035 kind == SyntaxKind::DROP_TEXT_SEARCH_PARSER
27036 }
27037 #[inline]
27038 fn cast(syntax: SyntaxNode) -> Option<Self> {
27039 if Self::can_cast(syntax.kind()) {
27040 Some(Self { syntax })
27041 } else {
27042 None
27043 }
27044 }
27045 #[inline]
27046 fn syntax(&self) -> &SyntaxNode {
27047 &self.syntax
27048 }
27049}
27050impl AstNode for DropTextSearchTemplate {
27051 #[inline]
27052 fn can_cast(kind: SyntaxKind) -> bool {
27053 kind == SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE
27054 }
27055 #[inline]
27056 fn cast(syntax: SyntaxNode) -> Option<Self> {
27057 if Self::can_cast(syntax.kind()) {
27058 Some(Self { syntax })
27059 } else {
27060 None
27061 }
27062 }
27063 #[inline]
27064 fn syntax(&self) -> &SyntaxNode {
27065 &self.syntax
27066 }
27067}
27068impl AstNode for DropTransform {
27069 #[inline]
27070 fn can_cast(kind: SyntaxKind) -> bool {
27071 kind == SyntaxKind::DROP_TRANSFORM
27072 }
27073 #[inline]
27074 fn cast(syntax: SyntaxNode) -> Option<Self> {
27075 if Self::can_cast(syntax.kind()) {
27076 Some(Self { syntax })
27077 } else {
27078 None
27079 }
27080 }
27081 #[inline]
27082 fn syntax(&self) -> &SyntaxNode {
27083 &self.syntax
27084 }
27085}
27086impl AstNode for DropTrigger {
27087 #[inline]
27088 fn can_cast(kind: SyntaxKind) -> bool {
27089 kind == SyntaxKind::DROP_TRIGGER
27090 }
27091 #[inline]
27092 fn cast(syntax: SyntaxNode) -> Option<Self> {
27093 if Self::can_cast(syntax.kind()) {
27094 Some(Self { syntax })
27095 } else {
27096 None
27097 }
27098 }
27099 #[inline]
27100 fn syntax(&self) -> &SyntaxNode {
27101 &self.syntax
27102 }
27103}
27104impl AstNode for DropType {
27105 #[inline]
27106 fn can_cast(kind: SyntaxKind) -> bool {
27107 kind == SyntaxKind::DROP_TYPE
27108 }
27109 #[inline]
27110 fn cast(syntax: SyntaxNode) -> Option<Self> {
27111 if Self::can_cast(syntax.kind()) {
27112 Some(Self { syntax })
27113 } else {
27114 None
27115 }
27116 }
27117 #[inline]
27118 fn syntax(&self) -> &SyntaxNode {
27119 &self.syntax
27120 }
27121}
27122impl AstNode for DropUser {
27123 #[inline]
27124 fn can_cast(kind: SyntaxKind) -> bool {
27125 kind == SyntaxKind::DROP_USER
27126 }
27127 #[inline]
27128 fn cast(syntax: SyntaxNode) -> Option<Self> {
27129 if Self::can_cast(syntax.kind()) {
27130 Some(Self { syntax })
27131 } else {
27132 None
27133 }
27134 }
27135 #[inline]
27136 fn syntax(&self) -> &SyntaxNode {
27137 &self.syntax
27138 }
27139}
27140impl AstNode for DropUserMapping {
27141 #[inline]
27142 fn can_cast(kind: SyntaxKind) -> bool {
27143 kind == SyntaxKind::DROP_USER_MAPPING
27144 }
27145 #[inline]
27146 fn cast(syntax: SyntaxNode) -> Option<Self> {
27147 if Self::can_cast(syntax.kind()) {
27148 Some(Self { syntax })
27149 } else {
27150 None
27151 }
27152 }
27153 #[inline]
27154 fn syntax(&self) -> &SyntaxNode {
27155 &self.syntax
27156 }
27157}
27158impl AstNode for DropVertexEdgeLabel {
27159 #[inline]
27160 fn can_cast(kind: SyntaxKind) -> bool {
27161 kind == SyntaxKind::DROP_VERTEX_EDGE_LABEL
27162 }
27163 #[inline]
27164 fn cast(syntax: SyntaxNode) -> Option<Self> {
27165 if Self::can_cast(syntax.kind()) {
27166 Some(Self { syntax })
27167 } else {
27168 None
27169 }
27170 }
27171 #[inline]
27172 fn syntax(&self) -> &SyntaxNode {
27173 &self.syntax
27174 }
27175}
27176impl AstNode for DropVertexEdgeLabelProperties {
27177 #[inline]
27178 fn can_cast(kind: SyntaxKind) -> bool {
27179 kind == SyntaxKind::DROP_VERTEX_EDGE_LABEL_PROPERTIES
27180 }
27181 #[inline]
27182 fn cast(syntax: SyntaxNode) -> Option<Self> {
27183 if Self::can_cast(syntax.kind()) {
27184 Some(Self { syntax })
27185 } else {
27186 None
27187 }
27188 }
27189 #[inline]
27190 fn syntax(&self) -> &SyntaxNode {
27191 &self.syntax
27192 }
27193}
27194impl AstNode for DropVertexTables {
27195 #[inline]
27196 fn can_cast(kind: SyntaxKind) -> bool {
27197 kind == SyntaxKind::DROP_VERTEX_TABLES
27198 }
27199 #[inline]
27200 fn cast(syntax: SyntaxNode) -> Option<Self> {
27201 if Self::can_cast(syntax.kind()) {
27202 Some(Self { syntax })
27203 } else {
27204 None
27205 }
27206 }
27207 #[inline]
27208 fn syntax(&self) -> &SyntaxNode {
27209 &self.syntax
27210 }
27211}
27212impl AstNode for DropView {
27213 #[inline]
27214 fn can_cast(kind: SyntaxKind) -> bool {
27215 kind == SyntaxKind::DROP_VIEW
27216 }
27217 #[inline]
27218 fn cast(syntax: SyntaxNode) -> Option<Self> {
27219 if Self::can_cast(syntax.kind()) {
27220 Some(Self { syntax })
27221 } else {
27222 None
27223 }
27224 }
27225 #[inline]
27226 fn syntax(&self) -> &SyntaxNode {
27227 &self.syntax
27228 }
27229}
27230impl AstNode for EdgeAny {
27231 #[inline]
27232 fn can_cast(kind: SyntaxKind) -> bool {
27233 kind == SyntaxKind::EDGE_ANY
27234 }
27235 #[inline]
27236 fn cast(syntax: SyntaxNode) -> Option<Self> {
27237 if Self::can_cast(syntax.kind()) {
27238 Some(Self { syntax })
27239 } else {
27240 None
27241 }
27242 }
27243 #[inline]
27244 fn syntax(&self) -> &SyntaxNode {
27245 &self.syntax
27246 }
27247}
27248impl AstNode for EdgeLeft {
27249 #[inline]
27250 fn can_cast(kind: SyntaxKind) -> bool {
27251 kind == SyntaxKind::EDGE_LEFT
27252 }
27253 #[inline]
27254 fn cast(syntax: SyntaxNode) -> Option<Self> {
27255 if Self::can_cast(syntax.kind()) {
27256 Some(Self { syntax })
27257 } else {
27258 None
27259 }
27260 }
27261 #[inline]
27262 fn syntax(&self) -> &SyntaxNode {
27263 &self.syntax
27264 }
27265}
27266impl AstNode for EdgeRight {
27267 #[inline]
27268 fn can_cast(kind: SyntaxKind) -> bool {
27269 kind == SyntaxKind::EDGE_RIGHT
27270 }
27271 #[inline]
27272 fn cast(syntax: SyntaxNode) -> Option<Self> {
27273 if Self::can_cast(syntax.kind()) {
27274 Some(Self { syntax })
27275 } else {
27276 None
27277 }
27278 }
27279 #[inline]
27280 fn syntax(&self) -> &SyntaxNode {
27281 &self.syntax
27282 }
27283}
27284impl AstNode for EdgeTableDef {
27285 #[inline]
27286 fn can_cast(kind: SyntaxKind) -> bool {
27287 kind == SyntaxKind::EDGE_TABLE_DEF
27288 }
27289 #[inline]
27290 fn cast(syntax: SyntaxNode) -> Option<Self> {
27291 if Self::can_cast(syntax.kind()) {
27292 Some(Self { syntax })
27293 } else {
27294 None
27295 }
27296 }
27297 #[inline]
27298 fn syntax(&self) -> &SyntaxNode {
27299 &self.syntax
27300 }
27301}
27302impl AstNode for EdgeTables {
27303 #[inline]
27304 fn can_cast(kind: SyntaxKind) -> bool {
27305 kind == SyntaxKind::EDGE_TABLES
27306 }
27307 #[inline]
27308 fn cast(syntax: SyntaxNode) -> Option<Self> {
27309 if Self::can_cast(syntax.kind()) {
27310 Some(Self { syntax })
27311 } else {
27312 None
27313 }
27314 }
27315 #[inline]
27316 fn syntax(&self) -> &SyntaxNode {
27317 &self.syntax
27318 }
27319}
27320impl AstNode for ElseClause {
27321 #[inline]
27322 fn can_cast(kind: SyntaxKind) -> bool {
27323 kind == SyntaxKind::ELSE_CLAUSE
27324 }
27325 #[inline]
27326 fn cast(syntax: SyntaxNode) -> Option<Self> {
27327 if Self::can_cast(syntax.kind()) {
27328 Some(Self { syntax })
27329 } else {
27330 None
27331 }
27332 }
27333 #[inline]
27334 fn syntax(&self) -> &SyntaxNode {
27335 &self.syntax
27336 }
27337}
27338impl AstNode for EmptyStmt {
27339 #[inline]
27340 fn can_cast(kind: SyntaxKind) -> bool {
27341 kind == SyntaxKind::EMPTY_STMT
27342 }
27343 #[inline]
27344 fn cast(syntax: SyntaxNode) -> Option<Self> {
27345 if Self::can_cast(syntax.kind()) {
27346 Some(Self { syntax })
27347 } else {
27348 None
27349 }
27350 }
27351 #[inline]
27352 fn syntax(&self) -> &SyntaxNode {
27353 &self.syntax
27354 }
27355}
27356impl AstNode for EnableAlwaysRule {
27357 #[inline]
27358 fn can_cast(kind: SyntaxKind) -> bool {
27359 kind == SyntaxKind::ENABLE_ALWAYS_RULE
27360 }
27361 #[inline]
27362 fn cast(syntax: SyntaxNode) -> Option<Self> {
27363 if Self::can_cast(syntax.kind()) {
27364 Some(Self { syntax })
27365 } else {
27366 None
27367 }
27368 }
27369 #[inline]
27370 fn syntax(&self) -> &SyntaxNode {
27371 &self.syntax
27372 }
27373}
27374impl AstNode for EnableAlwaysTrigger {
27375 #[inline]
27376 fn can_cast(kind: SyntaxKind) -> bool {
27377 kind == SyntaxKind::ENABLE_ALWAYS_TRIGGER
27378 }
27379 #[inline]
27380 fn cast(syntax: SyntaxNode) -> Option<Self> {
27381 if Self::can_cast(syntax.kind()) {
27382 Some(Self { syntax })
27383 } else {
27384 None
27385 }
27386 }
27387 #[inline]
27388 fn syntax(&self) -> &SyntaxNode {
27389 &self.syntax
27390 }
27391}
27392impl AstNode for EnableReplicaRule {
27393 #[inline]
27394 fn can_cast(kind: SyntaxKind) -> bool {
27395 kind == SyntaxKind::ENABLE_REPLICA_RULE
27396 }
27397 #[inline]
27398 fn cast(syntax: SyntaxNode) -> Option<Self> {
27399 if Self::can_cast(syntax.kind()) {
27400 Some(Self { syntax })
27401 } else {
27402 None
27403 }
27404 }
27405 #[inline]
27406 fn syntax(&self) -> &SyntaxNode {
27407 &self.syntax
27408 }
27409}
27410impl AstNode for EnableReplicaTrigger {
27411 #[inline]
27412 fn can_cast(kind: SyntaxKind) -> bool {
27413 kind == SyntaxKind::ENABLE_REPLICA_TRIGGER
27414 }
27415 #[inline]
27416 fn cast(syntax: SyntaxNode) -> Option<Self> {
27417 if Self::can_cast(syntax.kind()) {
27418 Some(Self { syntax })
27419 } else {
27420 None
27421 }
27422 }
27423 #[inline]
27424 fn syntax(&self) -> &SyntaxNode {
27425 &self.syntax
27426 }
27427}
27428impl AstNode for EnableRls {
27429 #[inline]
27430 fn can_cast(kind: SyntaxKind) -> bool {
27431 kind == SyntaxKind::ENABLE_RLS
27432 }
27433 #[inline]
27434 fn cast(syntax: SyntaxNode) -> Option<Self> {
27435 if Self::can_cast(syntax.kind()) {
27436 Some(Self { syntax })
27437 } else {
27438 None
27439 }
27440 }
27441 #[inline]
27442 fn syntax(&self) -> &SyntaxNode {
27443 &self.syntax
27444 }
27445}
27446impl AstNode for EnableRule {
27447 #[inline]
27448 fn can_cast(kind: SyntaxKind) -> bool {
27449 kind == SyntaxKind::ENABLE_RULE
27450 }
27451 #[inline]
27452 fn cast(syntax: SyntaxNode) -> Option<Self> {
27453 if Self::can_cast(syntax.kind()) {
27454 Some(Self { syntax })
27455 } else {
27456 None
27457 }
27458 }
27459 #[inline]
27460 fn syntax(&self) -> &SyntaxNode {
27461 &self.syntax
27462 }
27463}
27464impl AstNode for EnableTrigger {
27465 #[inline]
27466 fn can_cast(kind: SyntaxKind) -> bool {
27467 kind == SyntaxKind::ENABLE_TRIGGER
27468 }
27469 #[inline]
27470 fn cast(syntax: SyntaxNode) -> Option<Self> {
27471 if Self::can_cast(syntax.kind()) {
27472 Some(Self { syntax })
27473 } else {
27474 None
27475 }
27476 }
27477 #[inline]
27478 fn syntax(&self) -> &SyntaxNode {
27479 &self.syntax
27480 }
27481}
27482impl AstNode for Enforced {
27483 #[inline]
27484 fn can_cast(kind: SyntaxKind) -> bool {
27485 kind == SyntaxKind::ENFORCED
27486 }
27487 #[inline]
27488 fn cast(syntax: SyntaxNode) -> Option<Self> {
27489 if Self::can_cast(syntax.kind()) {
27490 Some(Self { syntax })
27491 } else {
27492 None
27493 }
27494 }
27495 #[inline]
27496 fn syntax(&self) -> &SyntaxNode {
27497 &self.syntax
27498 }
27499}
27500impl AstNode for EventTriggerWhen {
27501 #[inline]
27502 fn can_cast(kind: SyntaxKind) -> bool {
27503 kind == SyntaxKind::EVENT_TRIGGER_WHEN
27504 }
27505 #[inline]
27506 fn cast(syntax: SyntaxNode) -> Option<Self> {
27507 if Self::can_cast(syntax.kind()) {
27508 Some(Self { syntax })
27509 } else {
27510 None
27511 }
27512 }
27513 #[inline]
27514 fn syntax(&self) -> &SyntaxNode {
27515 &self.syntax
27516 }
27517}
27518impl AstNode for EventTriggerWhenClause {
27519 #[inline]
27520 fn can_cast(kind: SyntaxKind) -> bool {
27521 kind == SyntaxKind::EVENT_TRIGGER_WHEN_CLAUSE
27522 }
27523 #[inline]
27524 fn cast(syntax: SyntaxNode) -> Option<Self> {
27525 if Self::can_cast(syntax.kind()) {
27526 Some(Self { syntax })
27527 } else {
27528 None
27529 }
27530 }
27531 #[inline]
27532 fn syntax(&self) -> &SyntaxNode {
27533 &self.syntax
27534 }
27535}
27536impl AstNode for ExceptTableClause {
27537 #[inline]
27538 fn can_cast(kind: SyntaxKind) -> bool {
27539 kind == SyntaxKind::EXCEPT_TABLE_CLAUSE
27540 }
27541 #[inline]
27542 fn cast(syntax: SyntaxNode) -> Option<Self> {
27543 if Self::can_cast(syntax.kind()) {
27544 Some(Self { syntax })
27545 } else {
27546 None
27547 }
27548 }
27549 #[inline]
27550 fn syntax(&self) -> &SyntaxNode {
27551 &self.syntax
27552 }
27553}
27554impl AstNode for ExceptTableName {
27555 #[inline]
27556 fn can_cast(kind: SyntaxKind) -> bool {
27557 kind == SyntaxKind::EXCEPT_TABLE_NAME
27558 }
27559 #[inline]
27560 fn cast(syntax: SyntaxNode) -> Option<Self> {
27561 if Self::can_cast(syntax.kind()) {
27562 Some(Self { syntax })
27563 } else {
27564 None
27565 }
27566 }
27567 #[inline]
27568 fn syntax(&self) -> &SyntaxNode {
27569 &self.syntax
27570 }
27571}
27572impl AstNode for ExceptTables {
27573 #[inline]
27574 fn can_cast(kind: SyntaxKind) -> bool {
27575 kind == SyntaxKind::EXCEPT_TABLES
27576 }
27577 #[inline]
27578 fn cast(syntax: SyntaxNode) -> Option<Self> {
27579 if Self::can_cast(syntax.kind()) {
27580 Some(Self { syntax })
27581 } else {
27582 None
27583 }
27584 }
27585 #[inline]
27586 fn syntax(&self) -> &SyntaxNode {
27587 &self.syntax
27588 }
27589}
27590impl AstNode for ExcludeConstraint {
27591 #[inline]
27592 fn can_cast(kind: SyntaxKind) -> bool {
27593 kind == SyntaxKind::EXCLUDE_CONSTRAINT
27594 }
27595 #[inline]
27596 fn cast(syntax: SyntaxNode) -> Option<Self> {
27597 if Self::can_cast(syntax.kind()) {
27598 Some(Self { syntax })
27599 } else {
27600 None
27601 }
27602 }
27603 #[inline]
27604 fn syntax(&self) -> &SyntaxNode {
27605 &self.syntax
27606 }
27607}
27608impl AstNode for Exclusive {
27609 #[inline]
27610 fn can_cast(kind: SyntaxKind) -> bool {
27611 kind == SyntaxKind::EXCLUSIVE
27612 }
27613 #[inline]
27614 fn cast(syntax: SyntaxNode) -> Option<Self> {
27615 if Self::can_cast(syntax.kind()) {
27616 Some(Self { syntax })
27617 } else {
27618 None
27619 }
27620 }
27621 #[inline]
27622 fn syntax(&self) -> &SyntaxNode {
27623 &self.syntax
27624 }
27625}
27626impl AstNode for Execute {
27627 #[inline]
27628 fn can_cast(kind: SyntaxKind) -> bool {
27629 kind == SyntaxKind::EXECUTE
27630 }
27631 #[inline]
27632 fn cast(syntax: SyntaxNode) -> Option<Self> {
27633 if Self::can_cast(syntax.kind()) {
27634 Some(Self { syntax })
27635 } else {
27636 None
27637 }
27638 }
27639 #[inline]
27640 fn syntax(&self) -> &SyntaxNode {
27641 &self.syntax
27642 }
27643}
27644impl AstNode for ExistsFn {
27645 #[inline]
27646 fn can_cast(kind: SyntaxKind) -> bool {
27647 kind == SyntaxKind::EXISTS_FN
27648 }
27649 #[inline]
27650 fn cast(syntax: SyntaxNode) -> Option<Self> {
27651 if Self::can_cast(syntax.kind()) {
27652 Some(Self { syntax })
27653 } else {
27654 None
27655 }
27656 }
27657 #[inline]
27658 fn syntax(&self) -> &SyntaxNode {
27659 &self.syntax
27660 }
27661}
27662impl AstNode for Explain {
27663 #[inline]
27664 fn can_cast(kind: SyntaxKind) -> bool {
27665 kind == SyntaxKind::EXPLAIN
27666 }
27667 #[inline]
27668 fn cast(syntax: SyntaxNode) -> Option<Self> {
27669 if Self::can_cast(syntax.kind()) {
27670 Some(Self { syntax })
27671 } else {
27672 None
27673 }
27674 }
27675 #[inline]
27676 fn syntax(&self) -> &SyntaxNode {
27677 &self.syntax
27678 }
27679}
27680impl AstNode for ExplainOption {
27681 #[inline]
27682 fn can_cast(kind: SyntaxKind) -> bool {
27683 kind == SyntaxKind::EXPLAIN_OPTION
27684 }
27685 #[inline]
27686 fn cast(syntax: SyntaxNode) -> Option<Self> {
27687 if Self::can_cast(syntax.kind()) {
27688 Some(Self { syntax })
27689 } else {
27690 None
27691 }
27692 }
27693 #[inline]
27694 fn syntax(&self) -> &SyntaxNode {
27695 &self.syntax
27696 }
27697}
27698impl AstNode for ExplainOptionList {
27699 #[inline]
27700 fn can_cast(kind: SyntaxKind) -> bool {
27701 kind == SyntaxKind::EXPLAIN_OPTION_LIST
27702 }
27703 #[inline]
27704 fn cast(syntax: SyntaxNode) -> Option<Self> {
27705 if Self::can_cast(syntax.kind()) {
27706 Some(Self { syntax })
27707 } else {
27708 None
27709 }
27710 }
27711 #[inline]
27712 fn syntax(&self) -> &SyntaxNode {
27713 &self.syntax
27714 }
27715}
27716impl AstNode for ExplainOptionValue {
27717 #[inline]
27718 fn can_cast(kind: SyntaxKind) -> bool {
27719 kind == SyntaxKind::EXPLAIN_OPTION_VALUE
27720 }
27721 #[inline]
27722 fn cast(syntax: SyntaxNode) -> Option<Self> {
27723 if Self::can_cast(syntax.kind()) {
27724 Some(Self { syntax })
27725 } else {
27726 None
27727 }
27728 }
27729 #[inline]
27730 fn syntax(&self) -> &SyntaxNode {
27731 &self.syntax
27732 }
27733}
27734impl AstNode for ExprAsName {
27735 #[inline]
27736 fn can_cast(kind: SyntaxKind) -> bool {
27737 kind == SyntaxKind::EXPR_AS_NAME
27738 }
27739 #[inline]
27740 fn cast(syntax: SyntaxNode) -> Option<Self> {
27741 if Self::can_cast(syntax.kind()) {
27742 Some(Self { syntax })
27743 } else {
27744 None
27745 }
27746 }
27747 #[inline]
27748 fn syntax(&self) -> &SyntaxNode {
27749 &self.syntax
27750 }
27751}
27752impl AstNode for ExprAsNameList {
27753 #[inline]
27754 fn can_cast(kind: SyntaxKind) -> bool {
27755 kind == SyntaxKind::EXPR_AS_NAME_LIST
27756 }
27757 #[inline]
27758 fn cast(syntax: SyntaxNode) -> Option<Self> {
27759 if Self::can_cast(syntax.kind()) {
27760 Some(Self { syntax })
27761 } else {
27762 None
27763 }
27764 }
27765 #[inline]
27766 fn syntax(&self) -> &SyntaxNode {
27767 &self.syntax
27768 }
27769}
27770impl AstNode for ExprFollowing {
27771 #[inline]
27772 fn can_cast(kind: SyntaxKind) -> bool {
27773 kind == SyntaxKind::EXPR_FOLLOWING
27774 }
27775 #[inline]
27776 fn cast(syntax: SyntaxNode) -> Option<Self> {
27777 if Self::can_cast(syntax.kind()) {
27778 Some(Self { syntax })
27779 } else {
27780 None
27781 }
27782 }
27783 #[inline]
27784 fn syntax(&self) -> &SyntaxNode {
27785 &self.syntax
27786 }
27787}
27788impl AstNode for ExprPreceding {
27789 #[inline]
27790 fn can_cast(kind: SyntaxKind) -> bool {
27791 kind == SyntaxKind::EXPR_PRECEDING
27792 }
27793 #[inline]
27794 fn cast(syntax: SyntaxNode) -> Option<Self> {
27795 if Self::can_cast(syntax.kind()) {
27796 Some(Self { syntax })
27797 } else {
27798 None
27799 }
27800 }
27801 #[inline]
27802 fn syntax(&self) -> &SyntaxNode {
27803 &self.syntax
27804 }
27805}
27806impl AstNode for ExprType {
27807 #[inline]
27808 fn can_cast(kind: SyntaxKind) -> bool {
27809 kind == SyntaxKind::EXPR_TYPE
27810 }
27811 #[inline]
27812 fn cast(syntax: SyntaxNode) -> Option<Self> {
27813 if Self::can_cast(syntax.kind()) {
27814 Some(Self { syntax })
27815 } else {
27816 None
27817 }
27818 }
27819 #[inline]
27820 fn syntax(&self) -> &SyntaxNode {
27821 &self.syntax
27822 }
27823}
27824impl AstNode for ExtractFn {
27825 #[inline]
27826 fn can_cast(kind: SyntaxKind) -> bool {
27827 kind == SyntaxKind::EXTRACT_FN
27828 }
27829 #[inline]
27830 fn cast(syntax: SyntaxNode) -> Option<Self> {
27831 if Self::can_cast(syntax.kind()) {
27832 Some(Self { syntax })
27833 } else {
27834 None
27835 }
27836 }
27837 #[inline]
27838 fn syntax(&self) -> &SyntaxNode {
27839 &self.syntax
27840 }
27841}
27842impl AstNode for FatArrow {
27843 #[inline]
27844 fn can_cast(kind: SyntaxKind) -> bool {
27845 kind == SyntaxKind::FAT_ARROW
27846 }
27847 #[inline]
27848 fn cast(syntax: SyntaxNode) -> Option<Self> {
27849 if Self::can_cast(syntax.kind()) {
27850 Some(Self { syntax })
27851 } else {
27852 None
27853 }
27854 }
27855 #[inline]
27856 fn syntax(&self) -> &SyntaxNode {
27857 &self.syntax
27858 }
27859}
27860impl AstNode for FdwOption {
27861 #[inline]
27862 fn can_cast(kind: SyntaxKind) -> bool {
27863 kind == SyntaxKind::FDW_OPTION
27864 }
27865 #[inline]
27866 fn cast(syntax: SyntaxNode) -> Option<Self> {
27867 if Self::can_cast(syntax.kind()) {
27868 Some(Self { syntax })
27869 } else {
27870 None
27871 }
27872 }
27873 #[inline]
27874 fn syntax(&self) -> &SyntaxNode {
27875 &self.syntax
27876 }
27877}
27878impl AstNode for FdwOptionList {
27879 #[inline]
27880 fn can_cast(kind: SyntaxKind) -> bool {
27881 kind == SyntaxKind::FDW_OPTION_LIST
27882 }
27883 #[inline]
27884 fn cast(syntax: SyntaxNode) -> Option<Self> {
27885 if Self::can_cast(syntax.kind()) {
27886 Some(Self { syntax })
27887 } else {
27888 None
27889 }
27890 }
27891 #[inline]
27892 fn syntax(&self) -> &SyntaxNode {
27893 &self.syntax
27894 }
27895}
27896impl AstNode for Fetch {
27897 #[inline]
27898 fn can_cast(kind: SyntaxKind) -> bool {
27899 kind == SyntaxKind::FETCH
27900 }
27901 #[inline]
27902 fn cast(syntax: SyntaxNode) -> Option<Self> {
27903 if Self::can_cast(syntax.kind()) {
27904 Some(Self { syntax })
27905 } else {
27906 None
27907 }
27908 }
27909 #[inline]
27910 fn syntax(&self) -> &SyntaxNode {
27911 &self.syntax
27912 }
27913}
27914impl AstNode for FetchClause {
27915 #[inline]
27916 fn can_cast(kind: SyntaxKind) -> bool {
27917 kind == SyntaxKind::FETCH_CLAUSE
27918 }
27919 #[inline]
27920 fn cast(syntax: SyntaxNode) -> Option<Self> {
27921 if Self::can_cast(syntax.kind()) {
27922 Some(Self { syntax })
27923 } else {
27924 None
27925 }
27926 }
27927 #[inline]
27928 fn syntax(&self) -> &SyntaxNode {
27929 &self.syntax
27930 }
27931}
27932impl AstNode for FieldExpr {
27933 #[inline]
27934 fn can_cast(kind: SyntaxKind) -> bool {
27935 kind == SyntaxKind::FIELD_EXPR
27936 }
27937 #[inline]
27938 fn cast(syntax: SyntaxNode) -> Option<Self> {
27939 if Self::can_cast(syntax.kind()) {
27940 Some(Self { syntax })
27941 } else {
27942 None
27943 }
27944 }
27945 #[inline]
27946 fn syntax(&self) -> &SyntaxNode {
27947 &self.syntax
27948 }
27949}
27950impl AstNode for FilterClause {
27951 #[inline]
27952 fn can_cast(kind: SyntaxKind) -> bool {
27953 kind == SyntaxKind::FILTER_CLAUSE
27954 }
27955 #[inline]
27956 fn cast(syntax: SyntaxNode) -> Option<Self> {
27957 if Self::can_cast(syntax.kind()) {
27958 Some(Self { syntax })
27959 } else {
27960 None
27961 }
27962 }
27963 #[inline]
27964 fn syntax(&self) -> &SyntaxNode {
27965 &self.syntax
27966 }
27967}
27968impl AstNode for First {
27969 #[inline]
27970 fn can_cast(kind: SyntaxKind) -> bool {
27971 kind == SyntaxKind::FIRST
27972 }
27973 #[inline]
27974 fn cast(syntax: SyntaxNode) -> Option<Self> {
27975 if Self::can_cast(syntax.kind()) {
27976 Some(Self { syntax })
27977 } else {
27978 None
27979 }
27980 }
27981 #[inline]
27982 fn syntax(&self) -> &SyntaxNode {
27983 &self.syntax
27984 }
27985}
27986impl AstNode for ForKeyShare {
27987 #[inline]
27988 fn can_cast(kind: SyntaxKind) -> bool {
27989 kind == SyntaxKind::FOR_KEY_SHARE
27990 }
27991 #[inline]
27992 fn cast(syntax: SyntaxNode) -> Option<Self> {
27993 if Self::can_cast(syntax.kind()) {
27994 Some(Self { syntax })
27995 } else {
27996 None
27997 }
27998 }
27999 #[inline]
28000 fn syntax(&self) -> &SyntaxNode {
28001 &self.syntax
28002 }
28003}
28004impl AstNode for ForNoKeyUpdate {
28005 #[inline]
28006 fn can_cast(kind: SyntaxKind) -> bool {
28007 kind == SyntaxKind::FOR_NO_KEY_UPDATE
28008 }
28009 #[inline]
28010 fn cast(syntax: SyntaxNode) -> Option<Self> {
28011 if Self::can_cast(syntax.kind()) {
28012 Some(Self { syntax })
28013 } else {
28014 None
28015 }
28016 }
28017 #[inline]
28018 fn syntax(&self) -> &SyntaxNode {
28019 &self.syntax
28020 }
28021}
28022impl AstNode for ForPortionOf {
28023 #[inline]
28024 fn can_cast(kind: SyntaxKind) -> bool {
28025 kind == SyntaxKind::FOR_PORTION_OF
28026 }
28027 #[inline]
28028 fn cast(syntax: SyntaxNode) -> Option<Self> {
28029 if Self::can_cast(syntax.kind()) {
28030 Some(Self { syntax })
28031 } else {
28032 None
28033 }
28034 }
28035 #[inline]
28036 fn syntax(&self) -> &SyntaxNode {
28037 &self.syntax
28038 }
28039}
28040impl AstNode for ForProvider {
28041 #[inline]
28042 fn can_cast(kind: SyntaxKind) -> bool {
28043 kind == SyntaxKind::FOR_PROVIDER
28044 }
28045 #[inline]
28046 fn cast(syntax: SyntaxNode) -> Option<Self> {
28047 if Self::can_cast(syntax.kind()) {
28048 Some(Self { syntax })
28049 } else {
28050 None
28051 }
28052 }
28053 #[inline]
28054 fn syntax(&self) -> &SyntaxNode {
28055 &self.syntax
28056 }
28057}
28058impl AstNode for ForShare {
28059 #[inline]
28060 fn can_cast(kind: SyntaxKind) -> bool {
28061 kind == SyntaxKind::FOR_SHARE
28062 }
28063 #[inline]
28064 fn cast(syntax: SyntaxNode) -> Option<Self> {
28065 if Self::can_cast(syntax.kind()) {
28066 Some(Self { syntax })
28067 } else {
28068 None
28069 }
28070 }
28071 #[inline]
28072 fn syntax(&self) -> &SyntaxNode {
28073 &self.syntax
28074 }
28075}
28076impl AstNode for ForUpdate {
28077 #[inline]
28078 fn can_cast(kind: SyntaxKind) -> bool {
28079 kind == SyntaxKind::FOR_UPDATE
28080 }
28081 #[inline]
28082 fn cast(syntax: SyntaxNode) -> Option<Self> {
28083 if Self::can_cast(syntax.kind()) {
28084 Some(Self { syntax })
28085 } else {
28086 None
28087 }
28088 }
28089 #[inline]
28090 fn syntax(&self) -> &SyntaxNode {
28091 &self.syntax
28092 }
28093}
28094impl AstNode for ForceRls {
28095 #[inline]
28096 fn can_cast(kind: SyntaxKind) -> bool {
28097 kind == SyntaxKind::FORCE_RLS
28098 }
28099 #[inline]
28100 fn cast(syntax: SyntaxNode) -> Option<Self> {
28101 if Self::can_cast(syntax.kind()) {
28102 Some(Self { syntax })
28103 } else {
28104 None
28105 }
28106 }
28107 #[inline]
28108 fn syntax(&self) -> &SyntaxNode {
28109 &self.syntax
28110 }
28111}
28112impl AstNode for ForeignKeyConstraint {
28113 #[inline]
28114 fn can_cast(kind: SyntaxKind) -> bool {
28115 kind == SyntaxKind::FOREIGN_KEY_CONSTRAINT
28116 }
28117 #[inline]
28118 fn cast(syntax: SyntaxNode) -> Option<Self> {
28119 if Self::can_cast(syntax.kind()) {
28120 Some(Self { syntax })
28121 } else {
28122 None
28123 }
28124 }
28125 #[inline]
28126 fn syntax(&self) -> &SyntaxNode {
28127 &self.syntax
28128 }
28129}
28130impl AstNode for Forward {
28131 #[inline]
28132 fn can_cast(kind: SyntaxKind) -> bool {
28133 kind == SyntaxKind::FORWARD
28134 }
28135 #[inline]
28136 fn cast(syntax: SyntaxNode) -> Option<Self> {
28137 if Self::can_cast(syntax.kind()) {
28138 Some(Self { syntax })
28139 } else {
28140 None
28141 }
28142 }
28143 #[inline]
28144 fn syntax(&self) -> &SyntaxNode {
28145 &self.syntax
28146 }
28147}
28148impl AstNode for FrameBetween {
28149 #[inline]
28150 fn can_cast(kind: SyntaxKind) -> bool {
28151 kind == SyntaxKind::FRAME_BETWEEN
28152 }
28153 #[inline]
28154 fn cast(syntax: SyntaxNode) -> Option<Self> {
28155 if Self::can_cast(syntax.kind()) {
28156 Some(Self { syntax })
28157 } else {
28158 None
28159 }
28160 }
28161 #[inline]
28162 fn syntax(&self) -> &SyntaxNode {
28163 &self.syntax
28164 }
28165}
28166impl AstNode for FrameClause {
28167 #[inline]
28168 fn can_cast(kind: SyntaxKind) -> bool {
28169 kind == SyntaxKind::FRAME_CLAUSE
28170 }
28171 #[inline]
28172 fn cast(syntax: SyntaxNode) -> Option<Self> {
28173 if Self::can_cast(syntax.kind()) {
28174 Some(Self { syntax })
28175 } else {
28176 None
28177 }
28178 }
28179 #[inline]
28180 fn syntax(&self) -> &SyntaxNode {
28181 &self.syntax
28182 }
28183}
28184impl AstNode for FrameExclude {
28185 #[inline]
28186 fn can_cast(kind: SyntaxKind) -> bool {
28187 kind == SyntaxKind::FRAME_EXCLUDE
28188 }
28189 #[inline]
28190 fn cast(syntax: SyntaxNode) -> Option<Self> {
28191 if Self::can_cast(syntax.kind()) {
28192 Some(Self { syntax })
28193 } else {
28194 None
28195 }
28196 }
28197 #[inline]
28198 fn syntax(&self) -> &SyntaxNode {
28199 &self.syntax
28200 }
28201}
28202impl AstNode for FromClause {
28203 #[inline]
28204 fn can_cast(kind: SyntaxKind) -> bool {
28205 kind == SyntaxKind::FROM_CLAUSE
28206 }
28207 #[inline]
28208 fn cast(syntax: SyntaxNode) -> Option<Self> {
28209 if Self::can_cast(syntax.kind()) {
28210 Some(Self { syntax })
28211 } else {
28212 None
28213 }
28214 }
28215 #[inline]
28216 fn syntax(&self) -> &SyntaxNode {
28217 &self.syntax
28218 }
28219}
28220impl AstNode for FromItem {
28221 #[inline]
28222 fn can_cast(kind: SyntaxKind) -> bool {
28223 kind == SyntaxKind::FROM_ITEM
28224 }
28225 #[inline]
28226 fn cast(syntax: SyntaxNode) -> Option<Self> {
28227 if Self::can_cast(syntax.kind()) {
28228 Some(Self { syntax })
28229 } else {
28230 None
28231 }
28232 }
28233 #[inline]
28234 fn syntax(&self) -> &SyntaxNode {
28235 &self.syntax
28236 }
28237}
28238impl AstNode for FromTable {
28239 #[inline]
28240 fn can_cast(kind: SyntaxKind) -> bool {
28241 kind == SyntaxKind::FROM_TABLE
28242 }
28243 #[inline]
28244 fn cast(syntax: SyntaxNode) -> Option<Self> {
28245 if Self::can_cast(syntax.kind()) {
28246 Some(Self { syntax })
28247 } else {
28248 None
28249 }
28250 }
28251 #[inline]
28252 fn syntax(&self) -> &SyntaxNode {
28253 &self.syntax
28254 }
28255}
28256impl AstNode for FuncOptionList {
28257 #[inline]
28258 fn can_cast(kind: SyntaxKind) -> bool {
28259 kind == SyntaxKind::FUNC_OPTION_LIST
28260 }
28261 #[inline]
28262 fn cast(syntax: SyntaxNode) -> Option<Self> {
28263 if Self::can_cast(syntax.kind()) {
28264 Some(Self { syntax })
28265 } else {
28266 None
28267 }
28268 }
28269 #[inline]
28270 fn syntax(&self) -> &SyntaxNode {
28271 &self.syntax
28272 }
28273}
28274impl AstNode for FunctionSig {
28275 #[inline]
28276 fn can_cast(kind: SyntaxKind) -> bool {
28277 kind == SyntaxKind::FUNCTION_SIG
28278 }
28279 #[inline]
28280 fn cast(syntax: SyntaxNode) -> Option<Self> {
28281 if Self::can_cast(syntax.kind()) {
28282 Some(Self { syntax })
28283 } else {
28284 None
28285 }
28286 }
28287 #[inline]
28288 fn syntax(&self) -> &SyntaxNode {
28289 &self.syntax
28290 }
28291}
28292impl AstNode for FunctionSigList {
28293 #[inline]
28294 fn can_cast(kind: SyntaxKind) -> bool {
28295 kind == SyntaxKind::FUNCTION_SIG_LIST
28296 }
28297 #[inline]
28298 fn cast(syntax: SyntaxNode) -> Option<Self> {
28299 if Self::can_cast(syntax.kind()) {
28300 Some(Self { syntax })
28301 } else {
28302 None
28303 }
28304 }
28305 #[inline]
28306 fn syntax(&self) -> &SyntaxNode {
28307 &self.syntax
28308 }
28309}
28310impl AstNode for GeneratedConstraint {
28311 #[inline]
28312 fn can_cast(kind: SyntaxKind) -> bool {
28313 kind == SyntaxKind::GENERATED_CONSTRAINT
28314 }
28315 #[inline]
28316 fn cast(syntax: SyntaxNode) -> Option<Self> {
28317 if Self::can_cast(syntax.kind()) {
28318 Some(Self { syntax })
28319 } else {
28320 None
28321 }
28322 }
28323 #[inline]
28324 fn syntax(&self) -> &SyntaxNode {
28325 &self.syntax
28326 }
28327}
28328impl AstNode for Grant {
28329 #[inline]
28330 fn can_cast(kind: SyntaxKind) -> bool {
28331 kind == SyntaxKind::GRANT
28332 }
28333 #[inline]
28334 fn cast(syntax: SyntaxNode) -> Option<Self> {
28335 if Self::can_cast(syntax.kind()) {
28336 Some(Self { syntax })
28337 } else {
28338 None
28339 }
28340 }
28341 #[inline]
28342 fn syntax(&self) -> &SyntaxNode {
28343 &self.syntax
28344 }
28345}
28346impl AstNode for GrantDefaultPrivileges {
28347 #[inline]
28348 fn can_cast(kind: SyntaxKind) -> bool {
28349 kind == SyntaxKind::GRANT_DEFAULT_PRIVILEGES
28350 }
28351 #[inline]
28352 fn cast(syntax: SyntaxNode) -> Option<Self> {
28353 if Self::can_cast(syntax.kind()) {
28354 Some(Self { syntax })
28355 } else {
28356 None
28357 }
28358 }
28359 #[inline]
28360 fn syntax(&self) -> &SyntaxNode {
28361 &self.syntax
28362 }
28363}
28364impl AstNode for GrantRoleOption {
28365 #[inline]
28366 fn can_cast(kind: SyntaxKind) -> bool {
28367 kind == SyntaxKind::GRANT_ROLE_OPTION
28368 }
28369 #[inline]
28370 fn cast(syntax: SyntaxNode) -> Option<Self> {
28371 if Self::can_cast(syntax.kind()) {
28372 Some(Self { syntax })
28373 } else {
28374 None
28375 }
28376 }
28377 #[inline]
28378 fn syntax(&self) -> &SyntaxNode {
28379 &self.syntax
28380 }
28381}
28382impl AstNode for GrantRoleOptionList {
28383 #[inline]
28384 fn can_cast(kind: SyntaxKind) -> bool {
28385 kind == SyntaxKind::GRANT_ROLE_OPTION_LIST
28386 }
28387 #[inline]
28388 fn cast(syntax: SyntaxNode) -> Option<Self> {
28389 if Self::can_cast(syntax.kind()) {
28390 Some(Self { syntax })
28391 } else {
28392 None
28393 }
28394 }
28395 #[inline]
28396 fn syntax(&self) -> &SyntaxNode {
28397 &self.syntax
28398 }
28399}
28400impl AstNode for GrantWithClause {
28401 #[inline]
28402 fn can_cast(kind: SyntaxKind) -> bool {
28403 kind == SyntaxKind::GRANT_WITH_CLAUSE
28404 }
28405 #[inline]
28406 fn cast(syntax: SyntaxNode) -> Option<Self> {
28407 if Self::can_cast(syntax.kind()) {
28408 Some(Self { syntax })
28409 } else {
28410 None
28411 }
28412 }
28413 #[inline]
28414 fn syntax(&self) -> &SyntaxNode {
28415 &self.syntax
28416 }
28417}
28418impl AstNode for GraphPatternQualifier {
28419 #[inline]
28420 fn can_cast(kind: SyntaxKind) -> bool {
28421 kind == SyntaxKind::GRAPH_PATTERN_QUALIFIER
28422 }
28423 #[inline]
28424 fn cast(syntax: SyntaxNode) -> Option<Self> {
28425 if Self::can_cast(syntax.kind()) {
28426 Some(Self { syntax })
28427 } else {
28428 None
28429 }
28430 }
28431 #[inline]
28432 fn syntax(&self) -> &SyntaxNode {
28433 &self.syntax
28434 }
28435}
28436impl AstNode for GraphTableFn {
28437 #[inline]
28438 fn can_cast(kind: SyntaxKind) -> bool {
28439 kind == SyntaxKind::GRAPH_TABLE_FN
28440 }
28441 #[inline]
28442 fn cast(syntax: SyntaxNode) -> Option<Self> {
28443 if Self::can_cast(syntax.kind()) {
28444 Some(Self { syntax })
28445 } else {
28446 None
28447 }
28448 }
28449 #[inline]
28450 fn syntax(&self) -> &SyntaxNode {
28451 &self.syntax
28452 }
28453}
28454impl AstNode for Group {
28455 #[inline]
28456 fn can_cast(kind: SyntaxKind) -> bool {
28457 kind == SyntaxKind::GROUP
28458 }
28459 #[inline]
28460 fn cast(syntax: SyntaxNode) -> Option<Self> {
28461 if Self::can_cast(syntax.kind()) {
28462 Some(Self { syntax })
28463 } else {
28464 None
28465 }
28466 }
28467 #[inline]
28468 fn syntax(&self) -> &SyntaxNode {
28469 &self.syntax
28470 }
28471}
28472impl AstNode for GroupByClause {
28473 #[inline]
28474 fn can_cast(kind: SyntaxKind) -> bool {
28475 kind == SyntaxKind::GROUP_BY_CLAUSE
28476 }
28477 #[inline]
28478 fn cast(syntax: SyntaxNode) -> Option<Self> {
28479 if Self::can_cast(syntax.kind()) {
28480 Some(Self { syntax })
28481 } else {
28482 None
28483 }
28484 }
28485 #[inline]
28486 fn syntax(&self) -> &SyntaxNode {
28487 &self.syntax
28488 }
28489}
28490impl AstNode for GroupByList {
28491 #[inline]
28492 fn can_cast(kind: SyntaxKind) -> bool {
28493 kind == SyntaxKind::GROUP_BY_LIST
28494 }
28495 #[inline]
28496 fn cast(syntax: SyntaxNode) -> Option<Self> {
28497 if Self::can_cast(syntax.kind()) {
28498 Some(Self { syntax })
28499 } else {
28500 None
28501 }
28502 }
28503 #[inline]
28504 fn syntax(&self) -> &SyntaxNode {
28505 &self.syntax
28506 }
28507}
28508impl AstNode for GroupingCube {
28509 #[inline]
28510 fn can_cast(kind: SyntaxKind) -> bool {
28511 kind == SyntaxKind::GROUPING_CUBE
28512 }
28513 #[inline]
28514 fn cast(syntax: SyntaxNode) -> Option<Self> {
28515 if Self::can_cast(syntax.kind()) {
28516 Some(Self { syntax })
28517 } else {
28518 None
28519 }
28520 }
28521 #[inline]
28522 fn syntax(&self) -> &SyntaxNode {
28523 &self.syntax
28524 }
28525}
28526impl AstNode for GroupingExpr {
28527 #[inline]
28528 fn can_cast(kind: SyntaxKind) -> bool {
28529 kind == SyntaxKind::GROUPING_EXPR
28530 }
28531 #[inline]
28532 fn cast(syntax: SyntaxNode) -> Option<Self> {
28533 if Self::can_cast(syntax.kind()) {
28534 Some(Self { syntax })
28535 } else {
28536 None
28537 }
28538 }
28539 #[inline]
28540 fn syntax(&self) -> &SyntaxNode {
28541 &self.syntax
28542 }
28543}
28544impl AstNode for GroupingRollup {
28545 #[inline]
28546 fn can_cast(kind: SyntaxKind) -> bool {
28547 kind == SyntaxKind::GROUPING_ROLLUP
28548 }
28549 #[inline]
28550 fn cast(syntax: SyntaxNode) -> Option<Self> {
28551 if Self::can_cast(syntax.kind()) {
28552 Some(Self { syntax })
28553 } else {
28554 None
28555 }
28556 }
28557 #[inline]
28558 fn syntax(&self) -> &SyntaxNode {
28559 &self.syntax
28560 }
28561}
28562impl AstNode for GroupingSets {
28563 #[inline]
28564 fn can_cast(kind: SyntaxKind) -> bool {
28565 kind == SyntaxKind::GROUPING_SETS
28566 }
28567 #[inline]
28568 fn cast(syntax: SyntaxNode) -> Option<Self> {
28569 if Self::can_cast(syntax.kind()) {
28570 Some(Self { syntax })
28571 } else {
28572 None
28573 }
28574 }
28575 #[inline]
28576 fn syntax(&self) -> &SyntaxNode {
28577 &self.syntax
28578 }
28579}
28580impl AstNode for Gteq {
28581 #[inline]
28582 fn can_cast(kind: SyntaxKind) -> bool {
28583 kind == SyntaxKind::GTEQ
28584 }
28585 #[inline]
28586 fn cast(syntax: SyntaxNode) -> Option<Self> {
28587 if Self::can_cast(syntax.kind()) {
28588 Some(Self { syntax })
28589 } else {
28590 None
28591 }
28592 }
28593 #[inline]
28594 fn syntax(&self) -> &SyntaxNode {
28595 &self.syntax
28596 }
28597}
28598impl AstNode for HandlerClause {
28599 #[inline]
28600 fn can_cast(kind: SyntaxKind) -> bool {
28601 kind == SyntaxKind::HANDLER_CLAUSE
28602 }
28603 #[inline]
28604 fn cast(syntax: SyntaxNode) -> Option<Self> {
28605 if Self::can_cast(syntax.kind()) {
28606 Some(Self { syntax })
28607 } else {
28608 None
28609 }
28610 }
28611 #[inline]
28612 fn syntax(&self) -> &SyntaxNode {
28613 &self.syntax
28614 }
28615}
28616impl AstNode for HavingClause {
28617 #[inline]
28618 fn can_cast(kind: SyntaxKind) -> bool {
28619 kind == SyntaxKind::HAVING_CLAUSE
28620 }
28621 #[inline]
28622 fn cast(syntax: SyntaxNode) -> Option<Self> {
28623 if Self::can_cast(syntax.kind()) {
28624 Some(Self { syntax })
28625 } else {
28626 None
28627 }
28628 }
28629 #[inline]
28630 fn syntax(&self) -> &SyntaxNode {
28631 &self.syntax
28632 }
28633}
28634impl AstNode for IfExists {
28635 #[inline]
28636 fn can_cast(kind: SyntaxKind) -> bool {
28637 kind == SyntaxKind::IF_EXISTS
28638 }
28639 #[inline]
28640 fn cast(syntax: SyntaxNode) -> Option<Self> {
28641 if Self::can_cast(syntax.kind()) {
28642 Some(Self { syntax })
28643 } else {
28644 None
28645 }
28646 }
28647 #[inline]
28648 fn syntax(&self) -> &SyntaxNode {
28649 &self.syntax
28650 }
28651}
28652impl AstNode for IfNotExists {
28653 #[inline]
28654 fn can_cast(kind: SyntaxKind) -> bool {
28655 kind == SyntaxKind::IF_NOT_EXISTS
28656 }
28657 #[inline]
28658 fn cast(syntax: SyntaxNode) -> Option<Self> {
28659 if Self::can_cast(syntax.kind()) {
28660 Some(Self { syntax })
28661 } else {
28662 None
28663 }
28664 }
28665 #[inline]
28666 fn syntax(&self) -> &SyntaxNode {
28667 &self.syntax
28668 }
28669}
28670impl AstNode for ImportForeignSchema {
28671 #[inline]
28672 fn can_cast(kind: SyntaxKind) -> bool {
28673 kind == SyntaxKind::IMPORT_FOREIGN_SCHEMA
28674 }
28675 #[inline]
28676 fn cast(syntax: SyntaxNode) -> Option<Self> {
28677 if Self::can_cast(syntax.kind()) {
28678 Some(Self { syntax })
28679 } else {
28680 None
28681 }
28682 }
28683 #[inline]
28684 fn syntax(&self) -> &SyntaxNode {
28685 &self.syntax
28686 }
28687}
28688impl AstNode for IndexExpr {
28689 #[inline]
28690 fn can_cast(kind: SyntaxKind) -> bool {
28691 kind == SyntaxKind::INDEX_EXPR
28692 }
28693 #[inline]
28694 fn cast(syntax: SyntaxNode) -> Option<Self> {
28695 if Self::can_cast(syntax.kind()) {
28696 Some(Self { syntax })
28697 } else {
28698 None
28699 }
28700 }
28701 #[inline]
28702 fn syntax(&self) -> &SyntaxNode {
28703 &self.syntax
28704 }
28705}
28706impl AstNode for Inherit {
28707 #[inline]
28708 fn can_cast(kind: SyntaxKind) -> bool {
28709 kind == SyntaxKind::INHERIT
28710 }
28711 #[inline]
28712 fn cast(syntax: SyntaxNode) -> Option<Self> {
28713 if Self::can_cast(syntax.kind()) {
28714 Some(Self { syntax })
28715 } else {
28716 None
28717 }
28718 }
28719 #[inline]
28720 fn syntax(&self) -> &SyntaxNode {
28721 &self.syntax
28722 }
28723}
28724impl AstNode for InheritTable {
28725 #[inline]
28726 fn can_cast(kind: SyntaxKind) -> bool {
28727 kind == SyntaxKind::INHERIT_TABLE
28728 }
28729 #[inline]
28730 fn cast(syntax: SyntaxNode) -> Option<Self> {
28731 if Self::can_cast(syntax.kind()) {
28732 Some(Self { syntax })
28733 } else {
28734 None
28735 }
28736 }
28737 #[inline]
28738 fn syntax(&self) -> &SyntaxNode {
28739 &self.syntax
28740 }
28741}
28742impl AstNode for Inherits {
28743 #[inline]
28744 fn can_cast(kind: SyntaxKind) -> bool {
28745 kind == SyntaxKind::INHERITS
28746 }
28747 #[inline]
28748 fn cast(syntax: SyntaxNode) -> Option<Self> {
28749 if Self::can_cast(syntax.kind()) {
28750 Some(Self { syntax })
28751 } else {
28752 None
28753 }
28754 }
28755 #[inline]
28756 fn syntax(&self) -> &SyntaxNode {
28757 &self.syntax
28758 }
28759}
28760impl AstNode for InitiallyDeferredConstraintOption {
28761 #[inline]
28762 fn can_cast(kind: SyntaxKind) -> bool {
28763 kind == SyntaxKind::INITIALLY_DEFERRED_CONSTRAINT_OPTION
28764 }
28765 #[inline]
28766 fn cast(syntax: SyntaxNode) -> Option<Self> {
28767 if Self::can_cast(syntax.kind()) {
28768 Some(Self { syntax })
28769 } else {
28770 None
28771 }
28772 }
28773 #[inline]
28774 fn syntax(&self) -> &SyntaxNode {
28775 &self.syntax
28776 }
28777}
28778impl AstNode for InitiallyImmediateConstraintOption {
28779 #[inline]
28780 fn can_cast(kind: SyntaxKind) -> bool {
28781 kind == SyntaxKind::INITIALLY_IMMEDIATE_CONSTRAINT_OPTION
28782 }
28783 #[inline]
28784 fn cast(syntax: SyntaxNode) -> Option<Self> {
28785 if Self::can_cast(syntax.kind()) {
28786 Some(Self { syntax })
28787 } else {
28788 None
28789 }
28790 }
28791 #[inline]
28792 fn syntax(&self) -> &SyntaxNode {
28793 &self.syntax
28794 }
28795}
28796impl AstNode for Insert {
28797 #[inline]
28798 fn can_cast(kind: SyntaxKind) -> bool {
28799 kind == SyntaxKind::INSERT
28800 }
28801 #[inline]
28802 fn cast(syntax: SyntaxNode) -> Option<Self> {
28803 if Self::can_cast(syntax.kind()) {
28804 Some(Self { syntax })
28805 } else {
28806 None
28807 }
28808 }
28809 #[inline]
28810 fn syntax(&self) -> &SyntaxNode {
28811 &self.syntax
28812 }
28813}
28814impl AstNode for IntervalType {
28815 #[inline]
28816 fn can_cast(kind: SyntaxKind) -> bool {
28817 kind == SyntaxKind::INTERVAL_TYPE
28818 }
28819 #[inline]
28820 fn cast(syntax: SyntaxNode) -> Option<Self> {
28821 if Self::can_cast(syntax.kind()) {
28822 Some(Self { syntax })
28823 } else {
28824 None
28825 }
28826 }
28827 #[inline]
28828 fn syntax(&self) -> &SyntaxNode {
28829 &self.syntax
28830 }
28831}
28832impl AstNode for IntoClause {
28833 #[inline]
28834 fn can_cast(kind: SyntaxKind) -> bool {
28835 kind == SyntaxKind::INTO_CLAUSE
28836 }
28837 #[inline]
28838 fn cast(syntax: SyntaxNode) -> Option<Self> {
28839 if Self::can_cast(syntax.kind()) {
28840 Some(Self { syntax })
28841 } else {
28842 None
28843 }
28844 }
28845 #[inline]
28846 fn syntax(&self) -> &SyntaxNode {
28847 &self.syntax
28848 }
28849}
28850impl AstNode for IntoSchema {
28851 #[inline]
28852 fn can_cast(kind: SyntaxKind) -> bool {
28853 kind == SyntaxKind::INTO_SCHEMA
28854 }
28855 #[inline]
28856 fn cast(syntax: SyntaxNode) -> Option<Self> {
28857 if Self::can_cast(syntax.kind()) {
28858 Some(Self { syntax })
28859 } else {
28860 None
28861 }
28862 }
28863 #[inline]
28864 fn syntax(&self) -> &SyntaxNode {
28865 &self.syntax
28866 }
28867}
28868impl AstNode for IsDistinctFrom {
28869 #[inline]
28870 fn can_cast(kind: SyntaxKind) -> bool {
28871 kind == SyntaxKind::IS_DISTINCT_FROM
28872 }
28873 #[inline]
28874 fn cast(syntax: SyntaxNode) -> Option<Self> {
28875 if Self::can_cast(syntax.kind()) {
28876 Some(Self { syntax })
28877 } else {
28878 None
28879 }
28880 }
28881 #[inline]
28882 fn syntax(&self) -> &SyntaxNode {
28883 &self.syntax
28884 }
28885}
28886impl AstNode for IsJson {
28887 #[inline]
28888 fn can_cast(kind: SyntaxKind) -> bool {
28889 kind == SyntaxKind::IS_JSON
28890 }
28891 #[inline]
28892 fn cast(syntax: SyntaxNode) -> Option<Self> {
28893 if Self::can_cast(syntax.kind()) {
28894 Some(Self { syntax })
28895 } else {
28896 None
28897 }
28898 }
28899 #[inline]
28900 fn syntax(&self) -> &SyntaxNode {
28901 &self.syntax
28902 }
28903}
28904impl AstNode for IsJsonArray {
28905 #[inline]
28906 fn can_cast(kind: SyntaxKind) -> bool {
28907 kind == SyntaxKind::IS_JSON_ARRAY
28908 }
28909 #[inline]
28910 fn cast(syntax: SyntaxNode) -> Option<Self> {
28911 if Self::can_cast(syntax.kind()) {
28912 Some(Self { syntax })
28913 } else {
28914 None
28915 }
28916 }
28917 #[inline]
28918 fn syntax(&self) -> &SyntaxNode {
28919 &self.syntax
28920 }
28921}
28922impl AstNode for IsJsonObject {
28923 #[inline]
28924 fn can_cast(kind: SyntaxKind) -> bool {
28925 kind == SyntaxKind::IS_JSON_OBJECT
28926 }
28927 #[inline]
28928 fn cast(syntax: SyntaxNode) -> Option<Self> {
28929 if Self::can_cast(syntax.kind()) {
28930 Some(Self { syntax })
28931 } else {
28932 None
28933 }
28934 }
28935 #[inline]
28936 fn syntax(&self) -> &SyntaxNode {
28937 &self.syntax
28938 }
28939}
28940impl AstNode for IsJsonScalar {
28941 #[inline]
28942 fn can_cast(kind: SyntaxKind) -> bool {
28943 kind == SyntaxKind::IS_JSON_SCALAR
28944 }
28945 #[inline]
28946 fn cast(syntax: SyntaxNode) -> Option<Self> {
28947 if Self::can_cast(syntax.kind()) {
28948 Some(Self { syntax })
28949 } else {
28950 None
28951 }
28952 }
28953 #[inline]
28954 fn syntax(&self) -> &SyntaxNode {
28955 &self.syntax
28956 }
28957}
28958impl AstNode for IsJsonValue {
28959 #[inline]
28960 fn can_cast(kind: SyntaxKind) -> bool {
28961 kind == SyntaxKind::IS_JSON_VALUE
28962 }
28963 #[inline]
28964 fn cast(syntax: SyntaxNode) -> Option<Self> {
28965 if Self::can_cast(syntax.kind()) {
28966 Some(Self { syntax })
28967 } else {
28968 None
28969 }
28970 }
28971 #[inline]
28972 fn syntax(&self) -> &SyntaxNode {
28973 &self.syntax
28974 }
28975}
28976impl AstNode for IsLabel {
28977 #[inline]
28978 fn can_cast(kind: SyntaxKind) -> bool {
28979 kind == SyntaxKind::IS_LABEL
28980 }
28981 #[inline]
28982 fn cast(syntax: SyntaxNode) -> Option<Self> {
28983 if Self::can_cast(syntax.kind()) {
28984 Some(Self { syntax })
28985 } else {
28986 None
28987 }
28988 }
28989 #[inline]
28990 fn syntax(&self) -> &SyntaxNode {
28991 &self.syntax
28992 }
28993}
28994impl AstNode for IsNormalized {
28995 #[inline]
28996 fn can_cast(kind: SyntaxKind) -> bool {
28997 kind == SyntaxKind::IS_NORMALIZED
28998 }
28999 #[inline]
29000 fn cast(syntax: SyntaxNode) -> Option<Self> {
29001 if Self::can_cast(syntax.kind()) {
29002 Some(Self { syntax })
29003 } else {
29004 None
29005 }
29006 }
29007 #[inline]
29008 fn syntax(&self) -> &SyntaxNode {
29009 &self.syntax
29010 }
29011}
29012impl AstNode for IsNot {
29013 #[inline]
29014 fn can_cast(kind: SyntaxKind) -> bool {
29015 kind == SyntaxKind::IS_NOT
29016 }
29017 #[inline]
29018 fn cast(syntax: SyntaxNode) -> Option<Self> {
29019 if Self::can_cast(syntax.kind()) {
29020 Some(Self { syntax })
29021 } else {
29022 None
29023 }
29024 }
29025 #[inline]
29026 fn syntax(&self) -> &SyntaxNode {
29027 &self.syntax
29028 }
29029}
29030impl AstNode for IsNotDistinctFrom {
29031 #[inline]
29032 fn can_cast(kind: SyntaxKind) -> bool {
29033 kind == SyntaxKind::IS_NOT_DISTINCT_FROM
29034 }
29035 #[inline]
29036 fn cast(syntax: SyntaxNode) -> Option<Self> {
29037 if Self::can_cast(syntax.kind()) {
29038 Some(Self { syntax })
29039 } else {
29040 None
29041 }
29042 }
29043 #[inline]
29044 fn syntax(&self) -> &SyntaxNode {
29045 &self.syntax
29046 }
29047}
29048impl AstNode for IsNotJson {
29049 #[inline]
29050 fn can_cast(kind: SyntaxKind) -> bool {
29051 kind == SyntaxKind::IS_NOT_JSON
29052 }
29053 #[inline]
29054 fn cast(syntax: SyntaxNode) -> Option<Self> {
29055 if Self::can_cast(syntax.kind()) {
29056 Some(Self { syntax })
29057 } else {
29058 None
29059 }
29060 }
29061 #[inline]
29062 fn syntax(&self) -> &SyntaxNode {
29063 &self.syntax
29064 }
29065}
29066impl AstNode for IsNotJsonArray {
29067 #[inline]
29068 fn can_cast(kind: SyntaxKind) -> bool {
29069 kind == SyntaxKind::IS_NOT_JSON_ARRAY
29070 }
29071 #[inline]
29072 fn cast(syntax: SyntaxNode) -> Option<Self> {
29073 if Self::can_cast(syntax.kind()) {
29074 Some(Self { syntax })
29075 } else {
29076 None
29077 }
29078 }
29079 #[inline]
29080 fn syntax(&self) -> &SyntaxNode {
29081 &self.syntax
29082 }
29083}
29084impl AstNode for IsNotJsonObject {
29085 #[inline]
29086 fn can_cast(kind: SyntaxKind) -> bool {
29087 kind == SyntaxKind::IS_NOT_JSON_OBJECT
29088 }
29089 #[inline]
29090 fn cast(syntax: SyntaxNode) -> Option<Self> {
29091 if Self::can_cast(syntax.kind()) {
29092 Some(Self { syntax })
29093 } else {
29094 None
29095 }
29096 }
29097 #[inline]
29098 fn syntax(&self) -> &SyntaxNode {
29099 &self.syntax
29100 }
29101}
29102impl AstNode for IsNotJsonScalar {
29103 #[inline]
29104 fn can_cast(kind: SyntaxKind) -> bool {
29105 kind == SyntaxKind::IS_NOT_JSON_SCALAR
29106 }
29107 #[inline]
29108 fn cast(syntax: SyntaxNode) -> Option<Self> {
29109 if Self::can_cast(syntax.kind()) {
29110 Some(Self { syntax })
29111 } else {
29112 None
29113 }
29114 }
29115 #[inline]
29116 fn syntax(&self) -> &SyntaxNode {
29117 &self.syntax
29118 }
29119}
29120impl AstNode for IsNotJsonValue {
29121 #[inline]
29122 fn can_cast(kind: SyntaxKind) -> bool {
29123 kind == SyntaxKind::IS_NOT_JSON_VALUE
29124 }
29125 #[inline]
29126 fn cast(syntax: SyntaxNode) -> Option<Self> {
29127 if Self::can_cast(syntax.kind()) {
29128 Some(Self { syntax })
29129 } else {
29130 None
29131 }
29132 }
29133 #[inline]
29134 fn syntax(&self) -> &SyntaxNode {
29135 &self.syntax
29136 }
29137}
29138impl AstNode for IsNotNormalized {
29139 #[inline]
29140 fn can_cast(kind: SyntaxKind) -> bool {
29141 kind == SyntaxKind::IS_NOT_NORMALIZED
29142 }
29143 #[inline]
29144 fn cast(syntax: SyntaxNode) -> Option<Self> {
29145 if Self::can_cast(syntax.kind()) {
29146 Some(Self { syntax })
29147 } else {
29148 None
29149 }
29150 }
29151 #[inline]
29152 fn syntax(&self) -> &SyntaxNode {
29153 &self.syntax
29154 }
29155}
29156impl AstNode for Join {
29157 #[inline]
29158 fn can_cast(kind: SyntaxKind) -> bool {
29159 kind == SyntaxKind::JOIN
29160 }
29161 #[inline]
29162 fn cast(syntax: SyntaxNode) -> Option<Self> {
29163 if Self::can_cast(syntax.kind()) {
29164 Some(Self { syntax })
29165 } else {
29166 None
29167 }
29168 }
29169 #[inline]
29170 fn syntax(&self) -> &SyntaxNode {
29171 &self.syntax
29172 }
29173}
29174impl AstNode for JoinCross {
29175 #[inline]
29176 fn can_cast(kind: SyntaxKind) -> bool {
29177 kind == SyntaxKind::JOIN_CROSS
29178 }
29179 #[inline]
29180 fn cast(syntax: SyntaxNode) -> Option<Self> {
29181 if Self::can_cast(syntax.kind()) {
29182 Some(Self { syntax })
29183 } else {
29184 None
29185 }
29186 }
29187 #[inline]
29188 fn syntax(&self) -> &SyntaxNode {
29189 &self.syntax
29190 }
29191}
29192impl AstNode for JoinExpr {
29193 #[inline]
29194 fn can_cast(kind: SyntaxKind) -> bool {
29195 kind == SyntaxKind::JOIN_EXPR
29196 }
29197 #[inline]
29198 fn cast(syntax: SyntaxNode) -> Option<Self> {
29199 if Self::can_cast(syntax.kind()) {
29200 Some(Self { syntax })
29201 } else {
29202 None
29203 }
29204 }
29205 #[inline]
29206 fn syntax(&self) -> &SyntaxNode {
29207 &self.syntax
29208 }
29209}
29210impl AstNode for JoinFull {
29211 #[inline]
29212 fn can_cast(kind: SyntaxKind) -> bool {
29213 kind == SyntaxKind::JOIN_FULL
29214 }
29215 #[inline]
29216 fn cast(syntax: SyntaxNode) -> Option<Self> {
29217 if Self::can_cast(syntax.kind()) {
29218 Some(Self { syntax })
29219 } else {
29220 None
29221 }
29222 }
29223 #[inline]
29224 fn syntax(&self) -> &SyntaxNode {
29225 &self.syntax
29226 }
29227}
29228impl AstNode for JoinInner {
29229 #[inline]
29230 fn can_cast(kind: SyntaxKind) -> bool {
29231 kind == SyntaxKind::JOIN_INNER
29232 }
29233 #[inline]
29234 fn cast(syntax: SyntaxNode) -> Option<Self> {
29235 if Self::can_cast(syntax.kind()) {
29236 Some(Self { syntax })
29237 } else {
29238 None
29239 }
29240 }
29241 #[inline]
29242 fn syntax(&self) -> &SyntaxNode {
29243 &self.syntax
29244 }
29245}
29246impl AstNode for JoinLeft {
29247 #[inline]
29248 fn can_cast(kind: SyntaxKind) -> bool {
29249 kind == SyntaxKind::JOIN_LEFT
29250 }
29251 #[inline]
29252 fn cast(syntax: SyntaxNode) -> Option<Self> {
29253 if Self::can_cast(syntax.kind()) {
29254 Some(Self { syntax })
29255 } else {
29256 None
29257 }
29258 }
29259 #[inline]
29260 fn syntax(&self) -> &SyntaxNode {
29261 &self.syntax
29262 }
29263}
29264impl AstNode for JoinRight {
29265 #[inline]
29266 fn can_cast(kind: SyntaxKind) -> bool {
29267 kind == SyntaxKind::JOIN_RIGHT
29268 }
29269 #[inline]
29270 fn cast(syntax: SyntaxNode) -> Option<Self> {
29271 if Self::can_cast(syntax.kind()) {
29272 Some(Self { syntax })
29273 } else {
29274 None
29275 }
29276 }
29277 #[inline]
29278 fn syntax(&self) -> &SyntaxNode {
29279 &self.syntax
29280 }
29281}
29282impl AstNode for JoinUsingClause {
29283 #[inline]
29284 fn can_cast(kind: SyntaxKind) -> bool {
29285 kind == SyntaxKind::JOIN_USING_CLAUSE
29286 }
29287 #[inline]
29288 fn cast(syntax: SyntaxNode) -> Option<Self> {
29289 if Self::can_cast(syntax.kind()) {
29290 Some(Self { syntax })
29291 } else {
29292 None
29293 }
29294 }
29295 #[inline]
29296 fn syntax(&self) -> &SyntaxNode {
29297 &self.syntax
29298 }
29299}
29300impl AstNode for JsonArrayAggFn {
29301 #[inline]
29302 fn can_cast(kind: SyntaxKind) -> bool {
29303 kind == SyntaxKind::JSON_ARRAY_AGG_FN
29304 }
29305 #[inline]
29306 fn cast(syntax: SyntaxNode) -> Option<Self> {
29307 if Self::can_cast(syntax.kind()) {
29308 Some(Self { syntax })
29309 } else {
29310 None
29311 }
29312 }
29313 #[inline]
29314 fn syntax(&self) -> &SyntaxNode {
29315 &self.syntax
29316 }
29317}
29318impl AstNode for JsonArrayFn {
29319 #[inline]
29320 fn can_cast(kind: SyntaxKind) -> bool {
29321 kind == SyntaxKind::JSON_ARRAY_FN
29322 }
29323 #[inline]
29324 fn cast(syntax: SyntaxNode) -> Option<Self> {
29325 if Self::can_cast(syntax.kind()) {
29326 Some(Self { syntax })
29327 } else {
29328 None
29329 }
29330 }
29331 #[inline]
29332 fn syntax(&self) -> &SyntaxNode {
29333 &self.syntax
29334 }
29335}
29336impl AstNode for JsonBehaviorDefault {
29337 #[inline]
29338 fn can_cast(kind: SyntaxKind) -> bool {
29339 kind == SyntaxKind::JSON_BEHAVIOR_DEFAULT
29340 }
29341 #[inline]
29342 fn cast(syntax: SyntaxNode) -> Option<Self> {
29343 if Self::can_cast(syntax.kind()) {
29344 Some(Self { syntax })
29345 } else {
29346 None
29347 }
29348 }
29349 #[inline]
29350 fn syntax(&self) -> &SyntaxNode {
29351 &self.syntax
29352 }
29353}
29354impl AstNode for JsonBehaviorEmptyArray {
29355 #[inline]
29356 fn can_cast(kind: SyntaxKind) -> bool {
29357 kind == SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY
29358 }
29359 #[inline]
29360 fn cast(syntax: SyntaxNode) -> Option<Self> {
29361 if Self::can_cast(syntax.kind()) {
29362 Some(Self { syntax })
29363 } else {
29364 None
29365 }
29366 }
29367 #[inline]
29368 fn syntax(&self) -> &SyntaxNode {
29369 &self.syntax
29370 }
29371}
29372impl AstNode for JsonBehaviorEmptyObject {
29373 #[inline]
29374 fn can_cast(kind: SyntaxKind) -> bool {
29375 kind == SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT
29376 }
29377 #[inline]
29378 fn cast(syntax: SyntaxNode) -> Option<Self> {
29379 if Self::can_cast(syntax.kind()) {
29380 Some(Self { syntax })
29381 } else {
29382 None
29383 }
29384 }
29385 #[inline]
29386 fn syntax(&self) -> &SyntaxNode {
29387 &self.syntax
29388 }
29389}
29390impl AstNode for JsonBehaviorError {
29391 #[inline]
29392 fn can_cast(kind: SyntaxKind) -> bool {
29393 kind == SyntaxKind::JSON_BEHAVIOR_ERROR
29394 }
29395 #[inline]
29396 fn cast(syntax: SyntaxNode) -> Option<Self> {
29397 if Self::can_cast(syntax.kind()) {
29398 Some(Self { syntax })
29399 } else {
29400 None
29401 }
29402 }
29403 #[inline]
29404 fn syntax(&self) -> &SyntaxNode {
29405 &self.syntax
29406 }
29407}
29408impl AstNode for JsonBehaviorFalse {
29409 #[inline]
29410 fn can_cast(kind: SyntaxKind) -> bool {
29411 kind == SyntaxKind::JSON_BEHAVIOR_FALSE
29412 }
29413 #[inline]
29414 fn cast(syntax: SyntaxNode) -> Option<Self> {
29415 if Self::can_cast(syntax.kind()) {
29416 Some(Self { syntax })
29417 } else {
29418 None
29419 }
29420 }
29421 #[inline]
29422 fn syntax(&self) -> &SyntaxNode {
29423 &self.syntax
29424 }
29425}
29426impl AstNode for JsonBehaviorNull {
29427 #[inline]
29428 fn can_cast(kind: SyntaxKind) -> bool {
29429 kind == SyntaxKind::JSON_BEHAVIOR_NULL
29430 }
29431 #[inline]
29432 fn cast(syntax: SyntaxNode) -> Option<Self> {
29433 if Self::can_cast(syntax.kind()) {
29434 Some(Self { syntax })
29435 } else {
29436 None
29437 }
29438 }
29439 #[inline]
29440 fn syntax(&self) -> &SyntaxNode {
29441 &self.syntax
29442 }
29443}
29444impl AstNode for JsonBehaviorTrue {
29445 #[inline]
29446 fn can_cast(kind: SyntaxKind) -> bool {
29447 kind == SyntaxKind::JSON_BEHAVIOR_TRUE
29448 }
29449 #[inline]
29450 fn cast(syntax: SyntaxNode) -> Option<Self> {
29451 if Self::can_cast(syntax.kind()) {
29452 Some(Self { syntax })
29453 } else {
29454 None
29455 }
29456 }
29457 #[inline]
29458 fn syntax(&self) -> &SyntaxNode {
29459 &self.syntax
29460 }
29461}
29462impl AstNode for JsonBehaviorUnknown {
29463 #[inline]
29464 fn can_cast(kind: SyntaxKind) -> bool {
29465 kind == SyntaxKind::JSON_BEHAVIOR_UNKNOWN
29466 }
29467 #[inline]
29468 fn cast(syntax: SyntaxNode) -> Option<Self> {
29469 if Self::can_cast(syntax.kind()) {
29470 Some(Self { syntax })
29471 } else {
29472 None
29473 }
29474 }
29475 #[inline]
29476 fn syntax(&self) -> &SyntaxNode {
29477 &self.syntax
29478 }
29479}
29480impl AstNode for JsonEncodingClause {
29481 #[inline]
29482 fn can_cast(kind: SyntaxKind) -> bool {
29483 kind == SyntaxKind::JSON_ENCODING_CLAUSE
29484 }
29485 #[inline]
29486 fn cast(syntax: SyntaxNode) -> Option<Self> {
29487 if Self::can_cast(syntax.kind()) {
29488 Some(Self { syntax })
29489 } else {
29490 None
29491 }
29492 }
29493 #[inline]
29494 fn syntax(&self) -> &SyntaxNode {
29495 &self.syntax
29496 }
29497}
29498impl AstNode for JsonExistsFn {
29499 #[inline]
29500 fn can_cast(kind: SyntaxKind) -> bool {
29501 kind == SyntaxKind::JSON_EXISTS_FN
29502 }
29503 #[inline]
29504 fn cast(syntax: SyntaxNode) -> Option<Self> {
29505 if Self::can_cast(syntax.kind()) {
29506 Some(Self { syntax })
29507 } else {
29508 None
29509 }
29510 }
29511 #[inline]
29512 fn syntax(&self) -> &SyntaxNode {
29513 &self.syntax
29514 }
29515}
29516impl AstNode for JsonExprFormat {
29517 #[inline]
29518 fn can_cast(kind: SyntaxKind) -> bool {
29519 kind == SyntaxKind::JSON_EXPR_FORMAT
29520 }
29521 #[inline]
29522 fn cast(syntax: SyntaxNode) -> Option<Self> {
29523 if Self::can_cast(syntax.kind()) {
29524 Some(Self { syntax })
29525 } else {
29526 None
29527 }
29528 }
29529 #[inline]
29530 fn syntax(&self) -> &SyntaxNode {
29531 &self.syntax
29532 }
29533}
29534impl AstNode for JsonFn {
29535 #[inline]
29536 fn can_cast(kind: SyntaxKind) -> bool {
29537 kind == SyntaxKind::JSON_FN
29538 }
29539 #[inline]
29540 fn cast(syntax: SyntaxNode) -> Option<Self> {
29541 if Self::can_cast(syntax.kind()) {
29542 Some(Self { syntax })
29543 } else {
29544 None
29545 }
29546 }
29547 #[inline]
29548 fn syntax(&self) -> &SyntaxNode {
29549 &self.syntax
29550 }
29551}
29552impl AstNode for JsonFormatClause {
29553 #[inline]
29554 fn can_cast(kind: SyntaxKind) -> bool {
29555 kind == SyntaxKind::JSON_FORMAT_CLAUSE
29556 }
29557 #[inline]
29558 fn cast(syntax: SyntaxNode) -> Option<Self> {
29559 if Self::can_cast(syntax.kind()) {
29560 Some(Self { syntax })
29561 } else {
29562 None
29563 }
29564 }
29565 #[inline]
29566 fn syntax(&self) -> &SyntaxNode {
29567 &self.syntax
29568 }
29569}
29570impl AstNode for JsonKeyValue {
29571 #[inline]
29572 fn can_cast(kind: SyntaxKind) -> bool {
29573 kind == SyntaxKind::JSON_KEY_VALUE
29574 }
29575 #[inline]
29576 fn cast(syntax: SyntaxNode) -> Option<Self> {
29577 if Self::can_cast(syntax.kind()) {
29578 Some(Self { syntax })
29579 } else {
29580 None
29581 }
29582 }
29583 #[inline]
29584 fn syntax(&self) -> &SyntaxNode {
29585 &self.syntax
29586 }
29587}
29588impl AstNode for JsonKeysUniqueClause {
29589 #[inline]
29590 fn can_cast(kind: SyntaxKind) -> bool {
29591 kind == SyntaxKind::JSON_KEYS_UNIQUE_CLAUSE
29592 }
29593 #[inline]
29594 fn cast(syntax: SyntaxNode) -> Option<Self> {
29595 if Self::can_cast(syntax.kind()) {
29596 Some(Self { syntax })
29597 } else {
29598 None
29599 }
29600 }
29601 #[inline]
29602 fn syntax(&self) -> &SyntaxNode {
29603 &self.syntax
29604 }
29605}
29606impl AstNode for JsonNullClause {
29607 #[inline]
29608 fn can_cast(kind: SyntaxKind) -> bool {
29609 kind == SyntaxKind::JSON_NULL_CLAUSE
29610 }
29611 #[inline]
29612 fn cast(syntax: SyntaxNode) -> Option<Self> {
29613 if Self::can_cast(syntax.kind()) {
29614 Some(Self { syntax })
29615 } else {
29616 None
29617 }
29618 }
29619 #[inline]
29620 fn syntax(&self) -> &SyntaxNode {
29621 &self.syntax
29622 }
29623}
29624impl AstNode for JsonObjectAggFn {
29625 #[inline]
29626 fn can_cast(kind: SyntaxKind) -> bool {
29627 kind == SyntaxKind::JSON_OBJECT_AGG_FN
29628 }
29629 #[inline]
29630 fn cast(syntax: SyntaxNode) -> Option<Self> {
29631 if Self::can_cast(syntax.kind()) {
29632 Some(Self { syntax })
29633 } else {
29634 None
29635 }
29636 }
29637 #[inline]
29638 fn syntax(&self) -> &SyntaxNode {
29639 &self.syntax
29640 }
29641}
29642impl AstNode for JsonObjectFn {
29643 #[inline]
29644 fn can_cast(kind: SyntaxKind) -> bool {
29645 kind == SyntaxKind::JSON_OBJECT_FN
29646 }
29647 #[inline]
29648 fn cast(syntax: SyntaxNode) -> Option<Self> {
29649 if Self::can_cast(syntax.kind()) {
29650 Some(Self { syntax })
29651 } else {
29652 None
29653 }
29654 }
29655 #[inline]
29656 fn syntax(&self) -> &SyntaxNode {
29657 &self.syntax
29658 }
29659}
29660impl AstNode for JsonOnEmptyClause {
29661 #[inline]
29662 fn can_cast(kind: SyntaxKind) -> bool {
29663 kind == SyntaxKind::JSON_ON_EMPTY_CLAUSE
29664 }
29665 #[inline]
29666 fn cast(syntax: SyntaxNode) -> Option<Self> {
29667 if Self::can_cast(syntax.kind()) {
29668 Some(Self { syntax })
29669 } else {
29670 None
29671 }
29672 }
29673 #[inline]
29674 fn syntax(&self) -> &SyntaxNode {
29675 &self.syntax
29676 }
29677}
29678impl AstNode for JsonOnErrorClause {
29679 #[inline]
29680 fn can_cast(kind: SyntaxKind) -> bool {
29681 kind == SyntaxKind::JSON_ON_ERROR_CLAUSE
29682 }
29683 #[inline]
29684 fn cast(syntax: SyntaxNode) -> Option<Self> {
29685 if Self::can_cast(syntax.kind()) {
29686 Some(Self { syntax })
29687 } else {
29688 None
29689 }
29690 }
29691 #[inline]
29692 fn syntax(&self) -> &SyntaxNode {
29693 &self.syntax
29694 }
29695}
29696impl AstNode for JsonPassingArg {
29697 #[inline]
29698 fn can_cast(kind: SyntaxKind) -> bool {
29699 kind == SyntaxKind::JSON_PASSING_ARG
29700 }
29701 #[inline]
29702 fn cast(syntax: SyntaxNode) -> Option<Self> {
29703 if Self::can_cast(syntax.kind()) {
29704 Some(Self { syntax })
29705 } else {
29706 None
29707 }
29708 }
29709 #[inline]
29710 fn syntax(&self) -> &SyntaxNode {
29711 &self.syntax
29712 }
29713}
29714impl AstNode for JsonPassingClause {
29715 #[inline]
29716 fn can_cast(kind: SyntaxKind) -> bool {
29717 kind == SyntaxKind::JSON_PASSING_CLAUSE
29718 }
29719 #[inline]
29720 fn cast(syntax: SyntaxNode) -> Option<Self> {
29721 if Self::can_cast(syntax.kind()) {
29722 Some(Self { syntax })
29723 } else {
29724 None
29725 }
29726 }
29727 #[inline]
29728 fn syntax(&self) -> &SyntaxNode {
29729 &self.syntax
29730 }
29731}
29732impl AstNode for JsonPathClause {
29733 #[inline]
29734 fn can_cast(kind: SyntaxKind) -> bool {
29735 kind == SyntaxKind::JSON_PATH_CLAUSE
29736 }
29737 #[inline]
29738 fn cast(syntax: SyntaxNode) -> Option<Self> {
29739 if Self::can_cast(syntax.kind()) {
29740 Some(Self { syntax })
29741 } else {
29742 None
29743 }
29744 }
29745 #[inline]
29746 fn syntax(&self) -> &SyntaxNode {
29747 &self.syntax
29748 }
29749}
29750impl AstNode for JsonQueryFn {
29751 #[inline]
29752 fn can_cast(kind: SyntaxKind) -> bool {
29753 kind == SyntaxKind::JSON_QUERY_FN
29754 }
29755 #[inline]
29756 fn cast(syntax: SyntaxNode) -> Option<Self> {
29757 if Self::can_cast(syntax.kind()) {
29758 Some(Self { syntax })
29759 } else {
29760 None
29761 }
29762 }
29763 #[inline]
29764 fn syntax(&self) -> &SyntaxNode {
29765 &self.syntax
29766 }
29767}
29768impl AstNode for JsonQuotesClause {
29769 #[inline]
29770 fn can_cast(kind: SyntaxKind) -> bool {
29771 kind == SyntaxKind::JSON_QUOTES_CLAUSE
29772 }
29773 #[inline]
29774 fn cast(syntax: SyntaxNode) -> Option<Self> {
29775 if Self::can_cast(syntax.kind()) {
29776 Some(Self { syntax })
29777 } else {
29778 None
29779 }
29780 }
29781 #[inline]
29782 fn syntax(&self) -> &SyntaxNode {
29783 &self.syntax
29784 }
29785}
29786impl AstNode for JsonReturningClause {
29787 #[inline]
29788 fn can_cast(kind: SyntaxKind) -> bool {
29789 kind == SyntaxKind::JSON_RETURNING_CLAUSE
29790 }
29791 #[inline]
29792 fn cast(syntax: SyntaxNode) -> Option<Self> {
29793 if Self::can_cast(syntax.kind()) {
29794 Some(Self { syntax })
29795 } else {
29796 None
29797 }
29798 }
29799 #[inline]
29800 fn syntax(&self) -> &SyntaxNode {
29801 &self.syntax
29802 }
29803}
29804impl AstNode for JsonScalarFn {
29805 #[inline]
29806 fn can_cast(kind: SyntaxKind) -> bool {
29807 kind == SyntaxKind::JSON_SCALAR_FN
29808 }
29809 #[inline]
29810 fn cast(syntax: SyntaxNode) -> Option<Self> {
29811 if Self::can_cast(syntax.kind()) {
29812 Some(Self { syntax })
29813 } else {
29814 None
29815 }
29816 }
29817 #[inline]
29818 fn syntax(&self) -> &SyntaxNode {
29819 &self.syntax
29820 }
29821}
29822impl AstNode for JsonSelectFormat {
29823 #[inline]
29824 fn can_cast(kind: SyntaxKind) -> bool {
29825 kind == SyntaxKind::JSON_SELECT_FORMAT
29826 }
29827 #[inline]
29828 fn cast(syntax: SyntaxNode) -> Option<Self> {
29829 if Self::can_cast(syntax.kind()) {
29830 Some(Self { syntax })
29831 } else {
29832 None
29833 }
29834 }
29835 #[inline]
29836 fn syntax(&self) -> &SyntaxNode {
29837 &self.syntax
29838 }
29839}
29840impl AstNode for JsonSerializeFn {
29841 #[inline]
29842 fn can_cast(kind: SyntaxKind) -> bool {
29843 kind == SyntaxKind::JSON_SERIALIZE_FN
29844 }
29845 #[inline]
29846 fn cast(syntax: SyntaxNode) -> Option<Self> {
29847 if Self::can_cast(syntax.kind()) {
29848 Some(Self { syntax })
29849 } else {
29850 None
29851 }
29852 }
29853 #[inline]
29854 fn syntax(&self) -> &SyntaxNode {
29855 &self.syntax
29856 }
29857}
29858impl AstNode for JsonTable {
29859 #[inline]
29860 fn can_cast(kind: SyntaxKind) -> bool {
29861 kind == SyntaxKind::JSON_TABLE
29862 }
29863 #[inline]
29864 fn cast(syntax: SyntaxNode) -> Option<Self> {
29865 if Self::can_cast(syntax.kind()) {
29866 Some(Self { syntax })
29867 } else {
29868 None
29869 }
29870 }
29871 #[inline]
29872 fn syntax(&self) -> &SyntaxNode {
29873 &self.syntax
29874 }
29875}
29876impl AstNode for JsonTableColumn {
29877 #[inline]
29878 fn can_cast(kind: SyntaxKind) -> bool {
29879 kind == SyntaxKind::JSON_TABLE_COLUMN
29880 }
29881 #[inline]
29882 fn cast(syntax: SyntaxNode) -> Option<Self> {
29883 if Self::can_cast(syntax.kind()) {
29884 Some(Self { syntax })
29885 } else {
29886 None
29887 }
29888 }
29889 #[inline]
29890 fn syntax(&self) -> &SyntaxNode {
29891 &self.syntax
29892 }
29893}
29894impl AstNode for JsonTableColumnList {
29895 #[inline]
29896 fn can_cast(kind: SyntaxKind) -> bool {
29897 kind == SyntaxKind::JSON_TABLE_COLUMN_LIST
29898 }
29899 #[inline]
29900 fn cast(syntax: SyntaxNode) -> Option<Self> {
29901 if Self::can_cast(syntax.kind()) {
29902 Some(Self { syntax })
29903 } else {
29904 None
29905 }
29906 }
29907 #[inline]
29908 fn syntax(&self) -> &SyntaxNode {
29909 &self.syntax
29910 }
29911}
29912impl AstNode for JsonValueExpr {
29913 #[inline]
29914 fn can_cast(kind: SyntaxKind) -> bool {
29915 kind == SyntaxKind::JSON_VALUE_EXPR
29916 }
29917 #[inline]
29918 fn cast(syntax: SyntaxNode) -> Option<Self> {
29919 if Self::can_cast(syntax.kind()) {
29920 Some(Self { syntax })
29921 } else {
29922 None
29923 }
29924 }
29925 #[inline]
29926 fn syntax(&self) -> &SyntaxNode {
29927 &self.syntax
29928 }
29929}
29930impl AstNode for JsonValueFn {
29931 #[inline]
29932 fn can_cast(kind: SyntaxKind) -> bool {
29933 kind == SyntaxKind::JSON_VALUE_FN
29934 }
29935 #[inline]
29936 fn cast(syntax: SyntaxNode) -> Option<Self> {
29937 if Self::can_cast(syntax.kind()) {
29938 Some(Self { syntax })
29939 } else {
29940 None
29941 }
29942 }
29943 #[inline]
29944 fn syntax(&self) -> &SyntaxNode {
29945 &self.syntax
29946 }
29947}
29948impl AstNode for JsonWrapperBehaviorClause {
29949 #[inline]
29950 fn can_cast(kind: SyntaxKind) -> bool {
29951 kind == SyntaxKind::JSON_WRAPPER_BEHAVIOR_CLAUSE
29952 }
29953 #[inline]
29954 fn cast(syntax: SyntaxNode) -> Option<Self> {
29955 if Self::can_cast(syntax.kind()) {
29956 Some(Self { syntax })
29957 } else {
29958 None
29959 }
29960 }
29961 #[inline]
29962 fn syntax(&self) -> &SyntaxNode {
29963 &self.syntax
29964 }
29965}
29966impl AstNode for LabelAndProperties {
29967 #[inline]
29968 fn can_cast(kind: SyntaxKind) -> bool {
29969 kind == SyntaxKind::LABEL_AND_PROPERTIES
29970 }
29971 #[inline]
29972 fn cast(syntax: SyntaxNode) -> Option<Self> {
29973 if Self::can_cast(syntax.kind()) {
29974 Some(Self { syntax })
29975 } else {
29976 None
29977 }
29978 }
29979 #[inline]
29980 fn syntax(&self) -> &SyntaxNode {
29981 &self.syntax
29982 }
29983}
29984impl AstNode for LabelAndPropertiesList {
29985 #[inline]
29986 fn can_cast(kind: SyntaxKind) -> bool {
29987 kind == SyntaxKind::LABEL_AND_PROPERTIES_LIST
29988 }
29989 #[inline]
29990 fn cast(syntax: SyntaxNode) -> Option<Self> {
29991 if Self::can_cast(syntax.kind()) {
29992 Some(Self { syntax })
29993 } else {
29994 None
29995 }
29996 }
29997 #[inline]
29998 fn syntax(&self) -> &SyntaxNode {
29999 &self.syntax
30000 }
30001}
30002impl AstNode for LanguageFuncOption {
30003 #[inline]
30004 fn can_cast(kind: SyntaxKind) -> bool {
30005 kind == SyntaxKind::LANGUAGE_FUNC_OPTION
30006 }
30007 #[inline]
30008 fn cast(syntax: SyntaxNode) -> Option<Self> {
30009 if Self::can_cast(syntax.kind()) {
30010 Some(Self { syntax })
30011 } else {
30012 None
30013 }
30014 }
30015 #[inline]
30016 fn syntax(&self) -> &SyntaxNode {
30017 &self.syntax
30018 }
30019}
30020impl AstNode for Last {
30021 #[inline]
30022 fn can_cast(kind: SyntaxKind) -> bool {
30023 kind == SyntaxKind::LAST
30024 }
30025 #[inline]
30026 fn cast(syntax: SyntaxNode) -> Option<Self> {
30027 if Self::can_cast(syntax.kind()) {
30028 Some(Self { syntax })
30029 } else {
30030 None
30031 }
30032 }
30033 #[inline]
30034 fn syntax(&self) -> &SyntaxNode {
30035 &self.syntax
30036 }
30037}
30038impl AstNode for LeakproofFuncOption {
30039 #[inline]
30040 fn can_cast(kind: SyntaxKind) -> bool {
30041 kind == SyntaxKind::LEAKPROOF_FUNC_OPTION
30042 }
30043 #[inline]
30044 fn cast(syntax: SyntaxNode) -> Option<Self> {
30045 if Self::can_cast(syntax.kind()) {
30046 Some(Self { syntax })
30047 } else {
30048 None
30049 }
30050 }
30051 #[inline]
30052 fn syntax(&self) -> &SyntaxNode {
30053 &self.syntax
30054 }
30055}
30056impl AstNode for LikeClause {
30057 #[inline]
30058 fn can_cast(kind: SyntaxKind) -> bool {
30059 kind == SyntaxKind::LIKE_CLAUSE
30060 }
30061 #[inline]
30062 fn cast(syntax: SyntaxNode) -> Option<Self> {
30063 if Self::can_cast(syntax.kind()) {
30064 Some(Self { syntax })
30065 } else {
30066 None
30067 }
30068 }
30069 #[inline]
30070 fn syntax(&self) -> &SyntaxNode {
30071 &self.syntax
30072 }
30073}
30074impl AstNode for LikeOption {
30075 #[inline]
30076 fn can_cast(kind: SyntaxKind) -> bool {
30077 kind == SyntaxKind::LIKE_OPTION
30078 }
30079 #[inline]
30080 fn cast(syntax: SyntaxNode) -> Option<Self> {
30081 if Self::can_cast(syntax.kind()) {
30082 Some(Self { syntax })
30083 } else {
30084 None
30085 }
30086 }
30087 #[inline]
30088 fn syntax(&self) -> &SyntaxNode {
30089 &self.syntax
30090 }
30091}
30092impl AstNode for LimitClause {
30093 #[inline]
30094 fn can_cast(kind: SyntaxKind) -> bool {
30095 kind == SyntaxKind::LIMIT_CLAUSE
30096 }
30097 #[inline]
30098 fn cast(syntax: SyntaxNode) -> Option<Self> {
30099 if Self::can_cast(syntax.kind()) {
30100 Some(Self { syntax })
30101 } else {
30102 None
30103 }
30104 }
30105 #[inline]
30106 fn syntax(&self) -> &SyntaxNode {
30107 &self.syntax
30108 }
30109}
30110impl AstNode for LimitToTables {
30111 #[inline]
30112 fn can_cast(kind: SyntaxKind) -> bool {
30113 kind == SyntaxKind::LIMIT_TO_TABLES
30114 }
30115 #[inline]
30116 fn cast(syntax: SyntaxNode) -> Option<Self> {
30117 if Self::can_cast(syntax.kind()) {
30118 Some(Self { syntax })
30119 } else {
30120 None
30121 }
30122 }
30123 #[inline]
30124 fn syntax(&self) -> &SyntaxNode {
30125 &self.syntax
30126 }
30127}
30128impl AstNode for Listen {
30129 #[inline]
30130 fn can_cast(kind: SyntaxKind) -> bool {
30131 kind == SyntaxKind::LISTEN
30132 }
30133 #[inline]
30134 fn cast(syntax: SyntaxNode) -> Option<Self> {
30135 if Self::can_cast(syntax.kind()) {
30136 Some(Self { syntax })
30137 } else {
30138 None
30139 }
30140 }
30141 #[inline]
30142 fn syntax(&self) -> &SyntaxNode {
30143 &self.syntax
30144 }
30145}
30146impl AstNode for Literal {
30147 #[inline]
30148 fn can_cast(kind: SyntaxKind) -> bool {
30149 kind == SyntaxKind::LITERAL
30150 }
30151 #[inline]
30152 fn cast(syntax: SyntaxNode) -> Option<Self> {
30153 if Self::can_cast(syntax.kind()) {
30154 Some(Self { syntax })
30155 } else {
30156 None
30157 }
30158 }
30159 #[inline]
30160 fn syntax(&self) -> &SyntaxNode {
30161 &self.syntax
30162 }
30163}
30164impl AstNode for Load {
30165 #[inline]
30166 fn can_cast(kind: SyntaxKind) -> bool {
30167 kind == SyntaxKind::LOAD
30168 }
30169 #[inline]
30170 fn cast(syntax: SyntaxNode) -> Option<Self> {
30171 if Self::can_cast(syntax.kind()) {
30172 Some(Self { syntax })
30173 } else {
30174 None
30175 }
30176 }
30177 #[inline]
30178 fn syntax(&self) -> &SyntaxNode {
30179 &self.syntax
30180 }
30181}
30182impl AstNode for Lock {
30183 #[inline]
30184 fn can_cast(kind: SyntaxKind) -> bool {
30185 kind == SyntaxKind::LOCK
30186 }
30187 #[inline]
30188 fn cast(syntax: SyntaxNode) -> Option<Self> {
30189 if Self::can_cast(syntax.kind()) {
30190 Some(Self { syntax })
30191 } else {
30192 None
30193 }
30194 }
30195 #[inline]
30196 fn syntax(&self) -> &SyntaxNode {
30197 &self.syntax
30198 }
30199}
30200impl AstNode for LockingClause {
30201 #[inline]
30202 fn can_cast(kind: SyntaxKind) -> bool {
30203 kind == SyntaxKind::LOCKING_CLAUSE
30204 }
30205 #[inline]
30206 fn cast(syntax: SyntaxNode) -> Option<Self> {
30207 if Self::can_cast(syntax.kind()) {
30208 Some(Self { syntax })
30209 } else {
30210 None
30211 }
30212 }
30213 #[inline]
30214 fn syntax(&self) -> &SyntaxNode {
30215 &self.syntax
30216 }
30217}
30218impl AstNode for Lteq {
30219 #[inline]
30220 fn can_cast(kind: SyntaxKind) -> bool {
30221 kind == SyntaxKind::LTEQ
30222 }
30223 #[inline]
30224 fn cast(syntax: SyntaxNode) -> Option<Self> {
30225 if Self::can_cast(syntax.kind()) {
30226 Some(Self { syntax })
30227 } else {
30228 None
30229 }
30230 }
30231 #[inline]
30232 fn syntax(&self) -> &SyntaxNode {
30233 &self.syntax
30234 }
30235}
30236impl AstNode for MatchFull {
30237 #[inline]
30238 fn can_cast(kind: SyntaxKind) -> bool {
30239 kind == SyntaxKind::MATCH_FULL
30240 }
30241 #[inline]
30242 fn cast(syntax: SyntaxNode) -> Option<Self> {
30243 if Self::can_cast(syntax.kind()) {
30244 Some(Self { syntax })
30245 } else {
30246 None
30247 }
30248 }
30249 #[inline]
30250 fn syntax(&self) -> &SyntaxNode {
30251 &self.syntax
30252 }
30253}
30254impl AstNode for MatchPartial {
30255 #[inline]
30256 fn can_cast(kind: SyntaxKind) -> bool {
30257 kind == SyntaxKind::MATCH_PARTIAL
30258 }
30259 #[inline]
30260 fn cast(syntax: SyntaxNode) -> Option<Self> {
30261 if Self::can_cast(syntax.kind()) {
30262 Some(Self { syntax })
30263 } else {
30264 None
30265 }
30266 }
30267 #[inline]
30268 fn syntax(&self) -> &SyntaxNode {
30269 &self.syntax
30270 }
30271}
30272impl AstNode for MatchSimple {
30273 #[inline]
30274 fn can_cast(kind: SyntaxKind) -> bool {
30275 kind == SyntaxKind::MATCH_SIMPLE
30276 }
30277 #[inline]
30278 fn cast(syntax: SyntaxNode) -> Option<Self> {
30279 if Self::can_cast(syntax.kind()) {
30280 Some(Self { syntax })
30281 } else {
30282 None
30283 }
30284 }
30285 #[inline]
30286 fn syntax(&self) -> &SyntaxNode {
30287 &self.syntax
30288 }
30289}
30290impl AstNode for Materialized {
30291 #[inline]
30292 fn can_cast(kind: SyntaxKind) -> bool {
30293 kind == SyntaxKind::MATERIALIZED
30294 }
30295 #[inline]
30296 fn cast(syntax: SyntaxNode) -> Option<Self> {
30297 if Self::can_cast(syntax.kind()) {
30298 Some(Self { syntax })
30299 } else {
30300 None
30301 }
30302 }
30303 #[inline]
30304 fn syntax(&self) -> &SyntaxNode {
30305 &self.syntax
30306 }
30307}
30308impl AstNode for Merge {
30309 #[inline]
30310 fn can_cast(kind: SyntaxKind) -> bool {
30311 kind == SyntaxKind::MERGE
30312 }
30313 #[inline]
30314 fn cast(syntax: SyntaxNode) -> Option<Self> {
30315 if Self::can_cast(syntax.kind()) {
30316 Some(Self { syntax })
30317 } else {
30318 None
30319 }
30320 }
30321 #[inline]
30322 fn syntax(&self) -> &SyntaxNode {
30323 &self.syntax
30324 }
30325}
30326impl AstNode for MergeDelete {
30327 #[inline]
30328 fn can_cast(kind: SyntaxKind) -> bool {
30329 kind == SyntaxKind::MERGE_DELETE
30330 }
30331 #[inline]
30332 fn cast(syntax: SyntaxNode) -> Option<Self> {
30333 if Self::can_cast(syntax.kind()) {
30334 Some(Self { syntax })
30335 } else {
30336 None
30337 }
30338 }
30339 #[inline]
30340 fn syntax(&self) -> &SyntaxNode {
30341 &self.syntax
30342 }
30343}
30344impl AstNode for MergeDoNothing {
30345 #[inline]
30346 fn can_cast(kind: SyntaxKind) -> bool {
30347 kind == SyntaxKind::MERGE_DO_NOTHING
30348 }
30349 #[inline]
30350 fn cast(syntax: SyntaxNode) -> Option<Self> {
30351 if Self::can_cast(syntax.kind()) {
30352 Some(Self { syntax })
30353 } else {
30354 None
30355 }
30356 }
30357 #[inline]
30358 fn syntax(&self) -> &SyntaxNode {
30359 &self.syntax
30360 }
30361}
30362impl AstNode for MergeInsert {
30363 #[inline]
30364 fn can_cast(kind: SyntaxKind) -> bool {
30365 kind == SyntaxKind::MERGE_INSERT
30366 }
30367 #[inline]
30368 fn cast(syntax: SyntaxNode) -> Option<Self> {
30369 if Self::can_cast(syntax.kind()) {
30370 Some(Self { syntax })
30371 } else {
30372 None
30373 }
30374 }
30375 #[inline]
30376 fn syntax(&self) -> &SyntaxNode {
30377 &self.syntax
30378 }
30379}
30380impl AstNode for MergePartitions {
30381 #[inline]
30382 fn can_cast(kind: SyntaxKind) -> bool {
30383 kind == SyntaxKind::MERGE_PARTITIONS
30384 }
30385 #[inline]
30386 fn cast(syntax: SyntaxNode) -> Option<Self> {
30387 if Self::can_cast(syntax.kind()) {
30388 Some(Self { syntax })
30389 } else {
30390 None
30391 }
30392 }
30393 #[inline]
30394 fn syntax(&self) -> &SyntaxNode {
30395 &self.syntax
30396 }
30397}
30398impl AstNode for MergeUpdate {
30399 #[inline]
30400 fn can_cast(kind: SyntaxKind) -> bool {
30401 kind == SyntaxKind::MERGE_UPDATE
30402 }
30403 #[inline]
30404 fn cast(syntax: SyntaxNode) -> Option<Self> {
30405 if Self::can_cast(syntax.kind()) {
30406 Some(Self { syntax })
30407 } else {
30408 None
30409 }
30410 }
30411 #[inline]
30412 fn syntax(&self) -> &SyntaxNode {
30413 &self.syntax
30414 }
30415}
30416impl AstNode for MergeWhenMatched {
30417 #[inline]
30418 fn can_cast(kind: SyntaxKind) -> bool {
30419 kind == SyntaxKind::MERGE_WHEN_MATCHED
30420 }
30421 #[inline]
30422 fn cast(syntax: SyntaxNode) -> Option<Self> {
30423 if Self::can_cast(syntax.kind()) {
30424 Some(Self { syntax })
30425 } else {
30426 None
30427 }
30428 }
30429 #[inline]
30430 fn syntax(&self) -> &SyntaxNode {
30431 &self.syntax
30432 }
30433}
30434impl AstNode for MergeWhenNotMatchedSource {
30435 #[inline]
30436 fn can_cast(kind: SyntaxKind) -> bool {
30437 kind == SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE
30438 }
30439 #[inline]
30440 fn cast(syntax: SyntaxNode) -> Option<Self> {
30441 if Self::can_cast(syntax.kind()) {
30442 Some(Self { syntax })
30443 } else {
30444 None
30445 }
30446 }
30447 #[inline]
30448 fn syntax(&self) -> &SyntaxNode {
30449 &self.syntax
30450 }
30451}
30452impl AstNode for MergeWhenNotMatchedTarget {
30453 #[inline]
30454 fn can_cast(kind: SyntaxKind) -> bool {
30455 kind == SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET
30456 }
30457 #[inline]
30458 fn cast(syntax: SyntaxNode) -> Option<Self> {
30459 if Self::can_cast(syntax.kind()) {
30460 Some(Self { syntax })
30461 } else {
30462 None
30463 }
30464 }
30465 #[inline]
30466 fn syntax(&self) -> &SyntaxNode {
30467 &self.syntax
30468 }
30469}
30470impl AstNode for Move {
30471 #[inline]
30472 fn can_cast(kind: SyntaxKind) -> bool {
30473 kind == SyntaxKind::MOVE
30474 }
30475 #[inline]
30476 fn cast(syntax: SyntaxNode) -> Option<Self> {
30477 if Self::can_cast(syntax.kind()) {
30478 Some(Self { syntax })
30479 } else {
30480 None
30481 }
30482 }
30483 #[inline]
30484 fn syntax(&self) -> &SyntaxNode {
30485 &self.syntax
30486 }
30487}
30488impl AstNode for Name {
30489 #[inline]
30490 fn can_cast(kind: SyntaxKind) -> bool {
30491 kind == SyntaxKind::NAME
30492 }
30493 #[inline]
30494 fn cast(syntax: SyntaxNode) -> Option<Self> {
30495 if Self::can_cast(syntax.kind()) {
30496 Some(Self { syntax })
30497 } else {
30498 None
30499 }
30500 }
30501 #[inline]
30502 fn syntax(&self) -> &SyntaxNode {
30503 &self.syntax
30504 }
30505}
30506impl AstNode for NameRef {
30507 #[inline]
30508 fn can_cast(kind: SyntaxKind) -> bool {
30509 kind == SyntaxKind::NAME_REF
30510 }
30511 #[inline]
30512 fn cast(syntax: SyntaxNode) -> Option<Self> {
30513 if Self::can_cast(syntax.kind()) {
30514 Some(Self { syntax })
30515 } else {
30516 None
30517 }
30518 }
30519 #[inline]
30520 fn syntax(&self) -> &SyntaxNode {
30521 &self.syntax
30522 }
30523}
30524impl AstNode for NamedArg {
30525 #[inline]
30526 fn can_cast(kind: SyntaxKind) -> bool {
30527 kind == SyntaxKind::NAMED_ARG
30528 }
30529 #[inline]
30530 fn cast(syntax: SyntaxNode) -> Option<Self> {
30531 if Self::can_cast(syntax.kind()) {
30532 Some(Self { syntax })
30533 } else {
30534 None
30535 }
30536 }
30537 #[inline]
30538 fn syntax(&self) -> &SyntaxNode {
30539 &self.syntax
30540 }
30541}
30542impl AstNode for Neq {
30543 #[inline]
30544 fn can_cast(kind: SyntaxKind) -> bool {
30545 kind == SyntaxKind::NEQ
30546 }
30547 #[inline]
30548 fn cast(syntax: SyntaxNode) -> Option<Self> {
30549 if Self::can_cast(syntax.kind()) {
30550 Some(Self { syntax })
30551 } else {
30552 None
30553 }
30554 }
30555 #[inline]
30556 fn syntax(&self) -> &SyntaxNode {
30557 &self.syntax
30558 }
30559}
30560impl AstNode for Neqb {
30561 #[inline]
30562 fn can_cast(kind: SyntaxKind) -> bool {
30563 kind == SyntaxKind::NEQB
30564 }
30565 #[inline]
30566 fn cast(syntax: SyntaxNode) -> Option<Self> {
30567 if Self::can_cast(syntax.kind()) {
30568 Some(Self { syntax })
30569 } else {
30570 None
30571 }
30572 }
30573 #[inline]
30574 fn syntax(&self) -> &SyntaxNode {
30575 &self.syntax
30576 }
30577}
30578impl AstNode for Next {
30579 #[inline]
30580 fn can_cast(kind: SyntaxKind) -> bool {
30581 kind == SyntaxKind::NEXT
30582 }
30583 #[inline]
30584 fn cast(syntax: SyntaxNode) -> Option<Self> {
30585 if Self::can_cast(syntax.kind()) {
30586 Some(Self { syntax })
30587 } else {
30588 None
30589 }
30590 }
30591 #[inline]
30592 fn syntax(&self) -> &SyntaxNode {
30593 &self.syntax
30594 }
30595}
30596impl AstNode for NoAction {
30597 #[inline]
30598 fn can_cast(kind: SyntaxKind) -> bool {
30599 kind == SyntaxKind::NO_ACTION
30600 }
30601 #[inline]
30602 fn cast(syntax: SyntaxNode) -> Option<Self> {
30603 if Self::can_cast(syntax.kind()) {
30604 Some(Self { syntax })
30605 } else {
30606 None
30607 }
30608 }
30609 #[inline]
30610 fn syntax(&self) -> &SyntaxNode {
30611 &self.syntax
30612 }
30613}
30614impl AstNode for NoDependsOnExtension {
30615 #[inline]
30616 fn can_cast(kind: SyntaxKind) -> bool {
30617 kind == SyntaxKind::NO_DEPENDS_ON_EXTENSION
30618 }
30619 #[inline]
30620 fn cast(syntax: SyntaxNode) -> Option<Self> {
30621 if Self::can_cast(syntax.kind()) {
30622 Some(Self { syntax })
30623 } else {
30624 None
30625 }
30626 }
30627 #[inline]
30628 fn syntax(&self) -> &SyntaxNode {
30629 &self.syntax
30630 }
30631}
30632impl AstNode for NoForceRls {
30633 #[inline]
30634 fn can_cast(kind: SyntaxKind) -> bool {
30635 kind == SyntaxKind::NO_FORCE_RLS
30636 }
30637 #[inline]
30638 fn cast(syntax: SyntaxNode) -> Option<Self> {
30639 if Self::can_cast(syntax.kind()) {
30640 Some(Self { syntax })
30641 } else {
30642 None
30643 }
30644 }
30645 #[inline]
30646 fn syntax(&self) -> &SyntaxNode {
30647 &self.syntax
30648 }
30649}
30650impl AstNode for NoInherit {
30651 #[inline]
30652 fn can_cast(kind: SyntaxKind) -> bool {
30653 kind == SyntaxKind::NO_INHERIT
30654 }
30655 #[inline]
30656 fn cast(syntax: SyntaxNode) -> Option<Self> {
30657 if Self::can_cast(syntax.kind()) {
30658 Some(Self { syntax })
30659 } else {
30660 None
30661 }
30662 }
30663 #[inline]
30664 fn syntax(&self) -> &SyntaxNode {
30665 &self.syntax
30666 }
30667}
30668impl AstNode for NoInheritTable {
30669 #[inline]
30670 fn can_cast(kind: SyntaxKind) -> bool {
30671 kind == SyntaxKind::NO_INHERIT_TABLE
30672 }
30673 #[inline]
30674 fn cast(syntax: SyntaxNode) -> Option<Self> {
30675 if Self::can_cast(syntax.kind()) {
30676 Some(Self { syntax })
30677 } else {
30678 None
30679 }
30680 }
30681 #[inline]
30682 fn syntax(&self) -> &SyntaxNode {
30683 &self.syntax
30684 }
30685}
30686impl AstNode for NoOthers {
30687 #[inline]
30688 fn can_cast(kind: SyntaxKind) -> bool {
30689 kind == SyntaxKind::NO_OTHERS
30690 }
30691 #[inline]
30692 fn cast(syntax: SyntaxNode) -> Option<Self> {
30693 if Self::can_cast(syntax.kind()) {
30694 Some(Self { syntax })
30695 } else {
30696 None
30697 }
30698 }
30699 #[inline]
30700 fn syntax(&self) -> &SyntaxNode {
30701 &self.syntax
30702 }
30703}
30704impl AstNode for NoProperties {
30705 #[inline]
30706 fn can_cast(kind: SyntaxKind) -> bool {
30707 kind == SyntaxKind::NO_PROPERTIES
30708 }
30709 #[inline]
30710 fn cast(syntax: SyntaxNode) -> Option<Self> {
30711 if Self::can_cast(syntax.kind()) {
30712 Some(Self { syntax })
30713 } else {
30714 None
30715 }
30716 }
30717 #[inline]
30718 fn syntax(&self) -> &SyntaxNode {
30719 &self.syntax
30720 }
30721}
30722impl AstNode for NonStandardParam {
30723 #[inline]
30724 fn can_cast(kind: SyntaxKind) -> bool {
30725 kind == SyntaxKind::NON_STANDARD_PARAM
30726 }
30727 #[inline]
30728 fn cast(syntax: SyntaxNode) -> Option<Self> {
30729 if Self::can_cast(syntax.kind()) {
30730 Some(Self { syntax })
30731 } else {
30732 None
30733 }
30734 }
30735 #[inline]
30736 fn syntax(&self) -> &SyntaxNode {
30737 &self.syntax
30738 }
30739}
30740impl AstNode for NotDeferrable {
30741 #[inline]
30742 fn can_cast(kind: SyntaxKind) -> bool {
30743 kind == SyntaxKind::NOT_DEFERRABLE
30744 }
30745 #[inline]
30746 fn cast(syntax: SyntaxNode) -> Option<Self> {
30747 if Self::can_cast(syntax.kind()) {
30748 Some(Self { syntax })
30749 } else {
30750 None
30751 }
30752 }
30753 #[inline]
30754 fn syntax(&self) -> &SyntaxNode {
30755 &self.syntax
30756 }
30757}
30758impl AstNode for NotDeferrableConstraintOption {
30759 #[inline]
30760 fn can_cast(kind: SyntaxKind) -> bool {
30761 kind == SyntaxKind::NOT_DEFERRABLE_CONSTRAINT_OPTION
30762 }
30763 #[inline]
30764 fn cast(syntax: SyntaxNode) -> Option<Self> {
30765 if Self::can_cast(syntax.kind()) {
30766 Some(Self { syntax })
30767 } else {
30768 None
30769 }
30770 }
30771 #[inline]
30772 fn syntax(&self) -> &SyntaxNode {
30773 &self.syntax
30774 }
30775}
30776impl AstNode for NotEnforced {
30777 #[inline]
30778 fn can_cast(kind: SyntaxKind) -> bool {
30779 kind == SyntaxKind::NOT_ENFORCED
30780 }
30781 #[inline]
30782 fn cast(syntax: SyntaxNode) -> Option<Self> {
30783 if Self::can_cast(syntax.kind()) {
30784 Some(Self { syntax })
30785 } else {
30786 None
30787 }
30788 }
30789 #[inline]
30790 fn syntax(&self) -> &SyntaxNode {
30791 &self.syntax
30792 }
30793}
30794impl AstNode for NotIlike {
30795 #[inline]
30796 fn can_cast(kind: SyntaxKind) -> bool {
30797 kind == SyntaxKind::NOT_ILIKE
30798 }
30799 #[inline]
30800 fn cast(syntax: SyntaxNode) -> Option<Self> {
30801 if Self::can_cast(syntax.kind()) {
30802 Some(Self { syntax })
30803 } else {
30804 None
30805 }
30806 }
30807 #[inline]
30808 fn syntax(&self) -> &SyntaxNode {
30809 &self.syntax
30810 }
30811}
30812impl AstNode for NotIn {
30813 #[inline]
30814 fn can_cast(kind: SyntaxKind) -> bool {
30815 kind == SyntaxKind::NOT_IN
30816 }
30817 #[inline]
30818 fn cast(syntax: SyntaxNode) -> Option<Self> {
30819 if Self::can_cast(syntax.kind()) {
30820 Some(Self { syntax })
30821 } else {
30822 None
30823 }
30824 }
30825 #[inline]
30826 fn syntax(&self) -> &SyntaxNode {
30827 &self.syntax
30828 }
30829}
30830impl AstNode for NotLike {
30831 #[inline]
30832 fn can_cast(kind: SyntaxKind) -> bool {
30833 kind == SyntaxKind::NOT_LIKE
30834 }
30835 #[inline]
30836 fn cast(syntax: SyntaxNode) -> Option<Self> {
30837 if Self::can_cast(syntax.kind()) {
30838 Some(Self { syntax })
30839 } else {
30840 None
30841 }
30842 }
30843 #[inline]
30844 fn syntax(&self) -> &SyntaxNode {
30845 &self.syntax
30846 }
30847}
30848impl AstNode for NotMaterialized {
30849 #[inline]
30850 fn can_cast(kind: SyntaxKind) -> bool {
30851 kind == SyntaxKind::NOT_MATERIALIZED
30852 }
30853 #[inline]
30854 fn cast(syntax: SyntaxNode) -> Option<Self> {
30855 if Self::can_cast(syntax.kind()) {
30856 Some(Self { syntax })
30857 } else {
30858 None
30859 }
30860 }
30861 #[inline]
30862 fn syntax(&self) -> &SyntaxNode {
30863 &self.syntax
30864 }
30865}
30866impl AstNode for NotNullConstraint {
30867 #[inline]
30868 fn can_cast(kind: SyntaxKind) -> bool {
30869 kind == SyntaxKind::NOT_NULL_CONSTRAINT
30870 }
30871 #[inline]
30872 fn cast(syntax: SyntaxNode) -> Option<Self> {
30873 if Self::can_cast(syntax.kind()) {
30874 Some(Self { syntax })
30875 } else {
30876 None
30877 }
30878 }
30879 #[inline]
30880 fn syntax(&self) -> &SyntaxNode {
30881 &self.syntax
30882 }
30883}
30884impl AstNode for NotOf {
30885 #[inline]
30886 fn can_cast(kind: SyntaxKind) -> bool {
30887 kind == SyntaxKind::NOT_OF
30888 }
30889 #[inline]
30890 fn cast(syntax: SyntaxNode) -> Option<Self> {
30891 if Self::can_cast(syntax.kind()) {
30892 Some(Self { syntax })
30893 } else {
30894 None
30895 }
30896 }
30897 #[inline]
30898 fn syntax(&self) -> &SyntaxNode {
30899 &self.syntax
30900 }
30901}
30902impl AstNode for NotSimilarTo {
30903 #[inline]
30904 fn can_cast(kind: SyntaxKind) -> bool {
30905 kind == SyntaxKind::NOT_SIMILAR_TO
30906 }
30907 #[inline]
30908 fn cast(syntax: SyntaxNode) -> Option<Self> {
30909 if Self::can_cast(syntax.kind()) {
30910 Some(Self { syntax })
30911 } else {
30912 None
30913 }
30914 }
30915 #[inline]
30916 fn syntax(&self) -> &SyntaxNode {
30917 &self.syntax
30918 }
30919}
30920impl AstNode for NotValid {
30921 #[inline]
30922 fn can_cast(kind: SyntaxKind) -> bool {
30923 kind == SyntaxKind::NOT_VALID
30924 }
30925 #[inline]
30926 fn cast(syntax: SyntaxNode) -> Option<Self> {
30927 if Self::can_cast(syntax.kind()) {
30928 Some(Self { syntax })
30929 } else {
30930 None
30931 }
30932 }
30933 #[inline]
30934 fn syntax(&self) -> &SyntaxNode {
30935 &self.syntax
30936 }
30937}
30938impl AstNode for Nothing {
30939 #[inline]
30940 fn can_cast(kind: SyntaxKind) -> bool {
30941 kind == SyntaxKind::NOTHING
30942 }
30943 #[inline]
30944 fn cast(syntax: SyntaxNode) -> Option<Self> {
30945 if Self::can_cast(syntax.kind()) {
30946 Some(Self { syntax })
30947 } else {
30948 None
30949 }
30950 }
30951 #[inline]
30952 fn syntax(&self) -> &SyntaxNode {
30953 &self.syntax
30954 }
30955}
30956impl AstNode for Notify {
30957 #[inline]
30958 fn can_cast(kind: SyntaxKind) -> bool {
30959 kind == SyntaxKind::NOTIFY
30960 }
30961 #[inline]
30962 fn cast(syntax: SyntaxNode) -> Option<Self> {
30963 if Self::can_cast(syntax.kind()) {
30964 Some(Self { syntax })
30965 } else {
30966 None
30967 }
30968 }
30969 #[inline]
30970 fn syntax(&self) -> &SyntaxNode {
30971 &self.syntax
30972 }
30973}
30974impl AstNode for NullConstraint {
30975 #[inline]
30976 fn can_cast(kind: SyntaxKind) -> bool {
30977 kind == SyntaxKind::NULL_CONSTRAINT
30978 }
30979 #[inline]
30980 fn cast(syntax: SyntaxNode) -> Option<Self> {
30981 if Self::can_cast(syntax.kind()) {
30982 Some(Self { syntax })
30983 } else {
30984 None
30985 }
30986 }
30987 #[inline]
30988 fn syntax(&self) -> &SyntaxNode {
30989 &self.syntax
30990 }
30991}
30992impl AstNode for NullsDistinct {
30993 #[inline]
30994 fn can_cast(kind: SyntaxKind) -> bool {
30995 kind == SyntaxKind::NULLS_DISTINCT
30996 }
30997 #[inline]
30998 fn cast(syntax: SyntaxNode) -> Option<Self> {
30999 if Self::can_cast(syntax.kind()) {
31000 Some(Self { syntax })
31001 } else {
31002 None
31003 }
31004 }
31005 #[inline]
31006 fn syntax(&self) -> &SyntaxNode {
31007 &self.syntax
31008 }
31009}
31010impl AstNode for NullsFirst {
31011 #[inline]
31012 fn can_cast(kind: SyntaxKind) -> bool {
31013 kind == SyntaxKind::NULLS_FIRST
31014 }
31015 #[inline]
31016 fn cast(syntax: SyntaxNode) -> Option<Self> {
31017 if Self::can_cast(syntax.kind()) {
31018 Some(Self { syntax })
31019 } else {
31020 None
31021 }
31022 }
31023 #[inline]
31024 fn syntax(&self) -> &SyntaxNode {
31025 &self.syntax
31026 }
31027}
31028impl AstNode for NullsLast {
31029 #[inline]
31030 fn can_cast(kind: SyntaxKind) -> bool {
31031 kind == SyntaxKind::NULLS_LAST
31032 }
31033 #[inline]
31034 fn cast(syntax: SyntaxNode) -> Option<Self> {
31035 if Self::can_cast(syntax.kind()) {
31036 Some(Self { syntax })
31037 } else {
31038 None
31039 }
31040 }
31041 #[inline]
31042 fn syntax(&self) -> &SyntaxNode {
31043 &self.syntax
31044 }
31045}
31046impl AstNode for NullsNotDistinct {
31047 #[inline]
31048 fn can_cast(kind: SyntaxKind) -> bool {
31049 kind == SyntaxKind::NULLS_NOT_DISTINCT
31050 }
31051 #[inline]
31052 fn cast(syntax: SyntaxNode) -> Option<Self> {
31053 if Self::can_cast(syntax.kind()) {
31054 Some(Self { syntax })
31055 } else {
31056 None
31057 }
31058 }
31059 #[inline]
31060 fn syntax(&self) -> &SyntaxNode {
31061 &self.syntax
31062 }
31063}
31064impl AstNode for OfType {
31065 #[inline]
31066 fn can_cast(kind: SyntaxKind) -> bool {
31067 kind == SyntaxKind::OF_TYPE
31068 }
31069 #[inline]
31070 fn cast(syntax: SyntaxNode) -> Option<Self> {
31071 if Self::can_cast(syntax.kind()) {
31072 Some(Self { syntax })
31073 } else {
31074 None
31075 }
31076 }
31077 #[inline]
31078 fn syntax(&self) -> &SyntaxNode {
31079 &self.syntax
31080 }
31081}
31082impl AstNode for OffsetClause {
31083 #[inline]
31084 fn can_cast(kind: SyntaxKind) -> bool {
31085 kind == SyntaxKind::OFFSET_CLAUSE
31086 }
31087 #[inline]
31088 fn cast(syntax: SyntaxNode) -> Option<Self> {
31089 if Self::can_cast(syntax.kind()) {
31090 Some(Self { syntax })
31091 } else {
31092 None
31093 }
31094 }
31095 #[inline]
31096 fn syntax(&self) -> &SyntaxNode {
31097 &self.syntax
31098 }
31099}
31100impl AstNode for OnClause {
31101 #[inline]
31102 fn can_cast(kind: SyntaxKind) -> bool {
31103 kind == SyntaxKind::ON_CLAUSE
31104 }
31105 #[inline]
31106 fn cast(syntax: SyntaxNode) -> Option<Self> {
31107 if Self::can_cast(syntax.kind()) {
31108 Some(Self { syntax })
31109 } else {
31110 None
31111 }
31112 }
31113 #[inline]
31114 fn syntax(&self) -> &SyntaxNode {
31115 &self.syntax
31116 }
31117}
31118impl AstNode for OnCommit {
31119 #[inline]
31120 fn can_cast(kind: SyntaxKind) -> bool {
31121 kind == SyntaxKind::ON_COMMIT
31122 }
31123 #[inline]
31124 fn cast(syntax: SyntaxNode) -> Option<Self> {
31125 if Self::can_cast(syntax.kind()) {
31126 Some(Self { syntax })
31127 } else {
31128 None
31129 }
31130 }
31131 #[inline]
31132 fn syntax(&self) -> &SyntaxNode {
31133 &self.syntax
31134 }
31135}
31136impl AstNode for OnConflictClause {
31137 #[inline]
31138 fn can_cast(kind: SyntaxKind) -> bool {
31139 kind == SyntaxKind::ON_CONFLICT_CLAUSE
31140 }
31141 #[inline]
31142 fn cast(syntax: SyntaxNode) -> Option<Self> {
31143 if Self::can_cast(syntax.kind()) {
31144 Some(Self { syntax })
31145 } else {
31146 None
31147 }
31148 }
31149 #[inline]
31150 fn syntax(&self) -> &SyntaxNode {
31151 &self.syntax
31152 }
31153}
31154impl AstNode for OnDeleteAction {
31155 #[inline]
31156 fn can_cast(kind: SyntaxKind) -> bool {
31157 kind == SyntaxKind::ON_DELETE_ACTION
31158 }
31159 #[inline]
31160 fn cast(syntax: SyntaxNode) -> Option<Self> {
31161 if Self::can_cast(syntax.kind()) {
31162 Some(Self { syntax })
31163 } else {
31164 None
31165 }
31166 }
31167 #[inline]
31168 fn syntax(&self) -> &SyntaxNode {
31169 &self.syntax
31170 }
31171}
31172impl AstNode for OnPath {
31173 #[inline]
31174 fn can_cast(kind: SyntaxKind) -> bool {
31175 kind == SyntaxKind::ON_PATH
31176 }
31177 #[inline]
31178 fn cast(syntax: SyntaxNode) -> Option<Self> {
31179 if Self::can_cast(syntax.kind()) {
31180 Some(Self { syntax })
31181 } else {
31182 None
31183 }
31184 }
31185 #[inline]
31186 fn syntax(&self) -> &SyntaxNode {
31187 &self.syntax
31188 }
31189}
31190impl AstNode for OnTable {
31191 #[inline]
31192 fn can_cast(kind: SyntaxKind) -> bool {
31193 kind == SyntaxKind::ON_TABLE
31194 }
31195 #[inline]
31196 fn cast(syntax: SyntaxNode) -> Option<Self> {
31197 if Self::can_cast(syntax.kind()) {
31198 Some(Self { syntax })
31199 } else {
31200 None
31201 }
31202 }
31203 #[inline]
31204 fn syntax(&self) -> &SyntaxNode {
31205 &self.syntax
31206 }
31207}
31208impl AstNode for OnUpdateAction {
31209 #[inline]
31210 fn can_cast(kind: SyntaxKind) -> bool {
31211 kind == SyntaxKind::ON_UPDATE_ACTION
31212 }
31213 #[inline]
31214 fn cast(syntax: SyntaxNode) -> Option<Self> {
31215 if Self::can_cast(syntax.kind()) {
31216 Some(Self { syntax })
31217 } else {
31218 None
31219 }
31220 }
31221 #[inline]
31222 fn syntax(&self) -> &SyntaxNode {
31223 &self.syntax
31224 }
31225}
31226impl AstNode for Op {
31227 #[inline]
31228 fn can_cast(kind: SyntaxKind) -> bool {
31229 kind == SyntaxKind::OP
31230 }
31231 #[inline]
31232 fn cast(syntax: SyntaxNode) -> Option<Self> {
31233 if Self::can_cast(syntax.kind()) {
31234 Some(Self { syntax })
31235 } else {
31236 None
31237 }
31238 }
31239 #[inline]
31240 fn syntax(&self) -> &SyntaxNode {
31241 &self.syntax
31242 }
31243}
31244impl AstNode for OpClassOption {
31245 #[inline]
31246 fn can_cast(kind: SyntaxKind) -> bool {
31247 kind == SyntaxKind::OP_CLASS_OPTION
31248 }
31249 #[inline]
31250 fn cast(syntax: SyntaxNode) -> Option<Self> {
31251 if Self::can_cast(syntax.kind()) {
31252 Some(Self { syntax })
31253 } else {
31254 None
31255 }
31256 }
31257 #[inline]
31258 fn syntax(&self) -> &SyntaxNode {
31259 &self.syntax
31260 }
31261}
31262impl AstNode for OpSig {
31263 #[inline]
31264 fn can_cast(kind: SyntaxKind) -> bool {
31265 kind == SyntaxKind::OP_SIG
31266 }
31267 #[inline]
31268 fn cast(syntax: SyntaxNode) -> Option<Self> {
31269 if Self::can_cast(syntax.kind()) {
31270 Some(Self { syntax })
31271 } else {
31272 None
31273 }
31274 }
31275 #[inline]
31276 fn syntax(&self) -> &SyntaxNode {
31277 &self.syntax
31278 }
31279}
31280impl AstNode for OpSigList {
31281 #[inline]
31282 fn can_cast(kind: SyntaxKind) -> bool {
31283 kind == SyntaxKind::OP_SIG_LIST
31284 }
31285 #[inline]
31286 fn cast(syntax: SyntaxNode) -> Option<Self> {
31287 if Self::can_cast(syntax.kind()) {
31288 Some(Self { syntax })
31289 } else {
31290 None
31291 }
31292 }
31293 #[inline]
31294 fn syntax(&self) -> &SyntaxNode {
31295 &self.syntax
31296 }
31297}
31298impl AstNode for OperatorCall {
31299 #[inline]
31300 fn can_cast(kind: SyntaxKind) -> bool {
31301 kind == SyntaxKind::OPERATOR_CALL
31302 }
31303 #[inline]
31304 fn cast(syntax: SyntaxNode) -> Option<Self> {
31305 if Self::can_cast(syntax.kind()) {
31306 Some(Self { syntax })
31307 } else {
31308 None
31309 }
31310 }
31311 #[inline]
31312 fn syntax(&self) -> &SyntaxNode {
31313 &self.syntax
31314 }
31315}
31316impl AstNode for OperatorClassOptionList {
31317 #[inline]
31318 fn can_cast(kind: SyntaxKind) -> bool {
31319 kind == SyntaxKind::OPERATOR_CLASS_OPTION_LIST
31320 }
31321 #[inline]
31322 fn cast(syntax: SyntaxNode) -> Option<Self> {
31323 if Self::can_cast(syntax.kind()) {
31324 Some(Self { syntax })
31325 } else {
31326 None
31327 }
31328 }
31329 #[inline]
31330 fn syntax(&self) -> &SyntaxNode {
31331 &self.syntax
31332 }
31333}
31334impl AstNode for OptionItem {
31335 #[inline]
31336 fn can_cast(kind: SyntaxKind) -> bool {
31337 kind == SyntaxKind::OPTION_ITEM
31338 }
31339 #[inline]
31340 fn cast(syntax: SyntaxNode) -> Option<Self> {
31341 if Self::can_cast(syntax.kind()) {
31342 Some(Self { syntax })
31343 } else {
31344 None
31345 }
31346 }
31347 #[inline]
31348 fn syntax(&self) -> &SyntaxNode {
31349 &self.syntax
31350 }
31351}
31352impl AstNode for OptionItemList {
31353 #[inline]
31354 fn can_cast(kind: SyntaxKind) -> bool {
31355 kind == SyntaxKind::OPTION_ITEM_LIST
31356 }
31357 #[inline]
31358 fn cast(syntax: SyntaxNode) -> Option<Self> {
31359 if Self::can_cast(syntax.kind()) {
31360 Some(Self { syntax })
31361 } else {
31362 None
31363 }
31364 }
31365 #[inline]
31366 fn syntax(&self) -> &SyntaxNode {
31367 &self.syntax
31368 }
31369}
31370impl AstNode for OrReplace {
31371 #[inline]
31372 fn can_cast(kind: SyntaxKind) -> bool {
31373 kind == SyntaxKind::OR_REPLACE
31374 }
31375 #[inline]
31376 fn cast(syntax: SyntaxNode) -> Option<Self> {
31377 if Self::can_cast(syntax.kind()) {
31378 Some(Self { syntax })
31379 } else {
31380 None
31381 }
31382 }
31383 #[inline]
31384 fn syntax(&self) -> &SyntaxNode {
31385 &self.syntax
31386 }
31387}
31388impl AstNode for OrderByClause {
31389 #[inline]
31390 fn can_cast(kind: SyntaxKind) -> bool {
31391 kind == SyntaxKind::ORDER_BY_CLAUSE
31392 }
31393 #[inline]
31394 fn cast(syntax: SyntaxNode) -> Option<Self> {
31395 if Self::can_cast(syntax.kind()) {
31396 Some(Self { syntax })
31397 } else {
31398 None
31399 }
31400 }
31401 #[inline]
31402 fn syntax(&self) -> &SyntaxNode {
31403 &self.syntax
31404 }
31405}
31406impl AstNode for OverClause {
31407 #[inline]
31408 fn can_cast(kind: SyntaxKind) -> bool {
31409 kind == SyntaxKind::OVER_CLAUSE
31410 }
31411 #[inline]
31412 fn cast(syntax: SyntaxNode) -> Option<Self> {
31413 if Self::can_cast(syntax.kind()) {
31414 Some(Self { syntax })
31415 } else {
31416 None
31417 }
31418 }
31419 #[inline]
31420 fn syntax(&self) -> &SyntaxNode {
31421 &self.syntax
31422 }
31423}
31424impl AstNode for OverlayFn {
31425 #[inline]
31426 fn can_cast(kind: SyntaxKind) -> bool {
31427 kind == SyntaxKind::OVERLAY_FN
31428 }
31429 #[inline]
31430 fn cast(syntax: SyntaxNode) -> Option<Self> {
31431 if Self::can_cast(syntax.kind()) {
31432 Some(Self { syntax })
31433 } else {
31434 None
31435 }
31436 }
31437 #[inline]
31438 fn syntax(&self) -> &SyntaxNode {
31439 &self.syntax
31440 }
31441}
31442impl AstNode for OwnedByRoles {
31443 #[inline]
31444 fn can_cast(kind: SyntaxKind) -> bool {
31445 kind == SyntaxKind::OWNED_BY_ROLES
31446 }
31447 #[inline]
31448 fn cast(syntax: SyntaxNode) -> Option<Self> {
31449 if Self::can_cast(syntax.kind()) {
31450 Some(Self { syntax })
31451 } else {
31452 None
31453 }
31454 }
31455 #[inline]
31456 fn syntax(&self) -> &SyntaxNode {
31457 &self.syntax
31458 }
31459}
31460impl AstNode for OwnerTo {
31461 #[inline]
31462 fn can_cast(kind: SyntaxKind) -> bool {
31463 kind == SyntaxKind::OWNER_TO
31464 }
31465 #[inline]
31466 fn cast(syntax: SyntaxNode) -> Option<Self> {
31467 if Self::can_cast(syntax.kind()) {
31468 Some(Self { syntax })
31469 } else {
31470 None
31471 }
31472 }
31473 #[inline]
31474 fn syntax(&self) -> &SyntaxNode {
31475 &self.syntax
31476 }
31477}
31478impl AstNode for ParallelFuncOption {
31479 #[inline]
31480 fn can_cast(kind: SyntaxKind) -> bool {
31481 kind == SyntaxKind::PARALLEL_FUNC_OPTION
31482 }
31483 #[inline]
31484 fn cast(syntax: SyntaxNode) -> Option<Self> {
31485 if Self::can_cast(syntax.kind()) {
31486 Some(Self { syntax })
31487 } else {
31488 None
31489 }
31490 }
31491 #[inline]
31492 fn syntax(&self) -> &SyntaxNode {
31493 &self.syntax
31494 }
31495}
31496impl AstNode for Param {
31497 #[inline]
31498 fn can_cast(kind: SyntaxKind) -> bool {
31499 kind == SyntaxKind::PARAM
31500 }
31501 #[inline]
31502 fn cast(syntax: SyntaxNode) -> Option<Self> {
31503 if Self::can_cast(syntax.kind()) {
31504 Some(Self { syntax })
31505 } else {
31506 None
31507 }
31508 }
31509 #[inline]
31510 fn syntax(&self) -> &SyntaxNode {
31511 &self.syntax
31512 }
31513}
31514impl AstNode for ParamDefault {
31515 #[inline]
31516 fn can_cast(kind: SyntaxKind) -> bool {
31517 kind == SyntaxKind::PARAM_DEFAULT
31518 }
31519 #[inline]
31520 fn cast(syntax: SyntaxNode) -> Option<Self> {
31521 if Self::can_cast(syntax.kind()) {
31522 Some(Self { syntax })
31523 } else {
31524 None
31525 }
31526 }
31527 #[inline]
31528 fn syntax(&self) -> &SyntaxNode {
31529 &self.syntax
31530 }
31531}
31532impl AstNode for ParamIn {
31533 #[inline]
31534 fn can_cast(kind: SyntaxKind) -> bool {
31535 kind == SyntaxKind::PARAM_IN
31536 }
31537 #[inline]
31538 fn cast(syntax: SyntaxNode) -> Option<Self> {
31539 if Self::can_cast(syntax.kind()) {
31540 Some(Self { syntax })
31541 } else {
31542 None
31543 }
31544 }
31545 #[inline]
31546 fn syntax(&self) -> &SyntaxNode {
31547 &self.syntax
31548 }
31549}
31550impl AstNode for ParamInOut {
31551 #[inline]
31552 fn can_cast(kind: SyntaxKind) -> bool {
31553 kind == SyntaxKind::PARAM_IN_OUT
31554 }
31555 #[inline]
31556 fn cast(syntax: SyntaxNode) -> Option<Self> {
31557 if Self::can_cast(syntax.kind()) {
31558 Some(Self { syntax })
31559 } else {
31560 None
31561 }
31562 }
31563 #[inline]
31564 fn syntax(&self) -> &SyntaxNode {
31565 &self.syntax
31566 }
31567}
31568impl AstNode for ParamList {
31569 #[inline]
31570 fn can_cast(kind: SyntaxKind) -> bool {
31571 kind == SyntaxKind::PARAM_LIST
31572 }
31573 #[inline]
31574 fn cast(syntax: SyntaxNode) -> Option<Self> {
31575 if Self::can_cast(syntax.kind()) {
31576 Some(Self { syntax })
31577 } else {
31578 None
31579 }
31580 }
31581 #[inline]
31582 fn syntax(&self) -> &SyntaxNode {
31583 &self.syntax
31584 }
31585}
31586impl AstNode for ParamOut {
31587 #[inline]
31588 fn can_cast(kind: SyntaxKind) -> bool {
31589 kind == SyntaxKind::PARAM_OUT
31590 }
31591 #[inline]
31592 fn cast(syntax: SyntaxNode) -> Option<Self> {
31593 if Self::can_cast(syntax.kind()) {
31594 Some(Self { syntax })
31595 } else {
31596 None
31597 }
31598 }
31599 #[inline]
31600 fn syntax(&self) -> &SyntaxNode {
31601 &self.syntax
31602 }
31603}
31604impl AstNode for ParamVariadic {
31605 #[inline]
31606 fn can_cast(kind: SyntaxKind) -> bool {
31607 kind == SyntaxKind::PARAM_VARIADIC
31608 }
31609 #[inline]
31610 fn cast(syntax: SyntaxNode) -> Option<Self> {
31611 if Self::can_cast(syntax.kind()) {
31612 Some(Self { syntax })
31613 } else {
31614 None
31615 }
31616 }
31617 #[inline]
31618 fn syntax(&self) -> &SyntaxNode {
31619 &self.syntax
31620 }
31621}
31622impl AstNode for ParenExpr {
31623 #[inline]
31624 fn can_cast(kind: SyntaxKind) -> bool {
31625 kind == SyntaxKind::PAREN_EXPR
31626 }
31627 #[inline]
31628 fn cast(syntax: SyntaxNode) -> Option<Self> {
31629 if Self::can_cast(syntax.kind()) {
31630 Some(Self { syntax })
31631 } else {
31632 None
31633 }
31634 }
31635 #[inline]
31636 fn syntax(&self) -> &SyntaxNode {
31637 &self.syntax
31638 }
31639}
31640impl AstNode for ParenGraphPattern {
31641 #[inline]
31642 fn can_cast(kind: SyntaxKind) -> bool {
31643 kind == SyntaxKind::PAREN_GRAPH_PATTERN
31644 }
31645 #[inline]
31646 fn cast(syntax: SyntaxNode) -> Option<Self> {
31647 if Self::can_cast(syntax.kind()) {
31648 Some(Self { syntax })
31649 } else {
31650 None
31651 }
31652 }
31653 #[inline]
31654 fn syntax(&self) -> &SyntaxNode {
31655 &self.syntax
31656 }
31657}
31658impl AstNode for ParenSelect {
31659 #[inline]
31660 fn can_cast(kind: SyntaxKind) -> bool {
31661 kind == SyntaxKind::PAREN_SELECT
31662 }
31663 #[inline]
31664 fn cast(syntax: SyntaxNode) -> Option<Self> {
31665 if Self::can_cast(syntax.kind()) {
31666 Some(Self { syntax })
31667 } else {
31668 None
31669 }
31670 }
31671 #[inline]
31672 fn syntax(&self) -> &SyntaxNode {
31673 &self.syntax
31674 }
31675}
31676impl AstNode for Partition {
31677 #[inline]
31678 fn can_cast(kind: SyntaxKind) -> bool {
31679 kind == SyntaxKind::PARTITION
31680 }
31681 #[inline]
31682 fn cast(syntax: SyntaxNode) -> Option<Self> {
31683 if Self::can_cast(syntax.kind()) {
31684 Some(Self { syntax })
31685 } else {
31686 None
31687 }
31688 }
31689 #[inline]
31690 fn syntax(&self) -> &SyntaxNode {
31691 &self.syntax
31692 }
31693}
31694impl AstNode for PartitionBy {
31695 #[inline]
31696 fn can_cast(kind: SyntaxKind) -> bool {
31697 kind == SyntaxKind::PARTITION_BY
31698 }
31699 #[inline]
31700 fn cast(syntax: SyntaxNode) -> Option<Self> {
31701 if Self::can_cast(syntax.kind()) {
31702 Some(Self { syntax })
31703 } else {
31704 None
31705 }
31706 }
31707 #[inline]
31708 fn syntax(&self) -> &SyntaxNode {
31709 &self.syntax
31710 }
31711}
31712impl AstNode for PartitionDefault {
31713 #[inline]
31714 fn can_cast(kind: SyntaxKind) -> bool {
31715 kind == SyntaxKind::PARTITION_DEFAULT
31716 }
31717 #[inline]
31718 fn cast(syntax: SyntaxNode) -> Option<Self> {
31719 if Self::can_cast(syntax.kind()) {
31720 Some(Self { syntax })
31721 } else {
31722 None
31723 }
31724 }
31725 #[inline]
31726 fn syntax(&self) -> &SyntaxNode {
31727 &self.syntax
31728 }
31729}
31730impl AstNode for PartitionForValuesFrom {
31731 #[inline]
31732 fn can_cast(kind: SyntaxKind) -> bool {
31733 kind == SyntaxKind::PARTITION_FOR_VALUES_FROM
31734 }
31735 #[inline]
31736 fn cast(syntax: SyntaxNode) -> Option<Self> {
31737 if Self::can_cast(syntax.kind()) {
31738 Some(Self { syntax })
31739 } else {
31740 None
31741 }
31742 }
31743 #[inline]
31744 fn syntax(&self) -> &SyntaxNode {
31745 &self.syntax
31746 }
31747}
31748impl AstNode for PartitionForValuesIn {
31749 #[inline]
31750 fn can_cast(kind: SyntaxKind) -> bool {
31751 kind == SyntaxKind::PARTITION_FOR_VALUES_IN
31752 }
31753 #[inline]
31754 fn cast(syntax: SyntaxNode) -> Option<Self> {
31755 if Self::can_cast(syntax.kind()) {
31756 Some(Self { syntax })
31757 } else {
31758 None
31759 }
31760 }
31761 #[inline]
31762 fn syntax(&self) -> &SyntaxNode {
31763 &self.syntax
31764 }
31765}
31766impl AstNode for PartitionForValuesWith {
31767 #[inline]
31768 fn can_cast(kind: SyntaxKind) -> bool {
31769 kind == SyntaxKind::PARTITION_FOR_VALUES_WITH
31770 }
31771 #[inline]
31772 fn cast(syntax: SyntaxNode) -> Option<Self> {
31773 if Self::can_cast(syntax.kind()) {
31774 Some(Self { syntax })
31775 } else {
31776 None
31777 }
31778 }
31779 #[inline]
31780 fn syntax(&self) -> &SyntaxNode {
31781 &self.syntax
31782 }
31783}
31784impl AstNode for PartitionItem {
31785 #[inline]
31786 fn can_cast(kind: SyntaxKind) -> bool {
31787 kind == SyntaxKind::PARTITION_ITEM
31788 }
31789 #[inline]
31790 fn cast(syntax: SyntaxNode) -> Option<Self> {
31791 if Self::can_cast(syntax.kind()) {
31792 Some(Self { syntax })
31793 } else {
31794 None
31795 }
31796 }
31797 #[inline]
31798 fn syntax(&self) -> &SyntaxNode {
31799 &self.syntax
31800 }
31801}
31802impl AstNode for PartitionItemList {
31803 #[inline]
31804 fn can_cast(kind: SyntaxKind) -> bool {
31805 kind == SyntaxKind::PARTITION_ITEM_LIST
31806 }
31807 #[inline]
31808 fn cast(syntax: SyntaxNode) -> Option<Self> {
31809 if Self::can_cast(syntax.kind()) {
31810 Some(Self { syntax })
31811 } else {
31812 None
31813 }
31814 }
31815 #[inline]
31816 fn syntax(&self) -> &SyntaxNode {
31817 &self.syntax
31818 }
31819}
31820impl AstNode for PartitionList {
31821 #[inline]
31822 fn can_cast(kind: SyntaxKind) -> bool {
31823 kind == SyntaxKind::PARTITION_LIST
31824 }
31825 #[inline]
31826 fn cast(syntax: SyntaxNode) -> Option<Self> {
31827 if Self::can_cast(syntax.kind()) {
31828 Some(Self { syntax })
31829 } else {
31830 None
31831 }
31832 }
31833 #[inline]
31834 fn syntax(&self) -> &SyntaxNode {
31835 &self.syntax
31836 }
31837}
31838impl AstNode for PartitionOf {
31839 #[inline]
31840 fn can_cast(kind: SyntaxKind) -> bool {
31841 kind == SyntaxKind::PARTITION_OF
31842 }
31843 #[inline]
31844 fn cast(syntax: SyntaxNode) -> Option<Self> {
31845 if Self::can_cast(syntax.kind()) {
31846 Some(Self { syntax })
31847 } else {
31848 None
31849 }
31850 }
31851 #[inline]
31852 fn syntax(&self) -> &SyntaxNode {
31853 &self.syntax
31854 }
31855}
31856impl AstNode for Path {
31857 #[inline]
31858 fn can_cast(kind: SyntaxKind) -> bool {
31859 kind == SyntaxKind::PATH
31860 }
31861 #[inline]
31862 fn cast(syntax: SyntaxNode) -> Option<Self> {
31863 if Self::can_cast(syntax.kind()) {
31864 Some(Self { syntax })
31865 } else {
31866 None
31867 }
31868 }
31869 #[inline]
31870 fn syntax(&self) -> &SyntaxNode {
31871 &self.syntax
31872 }
31873}
31874impl AstNode for PathFactor {
31875 #[inline]
31876 fn can_cast(kind: SyntaxKind) -> bool {
31877 kind == SyntaxKind::PATH_FACTOR
31878 }
31879 #[inline]
31880 fn cast(syntax: SyntaxNode) -> Option<Self> {
31881 if Self::can_cast(syntax.kind()) {
31882 Some(Self { syntax })
31883 } else {
31884 None
31885 }
31886 }
31887 #[inline]
31888 fn syntax(&self) -> &SyntaxNode {
31889 &self.syntax
31890 }
31891}
31892impl AstNode for PathList {
31893 #[inline]
31894 fn can_cast(kind: SyntaxKind) -> bool {
31895 kind == SyntaxKind::PATH_LIST
31896 }
31897 #[inline]
31898 fn cast(syntax: SyntaxNode) -> Option<Self> {
31899 if Self::can_cast(syntax.kind()) {
31900 Some(Self { syntax })
31901 } else {
31902 None
31903 }
31904 }
31905 #[inline]
31906 fn syntax(&self) -> &SyntaxNode {
31907 &self.syntax
31908 }
31909}
31910impl AstNode for PathPattern {
31911 #[inline]
31912 fn can_cast(kind: SyntaxKind) -> bool {
31913 kind == SyntaxKind::PATH_PATTERN
31914 }
31915 #[inline]
31916 fn cast(syntax: SyntaxNode) -> Option<Self> {
31917 if Self::can_cast(syntax.kind()) {
31918 Some(Self { syntax })
31919 } else {
31920 None
31921 }
31922 }
31923 #[inline]
31924 fn syntax(&self) -> &SyntaxNode {
31925 &self.syntax
31926 }
31927}
31928impl AstNode for PathPatternList {
31929 #[inline]
31930 fn can_cast(kind: SyntaxKind) -> bool {
31931 kind == SyntaxKind::PATH_PATTERN_LIST
31932 }
31933 #[inline]
31934 fn cast(syntax: SyntaxNode) -> Option<Self> {
31935 if Self::can_cast(syntax.kind()) {
31936 Some(Self { syntax })
31937 } else {
31938 None
31939 }
31940 }
31941 #[inline]
31942 fn syntax(&self) -> &SyntaxNode {
31943 &self.syntax
31944 }
31945}
31946impl AstNode for PathSegment {
31947 #[inline]
31948 fn can_cast(kind: SyntaxKind) -> bool {
31949 kind == SyntaxKind::PATH_SEGMENT
31950 }
31951 #[inline]
31952 fn cast(syntax: SyntaxNode) -> Option<Self> {
31953 if Self::can_cast(syntax.kind()) {
31954 Some(Self { syntax })
31955 } else {
31956 None
31957 }
31958 }
31959 #[inline]
31960 fn syntax(&self) -> &SyntaxNode {
31961 &self.syntax
31962 }
31963}
31964impl AstNode for PathType {
31965 #[inline]
31966 fn can_cast(kind: SyntaxKind) -> bool {
31967 kind == SyntaxKind::PATH_TYPE
31968 }
31969 #[inline]
31970 fn cast(syntax: SyntaxNode) -> Option<Self> {
31971 if Self::can_cast(syntax.kind()) {
31972 Some(Self { syntax })
31973 } else {
31974 None
31975 }
31976 }
31977 #[inline]
31978 fn syntax(&self) -> &SyntaxNode {
31979 &self.syntax
31980 }
31981}
31982impl AstNode for PercentType {
31983 #[inline]
31984 fn can_cast(kind: SyntaxKind) -> bool {
31985 kind == SyntaxKind::PERCENT_TYPE
31986 }
31987 #[inline]
31988 fn cast(syntax: SyntaxNode) -> Option<Self> {
31989 if Self::can_cast(syntax.kind()) {
31990 Some(Self { syntax })
31991 } else {
31992 None
31993 }
31994 }
31995 #[inline]
31996 fn syntax(&self) -> &SyntaxNode {
31997 &self.syntax
31998 }
31999}
32000impl AstNode for PercentTypeClause {
32001 #[inline]
32002 fn can_cast(kind: SyntaxKind) -> bool {
32003 kind == SyntaxKind::PERCENT_TYPE_CLAUSE
32004 }
32005 #[inline]
32006 fn cast(syntax: SyntaxNode) -> Option<Self> {
32007 if Self::can_cast(syntax.kind()) {
32008 Some(Self { syntax })
32009 } else {
32010 None
32011 }
32012 }
32013 #[inline]
32014 fn syntax(&self) -> &SyntaxNode {
32015 &self.syntax
32016 }
32017}
32018impl AstNode for PositionFn {
32019 #[inline]
32020 fn can_cast(kind: SyntaxKind) -> bool {
32021 kind == SyntaxKind::POSITION_FN
32022 }
32023 #[inline]
32024 fn cast(syntax: SyntaxNode) -> Option<Self> {
32025 if Self::can_cast(syntax.kind()) {
32026 Some(Self { syntax })
32027 } else {
32028 None
32029 }
32030 }
32031 #[inline]
32032 fn syntax(&self) -> &SyntaxNode {
32033 &self.syntax
32034 }
32035}
32036impl AstNode for PostfixExpr {
32037 #[inline]
32038 fn can_cast(kind: SyntaxKind) -> bool {
32039 kind == SyntaxKind::POSTFIX_EXPR
32040 }
32041 #[inline]
32042 fn cast(syntax: SyntaxNode) -> Option<Self> {
32043 if Self::can_cast(syntax.kind()) {
32044 Some(Self { syntax })
32045 } else {
32046 None
32047 }
32048 }
32049 #[inline]
32050 fn syntax(&self) -> &SyntaxNode {
32051 &self.syntax
32052 }
32053}
32054impl AstNode for PrefixExpr {
32055 #[inline]
32056 fn can_cast(kind: SyntaxKind) -> bool {
32057 kind == SyntaxKind::PREFIX_EXPR
32058 }
32059 #[inline]
32060 fn cast(syntax: SyntaxNode) -> Option<Self> {
32061 if Self::can_cast(syntax.kind()) {
32062 Some(Self { syntax })
32063 } else {
32064 None
32065 }
32066 }
32067 #[inline]
32068 fn syntax(&self) -> &SyntaxNode {
32069 &self.syntax
32070 }
32071}
32072impl AstNode for Prepare {
32073 #[inline]
32074 fn can_cast(kind: SyntaxKind) -> bool {
32075 kind == SyntaxKind::PREPARE
32076 }
32077 #[inline]
32078 fn cast(syntax: SyntaxNode) -> Option<Self> {
32079 if Self::can_cast(syntax.kind()) {
32080 Some(Self { syntax })
32081 } else {
32082 None
32083 }
32084 }
32085 #[inline]
32086 fn syntax(&self) -> &SyntaxNode {
32087 &self.syntax
32088 }
32089}
32090impl AstNode for PrepareTransaction {
32091 #[inline]
32092 fn can_cast(kind: SyntaxKind) -> bool {
32093 kind == SyntaxKind::PREPARE_TRANSACTION
32094 }
32095 #[inline]
32096 fn cast(syntax: SyntaxNode) -> Option<Self> {
32097 if Self::can_cast(syntax.kind()) {
32098 Some(Self { syntax })
32099 } else {
32100 None
32101 }
32102 }
32103 #[inline]
32104 fn syntax(&self) -> &SyntaxNode {
32105 &self.syntax
32106 }
32107}
32108impl AstNode for PreserveRows {
32109 #[inline]
32110 fn can_cast(kind: SyntaxKind) -> bool {
32111 kind == SyntaxKind::PRESERVE_ROWS
32112 }
32113 #[inline]
32114 fn cast(syntax: SyntaxNode) -> Option<Self> {
32115 if Self::can_cast(syntax.kind()) {
32116 Some(Self { syntax })
32117 } else {
32118 None
32119 }
32120 }
32121 #[inline]
32122 fn syntax(&self) -> &SyntaxNode {
32123 &self.syntax
32124 }
32125}
32126impl AstNode for PrimaryKeyConstraint {
32127 #[inline]
32128 fn can_cast(kind: SyntaxKind) -> bool {
32129 kind == SyntaxKind::PRIMARY_KEY_CONSTRAINT
32130 }
32131 #[inline]
32132 fn cast(syntax: SyntaxNode) -> Option<Self> {
32133 if Self::can_cast(syntax.kind()) {
32134 Some(Self { syntax })
32135 } else {
32136 None
32137 }
32138 }
32139 #[inline]
32140 fn syntax(&self) -> &SyntaxNode {
32141 &self.syntax
32142 }
32143}
32144impl AstNode for Prior {
32145 #[inline]
32146 fn can_cast(kind: SyntaxKind) -> bool {
32147 kind == SyntaxKind::PRIOR
32148 }
32149 #[inline]
32150 fn cast(syntax: SyntaxNode) -> Option<Self> {
32151 if Self::can_cast(syntax.kind()) {
32152 Some(Self { syntax })
32153 } else {
32154 None
32155 }
32156 }
32157 #[inline]
32158 fn syntax(&self) -> &SyntaxNode {
32159 &self.syntax
32160 }
32161}
32162impl AstNode for PrivilegeObjects {
32163 #[inline]
32164 fn can_cast(kind: SyntaxKind) -> bool {
32165 kind == SyntaxKind::PRIVILEGE_OBJECTS
32166 }
32167 #[inline]
32168 fn cast(syntax: SyntaxNode) -> Option<Self> {
32169 if Self::can_cast(syntax.kind()) {
32170 Some(Self { syntax })
32171 } else {
32172 None
32173 }
32174 }
32175 #[inline]
32176 fn syntax(&self) -> &SyntaxNode {
32177 &self.syntax
32178 }
32179}
32180impl AstNode for PrivilegeTarget {
32181 #[inline]
32182 fn can_cast(kind: SyntaxKind) -> bool {
32183 kind == SyntaxKind::PRIVILEGE_TARGET
32184 }
32185 #[inline]
32186 fn cast(syntax: SyntaxNode) -> Option<Self> {
32187 if Self::can_cast(syntax.kind()) {
32188 Some(Self { syntax })
32189 } else {
32190 None
32191 }
32192 }
32193 #[inline]
32194 fn syntax(&self) -> &SyntaxNode {
32195 &self.syntax
32196 }
32197}
32198impl AstNode for Privileges {
32199 #[inline]
32200 fn can_cast(kind: SyntaxKind) -> bool {
32201 kind == SyntaxKind::PRIVILEGES
32202 }
32203 #[inline]
32204 fn cast(syntax: SyntaxNode) -> Option<Self> {
32205 if Self::can_cast(syntax.kind()) {
32206 Some(Self { syntax })
32207 } else {
32208 None
32209 }
32210 }
32211 #[inline]
32212 fn syntax(&self) -> &SyntaxNode {
32213 &self.syntax
32214 }
32215}
32216impl AstNode for Properties {
32217 #[inline]
32218 fn can_cast(kind: SyntaxKind) -> bool {
32219 kind == SyntaxKind::PROPERTIES
32220 }
32221 #[inline]
32222 fn cast(syntax: SyntaxNode) -> Option<Self> {
32223 if Self::can_cast(syntax.kind()) {
32224 Some(Self { syntax })
32225 } else {
32226 None
32227 }
32228 }
32229 #[inline]
32230 fn syntax(&self) -> &SyntaxNode {
32231 &self.syntax
32232 }
32233}
32234impl AstNode for PublicationObject {
32235 #[inline]
32236 fn can_cast(kind: SyntaxKind) -> bool {
32237 kind == SyntaxKind::PUBLICATION_OBJECT
32238 }
32239 #[inline]
32240 fn cast(syntax: SyntaxNode) -> Option<Self> {
32241 if Self::can_cast(syntax.kind()) {
32242 Some(Self { syntax })
32243 } else {
32244 None
32245 }
32246 }
32247 #[inline]
32248 fn syntax(&self) -> &SyntaxNode {
32249 &self.syntax
32250 }
32251}
32252impl AstNode for ReadCommitted {
32253 #[inline]
32254 fn can_cast(kind: SyntaxKind) -> bool {
32255 kind == SyntaxKind::READ_COMMITTED
32256 }
32257 #[inline]
32258 fn cast(syntax: SyntaxNode) -> Option<Self> {
32259 if Self::can_cast(syntax.kind()) {
32260 Some(Self { syntax })
32261 } else {
32262 None
32263 }
32264 }
32265 #[inline]
32266 fn syntax(&self) -> &SyntaxNode {
32267 &self.syntax
32268 }
32269}
32270impl AstNode for ReadOnly {
32271 #[inline]
32272 fn can_cast(kind: SyntaxKind) -> bool {
32273 kind == SyntaxKind::READ_ONLY
32274 }
32275 #[inline]
32276 fn cast(syntax: SyntaxNode) -> Option<Self> {
32277 if Self::can_cast(syntax.kind()) {
32278 Some(Self { syntax })
32279 } else {
32280 None
32281 }
32282 }
32283 #[inline]
32284 fn syntax(&self) -> &SyntaxNode {
32285 &self.syntax
32286 }
32287}
32288impl AstNode for ReadUncommitted {
32289 #[inline]
32290 fn can_cast(kind: SyntaxKind) -> bool {
32291 kind == SyntaxKind::READ_UNCOMMITTED
32292 }
32293 #[inline]
32294 fn cast(syntax: SyntaxNode) -> Option<Self> {
32295 if Self::can_cast(syntax.kind()) {
32296 Some(Self { syntax })
32297 } else {
32298 None
32299 }
32300 }
32301 #[inline]
32302 fn syntax(&self) -> &SyntaxNode {
32303 &self.syntax
32304 }
32305}
32306impl AstNode for ReadWrite {
32307 #[inline]
32308 fn can_cast(kind: SyntaxKind) -> bool {
32309 kind == SyntaxKind::READ_WRITE
32310 }
32311 #[inline]
32312 fn cast(syntax: SyntaxNode) -> Option<Self> {
32313 if Self::can_cast(syntax.kind()) {
32314 Some(Self { syntax })
32315 } else {
32316 None
32317 }
32318 }
32319 #[inline]
32320 fn syntax(&self) -> &SyntaxNode {
32321 &self.syntax
32322 }
32323}
32324impl AstNode for Reassign {
32325 #[inline]
32326 fn can_cast(kind: SyntaxKind) -> bool {
32327 kind == SyntaxKind::REASSIGN
32328 }
32329 #[inline]
32330 fn cast(syntax: SyntaxNode) -> Option<Self> {
32331 if Self::can_cast(syntax.kind()) {
32332 Some(Self { syntax })
32333 } else {
32334 None
32335 }
32336 }
32337 #[inline]
32338 fn syntax(&self) -> &SyntaxNode {
32339 &self.syntax
32340 }
32341}
32342impl AstNode for ReferencesConstraint {
32343 #[inline]
32344 fn can_cast(kind: SyntaxKind) -> bool {
32345 kind == SyntaxKind::REFERENCES_CONSTRAINT
32346 }
32347 #[inline]
32348 fn cast(syntax: SyntaxNode) -> Option<Self> {
32349 if Self::can_cast(syntax.kind()) {
32350 Some(Self { syntax })
32351 } else {
32352 None
32353 }
32354 }
32355 #[inline]
32356 fn syntax(&self) -> &SyntaxNode {
32357 &self.syntax
32358 }
32359}
32360impl AstNode for ReferencesTable {
32361 #[inline]
32362 fn can_cast(kind: SyntaxKind) -> bool {
32363 kind == SyntaxKind::REFERENCES_TABLE
32364 }
32365 #[inline]
32366 fn cast(syntax: SyntaxNode) -> Option<Self> {
32367 if Self::can_cast(syntax.kind()) {
32368 Some(Self { syntax })
32369 } else {
32370 None
32371 }
32372 }
32373 #[inline]
32374 fn syntax(&self) -> &SyntaxNode {
32375 &self.syntax
32376 }
32377}
32378impl AstNode for Referencing {
32379 #[inline]
32380 fn can_cast(kind: SyntaxKind) -> bool {
32381 kind == SyntaxKind::REFERENCING
32382 }
32383 #[inline]
32384 fn cast(syntax: SyntaxNode) -> Option<Self> {
32385 if Self::can_cast(syntax.kind()) {
32386 Some(Self { syntax })
32387 } else {
32388 None
32389 }
32390 }
32391 #[inline]
32392 fn syntax(&self) -> &SyntaxNode {
32393 &self.syntax
32394 }
32395}
32396impl AstNode for ReferencingTable {
32397 #[inline]
32398 fn can_cast(kind: SyntaxKind) -> bool {
32399 kind == SyntaxKind::REFERENCING_TABLE
32400 }
32401 #[inline]
32402 fn cast(syntax: SyntaxNode) -> Option<Self> {
32403 if Self::can_cast(syntax.kind()) {
32404 Some(Self { syntax })
32405 } else {
32406 None
32407 }
32408 }
32409 #[inline]
32410 fn syntax(&self) -> &SyntaxNode {
32411 &self.syntax
32412 }
32413}
32414impl AstNode for Refresh {
32415 #[inline]
32416 fn can_cast(kind: SyntaxKind) -> bool {
32417 kind == SyntaxKind::REFRESH
32418 }
32419 #[inline]
32420 fn cast(syntax: SyntaxNode) -> Option<Self> {
32421 if Self::can_cast(syntax.kind()) {
32422 Some(Self { syntax })
32423 } else {
32424 None
32425 }
32426 }
32427 #[inline]
32428 fn syntax(&self) -> &SyntaxNode {
32429 &self.syntax
32430 }
32431}
32432impl AstNode for RefreshCollationVersion {
32433 #[inline]
32434 fn can_cast(kind: SyntaxKind) -> bool {
32435 kind == SyntaxKind::REFRESH_COLLATION_VERSION
32436 }
32437 #[inline]
32438 fn cast(syntax: SyntaxNode) -> Option<Self> {
32439 if Self::can_cast(syntax.kind()) {
32440 Some(Self { syntax })
32441 } else {
32442 None
32443 }
32444 }
32445 #[inline]
32446 fn syntax(&self) -> &SyntaxNode {
32447 &self.syntax
32448 }
32449}
32450impl AstNode for RefreshVersion {
32451 #[inline]
32452 fn can_cast(kind: SyntaxKind) -> bool {
32453 kind == SyntaxKind::REFRESH_VERSION
32454 }
32455 #[inline]
32456 fn cast(syntax: SyntaxNode) -> Option<Self> {
32457 if Self::can_cast(syntax.kind()) {
32458 Some(Self { syntax })
32459 } else {
32460 None
32461 }
32462 }
32463 #[inline]
32464 fn syntax(&self) -> &SyntaxNode {
32465 &self.syntax
32466 }
32467}
32468impl AstNode for Reindex {
32469 #[inline]
32470 fn can_cast(kind: SyntaxKind) -> bool {
32471 kind == SyntaxKind::REINDEX
32472 }
32473 #[inline]
32474 fn cast(syntax: SyntaxNode) -> Option<Self> {
32475 if Self::can_cast(syntax.kind()) {
32476 Some(Self { syntax })
32477 } else {
32478 None
32479 }
32480 }
32481 #[inline]
32482 fn syntax(&self) -> &SyntaxNode {
32483 &self.syntax
32484 }
32485}
32486impl AstNode for ReindexOption {
32487 #[inline]
32488 fn can_cast(kind: SyntaxKind) -> bool {
32489 kind == SyntaxKind::REINDEX_OPTION
32490 }
32491 #[inline]
32492 fn cast(syntax: SyntaxNode) -> Option<Self> {
32493 if Self::can_cast(syntax.kind()) {
32494 Some(Self { syntax })
32495 } else {
32496 None
32497 }
32498 }
32499 #[inline]
32500 fn syntax(&self) -> &SyntaxNode {
32501 &self.syntax
32502 }
32503}
32504impl AstNode for ReindexOptionList {
32505 #[inline]
32506 fn can_cast(kind: SyntaxKind) -> bool {
32507 kind == SyntaxKind::REINDEX_OPTION_LIST
32508 }
32509 #[inline]
32510 fn cast(syntax: SyntaxNode) -> Option<Self> {
32511 if Self::can_cast(syntax.kind()) {
32512 Some(Self { syntax })
32513 } else {
32514 None
32515 }
32516 }
32517 #[inline]
32518 fn syntax(&self) -> &SyntaxNode {
32519 &self.syntax
32520 }
32521}
32522impl AstNode for RelationName {
32523 #[inline]
32524 fn can_cast(kind: SyntaxKind) -> bool {
32525 kind == SyntaxKind::RELATION_NAME
32526 }
32527 #[inline]
32528 fn cast(syntax: SyntaxNode) -> Option<Self> {
32529 if Self::can_cast(syntax.kind()) {
32530 Some(Self { syntax })
32531 } else {
32532 None
32533 }
32534 }
32535 #[inline]
32536 fn syntax(&self) -> &SyntaxNode {
32537 &self.syntax
32538 }
32539}
32540impl AstNode for Relative {
32541 #[inline]
32542 fn can_cast(kind: SyntaxKind) -> bool {
32543 kind == SyntaxKind::RELATIVE
32544 }
32545 #[inline]
32546 fn cast(syntax: SyntaxNode) -> Option<Self> {
32547 if Self::can_cast(syntax.kind()) {
32548 Some(Self { syntax })
32549 } else {
32550 None
32551 }
32552 }
32553 #[inline]
32554 fn syntax(&self) -> &SyntaxNode {
32555 &self.syntax
32556 }
32557}
32558impl AstNode for ReleaseSavepoint {
32559 #[inline]
32560 fn can_cast(kind: SyntaxKind) -> bool {
32561 kind == SyntaxKind::RELEASE_SAVEPOINT
32562 }
32563 #[inline]
32564 fn cast(syntax: SyntaxNode) -> Option<Self> {
32565 if Self::can_cast(syntax.kind()) {
32566 Some(Self { syntax })
32567 } else {
32568 None
32569 }
32570 }
32571 #[inline]
32572 fn syntax(&self) -> &SyntaxNode {
32573 &self.syntax
32574 }
32575}
32576impl AstNode for RenameAttribute {
32577 #[inline]
32578 fn can_cast(kind: SyntaxKind) -> bool {
32579 kind == SyntaxKind::RENAME_ATTRIBUTE
32580 }
32581 #[inline]
32582 fn cast(syntax: SyntaxNode) -> Option<Self> {
32583 if Self::can_cast(syntax.kind()) {
32584 Some(Self { syntax })
32585 } else {
32586 None
32587 }
32588 }
32589 #[inline]
32590 fn syntax(&self) -> &SyntaxNode {
32591 &self.syntax
32592 }
32593}
32594impl AstNode for RenameColumn {
32595 #[inline]
32596 fn can_cast(kind: SyntaxKind) -> bool {
32597 kind == SyntaxKind::RENAME_COLUMN
32598 }
32599 #[inline]
32600 fn cast(syntax: SyntaxNode) -> Option<Self> {
32601 if Self::can_cast(syntax.kind()) {
32602 Some(Self { syntax })
32603 } else {
32604 None
32605 }
32606 }
32607 #[inline]
32608 fn syntax(&self) -> &SyntaxNode {
32609 &self.syntax
32610 }
32611}
32612impl AstNode for RenameConstraint {
32613 #[inline]
32614 fn can_cast(kind: SyntaxKind) -> bool {
32615 kind == SyntaxKind::RENAME_CONSTRAINT
32616 }
32617 #[inline]
32618 fn cast(syntax: SyntaxNode) -> Option<Self> {
32619 if Self::can_cast(syntax.kind()) {
32620 Some(Self { syntax })
32621 } else {
32622 None
32623 }
32624 }
32625 #[inline]
32626 fn syntax(&self) -> &SyntaxNode {
32627 &self.syntax
32628 }
32629}
32630impl AstNode for RenameTo {
32631 #[inline]
32632 fn can_cast(kind: SyntaxKind) -> bool {
32633 kind == SyntaxKind::RENAME_TO
32634 }
32635 #[inline]
32636 fn cast(syntax: SyntaxNode) -> Option<Self> {
32637 if Self::can_cast(syntax.kind()) {
32638 Some(Self { syntax })
32639 } else {
32640 None
32641 }
32642 }
32643 #[inline]
32644 fn syntax(&self) -> &SyntaxNode {
32645 &self.syntax
32646 }
32647}
32648impl AstNode for RenameValue {
32649 #[inline]
32650 fn can_cast(kind: SyntaxKind) -> bool {
32651 kind == SyntaxKind::RENAME_VALUE
32652 }
32653 #[inline]
32654 fn cast(syntax: SyntaxNode) -> Option<Self> {
32655 if Self::can_cast(syntax.kind()) {
32656 Some(Self { syntax })
32657 } else {
32658 None
32659 }
32660 }
32661 #[inline]
32662 fn syntax(&self) -> &SyntaxNode {
32663 &self.syntax
32664 }
32665}
32666impl AstNode for Repack {
32667 #[inline]
32668 fn can_cast(kind: SyntaxKind) -> bool {
32669 kind == SyntaxKind::REPACK
32670 }
32671 #[inline]
32672 fn cast(syntax: SyntaxNode) -> Option<Self> {
32673 if Self::can_cast(syntax.kind()) {
32674 Some(Self { syntax })
32675 } else {
32676 None
32677 }
32678 }
32679 #[inline]
32680 fn syntax(&self) -> &SyntaxNode {
32681 &self.syntax
32682 }
32683}
32684impl AstNode for RepeatableClause {
32685 #[inline]
32686 fn can_cast(kind: SyntaxKind) -> bool {
32687 kind == SyntaxKind::REPEATABLE_CLAUSE
32688 }
32689 #[inline]
32690 fn cast(syntax: SyntaxNode) -> Option<Self> {
32691 if Self::can_cast(syntax.kind()) {
32692 Some(Self { syntax })
32693 } else {
32694 None
32695 }
32696 }
32697 #[inline]
32698 fn syntax(&self) -> &SyntaxNode {
32699 &self.syntax
32700 }
32701}
32702impl AstNode for RepeatableRead {
32703 #[inline]
32704 fn can_cast(kind: SyntaxKind) -> bool {
32705 kind == SyntaxKind::REPEATABLE_READ
32706 }
32707 #[inline]
32708 fn cast(syntax: SyntaxNode) -> Option<Self> {
32709 if Self::can_cast(syntax.kind()) {
32710 Some(Self { syntax })
32711 } else {
32712 None
32713 }
32714 }
32715 #[inline]
32716 fn syntax(&self) -> &SyntaxNode {
32717 &self.syntax
32718 }
32719}
32720impl AstNode for ReplicaIdentity {
32721 #[inline]
32722 fn can_cast(kind: SyntaxKind) -> bool {
32723 kind == SyntaxKind::REPLICA_IDENTITY
32724 }
32725 #[inline]
32726 fn cast(syntax: SyntaxNode) -> Option<Self> {
32727 if Self::can_cast(syntax.kind()) {
32728 Some(Self { syntax })
32729 } else {
32730 None
32731 }
32732 }
32733 #[inline]
32734 fn syntax(&self) -> &SyntaxNode {
32735 &self.syntax
32736 }
32737}
32738impl AstNode for Reset {
32739 #[inline]
32740 fn can_cast(kind: SyntaxKind) -> bool {
32741 kind == SyntaxKind::RESET
32742 }
32743 #[inline]
32744 fn cast(syntax: SyntaxNode) -> Option<Self> {
32745 if Self::can_cast(syntax.kind()) {
32746 Some(Self { syntax })
32747 } else {
32748 None
32749 }
32750 }
32751 #[inline]
32752 fn syntax(&self) -> &SyntaxNode {
32753 &self.syntax
32754 }
32755}
32756impl AstNode for ResetConfigParam {
32757 #[inline]
32758 fn can_cast(kind: SyntaxKind) -> bool {
32759 kind == SyntaxKind::RESET_CONFIG_PARAM
32760 }
32761 #[inline]
32762 fn cast(syntax: SyntaxNode) -> Option<Self> {
32763 if Self::can_cast(syntax.kind()) {
32764 Some(Self { syntax })
32765 } else {
32766 None
32767 }
32768 }
32769 #[inline]
32770 fn syntax(&self) -> &SyntaxNode {
32771 &self.syntax
32772 }
32773}
32774impl AstNode for ResetFuncOption {
32775 #[inline]
32776 fn can_cast(kind: SyntaxKind) -> bool {
32777 kind == SyntaxKind::RESET_FUNC_OPTION
32778 }
32779 #[inline]
32780 fn cast(syntax: SyntaxNode) -> Option<Self> {
32781 if Self::can_cast(syntax.kind()) {
32782 Some(Self { syntax })
32783 } else {
32784 None
32785 }
32786 }
32787 #[inline]
32788 fn syntax(&self) -> &SyntaxNode {
32789 &self.syntax
32790 }
32791}
32792impl AstNode for ResetOptions {
32793 #[inline]
32794 fn can_cast(kind: SyntaxKind) -> bool {
32795 kind == SyntaxKind::RESET_OPTIONS
32796 }
32797 #[inline]
32798 fn cast(syntax: SyntaxNode) -> Option<Self> {
32799 if Self::can_cast(syntax.kind()) {
32800 Some(Self { syntax })
32801 } else {
32802 None
32803 }
32804 }
32805 #[inline]
32806 fn syntax(&self) -> &SyntaxNode {
32807 &self.syntax
32808 }
32809}
32810impl AstNode for ResetSessionAuth {
32811 #[inline]
32812 fn can_cast(kind: SyntaxKind) -> bool {
32813 kind == SyntaxKind::RESET_SESSION_AUTH
32814 }
32815 #[inline]
32816 fn cast(syntax: SyntaxNode) -> Option<Self> {
32817 if Self::can_cast(syntax.kind()) {
32818 Some(Self { syntax })
32819 } else {
32820 None
32821 }
32822 }
32823 #[inline]
32824 fn syntax(&self) -> &SyntaxNode {
32825 &self.syntax
32826 }
32827}
32828impl AstNode for Restart {
32829 #[inline]
32830 fn can_cast(kind: SyntaxKind) -> bool {
32831 kind == SyntaxKind::RESTART
32832 }
32833 #[inline]
32834 fn cast(syntax: SyntaxNode) -> Option<Self> {
32835 if Self::can_cast(syntax.kind()) {
32836 Some(Self { syntax })
32837 } else {
32838 None
32839 }
32840 }
32841 #[inline]
32842 fn syntax(&self) -> &SyntaxNode {
32843 &self.syntax
32844 }
32845}
32846impl AstNode for Restrict {
32847 #[inline]
32848 fn can_cast(kind: SyntaxKind) -> bool {
32849 kind == SyntaxKind::RESTRICT
32850 }
32851 #[inline]
32852 fn cast(syntax: SyntaxNode) -> Option<Self> {
32853 if Self::can_cast(syntax.kind()) {
32854 Some(Self { syntax })
32855 } else {
32856 None
32857 }
32858 }
32859 #[inline]
32860 fn syntax(&self) -> &SyntaxNode {
32861 &self.syntax
32862 }
32863}
32864impl AstNode for RetType {
32865 #[inline]
32866 fn can_cast(kind: SyntaxKind) -> bool {
32867 kind == SyntaxKind::RET_TYPE
32868 }
32869 #[inline]
32870 fn cast(syntax: SyntaxNode) -> Option<Self> {
32871 if Self::can_cast(syntax.kind()) {
32872 Some(Self { syntax })
32873 } else {
32874 None
32875 }
32876 }
32877 #[inline]
32878 fn syntax(&self) -> &SyntaxNode {
32879 &self.syntax
32880 }
32881}
32882impl AstNode for ReturnFuncOption {
32883 #[inline]
32884 fn can_cast(kind: SyntaxKind) -> bool {
32885 kind == SyntaxKind::RETURN_FUNC_OPTION
32886 }
32887 #[inline]
32888 fn cast(syntax: SyntaxNode) -> Option<Self> {
32889 if Self::can_cast(syntax.kind()) {
32890 Some(Self { syntax })
32891 } else {
32892 None
32893 }
32894 }
32895 #[inline]
32896 fn syntax(&self) -> &SyntaxNode {
32897 &self.syntax
32898 }
32899}
32900impl AstNode for ReturningClause {
32901 #[inline]
32902 fn can_cast(kind: SyntaxKind) -> bool {
32903 kind == SyntaxKind::RETURNING_CLAUSE
32904 }
32905 #[inline]
32906 fn cast(syntax: SyntaxNode) -> Option<Self> {
32907 if Self::can_cast(syntax.kind()) {
32908 Some(Self { syntax })
32909 } else {
32910 None
32911 }
32912 }
32913 #[inline]
32914 fn syntax(&self) -> &SyntaxNode {
32915 &self.syntax
32916 }
32917}
32918impl AstNode for ReturningOption {
32919 #[inline]
32920 fn can_cast(kind: SyntaxKind) -> bool {
32921 kind == SyntaxKind::RETURNING_OPTION
32922 }
32923 #[inline]
32924 fn cast(syntax: SyntaxNode) -> Option<Self> {
32925 if Self::can_cast(syntax.kind()) {
32926 Some(Self { syntax })
32927 } else {
32928 None
32929 }
32930 }
32931 #[inline]
32932 fn syntax(&self) -> &SyntaxNode {
32933 &self.syntax
32934 }
32935}
32936impl AstNode for ReturningOptionList {
32937 #[inline]
32938 fn can_cast(kind: SyntaxKind) -> bool {
32939 kind == SyntaxKind::RETURNING_OPTION_LIST
32940 }
32941 #[inline]
32942 fn cast(syntax: SyntaxNode) -> Option<Self> {
32943 if Self::can_cast(syntax.kind()) {
32944 Some(Self { syntax })
32945 } else {
32946 None
32947 }
32948 }
32949 #[inline]
32950 fn syntax(&self) -> &SyntaxNode {
32951 &self.syntax
32952 }
32953}
32954impl AstNode for Revoke {
32955 #[inline]
32956 fn can_cast(kind: SyntaxKind) -> bool {
32957 kind == SyntaxKind::REVOKE
32958 }
32959 #[inline]
32960 fn cast(syntax: SyntaxNode) -> Option<Self> {
32961 if Self::can_cast(syntax.kind()) {
32962 Some(Self { syntax })
32963 } else {
32964 None
32965 }
32966 }
32967 #[inline]
32968 fn syntax(&self) -> &SyntaxNode {
32969 &self.syntax
32970 }
32971}
32972impl AstNode for RevokeCommand {
32973 #[inline]
32974 fn can_cast(kind: SyntaxKind) -> bool {
32975 kind == SyntaxKind::REVOKE_COMMAND
32976 }
32977 #[inline]
32978 fn cast(syntax: SyntaxNode) -> Option<Self> {
32979 if Self::can_cast(syntax.kind()) {
32980 Some(Self { syntax })
32981 } else {
32982 None
32983 }
32984 }
32985 #[inline]
32986 fn syntax(&self) -> &SyntaxNode {
32987 &self.syntax
32988 }
32989}
32990impl AstNode for RevokeCommandList {
32991 #[inline]
32992 fn can_cast(kind: SyntaxKind) -> bool {
32993 kind == SyntaxKind::REVOKE_COMMAND_LIST
32994 }
32995 #[inline]
32996 fn cast(syntax: SyntaxNode) -> Option<Self> {
32997 if Self::can_cast(syntax.kind()) {
32998 Some(Self { syntax })
32999 } else {
33000 None
33001 }
33002 }
33003 #[inline]
33004 fn syntax(&self) -> &SyntaxNode {
33005 &self.syntax
33006 }
33007}
33008impl AstNode for RevokeDefaultPrivileges {
33009 #[inline]
33010 fn can_cast(kind: SyntaxKind) -> bool {
33011 kind == SyntaxKind::REVOKE_DEFAULT_PRIVILEGES
33012 }
33013 #[inline]
33014 fn cast(syntax: SyntaxNode) -> Option<Self> {
33015 if Self::can_cast(syntax.kind()) {
33016 Some(Self { syntax })
33017 } else {
33018 None
33019 }
33020 }
33021 #[inline]
33022 fn syntax(&self) -> &SyntaxNode {
33023 &self.syntax
33024 }
33025}
33026impl AstNode for Role {
33027 #[inline]
33028 fn can_cast(kind: SyntaxKind) -> bool {
33029 kind == SyntaxKind::ROLE
33030 }
33031 #[inline]
33032 fn cast(syntax: SyntaxNode) -> Option<Self> {
33033 if Self::can_cast(syntax.kind()) {
33034 Some(Self { syntax })
33035 } else {
33036 None
33037 }
33038 }
33039 #[inline]
33040 fn syntax(&self) -> &SyntaxNode {
33041 &self.syntax
33042 }
33043}
33044impl AstNode for RoleOption {
33045 #[inline]
33046 fn can_cast(kind: SyntaxKind) -> bool {
33047 kind == SyntaxKind::ROLE_OPTION
33048 }
33049 #[inline]
33050 fn cast(syntax: SyntaxNode) -> Option<Self> {
33051 if Self::can_cast(syntax.kind()) {
33052 Some(Self { syntax })
33053 } else {
33054 None
33055 }
33056 }
33057 #[inline]
33058 fn syntax(&self) -> &SyntaxNode {
33059 &self.syntax
33060 }
33061}
33062impl AstNode for RoleOptionList {
33063 #[inline]
33064 fn can_cast(kind: SyntaxKind) -> bool {
33065 kind == SyntaxKind::ROLE_OPTION_LIST
33066 }
33067 #[inline]
33068 fn cast(syntax: SyntaxNode) -> Option<Self> {
33069 if Self::can_cast(syntax.kind()) {
33070 Some(Self { syntax })
33071 } else {
33072 None
33073 }
33074 }
33075 #[inline]
33076 fn syntax(&self) -> &SyntaxNode {
33077 &self.syntax
33078 }
33079}
33080impl AstNode for RoleRef {
33081 #[inline]
33082 fn can_cast(kind: SyntaxKind) -> bool {
33083 kind == SyntaxKind::ROLE_REF
33084 }
33085 #[inline]
33086 fn cast(syntax: SyntaxNode) -> Option<Self> {
33087 if Self::can_cast(syntax.kind()) {
33088 Some(Self { syntax })
33089 } else {
33090 None
33091 }
33092 }
33093 #[inline]
33094 fn syntax(&self) -> &SyntaxNode {
33095 &self.syntax
33096 }
33097}
33098impl AstNode for RoleRefList {
33099 #[inline]
33100 fn can_cast(kind: SyntaxKind) -> bool {
33101 kind == SyntaxKind::ROLE_REF_LIST
33102 }
33103 #[inline]
33104 fn cast(syntax: SyntaxNode) -> Option<Self> {
33105 if Self::can_cast(syntax.kind()) {
33106 Some(Self { syntax })
33107 } else {
33108 None
33109 }
33110 }
33111 #[inline]
33112 fn syntax(&self) -> &SyntaxNode {
33113 &self.syntax
33114 }
33115}
33116impl AstNode for Rollback {
33117 #[inline]
33118 fn can_cast(kind: SyntaxKind) -> bool {
33119 kind == SyntaxKind::ROLLBACK
33120 }
33121 #[inline]
33122 fn cast(syntax: SyntaxNode) -> Option<Self> {
33123 if Self::can_cast(syntax.kind()) {
33124 Some(Self { syntax })
33125 } else {
33126 None
33127 }
33128 }
33129 #[inline]
33130 fn syntax(&self) -> &SyntaxNode {
33131 &self.syntax
33132 }
33133}
33134impl AstNode for Row {
33135 #[inline]
33136 fn can_cast(kind: SyntaxKind) -> bool {
33137 kind == SyntaxKind::ROW
33138 }
33139 #[inline]
33140 fn cast(syntax: SyntaxNode) -> Option<Self> {
33141 if Self::can_cast(syntax.kind()) {
33142 Some(Self { syntax })
33143 } else {
33144 None
33145 }
33146 }
33147 #[inline]
33148 fn syntax(&self) -> &SyntaxNode {
33149 &self.syntax
33150 }
33151}
33152impl AstNode for RowExclusive {
33153 #[inline]
33154 fn can_cast(kind: SyntaxKind) -> bool {
33155 kind == SyntaxKind::ROW_EXCLUSIVE
33156 }
33157 #[inline]
33158 fn cast(syntax: SyntaxNode) -> Option<Self> {
33159 if Self::can_cast(syntax.kind()) {
33160 Some(Self { syntax })
33161 } else {
33162 None
33163 }
33164 }
33165 #[inline]
33166 fn syntax(&self) -> &SyntaxNode {
33167 &self.syntax
33168 }
33169}
33170impl AstNode for RowList {
33171 #[inline]
33172 fn can_cast(kind: SyntaxKind) -> bool {
33173 kind == SyntaxKind::ROW_LIST
33174 }
33175 #[inline]
33176 fn cast(syntax: SyntaxNode) -> Option<Self> {
33177 if Self::can_cast(syntax.kind()) {
33178 Some(Self { syntax })
33179 } else {
33180 None
33181 }
33182 }
33183 #[inline]
33184 fn syntax(&self) -> &SyntaxNode {
33185 &self.syntax
33186 }
33187}
33188impl AstNode for RowShare {
33189 #[inline]
33190 fn can_cast(kind: SyntaxKind) -> bool {
33191 kind == SyntaxKind::ROW_SHARE
33192 }
33193 #[inline]
33194 fn cast(syntax: SyntaxNode) -> Option<Self> {
33195 if Self::can_cast(syntax.kind()) {
33196 Some(Self { syntax })
33197 } else {
33198 None
33199 }
33200 }
33201 #[inline]
33202 fn syntax(&self) -> &SyntaxNode {
33203 &self.syntax
33204 }
33205}
33206impl AstNode for RowsFuncOption {
33207 #[inline]
33208 fn can_cast(kind: SyntaxKind) -> bool {
33209 kind == SyntaxKind::ROWS_FUNC_OPTION
33210 }
33211 #[inline]
33212 fn cast(syntax: SyntaxNode) -> Option<Self> {
33213 if Self::can_cast(syntax.kind()) {
33214 Some(Self { syntax })
33215 } else {
33216 None
33217 }
33218 }
33219 #[inline]
33220 fn syntax(&self) -> &SyntaxNode {
33221 &self.syntax
33222 }
33223}
33224impl AstNode for RuleDo {
33225 #[inline]
33226 fn can_cast(kind: SyntaxKind) -> bool {
33227 kind == SyntaxKind::RULE_DO
33228 }
33229 #[inline]
33230 fn cast(syntax: SyntaxNode) -> Option<Self> {
33231 if Self::can_cast(syntax.kind()) {
33232 Some(Self { syntax })
33233 } else {
33234 None
33235 }
33236 }
33237 #[inline]
33238 fn syntax(&self) -> &SyntaxNode {
33239 &self.syntax
33240 }
33241}
33242impl AstNode for RuleOn {
33243 #[inline]
33244 fn can_cast(kind: SyntaxKind) -> bool {
33245 kind == SyntaxKind::RULE_ON
33246 }
33247 #[inline]
33248 fn cast(syntax: SyntaxNode) -> Option<Self> {
33249 if Self::can_cast(syntax.kind()) {
33250 Some(Self { syntax })
33251 } else {
33252 None
33253 }
33254 }
33255 #[inline]
33256 fn syntax(&self) -> &SyntaxNode {
33257 &self.syntax
33258 }
33259}
33260impl AstNode for RuleStmtList {
33261 #[inline]
33262 fn can_cast(kind: SyntaxKind) -> bool {
33263 kind == SyntaxKind::RULE_STMT_LIST
33264 }
33265 #[inline]
33266 fn cast(syntax: SyntaxNode) -> Option<Self> {
33267 if Self::can_cast(syntax.kind()) {
33268 Some(Self { syntax })
33269 } else {
33270 None
33271 }
33272 }
33273 #[inline]
33274 fn syntax(&self) -> &SyntaxNode {
33275 &self.syntax
33276 }
33277}
33278impl AstNode for Savepoint {
33279 #[inline]
33280 fn can_cast(kind: SyntaxKind) -> bool {
33281 kind == SyntaxKind::SAVEPOINT
33282 }
33283 #[inline]
33284 fn cast(syntax: SyntaxNode) -> Option<Self> {
33285 if Self::can_cast(syntax.kind()) {
33286 Some(Self { syntax })
33287 } else {
33288 None
33289 }
33290 }
33291 #[inline]
33292 fn syntax(&self) -> &SyntaxNode {
33293 &self.syntax
33294 }
33295}
33296impl AstNode for SearchClause {
33297 #[inline]
33298 fn can_cast(kind: SyntaxKind) -> bool {
33299 kind == SyntaxKind::SEARCH_CLAUSE
33300 }
33301 #[inline]
33302 fn cast(syntax: SyntaxNode) -> Option<Self> {
33303 if Self::can_cast(syntax.kind()) {
33304 Some(Self { syntax })
33305 } else {
33306 None
33307 }
33308 }
33309 #[inline]
33310 fn syntax(&self) -> &SyntaxNode {
33311 &self.syntax
33312 }
33313}
33314impl AstNode for SearchColumns {
33315 #[inline]
33316 fn can_cast(kind: SyntaxKind) -> bool {
33317 kind == SyntaxKind::SEARCH_COLUMNS
33318 }
33319 #[inline]
33320 fn cast(syntax: SyntaxNode) -> Option<Self> {
33321 if Self::can_cast(syntax.kind()) {
33322 Some(Self { syntax })
33323 } else {
33324 None
33325 }
33326 }
33327 #[inline]
33328 fn syntax(&self) -> &SyntaxNode {
33329 &self.syntax
33330 }
33331}
33332impl AstNode for SearchSetColumn {
33333 #[inline]
33334 fn can_cast(kind: SyntaxKind) -> bool {
33335 kind == SyntaxKind::SEARCH_SET_COLUMN
33336 }
33337 #[inline]
33338 fn cast(syntax: SyntaxNode) -> Option<Self> {
33339 if Self::can_cast(syntax.kind()) {
33340 Some(Self { syntax })
33341 } else {
33342 None
33343 }
33344 }
33345 #[inline]
33346 fn syntax(&self) -> &SyntaxNode {
33347 &self.syntax
33348 }
33349}
33350impl AstNode for SecurityFuncOption {
33351 #[inline]
33352 fn can_cast(kind: SyntaxKind) -> bool {
33353 kind == SyntaxKind::SECURITY_FUNC_OPTION
33354 }
33355 #[inline]
33356 fn cast(syntax: SyntaxNode) -> Option<Self> {
33357 if Self::can_cast(syntax.kind()) {
33358 Some(Self { syntax })
33359 } else {
33360 None
33361 }
33362 }
33363 #[inline]
33364 fn syntax(&self) -> &SyntaxNode {
33365 &self.syntax
33366 }
33367}
33368impl AstNode for SecurityLabel {
33369 #[inline]
33370 fn can_cast(kind: SyntaxKind) -> bool {
33371 kind == SyntaxKind::SECURITY_LABEL
33372 }
33373 #[inline]
33374 fn cast(syntax: SyntaxNode) -> Option<Self> {
33375 if Self::can_cast(syntax.kind()) {
33376 Some(Self { syntax })
33377 } else {
33378 None
33379 }
33380 }
33381 #[inline]
33382 fn syntax(&self) -> &SyntaxNode {
33383 &self.syntax
33384 }
33385}
33386impl AstNode for Select {
33387 #[inline]
33388 fn can_cast(kind: SyntaxKind) -> bool {
33389 kind == SyntaxKind::SELECT
33390 }
33391 #[inline]
33392 fn cast(syntax: SyntaxNode) -> Option<Self> {
33393 if Self::can_cast(syntax.kind()) {
33394 Some(Self { syntax })
33395 } else {
33396 None
33397 }
33398 }
33399 #[inline]
33400 fn syntax(&self) -> &SyntaxNode {
33401 &self.syntax
33402 }
33403}
33404impl AstNode for SelectClause {
33405 #[inline]
33406 fn can_cast(kind: SyntaxKind) -> bool {
33407 kind == SyntaxKind::SELECT_CLAUSE
33408 }
33409 #[inline]
33410 fn cast(syntax: SyntaxNode) -> Option<Self> {
33411 if Self::can_cast(syntax.kind()) {
33412 Some(Self { syntax })
33413 } else {
33414 None
33415 }
33416 }
33417 #[inline]
33418 fn syntax(&self) -> &SyntaxNode {
33419 &self.syntax
33420 }
33421}
33422impl AstNode for SelectInto {
33423 #[inline]
33424 fn can_cast(kind: SyntaxKind) -> bool {
33425 kind == SyntaxKind::SELECT_INTO
33426 }
33427 #[inline]
33428 fn cast(syntax: SyntaxNode) -> Option<Self> {
33429 if Self::can_cast(syntax.kind()) {
33430 Some(Self { syntax })
33431 } else {
33432 None
33433 }
33434 }
33435 #[inline]
33436 fn syntax(&self) -> &SyntaxNode {
33437 &self.syntax
33438 }
33439}
33440impl AstNode for SequenceOption {
33441 #[inline]
33442 fn can_cast(kind: SyntaxKind) -> bool {
33443 kind == SyntaxKind::SEQUENCE_OPTION
33444 }
33445 #[inline]
33446 fn cast(syntax: SyntaxNode) -> Option<Self> {
33447 if Self::can_cast(syntax.kind()) {
33448 Some(Self { syntax })
33449 } else {
33450 None
33451 }
33452 }
33453 #[inline]
33454 fn syntax(&self) -> &SyntaxNode {
33455 &self.syntax
33456 }
33457}
33458impl AstNode for SequenceOptionList {
33459 #[inline]
33460 fn can_cast(kind: SyntaxKind) -> bool {
33461 kind == SyntaxKind::SEQUENCE_OPTION_LIST
33462 }
33463 #[inline]
33464 fn cast(syntax: SyntaxNode) -> Option<Self> {
33465 if Self::can_cast(syntax.kind()) {
33466 Some(Self { syntax })
33467 } else {
33468 None
33469 }
33470 }
33471 #[inline]
33472 fn syntax(&self) -> &SyntaxNode {
33473 &self.syntax
33474 }
33475}
33476impl AstNode for Serializable {
33477 #[inline]
33478 fn can_cast(kind: SyntaxKind) -> bool {
33479 kind == SyntaxKind::SERIALIZABLE
33480 }
33481 #[inline]
33482 fn cast(syntax: SyntaxNode) -> Option<Self> {
33483 if Self::can_cast(syntax.kind()) {
33484 Some(Self { syntax })
33485 } else {
33486 None
33487 }
33488 }
33489 #[inline]
33490 fn syntax(&self) -> &SyntaxNode {
33491 &self.syntax
33492 }
33493}
33494impl AstNode for ServerName {
33495 #[inline]
33496 fn can_cast(kind: SyntaxKind) -> bool {
33497 kind == SyntaxKind::SERVER_NAME
33498 }
33499 #[inline]
33500 fn cast(syntax: SyntaxNode) -> Option<Self> {
33501 if Self::can_cast(syntax.kind()) {
33502 Some(Self { syntax })
33503 } else {
33504 None
33505 }
33506 }
33507 #[inline]
33508 fn syntax(&self) -> &SyntaxNode {
33509 &self.syntax
33510 }
33511}
33512impl AstNode for SessionAuthorization {
33513 #[inline]
33514 fn can_cast(kind: SyntaxKind) -> bool {
33515 kind == SyntaxKind::SESSION_AUTHORIZATION
33516 }
33517 #[inline]
33518 fn cast(syntax: SyntaxNode) -> Option<Self> {
33519 if Self::can_cast(syntax.kind()) {
33520 Some(Self { syntax })
33521 } else {
33522 None
33523 }
33524 }
33525 #[inline]
33526 fn syntax(&self) -> &SyntaxNode {
33527 &self.syntax
33528 }
33529}
33530impl AstNode for Set {
33531 #[inline]
33532 fn can_cast(kind: SyntaxKind) -> bool {
33533 kind == SyntaxKind::SET
33534 }
33535 #[inline]
33536 fn cast(syntax: SyntaxNode) -> Option<Self> {
33537 if Self::can_cast(syntax.kind()) {
33538 Some(Self { syntax })
33539 } else {
33540 None
33541 }
33542 }
33543 #[inline]
33544 fn syntax(&self) -> &SyntaxNode {
33545 &self.syntax
33546 }
33547}
33548impl AstNode for SetAccessMethod {
33549 #[inline]
33550 fn can_cast(kind: SyntaxKind) -> bool {
33551 kind == SyntaxKind::SET_ACCESS_METHOD
33552 }
33553 #[inline]
33554 fn cast(syntax: SyntaxNode) -> Option<Self> {
33555 if Self::can_cast(syntax.kind()) {
33556 Some(Self { syntax })
33557 } else {
33558 None
33559 }
33560 }
33561 #[inline]
33562 fn syntax(&self) -> &SyntaxNode {
33563 &self.syntax
33564 }
33565}
33566impl AstNode for SetClause {
33567 #[inline]
33568 fn can_cast(kind: SyntaxKind) -> bool {
33569 kind == SyntaxKind::SET_CLAUSE
33570 }
33571 #[inline]
33572 fn cast(syntax: SyntaxNode) -> Option<Self> {
33573 if Self::can_cast(syntax.kind()) {
33574 Some(Self { syntax })
33575 } else {
33576 None
33577 }
33578 }
33579 #[inline]
33580 fn syntax(&self) -> &SyntaxNode {
33581 &self.syntax
33582 }
33583}
33584impl AstNode for SetColumnList {
33585 #[inline]
33586 fn can_cast(kind: SyntaxKind) -> bool {
33587 kind == SyntaxKind::SET_COLUMN_LIST
33588 }
33589 #[inline]
33590 fn cast(syntax: SyntaxNode) -> Option<Self> {
33591 if Self::can_cast(syntax.kind()) {
33592 Some(Self { syntax })
33593 } else {
33594 None
33595 }
33596 }
33597 #[inline]
33598 fn syntax(&self) -> &SyntaxNode {
33599 &self.syntax
33600 }
33601}
33602impl AstNode for SetCompression {
33603 #[inline]
33604 fn can_cast(kind: SyntaxKind) -> bool {
33605 kind == SyntaxKind::SET_COMPRESSION
33606 }
33607 #[inline]
33608 fn cast(syntax: SyntaxNode) -> Option<Self> {
33609 if Self::can_cast(syntax.kind()) {
33610 Some(Self { syntax })
33611 } else {
33612 None
33613 }
33614 }
33615 #[inline]
33616 fn syntax(&self) -> &SyntaxNode {
33617 &self.syntax
33618 }
33619}
33620impl AstNode for SetConfigParam {
33621 #[inline]
33622 fn can_cast(kind: SyntaxKind) -> bool {
33623 kind == SyntaxKind::SET_CONFIG_PARAM
33624 }
33625 #[inline]
33626 fn cast(syntax: SyntaxNode) -> Option<Self> {
33627 if Self::can_cast(syntax.kind()) {
33628 Some(Self { syntax })
33629 } else {
33630 None
33631 }
33632 }
33633 #[inline]
33634 fn syntax(&self) -> &SyntaxNode {
33635 &self.syntax
33636 }
33637}
33638impl AstNode for SetConstraints {
33639 #[inline]
33640 fn can_cast(kind: SyntaxKind) -> bool {
33641 kind == SyntaxKind::SET_CONSTRAINTS
33642 }
33643 #[inline]
33644 fn cast(syntax: SyntaxNode) -> Option<Self> {
33645 if Self::can_cast(syntax.kind()) {
33646 Some(Self { syntax })
33647 } else {
33648 None
33649 }
33650 }
33651 #[inline]
33652 fn syntax(&self) -> &SyntaxNode {
33653 &self.syntax
33654 }
33655}
33656impl AstNode for SetDefault {
33657 #[inline]
33658 fn can_cast(kind: SyntaxKind) -> bool {
33659 kind == SyntaxKind::SET_DEFAULT
33660 }
33661 #[inline]
33662 fn cast(syntax: SyntaxNode) -> Option<Self> {
33663 if Self::can_cast(syntax.kind()) {
33664 Some(Self { syntax })
33665 } else {
33666 None
33667 }
33668 }
33669 #[inline]
33670 fn syntax(&self) -> &SyntaxNode {
33671 &self.syntax
33672 }
33673}
33674impl AstNode for SetDefaultColumns {
33675 #[inline]
33676 fn can_cast(kind: SyntaxKind) -> bool {
33677 kind == SyntaxKind::SET_DEFAULT_COLUMNS
33678 }
33679 #[inline]
33680 fn cast(syntax: SyntaxNode) -> Option<Self> {
33681 if Self::can_cast(syntax.kind()) {
33682 Some(Self { syntax })
33683 } else {
33684 None
33685 }
33686 }
33687 #[inline]
33688 fn syntax(&self) -> &SyntaxNode {
33689 &self.syntax
33690 }
33691}
33692impl AstNode for SetExpr {
33693 #[inline]
33694 fn can_cast(kind: SyntaxKind) -> bool {
33695 kind == SyntaxKind::SET_EXPR
33696 }
33697 #[inline]
33698 fn cast(syntax: SyntaxNode) -> Option<Self> {
33699 if Self::can_cast(syntax.kind()) {
33700 Some(Self { syntax })
33701 } else {
33702 None
33703 }
33704 }
33705 #[inline]
33706 fn syntax(&self) -> &SyntaxNode {
33707 &self.syntax
33708 }
33709}
33710impl AstNode for SetExprList {
33711 #[inline]
33712 fn can_cast(kind: SyntaxKind) -> bool {
33713 kind == SyntaxKind::SET_EXPR_LIST
33714 }
33715 #[inline]
33716 fn cast(syntax: SyntaxNode) -> Option<Self> {
33717 if Self::can_cast(syntax.kind()) {
33718 Some(Self { syntax })
33719 } else {
33720 None
33721 }
33722 }
33723 #[inline]
33724 fn syntax(&self) -> &SyntaxNode {
33725 &self.syntax
33726 }
33727}
33728impl AstNode for SetExpression {
33729 #[inline]
33730 fn can_cast(kind: SyntaxKind) -> bool {
33731 kind == SyntaxKind::SET_EXPRESSION
33732 }
33733 #[inline]
33734 fn cast(syntax: SyntaxNode) -> Option<Self> {
33735 if Self::can_cast(syntax.kind()) {
33736 Some(Self { syntax })
33737 } else {
33738 None
33739 }
33740 }
33741 #[inline]
33742 fn syntax(&self) -> &SyntaxNode {
33743 &self.syntax
33744 }
33745}
33746impl AstNode for SetFuncOption {
33747 #[inline]
33748 fn can_cast(kind: SyntaxKind) -> bool {
33749 kind == SyntaxKind::SET_FUNC_OPTION
33750 }
33751 #[inline]
33752 fn cast(syntax: SyntaxNode) -> Option<Self> {
33753 if Self::can_cast(syntax.kind()) {
33754 Some(Self { syntax })
33755 } else {
33756 None
33757 }
33758 }
33759 #[inline]
33760 fn syntax(&self) -> &SyntaxNode {
33761 &self.syntax
33762 }
33763}
33764impl AstNode for SetGenerated {
33765 #[inline]
33766 fn can_cast(kind: SyntaxKind) -> bool {
33767 kind == SyntaxKind::SET_GENERATED
33768 }
33769 #[inline]
33770 fn cast(syntax: SyntaxNode) -> Option<Self> {
33771 if Self::can_cast(syntax.kind()) {
33772 Some(Self { syntax })
33773 } else {
33774 None
33775 }
33776 }
33777 #[inline]
33778 fn syntax(&self) -> &SyntaxNode {
33779 &self.syntax
33780 }
33781}
33782impl AstNode for SetGeneratedOptions {
33783 #[inline]
33784 fn can_cast(kind: SyntaxKind) -> bool {
33785 kind == SyntaxKind::SET_GENERATED_OPTIONS
33786 }
33787 #[inline]
33788 fn cast(syntax: SyntaxNode) -> Option<Self> {
33789 if Self::can_cast(syntax.kind()) {
33790 Some(Self { syntax })
33791 } else {
33792 None
33793 }
33794 }
33795 #[inline]
33796 fn syntax(&self) -> &SyntaxNode {
33797 &self.syntax
33798 }
33799}
33800impl AstNode for SetLogged {
33801 #[inline]
33802 fn can_cast(kind: SyntaxKind) -> bool {
33803 kind == SyntaxKind::SET_LOGGED
33804 }
33805 #[inline]
33806 fn cast(syntax: SyntaxNode) -> Option<Self> {
33807 if Self::can_cast(syntax.kind()) {
33808 Some(Self { syntax })
33809 } else {
33810 None
33811 }
33812 }
33813 #[inline]
33814 fn syntax(&self) -> &SyntaxNode {
33815 &self.syntax
33816 }
33817}
33818impl AstNode for SetMultipleColumns {
33819 #[inline]
33820 fn can_cast(kind: SyntaxKind) -> bool {
33821 kind == SyntaxKind::SET_MULTIPLE_COLUMNS
33822 }
33823 #[inline]
33824 fn cast(syntax: SyntaxNode) -> Option<Self> {
33825 if Self::can_cast(syntax.kind()) {
33826 Some(Self { syntax })
33827 } else {
33828 None
33829 }
33830 }
33831 #[inline]
33832 fn syntax(&self) -> &SyntaxNode {
33833 &self.syntax
33834 }
33835}
33836impl AstNode for SetNotNull {
33837 #[inline]
33838 fn can_cast(kind: SyntaxKind) -> bool {
33839 kind == SyntaxKind::SET_NOT_NULL
33840 }
33841 #[inline]
33842 fn cast(syntax: SyntaxNode) -> Option<Self> {
33843 if Self::can_cast(syntax.kind()) {
33844 Some(Self { syntax })
33845 } else {
33846 None
33847 }
33848 }
33849 #[inline]
33850 fn syntax(&self) -> &SyntaxNode {
33851 &self.syntax
33852 }
33853}
33854impl AstNode for SetNullColumns {
33855 #[inline]
33856 fn can_cast(kind: SyntaxKind) -> bool {
33857 kind == SyntaxKind::SET_NULL_COLUMNS
33858 }
33859 #[inline]
33860 fn cast(syntax: SyntaxNode) -> Option<Self> {
33861 if Self::can_cast(syntax.kind()) {
33862 Some(Self { syntax })
33863 } else {
33864 None
33865 }
33866 }
33867 #[inline]
33868 fn syntax(&self) -> &SyntaxNode {
33869 &self.syntax
33870 }
33871}
33872impl AstNode for SetOptions {
33873 #[inline]
33874 fn can_cast(kind: SyntaxKind) -> bool {
33875 kind == SyntaxKind::SET_OPTIONS
33876 }
33877 #[inline]
33878 fn cast(syntax: SyntaxNode) -> Option<Self> {
33879 if Self::can_cast(syntax.kind()) {
33880 Some(Self { syntax })
33881 } else {
33882 None
33883 }
33884 }
33885 #[inline]
33886 fn syntax(&self) -> &SyntaxNode {
33887 &self.syntax
33888 }
33889}
33890impl AstNode for SetOptionsList {
33891 #[inline]
33892 fn can_cast(kind: SyntaxKind) -> bool {
33893 kind == SyntaxKind::SET_OPTIONS_LIST
33894 }
33895 #[inline]
33896 fn cast(syntax: SyntaxNode) -> Option<Self> {
33897 if Self::can_cast(syntax.kind()) {
33898 Some(Self { syntax })
33899 } else {
33900 None
33901 }
33902 }
33903 #[inline]
33904 fn syntax(&self) -> &SyntaxNode {
33905 &self.syntax
33906 }
33907}
33908impl AstNode for SetRole {
33909 #[inline]
33910 fn can_cast(kind: SyntaxKind) -> bool {
33911 kind == SyntaxKind::SET_ROLE
33912 }
33913 #[inline]
33914 fn cast(syntax: SyntaxNode) -> Option<Self> {
33915 if Self::can_cast(syntax.kind()) {
33916 Some(Self { syntax })
33917 } else {
33918 None
33919 }
33920 }
33921 #[inline]
33922 fn syntax(&self) -> &SyntaxNode {
33923 &self.syntax
33924 }
33925}
33926impl AstNode for SetSchema {
33927 #[inline]
33928 fn can_cast(kind: SyntaxKind) -> bool {
33929 kind == SyntaxKind::SET_SCHEMA
33930 }
33931 #[inline]
33932 fn cast(syntax: SyntaxNode) -> Option<Self> {
33933 if Self::can_cast(syntax.kind()) {
33934 Some(Self { syntax })
33935 } else {
33936 None
33937 }
33938 }
33939 #[inline]
33940 fn syntax(&self) -> &SyntaxNode {
33941 &self.syntax
33942 }
33943}
33944impl AstNode for SetSequenceOption {
33945 #[inline]
33946 fn can_cast(kind: SyntaxKind) -> bool {
33947 kind == SyntaxKind::SET_SEQUENCE_OPTION
33948 }
33949 #[inline]
33950 fn cast(syntax: SyntaxNode) -> Option<Self> {
33951 if Self::can_cast(syntax.kind()) {
33952 Some(Self { syntax })
33953 } else {
33954 None
33955 }
33956 }
33957 #[inline]
33958 fn syntax(&self) -> &SyntaxNode {
33959 &self.syntax
33960 }
33961}
33962impl AstNode for SetSessionAuth {
33963 #[inline]
33964 fn can_cast(kind: SyntaxKind) -> bool {
33965 kind == SyntaxKind::SET_SESSION_AUTH
33966 }
33967 #[inline]
33968 fn cast(syntax: SyntaxNode) -> Option<Self> {
33969 if Self::can_cast(syntax.kind()) {
33970 Some(Self { syntax })
33971 } else {
33972 None
33973 }
33974 }
33975 #[inline]
33976 fn syntax(&self) -> &SyntaxNode {
33977 &self.syntax
33978 }
33979}
33980impl AstNode for SetSingleColumn {
33981 #[inline]
33982 fn can_cast(kind: SyntaxKind) -> bool {
33983 kind == SyntaxKind::SET_SINGLE_COLUMN
33984 }
33985 #[inline]
33986 fn cast(syntax: SyntaxNode) -> Option<Self> {
33987 if Self::can_cast(syntax.kind()) {
33988 Some(Self { syntax })
33989 } else {
33990 None
33991 }
33992 }
33993 #[inline]
33994 fn syntax(&self) -> &SyntaxNode {
33995 &self.syntax
33996 }
33997}
33998impl AstNode for SetStatistics {
33999 #[inline]
34000 fn can_cast(kind: SyntaxKind) -> bool {
34001 kind == SyntaxKind::SET_STATISTICS
34002 }
34003 #[inline]
34004 fn cast(syntax: SyntaxNode) -> Option<Self> {
34005 if Self::can_cast(syntax.kind()) {
34006 Some(Self { syntax })
34007 } else {
34008 None
34009 }
34010 }
34011 #[inline]
34012 fn syntax(&self) -> &SyntaxNode {
34013 &self.syntax
34014 }
34015}
34016impl AstNode for SetStorage {
34017 #[inline]
34018 fn can_cast(kind: SyntaxKind) -> bool {
34019 kind == SyntaxKind::SET_STORAGE
34020 }
34021 #[inline]
34022 fn cast(syntax: SyntaxNode) -> Option<Self> {
34023 if Self::can_cast(syntax.kind()) {
34024 Some(Self { syntax })
34025 } else {
34026 None
34027 }
34028 }
34029 #[inline]
34030 fn syntax(&self) -> &SyntaxNode {
34031 &self.syntax
34032 }
34033}
34034impl AstNode for SetTablespace {
34035 #[inline]
34036 fn can_cast(kind: SyntaxKind) -> bool {
34037 kind == SyntaxKind::SET_TABLESPACE
34038 }
34039 #[inline]
34040 fn cast(syntax: SyntaxNode) -> Option<Self> {
34041 if Self::can_cast(syntax.kind()) {
34042 Some(Self { syntax })
34043 } else {
34044 None
34045 }
34046 }
34047 #[inline]
34048 fn syntax(&self) -> &SyntaxNode {
34049 &self.syntax
34050 }
34051}
34052impl AstNode for SetTransaction {
34053 #[inline]
34054 fn can_cast(kind: SyntaxKind) -> bool {
34055 kind == SyntaxKind::SET_TRANSACTION
34056 }
34057 #[inline]
34058 fn cast(syntax: SyntaxNode) -> Option<Self> {
34059 if Self::can_cast(syntax.kind()) {
34060 Some(Self { syntax })
34061 } else {
34062 None
34063 }
34064 }
34065 #[inline]
34066 fn syntax(&self) -> &SyntaxNode {
34067 &self.syntax
34068 }
34069}
34070impl AstNode for SetType {
34071 #[inline]
34072 fn can_cast(kind: SyntaxKind) -> bool {
34073 kind == SyntaxKind::SET_TYPE
34074 }
34075 #[inline]
34076 fn cast(syntax: SyntaxNode) -> Option<Self> {
34077 if Self::can_cast(syntax.kind()) {
34078 Some(Self { syntax })
34079 } else {
34080 None
34081 }
34082 }
34083 #[inline]
34084 fn syntax(&self) -> &SyntaxNode {
34085 &self.syntax
34086 }
34087}
34088impl AstNode for SetUnlogged {
34089 #[inline]
34090 fn can_cast(kind: SyntaxKind) -> bool {
34091 kind == SyntaxKind::SET_UNLOGGED
34092 }
34093 #[inline]
34094 fn cast(syntax: SyntaxNode) -> Option<Self> {
34095 if Self::can_cast(syntax.kind()) {
34096 Some(Self { syntax })
34097 } else {
34098 None
34099 }
34100 }
34101 #[inline]
34102 fn syntax(&self) -> &SyntaxNode {
34103 &self.syntax
34104 }
34105}
34106impl AstNode for SetWithoutCluster {
34107 #[inline]
34108 fn can_cast(kind: SyntaxKind) -> bool {
34109 kind == SyntaxKind::SET_WITHOUT_CLUSTER
34110 }
34111 #[inline]
34112 fn cast(syntax: SyntaxNode) -> Option<Self> {
34113 if Self::can_cast(syntax.kind()) {
34114 Some(Self { syntax })
34115 } else {
34116 None
34117 }
34118 }
34119 #[inline]
34120 fn syntax(&self) -> &SyntaxNode {
34121 &self.syntax
34122 }
34123}
34124impl AstNode for SetWithoutOids {
34125 #[inline]
34126 fn can_cast(kind: SyntaxKind) -> bool {
34127 kind == SyntaxKind::SET_WITHOUT_OIDS
34128 }
34129 #[inline]
34130 fn cast(syntax: SyntaxNode) -> Option<Self> {
34131 if Self::can_cast(syntax.kind()) {
34132 Some(Self { syntax })
34133 } else {
34134 None
34135 }
34136 }
34137 #[inline]
34138 fn syntax(&self) -> &SyntaxNode {
34139 &self.syntax
34140 }
34141}
34142impl AstNode for Share {
34143 #[inline]
34144 fn can_cast(kind: SyntaxKind) -> bool {
34145 kind == SyntaxKind::SHARE
34146 }
34147 #[inline]
34148 fn cast(syntax: SyntaxNode) -> Option<Self> {
34149 if Self::can_cast(syntax.kind()) {
34150 Some(Self { syntax })
34151 } else {
34152 None
34153 }
34154 }
34155 #[inline]
34156 fn syntax(&self) -> &SyntaxNode {
34157 &self.syntax
34158 }
34159}
34160impl AstNode for ShareRowExclusive {
34161 #[inline]
34162 fn can_cast(kind: SyntaxKind) -> bool {
34163 kind == SyntaxKind::SHARE_ROW_EXCLUSIVE
34164 }
34165 #[inline]
34166 fn cast(syntax: SyntaxNode) -> Option<Self> {
34167 if Self::can_cast(syntax.kind()) {
34168 Some(Self { syntax })
34169 } else {
34170 None
34171 }
34172 }
34173 #[inline]
34174 fn syntax(&self) -> &SyntaxNode {
34175 &self.syntax
34176 }
34177}
34178impl AstNode for ShareUpdateExclusive {
34179 #[inline]
34180 fn can_cast(kind: SyntaxKind) -> bool {
34181 kind == SyntaxKind::SHARE_UPDATE_EXCLUSIVE
34182 }
34183 #[inline]
34184 fn cast(syntax: SyntaxNode) -> Option<Self> {
34185 if Self::can_cast(syntax.kind()) {
34186 Some(Self { syntax })
34187 } else {
34188 None
34189 }
34190 }
34191 #[inline]
34192 fn syntax(&self) -> &SyntaxNode {
34193 &self.syntax
34194 }
34195}
34196impl AstNode for Show {
34197 #[inline]
34198 fn can_cast(kind: SyntaxKind) -> bool {
34199 kind == SyntaxKind::SHOW
34200 }
34201 #[inline]
34202 fn cast(syntax: SyntaxNode) -> Option<Self> {
34203 if Self::can_cast(syntax.kind()) {
34204 Some(Self { syntax })
34205 } else {
34206 None
34207 }
34208 }
34209 #[inline]
34210 fn syntax(&self) -> &SyntaxNode {
34211 &self.syntax
34212 }
34213}
34214impl AstNode for SimilarTo {
34215 #[inline]
34216 fn can_cast(kind: SyntaxKind) -> bool {
34217 kind == SyntaxKind::SIMILAR_TO
34218 }
34219 #[inline]
34220 fn cast(syntax: SyntaxNode) -> Option<Self> {
34221 if Self::can_cast(syntax.kind()) {
34222 Some(Self { syntax })
34223 } else {
34224 None
34225 }
34226 }
34227 #[inline]
34228 fn syntax(&self) -> &SyntaxNode {
34229 &self.syntax
34230 }
34231}
34232impl AstNode for SliceExpr {
34233 #[inline]
34234 fn can_cast(kind: SyntaxKind) -> bool {
34235 kind == SyntaxKind::SLICE_EXPR
34236 }
34237 #[inline]
34238 fn cast(syntax: SyntaxNode) -> Option<Self> {
34239 if Self::can_cast(syntax.kind()) {
34240 Some(Self { syntax })
34241 } else {
34242 None
34243 }
34244 }
34245 #[inline]
34246 fn syntax(&self) -> &SyntaxNode {
34247 &self.syntax
34248 }
34249}
34250impl AstNode for SomeFn {
34251 #[inline]
34252 fn can_cast(kind: SyntaxKind) -> bool {
34253 kind == SyntaxKind::SOME_FN
34254 }
34255 #[inline]
34256 fn cast(syntax: SyntaxNode) -> Option<Self> {
34257 if Self::can_cast(syntax.kind()) {
34258 Some(Self { syntax })
34259 } else {
34260 None
34261 }
34262 }
34263 #[inline]
34264 fn syntax(&self) -> &SyntaxNode {
34265 &self.syntax
34266 }
34267}
34268impl AstNode for SortAsc {
34269 #[inline]
34270 fn can_cast(kind: SyntaxKind) -> bool {
34271 kind == SyntaxKind::SORT_ASC
34272 }
34273 #[inline]
34274 fn cast(syntax: SyntaxNode) -> Option<Self> {
34275 if Self::can_cast(syntax.kind()) {
34276 Some(Self { syntax })
34277 } else {
34278 None
34279 }
34280 }
34281 #[inline]
34282 fn syntax(&self) -> &SyntaxNode {
34283 &self.syntax
34284 }
34285}
34286impl AstNode for SortBy {
34287 #[inline]
34288 fn can_cast(kind: SyntaxKind) -> bool {
34289 kind == SyntaxKind::SORT_BY
34290 }
34291 #[inline]
34292 fn cast(syntax: SyntaxNode) -> Option<Self> {
34293 if Self::can_cast(syntax.kind()) {
34294 Some(Self { syntax })
34295 } else {
34296 None
34297 }
34298 }
34299 #[inline]
34300 fn syntax(&self) -> &SyntaxNode {
34301 &self.syntax
34302 }
34303}
34304impl AstNode for SortByList {
34305 #[inline]
34306 fn can_cast(kind: SyntaxKind) -> bool {
34307 kind == SyntaxKind::SORT_BY_LIST
34308 }
34309 #[inline]
34310 fn cast(syntax: SyntaxNode) -> Option<Self> {
34311 if Self::can_cast(syntax.kind()) {
34312 Some(Self { syntax })
34313 } else {
34314 None
34315 }
34316 }
34317 #[inline]
34318 fn syntax(&self) -> &SyntaxNode {
34319 &self.syntax
34320 }
34321}
34322impl AstNode for SortDesc {
34323 #[inline]
34324 fn can_cast(kind: SyntaxKind) -> bool {
34325 kind == SyntaxKind::SORT_DESC
34326 }
34327 #[inline]
34328 fn cast(syntax: SyntaxNode) -> Option<Self> {
34329 if Self::can_cast(syntax.kind()) {
34330 Some(Self { syntax })
34331 } else {
34332 None
34333 }
34334 }
34335 #[inline]
34336 fn syntax(&self) -> &SyntaxNode {
34337 &self.syntax
34338 }
34339}
34340impl AstNode for SortUsing {
34341 #[inline]
34342 fn can_cast(kind: SyntaxKind) -> bool {
34343 kind == SyntaxKind::SORT_USING
34344 }
34345 #[inline]
34346 fn cast(syntax: SyntaxNode) -> Option<Self> {
34347 if Self::can_cast(syntax.kind()) {
34348 Some(Self { syntax })
34349 } else {
34350 None
34351 }
34352 }
34353 #[inline]
34354 fn syntax(&self) -> &SyntaxNode {
34355 &self.syntax
34356 }
34357}
34358impl AstNode for SourceFile {
34359 #[inline]
34360 fn can_cast(kind: SyntaxKind) -> bool {
34361 kind == SyntaxKind::SOURCE_FILE
34362 }
34363 #[inline]
34364 fn cast(syntax: SyntaxNode) -> Option<Self> {
34365 if Self::can_cast(syntax.kind()) {
34366 Some(Self { syntax })
34367 } else {
34368 None
34369 }
34370 }
34371 #[inline]
34372 fn syntax(&self) -> &SyntaxNode {
34373 &self.syntax
34374 }
34375}
34376impl AstNode for SourceVertexTable {
34377 #[inline]
34378 fn can_cast(kind: SyntaxKind) -> bool {
34379 kind == SyntaxKind::SOURCE_VERTEX_TABLE
34380 }
34381 #[inline]
34382 fn cast(syntax: SyntaxNode) -> Option<Self> {
34383 if Self::can_cast(syntax.kind()) {
34384 Some(Self { syntax })
34385 } else {
34386 None
34387 }
34388 }
34389 #[inline]
34390 fn syntax(&self) -> &SyntaxNode {
34391 &self.syntax
34392 }
34393}
34394impl AstNode for SplitPartition {
34395 #[inline]
34396 fn can_cast(kind: SyntaxKind) -> bool {
34397 kind == SyntaxKind::SPLIT_PARTITION
34398 }
34399 #[inline]
34400 fn cast(syntax: SyntaxNode) -> Option<Self> {
34401 if Self::can_cast(syntax.kind()) {
34402 Some(Self { syntax })
34403 } else {
34404 None
34405 }
34406 }
34407 #[inline]
34408 fn syntax(&self) -> &SyntaxNode {
34409 &self.syntax
34410 }
34411}
34412impl AstNode for Storage {
34413 #[inline]
34414 fn can_cast(kind: SyntaxKind) -> bool {
34415 kind == SyntaxKind::STORAGE
34416 }
34417 #[inline]
34418 fn cast(syntax: SyntaxNode) -> Option<Self> {
34419 if Self::can_cast(syntax.kind()) {
34420 Some(Self { syntax })
34421 } else {
34422 None
34423 }
34424 }
34425 #[inline]
34426 fn syntax(&self) -> &SyntaxNode {
34427 &self.syntax
34428 }
34429}
34430impl AstNode for StrictFuncOption {
34431 #[inline]
34432 fn can_cast(kind: SyntaxKind) -> bool {
34433 kind == SyntaxKind::STRICT_FUNC_OPTION
34434 }
34435 #[inline]
34436 fn cast(syntax: SyntaxNode) -> Option<Self> {
34437 if Self::can_cast(syntax.kind()) {
34438 Some(Self { syntax })
34439 } else {
34440 None
34441 }
34442 }
34443 #[inline]
34444 fn syntax(&self) -> &SyntaxNode {
34445 &self.syntax
34446 }
34447}
34448impl AstNode for SubstringFn {
34449 #[inline]
34450 fn can_cast(kind: SyntaxKind) -> bool {
34451 kind == SyntaxKind::SUBSTRING_FN
34452 }
34453 #[inline]
34454 fn cast(syntax: SyntaxNode) -> Option<Self> {
34455 if Self::can_cast(syntax.kind()) {
34456 Some(Self { syntax })
34457 } else {
34458 None
34459 }
34460 }
34461 #[inline]
34462 fn syntax(&self) -> &SyntaxNode {
34463 &self.syntax
34464 }
34465}
34466impl AstNode for SupportFuncOption {
34467 #[inline]
34468 fn can_cast(kind: SyntaxKind) -> bool {
34469 kind == SyntaxKind::SUPPORT_FUNC_OPTION
34470 }
34471 #[inline]
34472 fn cast(syntax: SyntaxNode) -> Option<Self> {
34473 if Self::can_cast(syntax.kind()) {
34474 Some(Self { syntax })
34475 } else {
34476 None
34477 }
34478 }
34479 #[inline]
34480 fn syntax(&self) -> &SyntaxNode {
34481 &self.syntax
34482 }
34483}
34484impl AstNode for Table {
34485 #[inline]
34486 fn can_cast(kind: SyntaxKind) -> bool {
34487 kind == SyntaxKind::TABLE
34488 }
34489 #[inline]
34490 fn cast(syntax: SyntaxNode) -> Option<Self> {
34491 if Self::can_cast(syntax.kind()) {
34492 Some(Self { syntax })
34493 } else {
34494 None
34495 }
34496 }
34497 #[inline]
34498 fn syntax(&self) -> &SyntaxNode {
34499 &self.syntax
34500 }
34501}
34502impl AstNode for TableAndColumns {
34503 #[inline]
34504 fn can_cast(kind: SyntaxKind) -> bool {
34505 kind == SyntaxKind::TABLE_AND_COLUMNS
34506 }
34507 #[inline]
34508 fn cast(syntax: SyntaxNode) -> Option<Self> {
34509 if Self::can_cast(syntax.kind()) {
34510 Some(Self { syntax })
34511 } else {
34512 None
34513 }
34514 }
34515 #[inline]
34516 fn syntax(&self) -> &SyntaxNode {
34517 &self.syntax
34518 }
34519}
34520impl AstNode for TableAndColumnsList {
34521 #[inline]
34522 fn can_cast(kind: SyntaxKind) -> bool {
34523 kind == SyntaxKind::TABLE_AND_COLUMNS_LIST
34524 }
34525 #[inline]
34526 fn cast(syntax: SyntaxNode) -> Option<Self> {
34527 if Self::can_cast(syntax.kind()) {
34528 Some(Self { syntax })
34529 } else {
34530 None
34531 }
34532 }
34533 #[inline]
34534 fn syntax(&self) -> &SyntaxNode {
34535 &self.syntax
34536 }
34537}
34538impl AstNode for TableArgList {
34539 #[inline]
34540 fn can_cast(kind: SyntaxKind) -> bool {
34541 kind == SyntaxKind::TABLE_ARG_LIST
34542 }
34543 #[inline]
34544 fn cast(syntax: SyntaxNode) -> Option<Self> {
34545 if Self::can_cast(syntax.kind()) {
34546 Some(Self { syntax })
34547 } else {
34548 None
34549 }
34550 }
34551 #[inline]
34552 fn syntax(&self) -> &SyntaxNode {
34553 &self.syntax
34554 }
34555}
34556impl AstNode for TableList {
34557 #[inline]
34558 fn can_cast(kind: SyntaxKind) -> bool {
34559 kind == SyntaxKind::TABLE_LIST
34560 }
34561 #[inline]
34562 fn cast(syntax: SyntaxNode) -> Option<Self> {
34563 if Self::can_cast(syntax.kind()) {
34564 Some(Self { syntax })
34565 } else {
34566 None
34567 }
34568 }
34569 #[inline]
34570 fn syntax(&self) -> &SyntaxNode {
34571 &self.syntax
34572 }
34573}
34574impl AstNode for TablesampleClause {
34575 #[inline]
34576 fn can_cast(kind: SyntaxKind) -> bool {
34577 kind == SyntaxKind::TABLESAMPLE_CLAUSE
34578 }
34579 #[inline]
34580 fn cast(syntax: SyntaxNode) -> Option<Self> {
34581 if Self::can_cast(syntax.kind()) {
34582 Some(Self { syntax })
34583 } else {
34584 None
34585 }
34586 }
34587 #[inline]
34588 fn syntax(&self) -> &SyntaxNode {
34589 &self.syntax
34590 }
34591}
34592impl AstNode for Tablespace {
34593 #[inline]
34594 fn can_cast(kind: SyntaxKind) -> bool {
34595 kind == SyntaxKind::TABLESPACE
34596 }
34597 #[inline]
34598 fn cast(syntax: SyntaxNode) -> Option<Self> {
34599 if Self::can_cast(syntax.kind()) {
34600 Some(Self { syntax })
34601 } else {
34602 None
34603 }
34604 }
34605 #[inline]
34606 fn syntax(&self) -> &SyntaxNode {
34607 &self.syntax
34608 }
34609}
34610impl AstNode for Target {
34611 #[inline]
34612 fn can_cast(kind: SyntaxKind) -> bool {
34613 kind == SyntaxKind::TARGET
34614 }
34615 #[inline]
34616 fn cast(syntax: SyntaxNode) -> Option<Self> {
34617 if Self::can_cast(syntax.kind()) {
34618 Some(Self { syntax })
34619 } else {
34620 None
34621 }
34622 }
34623 #[inline]
34624 fn syntax(&self) -> &SyntaxNode {
34625 &self.syntax
34626 }
34627}
34628impl AstNode for TargetList {
34629 #[inline]
34630 fn can_cast(kind: SyntaxKind) -> bool {
34631 kind == SyntaxKind::TARGET_LIST
34632 }
34633 #[inline]
34634 fn cast(syntax: SyntaxNode) -> Option<Self> {
34635 if Self::can_cast(syntax.kind()) {
34636 Some(Self { syntax })
34637 } else {
34638 None
34639 }
34640 }
34641 #[inline]
34642 fn syntax(&self) -> &SyntaxNode {
34643 &self.syntax
34644 }
34645}
34646impl AstNode for Temp {
34647 #[inline]
34648 fn can_cast(kind: SyntaxKind) -> bool {
34649 kind == SyntaxKind::TEMP
34650 }
34651 #[inline]
34652 fn cast(syntax: SyntaxNode) -> Option<Self> {
34653 if Self::can_cast(syntax.kind()) {
34654 Some(Self { syntax })
34655 } else {
34656 None
34657 }
34658 }
34659 #[inline]
34660 fn syntax(&self) -> &SyntaxNode {
34661 &self.syntax
34662 }
34663}
34664impl AstNode for Ties {
34665 #[inline]
34666 fn can_cast(kind: SyntaxKind) -> bool {
34667 kind == SyntaxKind::TIES
34668 }
34669 #[inline]
34670 fn cast(syntax: SyntaxNode) -> Option<Self> {
34671 if Self::can_cast(syntax.kind()) {
34672 Some(Self { syntax })
34673 } else {
34674 None
34675 }
34676 }
34677 #[inline]
34678 fn syntax(&self) -> &SyntaxNode {
34679 &self.syntax
34680 }
34681}
34682impl AstNode for TimeType {
34683 #[inline]
34684 fn can_cast(kind: SyntaxKind) -> bool {
34685 kind == SyntaxKind::TIME_TYPE
34686 }
34687 #[inline]
34688 fn cast(syntax: SyntaxNode) -> Option<Self> {
34689 if Self::can_cast(syntax.kind()) {
34690 Some(Self { syntax })
34691 } else {
34692 None
34693 }
34694 }
34695 #[inline]
34696 fn syntax(&self) -> &SyntaxNode {
34697 &self.syntax
34698 }
34699}
34700impl AstNode for TimeZone {
34701 #[inline]
34702 fn can_cast(kind: SyntaxKind) -> bool {
34703 kind == SyntaxKind::TIME_ZONE
34704 }
34705 #[inline]
34706 fn cast(syntax: SyntaxNode) -> Option<Self> {
34707 if Self::can_cast(syntax.kind()) {
34708 Some(Self { syntax })
34709 } else {
34710 None
34711 }
34712 }
34713 #[inline]
34714 fn syntax(&self) -> &SyntaxNode {
34715 &self.syntax
34716 }
34717}
34718impl AstNode for Timing {
34719 #[inline]
34720 fn can_cast(kind: SyntaxKind) -> bool {
34721 kind == SyntaxKind::TIMING
34722 }
34723 #[inline]
34724 fn cast(syntax: SyntaxNode) -> Option<Self> {
34725 if Self::can_cast(syntax.kind()) {
34726 Some(Self { syntax })
34727 } else {
34728 None
34729 }
34730 }
34731 #[inline]
34732 fn syntax(&self) -> &SyntaxNode {
34733 &self.syntax
34734 }
34735}
34736impl AstNode for TransactionIsolationLevel {
34737 #[inline]
34738 fn can_cast(kind: SyntaxKind) -> bool {
34739 kind == SyntaxKind::TRANSACTION_ISOLATION_LEVEL
34740 }
34741 #[inline]
34742 fn cast(syntax: SyntaxNode) -> Option<Self> {
34743 if Self::can_cast(syntax.kind()) {
34744 Some(Self { syntax })
34745 } else {
34746 None
34747 }
34748 }
34749 #[inline]
34750 fn syntax(&self) -> &SyntaxNode {
34751 &self.syntax
34752 }
34753}
34754impl AstNode for TransactionModeList {
34755 #[inline]
34756 fn can_cast(kind: SyntaxKind) -> bool {
34757 kind == SyntaxKind::TRANSACTION_MODE_LIST
34758 }
34759 #[inline]
34760 fn cast(syntax: SyntaxNode) -> Option<Self> {
34761 if Self::can_cast(syntax.kind()) {
34762 Some(Self { syntax })
34763 } else {
34764 None
34765 }
34766 }
34767 #[inline]
34768 fn syntax(&self) -> &SyntaxNode {
34769 &self.syntax
34770 }
34771}
34772impl AstNode for TransformFromFunc {
34773 #[inline]
34774 fn can_cast(kind: SyntaxKind) -> bool {
34775 kind == SyntaxKind::TRANSFORM_FROM_FUNC
34776 }
34777 #[inline]
34778 fn cast(syntax: SyntaxNode) -> Option<Self> {
34779 if Self::can_cast(syntax.kind()) {
34780 Some(Self { syntax })
34781 } else {
34782 None
34783 }
34784 }
34785 #[inline]
34786 fn syntax(&self) -> &SyntaxNode {
34787 &self.syntax
34788 }
34789}
34790impl AstNode for TransformFuncOption {
34791 #[inline]
34792 fn can_cast(kind: SyntaxKind) -> bool {
34793 kind == SyntaxKind::TRANSFORM_FUNC_OPTION
34794 }
34795 #[inline]
34796 fn cast(syntax: SyntaxNode) -> Option<Self> {
34797 if Self::can_cast(syntax.kind()) {
34798 Some(Self { syntax })
34799 } else {
34800 None
34801 }
34802 }
34803 #[inline]
34804 fn syntax(&self) -> &SyntaxNode {
34805 &self.syntax
34806 }
34807}
34808impl AstNode for TransformToFunc {
34809 #[inline]
34810 fn can_cast(kind: SyntaxKind) -> bool {
34811 kind == SyntaxKind::TRANSFORM_TO_FUNC
34812 }
34813 #[inline]
34814 fn cast(syntax: SyntaxNode) -> Option<Self> {
34815 if Self::can_cast(syntax.kind()) {
34816 Some(Self { syntax })
34817 } else {
34818 None
34819 }
34820 }
34821 #[inline]
34822 fn syntax(&self) -> &SyntaxNode {
34823 &self.syntax
34824 }
34825}
34826impl AstNode for TriggerEvent {
34827 #[inline]
34828 fn can_cast(kind: SyntaxKind) -> bool {
34829 kind == SyntaxKind::TRIGGER_EVENT
34830 }
34831 #[inline]
34832 fn cast(syntax: SyntaxNode) -> Option<Self> {
34833 if Self::can_cast(syntax.kind()) {
34834 Some(Self { syntax })
34835 } else {
34836 None
34837 }
34838 }
34839 #[inline]
34840 fn syntax(&self) -> &SyntaxNode {
34841 &self.syntax
34842 }
34843}
34844impl AstNode for TriggerEventList {
34845 #[inline]
34846 fn can_cast(kind: SyntaxKind) -> bool {
34847 kind == SyntaxKind::TRIGGER_EVENT_LIST
34848 }
34849 #[inline]
34850 fn cast(syntax: SyntaxNode) -> Option<Self> {
34851 if Self::can_cast(syntax.kind()) {
34852 Some(Self { syntax })
34853 } else {
34854 None
34855 }
34856 }
34857 #[inline]
34858 fn syntax(&self) -> &SyntaxNode {
34859 &self.syntax
34860 }
34861}
34862impl AstNode for TriggerEventUpdate {
34863 #[inline]
34864 fn can_cast(kind: SyntaxKind) -> bool {
34865 kind == SyntaxKind::TRIGGER_EVENT_UPDATE
34866 }
34867 #[inline]
34868 fn cast(syntax: SyntaxNode) -> Option<Self> {
34869 if Self::can_cast(syntax.kind()) {
34870 Some(Self { syntax })
34871 } else {
34872 None
34873 }
34874 }
34875 #[inline]
34876 fn syntax(&self) -> &SyntaxNode {
34877 &self.syntax
34878 }
34879}
34880impl AstNode for TrimFn {
34881 #[inline]
34882 fn can_cast(kind: SyntaxKind) -> bool {
34883 kind == SyntaxKind::TRIM_FN
34884 }
34885 #[inline]
34886 fn cast(syntax: SyntaxNode) -> Option<Self> {
34887 if Self::can_cast(syntax.kind()) {
34888 Some(Self { syntax })
34889 } else {
34890 None
34891 }
34892 }
34893 #[inline]
34894 fn syntax(&self) -> &SyntaxNode {
34895 &self.syntax
34896 }
34897}
34898impl AstNode for Truncate {
34899 #[inline]
34900 fn can_cast(kind: SyntaxKind) -> bool {
34901 kind == SyntaxKind::TRUNCATE
34902 }
34903 #[inline]
34904 fn cast(syntax: SyntaxNode) -> Option<Self> {
34905 if Self::can_cast(syntax.kind()) {
34906 Some(Self { syntax })
34907 } else {
34908 None
34909 }
34910 }
34911 #[inline]
34912 fn syntax(&self) -> &SyntaxNode {
34913 &self.syntax
34914 }
34915}
34916impl AstNode for TupleExpr {
34917 #[inline]
34918 fn can_cast(kind: SyntaxKind) -> bool {
34919 kind == SyntaxKind::TUPLE_EXPR
34920 }
34921 #[inline]
34922 fn cast(syntax: SyntaxNode) -> Option<Self> {
34923 if Self::can_cast(syntax.kind()) {
34924 Some(Self { syntax })
34925 } else {
34926 None
34927 }
34928 }
34929 #[inline]
34930 fn syntax(&self) -> &SyntaxNode {
34931 &self.syntax
34932 }
34933}
34934impl AstNode for UnboundedFollowing {
34935 #[inline]
34936 fn can_cast(kind: SyntaxKind) -> bool {
34937 kind == SyntaxKind::UNBOUNDED_FOLLOWING
34938 }
34939 #[inline]
34940 fn cast(syntax: SyntaxNode) -> Option<Self> {
34941 if Self::can_cast(syntax.kind()) {
34942 Some(Self { syntax })
34943 } else {
34944 None
34945 }
34946 }
34947 #[inline]
34948 fn syntax(&self) -> &SyntaxNode {
34949 &self.syntax
34950 }
34951}
34952impl AstNode for UnboundedPreceding {
34953 #[inline]
34954 fn can_cast(kind: SyntaxKind) -> bool {
34955 kind == SyntaxKind::UNBOUNDED_PRECEDING
34956 }
34957 #[inline]
34958 fn cast(syntax: SyntaxNode) -> Option<Self> {
34959 if Self::can_cast(syntax.kind()) {
34960 Some(Self { syntax })
34961 } else {
34962 None
34963 }
34964 }
34965 #[inline]
34966 fn syntax(&self) -> &SyntaxNode {
34967 &self.syntax
34968 }
34969}
34970impl AstNode for UnicodeNormalForm {
34971 #[inline]
34972 fn can_cast(kind: SyntaxKind) -> bool {
34973 kind == SyntaxKind::UNICODE_NORMAL_FORM
34974 }
34975 #[inline]
34976 fn cast(syntax: SyntaxNode) -> Option<Self> {
34977 if Self::can_cast(syntax.kind()) {
34978 Some(Self { syntax })
34979 } else {
34980 None
34981 }
34982 }
34983 #[inline]
34984 fn syntax(&self) -> &SyntaxNode {
34985 &self.syntax
34986 }
34987}
34988impl AstNode for UniqueConstraint {
34989 #[inline]
34990 fn can_cast(kind: SyntaxKind) -> bool {
34991 kind == SyntaxKind::UNIQUE_CONSTRAINT
34992 }
34993 #[inline]
34994 fn cast(syntax: SyntaxNode) -> Option<Self> {
34995 if Self::can_cast(syntax.kind()) {
34996 Some(Self { syntax })
34997 } else {
34998 None
34999 }
35000 }
35001 #[inline]
35002 fn syntax(&self) -> &SyntaxNode {
35003 &self.syntax
35004 }
35005}
35006impl AstNode for Unlisten {
35007 #[inline]
35008 fn can_cast(kind: SyntaxKind) -> bool {
35009 kind == SyntaxKind::UNLISTEN
35010 }
35011 #[inline]
35012 fn cast(syntax: SyntaxNode) -> Option<Self> {
35013 if Self::can_cast(syntax.kind()) {
35014 Some(Self { syntax })
35015 } else {
35016 None
35017 }
35018 }
35019 #[inline]
35020 fn syntax(&self) -> &SyntaxNode {
35021 &self.syntax
35022 }
35023}
35024impl AstNode for Unlogged {
35025 #[inline]
35026 fn can_cast(kind: SyntaxKind) -> bool {
35027 kind == SyntaxKind::UNLOGGED
35028 }
35029 #[inline]
35030 fn cast(syntax: SyntaxNode) -> Option<Self> {
35031 if Self::can_cast(syntax.kind()) {
35032 Some(Self { syntax })
35033 } else {
35034 None
35035 }
35036 }
35037 #[inline]
35038 fn syntax(&self) -> &SyntaxNode {
35039 &self.syntax
35040 }
35041}
35042impl AstNode for Update {
35043 #[inline]
35044 fn can_cast(kind: SyntaxKind) -> bool {
35045 kind == SyntaxKind::UPDATE
35046 }
35047 #[inline]
35048 fn cast(syntax: SyntaxNode) -> Option<Self> {
35049 if Self::can_cast(syntax.kind()) {
35050 Some(Self { syntax })
35051 } else {
35052 None
35053 }
35054 }
35055 #[inline]
35056 fn syntax(&self) -> &SyntaxNode {
35057 &self.syntax
35058 }
35059}
35060impl AstNode for UsingClause {
35061 #[inline]
35062 fn can_cast(kind: SyntaxKind) -> bool {
35063 kind == SyntaxKind::USING_CLAUSE
35064 }
35065 #[inline]
35066 fn cast(syntax: SyntaxNode) -> Option<Self> {
35067 if Self::can_cast(syntax.kind()) {
35068 Some(Self { syntax })
35069 } else {
35070 None
35071 }
35072 }
35073 #[inline]
35074 fn syntax(&self) -> &SyntaxNode {
35075 &self.syntax
35076 }
35077}
35078impl AstNode for UsingExprClause {
35079 #[inline]
35080 fn can_cast(kind: SyntaxKind) -> bool {
35081 kind == SyntaxKind::USING_EXPR_CLAUSE
35082 }
35083 #[inline]
35084 fn cast(syntax: SyntaxNode) -> Option<Self> {
35085 if Self::can_cast(syntax.kind()) {
35086 Some(Self { syntax })
35087 } else {
35088 None
35089 }
35090 }
35091 #[inline]
35092 fn syntax(&self) -> &SyntaxNode {
35093 &self.syntax
35094 }
35095}
35096impl AstNode for UsingIndex {
35097 #[inline]
35098 fn can_cast(kind: SyntaxKind) -> bool {
35099 kind == SyntaxKind::USING_INDEX
35100 }
35101 #[inline]
35102 fn cast(syntax: SyntaxNode) -> Option<Self> {
35103 if Self::can_cast(syntax.kind()) {
35104 Some(Self { syntax })
35105 } else {
35106 None
35107 }
35108 }
35109 #[inline]
35110 fn syntax(&self) -> &SyntaxNode {
35111 &self.syntax
35112 }
35113}
35114impl AstNode for UsingMethod {
35115 #[inline]
35116 fn can_cast(kind: SyntaxKind) -> bool {
35117 kind == SyntaxKind::USING_METHOD
35118 }
35119 #[inline]
35120 fn cast(syntax: SyntaxNode) -> Option<Self> {
35121 if Self::can_cast(syntax.kind()) {
35122 Some(Self { syntax })
35123 } else {
35124 None
35125 }
35126 }
35127 #[inline]
35128 fn syntax(&self) -> &SyntaxNode {
35129 &self.syntax
35130 }
35131}
35132impl AstNode for UsingOnClause {
35133 #[inline]
35134 fn can_cast(kind: SyntaxKind) -> bool {
35135 kind == SyntaxKind::USING_ON_CLAUSE
35136 }
35137 #[inline]
35138 fn cast(syntax: SyntaxNode) -> Option<Self> {
35139 if Self::can_cast(syntax.kind()) {
35140 Some(Self { syntax })
35141 } else {
35142 None
35143 }
35144 }
35145 #[inline]
35146 fn syntax(&self) -> &SyntaxNode {
35147 &self.syntax
35148 }
35149}
35150impl AstNode for Vacuum {
35151 #[inline]
35152 fn can_cast(kind: SyntaxKind) -> bool {
35153 kind == SyntaxKind::VACUUM
35154 }
35155 #[inline]
35156 fn cast(syntax: SyntaxNode) -> Option<Self> {
35157 if Self::can_cast(syntax.kind()) {
35158 Some(Self { syntax })
35159 } else {
35160 None
35161 }
35162 }
35163 #[inline]
35164 fn syntax(&self) -> &SyntaxNode {
35165 &self.syntax
35166 }
35167}
35168impl AstNode for VacuumOption {
35169 #[inline]
35170 fn can_cast(kind: SyntaxKind) -> bool {
35171 kind == SyntaxKind::VACUUM_OPTION
35172 }
35173 #[inline]
35174 fn cast(syntax: SyntaxNode) -> Option<Self> {
35175 if Self::can_cast(syntax.kind()) {
35176 Some(Self { syntax })
35177 } else {
35178 None
35179 }
35180 }
35181 #[inline]
35182 fn syntax(&self) -> &SyntaxNode {
35183 &self.syntax
35184 }
35185}
35186impl AstNode for VacuumOptionList {
35187 #[inline]
35188 fn can_cast(kind: SyntaxKind) -> bool {
35189 kind == SyntaxKind::VACUUM_OPTION_LIST
35190 }
35191 #[inline]
35192 fn cast(syntax: SyntaxNode) -> Option<Self> {
35193 if Self::can_cast(syntax.kind()) {
35194 Some(Self { syntax })
35195 } else {
35196 None
35197 }
35198 }
35199 #[inline]
35200 fn syntax(&self) -> &SyntaxNode {
35201 &self.syntax
35202 }
35203}
35204impl AstNode for VacuumOptionValue {
35205 #[inline]
35206 fn can_cast(kind: SyntaxKind) -> bool {
35207 kind == SyntaxKind::VACUUM_OPTION_VALUE
35208 }
35209 #[inline]
35210 fn cast(syntax: SyntaxNode) -> Option<Self> {
35211 if Self::can_cast(syntax.kind()) {
35212 Some(Self { syntax })
35213 } else {
35214 None
35215 }
35216 }
35217 #[inline]
35218 fn syntax(&self) -> &SyntaxNode {
35219 &self.syntax
35220 }
35221}
35222impl AstNode for ValidateConstraint {
35223 #[inline]
35224 fn can_cast(kind: SyntaxKind) -> bool {
35225 kind == SyntaxKind::VALIDATE_CONSTRAINT
35226 }
35227 #[inline]
35228 fn cast(syntax: SyntaxNode) -> Option<Self> {
35229 if Self::can_cast(syntax.kind()) {
35230 Some(Self { syntax })
35231 } else {
35232 None
35233 }
35234 }
35235 #[inline]
35236 fn syntax(&self) -> &SyntaxNode {
35237 &self.syntax
35238 }
35239}
35240impl AstNode for Values {
35241 #[inline]
35242 fn can_cast(kind: SyntaxKind) -> bool {
35243 kind == SyntaxKind::VALUES
35244 }
35245 #[inline]
35246 fn cast(syntax: SyntaxNode) -> Option<Self> {
35247 if Self::can_cast(syntax.kind()) {
35248 Some(Self { syntax })
35249 } else {
35250 None
35251 }
35252 }
35253 #[inline]
35254 fn syntax(&self) -> &SyntaxNode {
35255 &self.syntax
35256 }
35257}
35258impl AstNode for Variant {
35259 #[inline]
35260 fn can_cast(kind: SyntaxKind) -> bool {
35261 kind == SyntaxKind::VARIANT
35262 }
35263 #[inline]
35264 fn cast(syntax: SyntaxNode) -> Option<Self> {
35265 if Self::can_cast(syntax.kind()) {
35266 Some(Self { syntax })
35267 } else {
35268 None
35269 }
35270 }
35271 #[inline]
35272 fn syntax(&self) -> &SyntaxNode {
35273 &self.syntax
35274 }
35275}
35276impl AstNode for VariantList {
35277 #[inline]
35278 fn can_cast(kind: SyntaxKind) -> bool {
35279 kind == SyntaxKind::VARIANT_LIST
35280 }
35281 #[inline]
35282 fn cast(syntax: SyntaxNode) -> Option<Self> {
35283 if Self::can_cast(syntax.kind()) {
35284 Some(Self { syntax })
35285 } else {
35286 None
35287 }
35288 }
35289 #[inline]
35290 fn syntax(&self) -> &SyntaxNode {
35291 &self.syntax
35292 }
35293}
35294impl AstNode for VertexPattern {
35295 #[inline]
35296 fn can_cast(kind: SyntaxKind) -> bool {
35297 kind == SyntaxKind::VERTEX_PATTERN
35298 }
35299 #[inline]
35300 fn cast(syntax: SyntaxNode) -> Option<Self> {
35301 if Self::can_cast(syntax.kind()) {
35302 Some(Self { syntax })
35303 } else {
35304 None
35305 }
35306 }
35307 #[inline]
35308 fn syntax(&self) -> &SyntaxNode {
35309 &self.syntax
35310 }
35311}
35312impl AstNode for VertexTableDef {
35313 #[inline]
35314 fn can_cast(kind: SyntaxKind) -> bool {
35315 kind == SyntaxKind::VERTEX_TABLE_DEF
35316 }
35317 #[inline]
35318 fn cast(syntax: SyntaxNode) -> Option<Self> {
35319 if Self::can_cast(syntax.kind()) {
35320 Some(Self { syntax })
35321 } else {
35322 None
35323 }
35324 }
35325 #[inline]
35326 fn syntax(&self) -> &SyntaxNode {
35327 &self.syntax
35328 }
35329}
35330impl AstNode for VertexTables {
35331 #[inline]
35332 fn can_cast(kind: SyntaxKind) -> bool {
35333 kind == SyntaxKind::VERTEX_TABLES
35334 }
35335 #[inline]
35336 fn cast(syntax: SyntaxNode) -> Option<Self> {
35337 if Self::can_cast(syntax.kind()) {
35338 Some(Self { syntax })
35339 } else {
35340 None
35341 }
35342 }
35343 #[inline]
35344 fn syntax(&self) -> &SyntaxNode {
35345 &self.syntax
35346 }
35347}
35348impl AstNode for VolatilityFuncOption {
35349 #[inline]
35350 fn can_cast(kind: SyntaxKind) -> bool {
35351 kind == SyntaxKind::VOLATILITY_FUNC_OPTION
35352 }
35353 #[inline]
35354 fn cast(syntax: SyntaxNode) -> Option<Self> {
35355 if Self::can_cast(syntax.kind()) {
35356 Some(Self { syntax })
35357 } else {
35358 None
35359 }
35360 }
35361 #[inline]
35362 fn syntax(&self) -> &SyntaxNode {
35363 &self.syntax
35364 }
35365}
35366impl AstNode for WhenClause {
35367 #[inline]
35368 fn can_cast(kind: SyntaxKind) -> bool {
35369 kind == SyntaxKind::WHEN_CLAUSE
35370 }
35371 #[inline]
35372 fn cast(syntax: SyntaxNode) -> Option<Self> {
35373 if Self::can_cast(syntax.kind()) {
35374 Some(Self { syntax })
35375 } else {
35376 None
35377 }
35378 }
35379 #[inline]
35380 fn syntax(&self) -> &SyntaxNode {
35381 &self.syntax
35382 }
35383}
35384impl AstNode for WhenClauseList {
35385 #[inline]
35386 fn can_cast(kind: SyntaxKind) -> bool {
35387 kind == SyntaxKind::WHEN_CLAUSE_LIST
35388 }
35389 #[inline]
35390 fn cast(syntax: SyntaxNode) -> Option<Self> {
35391 if Self::can_cast(syntax.kind()) {
35392 Some(Self { syntax })
35393 } else {
35394 None
35395 }
35396 }
35397 #[inline]
35398 fn syntax(&self) -> &SyntaxNode {
35399 &self.syntax
35400 }
35401}
35402impl AstNode for WhenCondition {
35403 #[inline]
35404 fn can_cast(kind: SyntaxKind) -> bool {
35405 kind == SyntaxKind::WHEN_CONDITION
35406 }
35407 #[inline]
35408 fn cast(syntax: SyntaxNode) -> Option<Self> {
35409 if Self::can_cast(syntax.kind()) {
35410 Some(Self { syntax })
35411 } else {
35412 None
35413 }
35414 }
35415 #[inline]
35416 fn syntax(&self) -> &SyntaxNode {
35417 &self.syntax
35418 }
35419}
35420impl AstNode for WhereClause {
35421 #[inline]
35422 fn can_cast(kind: SyntaxKind) -> bool {
35423 kind == SyntaxKind::WHERE_CLAUSE
35424 }
35425 #[inline]
35426 fn cast(syntax: SyntaxNode) -> Option<Self> {
35427 if Self::can_cast(syntax.kind()) {
35428 Some(Self { syntax })
35429 } else {
35430 None
35431 }
35432 }
35433 #[inline]
35434 fn syntax(&self) -> &SyntaxNode {
35435 &self.syntax
35436 }
35437}
35438impl AstNode for WhereConditionClause {
35439 #[inline]
35440 fn can_cast(kind: SyntaxKind) -> bool {
35441 kind == SyntaxKind::WHERE_CONDITION_CLAUSE
35442 }
35443 #[inline]
35444 fn cast(syntax: SyntaxNode) -> Option<Self> {
35445 if Self::can_cast(syntax.kind()) {
35446 Some(Self { syntax })
35447 } else {
35448 None
35449 }
35450 }
35451 #[inline]
35452 fn syntax(&self) -> &SyntaxNode {
35453 &self.syntax
35454 }
35455}
35456impl AstNode for WhereCurrentOf {
35457 #[inline]
35458 fn can_cast(kind: SyntaxKind) -> bool {
35459 kind == SyntaxKind::WHERE_CURRENT_OF
35460 }
35461 #[inline]
35462 fn cast(syntax: SyntaxNode) -> Option<Self> {
35463 if Self::can_cast(syntax.kind()) {
35464 Some(Self { syntax })
35465 } else {
35466 None
35467 }
35468 }
35469 #[inline]
35470 fn syntax(&self) -> &SyntaxNode {
35471 &self.syntax
35472 }
35473}
35474impl AstNode for WindowClause {
35475 #[inline]
35476 fn can_cast(kind: SyntaxKind) -> bool {
35477 kind == SyntaxKind::WINDOW_CLAUSE
35478 }
35479 #[inline]
35480 fn cast(syntax: SyntaxNode) -> Option<Self> {
35481 if Self::can_cast(syntax.kind()) {
35482 Some(Self { syntax })
35483 } else {
35484 None
35485 }
35486 }
35487 #[inline]
35488 fn syntax(&self) -> &SyntaxNode {
35489 &self.syntax
35490 }
35491}
35492impl AstNode for WindowDef {
35493 #[inline]
35494 fn can_cast(kind: SyntaxKind) -> bool {
35495 kind == SyntaxKind::WINDOW_DEF
35496 }
35497 #[inline]
35498 fn cast(syntax: SyntaxNode) -> Option<Self> {
35499 if Self::can_cast(syntax.kind()) {
35500 Some(Self { syntax })
35501 } else {
35502 None
35503 }
35504 }
35505 #[inline]
35506 fn syntax(&self) -> &SyntaxNode {
35507 &self.syntax
35508 }
35509}
35510impl AstNode for WindowFuncOption {
35511 #[inline]
35512 fn can_cast(kind: SyntaxKind) -> bool {
35513 kind == SyntaxKind::WINDOW_FUNC_OPTION
35514 }
35515 #[inline]
35516 fn cast(syntax: SyntaxNode) -> Option<Self> {
35517 if Self::can_cast(syntax.kind()) {
35518 Some(Self { syntax })
35519 } else {
35520 None
35521 }
35522 }
35523 #[inline]
35524 fn syntax(&self) -> &SyntaxNode {
35525 &self.syntax
35526 }
35527}
35528impl AstNode for WindowSpec {
35529 #[inline]
35530 fn can_cast(kind: SyntaxKind) -> bool {
35531 kind == SyntaxKind::WINDOW_SPEC
35532 }
35533 #[inline]
35534 fn cast(syntax: SyntaxNode) -> Option<Self> {
35535 if Self::can_cast(syntax.kind()) {
35536 Some(Self { syntax })
35537 } else {
35538 None
35539 }
35540 }
35541 #[inline]
35542 fn syntax(&self) -> &SyntaxNode {
35543 &self.syntax
35544 }
35545}
35546impl AstNode for WithCheckExprClause {
35547 #[inline]
35548 fn can_cast(kind: SyntaxKind) -> bool {
35549 kind == SyntaxKind::WITH_CHECK_EXPR_CLAUSE
35550 }
35551 #[inline]
35552 fn cast(syntax: SyntaxNode) -> Option<Self> {
35553 if Self::can_cast(syntax.kind()) {
35554 Some(Self { syntax })
35555 } else {
35556 None
35557 }
35558 }
35559 #[inline]
35560 fn syntax(&self) -> &SyntaxNode {
35561 &self.syntax
35562 }
35563}
35564impl AstNode for WithClause {
35565 #[inline]
35566 fn can_cast(kind: SyntaxKind) -> bool {
35567 kind == SyntaxKind::WITH_CLAUSE
35568 }
35569 #[inline]
35570 fn cast(syntax: SyntaxNode) -> Option<Self> {
35571 if Self::can_cast(syntax.kind()) {
35572 Some(Self { syntax })
35573 } else {
35574 None
35575 }
35576 }
35577 #[inline]
35578 fn syntax(&self) -> &SyntaxNode {
35579 &self.syntax
35580 }
35581}
35582impl AstNode for WithData {
35583 #[inline]
35584 fn can_cast(kind: SyntaxKind) -> bool {
35585 kind == SyntaxKind::WITH_DATA
35586 }
35587 #[inline]
35588 fn cast(syntax: SyntaxNode) -> Option<Self> {
35589 if Self::can_cast(syntax.kind()) {
35590 Some(Self { syntax })
35591 } else {
35592 None
35593 }
35594 }
35595 #[inline]
35596 fn syntax(&self) -> &SyntaxNode {
35597 &self.syntax
35598 }
35599}
35600impl AstNode for WithNoData {
35601 #[inline]
35602 fn can_cast(kind: SyntaxKind) -> bool {
35603 kind == SyntaxKind::WITH_NO_DATA
35604 }
35605 #[inline]
35606 fn cast(syntax: SyntaxNode) -> Option<Self> {
35607 if Self::can_cast(syntax.kind()) {
35608 Some(Self { syntax })
35609 } else {
35610 None
35611 }
35612 }
35613 #[inline]
35614 fn syntax(&self) -> &SyntaxNode {
35615 &self.syntax
35616 }
35617}
35618impl AstNode for WithOptions {
35619 #[inline]
35620 fn can_cast(kind: SyntaxKind) -> bool {
35621 kind == SyntaxKind::WITH_OPTIONS
35622 }
35623 #[inline]
35624 fn cast(syntax: SyntaxNode) -> Option<Self> {
35625 if Self::can_cast(syntax.kind()) {
35626 Some(Self { syntax })
35627 } else {
35628 None
35629 }
35630 }
35631 #[inline]
35632 fn syntax(&self) -> &SyntaxNode {
35633 &self.syntax
35634 }
35635}
35636impl AstNode for WithParams {
35637 #[inline]
35638 fn can_cast(kind: SyntaxKind) -> bool {
35639 kind == SyntaxKind::WITH_PARAMS
35640 }
35641 #[inline]
35642 fn cast(syntax: SyntaxNode) -> Option<Self> {
35643 if Self::can_cast(syntax.kind()) {
35644 Some(Self { syntax })
35645 } else {
35646 None
35647 }
35648 }
35649 #[inline]
35650 fn syntax(&self) -> &SyntaxNode {
35651 &self.syntax
35652 }
35653}
35654impl AstNode for WithTable {
35655 #[inline]
35656 fn can_cast(kind: SyntaxKind) -> bool {
35657 kind == SyntaxKind::WITH_TABLE
35658 }
35659 #[inline]
35660 fn cast(syntax: SyntaxNode) -> Option<Self> {
35661 if Self::can_cast(syntax.kind()) {
35662 Some(Self { syntax })
35663 } else {
35664 None
35665 }
35666 }
35667 #[inline]
35668 fn syntax(&self) -> &SyntaxNode {
35669 &self.syntax
35670 }
35671}
35672impl AstNode for WithTimezone {
35673 #[inline]
35674 fn can_cast(kind: SyntaxKind) -> bool {
35675 kind == SyntaxKind::WITH_TIMEZONE
35676 }
35677 #[inline]
35678 fn cast(syntax: SyntaxNode) -> Option<Self> {
35679 if Self::can_cast(syntax.kind()) {
35680 Some(Self { syntax })
35681 } else {
35682 None
35683 }
35684 }
35685 #[inline]
35686 fn syntax(&self) -> &SyntaxNode {
35687 &self.syntax
35688 }
35689}
35690impl AstNode for WithinClause {
35691 #[inline]
35692 fn can_cast(kind: SyntaxKind) -> bool {
35693 kind == SyntaxKind::WITHIN_CLAUSE
35694 }
35695 #[inline]
35696 fn cast(syntax: SyntaxNode) -> Option<Self> {
35697 if Self::can_cast(syntax.kind()) {
35698 Some(Self { syntax })
35699 } else {
35700 None
35701 }
35702 }
35703 #[inline]
35704 fn syntax(&self) -> &SyntaxNode {
35705 &self.syntax
35706 }
35707}
35708impl AstNode for WithoutOids {
35709 #[inline]
35710 fn can_cast(kind: SyntaxKind) -> bool {
35711 kind == SyntaxKind::WITHOUT_OIDS
35712 }
35713 #[inline]
35714 fn cast(syntax: SyntaxNode) -> Option<Self> {
35715 if Self::can_cast(syntax.kind()) {
35716 Some(Self { syntax })
35717 } else {
35718 None
35719 }
35720 }
35721 #[inline]
35722 fn syntax(&self) -> &SyntaxNode {
35723 &self.syntax
35724 }
35725}
35726impl AstNode for WithoutTimezone {
35727 #[inline]
35728 fn can_cast(kind: SyntaxKind) -> bool {
35729 kind == SyntaxKind::WITHOUT_TIMEZONE
35730 }
35731 #[inline]
35732 fn cast(syntax: SyntaxNode) -> Option<Self> {
35733 if Self::can_cast(syntax.kind()) {
35734 Some(Self { syntax })
35735 } else {
35736 None
35737 }
35738 }
35739 #[inline]
35740 fn syntax(&self) -> &SyntaxNode {
35741 &self.syntax
35742 }
35743}
35744impl AstNode for XmlColumnOption {
35745 #[inline]
35746 fn can_cast(kind: SyntaxKind) -> bool {
35747 kind == SyntaxKind::XML_COLUMN_OPTION
35748 }
35749 #[inline]
35750 fn cast(syntax: SyntaxNode) -> Option<Self> {
35751 if Self::can_cast(syntax.kind()) {
35752 Some(Self { syntax })
35753 } else {
35754 None
35755 }
35756 }
35757 #[inline]
35758 fn syntax(&self) -> &SyntaxNode {
35759 &self.syntax
35760 }
35761}
35762impl AstNode for XmlColumnOptionList {
35763 #[inline]
35764 fn can_cast(kind: SyntaxKind) -> bool {
35765 kind == SyntaxKind::XML_COLUMN_OPTION_LIST
35766 }
35767 #[inline]
35768 fn cast(syntax: SyntaxNode) -> Option<Self> {
35769 if Self::can_cast(syntax.kind()) {
35770 Some(Self { syntax })
35771 } else {
35772 None
35773 }
35774 }
35775 #[inline]
35776 fn syntax(&self) -> &SyntaxNode {
35777 &self.syntax
35778 }
35779}
35780impl AstNode for XmlElementFn {
35781 #[inline]
35782 fn can_cast(kind: SyntaxKind) -> bool {
35783 kind == SyntaxKind::XML_ELEMENT_FN
35784 }
35785 #[inline]
35786 fn cast(syntax: SyntaxNode) -> Option<Self> {
35787 if Self::can_cast(syntax.kind()) {
35788 Some(Self { syntax })
35789 } else {
35790 None
35791 }
35792 }
35793 #[inline]
35794 fn syntax(&self) -> &SyntaxNode {
35795 &self.syntax
35796 }
35797}
35798impl AstNode for XmlExistsFn {
35799 #[inline]
35800 fn can_cast(kind: SyntaxKind) -> bool {
35801 kind == SyntaxKind::XML_EXISTS_FN
35802 }
35803 #[inline]
35804 fn cast(syntax: SyntaxNode) -> Option<Self> {
35805 if Self::can_cast(syntax.kind()) {
35806 Some(Self { syntax })
35807 } else {
35808 None
35809 }
35810 }
35811 #[inline]
35812 fn syntax(&self) -> &SyntaxNode {
35813 &self.syntax
35814 }
35815}
35816impl AstNode for XmlForestFn {
35817 #[inline]
35818 fn can_cast(kind: SyntaxKind) -> bool {
35819 kind == SyntaxKind::XML_FOREST_FN
35820 }
35821 #[inline]
35822 fn cast(syntax: SyntaxNode) -> Option<Self> {
35823 if Self::can_cast(syntax.kind()) {
35824 Some(Self { syntax })
35825 } else {
35826 None
35827 }
35828 }
35829 #[inline]
35830 fn syntax(&self) -> &SyntaxNode {
35831 &self.syntax
35832 }
35833}
35834impl AstNode for XmlNamespace {
35835 #[inline]
35836 fn can_cast(kind: SyntaxKind) -> bool {
35837 kind == SyntaxKind::XML_NAMESPACE
35838 }
35839 #[inline]
35840 fn cast(syntax: SyntaxNode) -> Option<Self> {
35841 if Self::can_cast(syntax.kind()) {
35842 Some(Self { syntax })
35843 } else {
35844 None
35845 }
35846 }
35847 #[inline]
35848 fn syntax(&self) -> &SyntaxNode {
35849 &self.syntax
35850 }
35851}
35852impl AstNode for XmlNamespaceList {
35853 #[inline]
35854 fn can_cast(kind: SyntaxKind) -> bool {
35855 kind == SyntaxKind::XML_NAMESPACE_LIST
35856 }
35857 #[inline]
35858 fn cast(syntax: SyntaxNode) -> Option<Self> {
35859 if Self::can_cast(syntax.kind()) {
35860 Some(Self { syntax })
35861 } else {
35862 None
35863 }
35864 }
35865 #[inline]
35866 fn syntax(&self) -> &SyntaxNode {
35867 &self.syntax
35868 }
35869}
35870impl AstNode for XmlParseFn {
35871 #[inline]
35872 fn can_cast(kind: SyntaxKind) -> bool {
35873 kind == SyntaxKind::XML_PARSE_FN
35874 }
35875 #[inline]
35876 fn cast(syntax: SyntaxNode) -> Option<Self> {
35877 if Self::can_cast(syntax.kind()) {
35878 Some(Self { syntax })
35879 } else {
35880 None
35881 }
35882 }
35883 #[inline]
35884 fn syntax(&self) -> &SyntaxNode {
35885 &self.syntax
35886 }
35887}
35888impl AstNode for XmlPassingMech {
35889 #[inline]
35890 fn can_cast(kind: SyntaxKind) -> bool {
35891 kind == SyntaxKind::XML_PASSING_MECH
35892 }
35893 #[inline]
35894 fn cast(syntax: SyntaxNode) -> Option<Self> {
35895 if Self::can_cast(syntax.kind()) {
35896 Some(Self { syntax })
35897 } else {
35898 None
35899 }
35900 }
35901 #[inline]
35902 fn syntax(&self) -> &SyntaxNode {
35903 &self.syntax
35904 }
35905}
35906impl AstNode for XmlPiFn {
35907 #[inline]
35908 fn can_cast(kind: SyntaxKind) -> bool {
35909 kind == SyntaxKind::XML_PI_FN
35910 }
35911 #[inline]
35912 fn cast(syntax: SyntaxNode) -> Option<Self> {
35913 if Self::can_cast(syntax.kind()) {
35914 Some(Self { syntax })
35915 } else {
35916 None
35917 }
35918 }
35919 #[inline]
35920 fn syntax(&self) -> &SyntaxNode {
35921 &self.syntax
35922 }
35923}
35924impl AstNode for XmlRootFn {
35925 #[inline]
35926 fn can_cast(kind: SyntaxKind) -> bool {
35927 kind == SyntaxKind::XML_ROOT_FN
35928 }
35929 #[inline]
35930 fn cast(syntax: SyntaxNode) -> Option<Self> {
35931 if Self::can_cast(syntax.kind()) {
35932 Some(Self { syntax })
35933 } else {
35934 None
35935 }
35936 }
35937 #[inline]
35938 fn syntax(&self) -> &SyntaxNode {
35939 &self.syntax
35940 }
35941}
35942impl AstNode for XmlRowPassingClause {
35943 #[inline]
35944 fn can_cast(kind: SyntaxKind) -> bool {
35945 kind == SyntaxKind::XML_ROW_PASSING_CLAUSE
35946 }
35947 #[inline]
35948 fn cast(syntax: SyntaxNode) -> Option<Self> {
35949 if Self::can_cast(syntax.kind()) {
35950 Some(Self { syntax })
35951 } else {
35952 None
35953 }
35954 }
35955 #[inline]
35956 fn syntax(&self) -> &SyntaxNode {
35957 &self.syntax
35958 }
35959}
35960impl AstNode for XmlSerializeFn {
35961 #[inline]
35962 fn can_cast(kind: SyntaxKind) -> bool {
35963 kind == SyntaxKind::XML_SERIALIZE_FN
35964 }
35965 #[inline]
35966 fn cast(syntax: SyntaxNode) -> Option<Self> {
35967 if Self::can_cast(syntax.kind()) {
35968 Some(Self { syntax })
35969 } else {
35970 None
35971 }
35972 }
35973 #[inline]
35974 fn syntax(&self) -> &SyntaxNode {
35975 &self.syntax
35976 }
35977}
35978impl AstNode for XmlTable {
35979 #[inline]
35980 fn can_cast(kind: SyntaxKind) -> bool {
35981 kind == SyntaxKind::XML_TABLE
35982 }
35983 #[inline]
35984 fn cast(syntax: SyntaxNode) -> Option<Self> {
35985 if Self::can_cast(syntax.kind()) {
35986 Some(Self { syntax })
35987 } else {
35988 None
35989 }
35990 }
35991 #[inline]
35992 fn syntax(&self) -> &SyntaxNode {
35993 &self.syntax
35994 }
35995}
35996impl AstNode for XmlTableColumn {
35997 #[inline]
35998 fn can_cast(kind: SyntaxKind) -> bool {
35999 kind == SyntaxKind::XML_TABLE_COLUMN
36000 }
36001 #[inline]
36002 fn cast(syntax: SyntaxNode) -> Option<Self> {
36003 if Self::can_cast(syntax.kind()) {
36004 Some(Self { syntax })
36005 } else {
36006 None
36007 }
36008 }
36009 #[inline]
36010 fn syntax(&self) -> &SyntaxNode {
36011 &self.syntax
36012 }
36013}
36014impl AstNode for XmlTableColumnList {
36015 #[inline]
36016 fn can_cast(kind: SyntaxKind) -> bool {
36017 kind == SyntaxKind::XML_TABLE_COLUMN_LIST
36018 }
36019 #[inline]
36020 fn cast(syntax: SyntaxNode) -> Option<Self> {
36021 if Self::can_cast(syntax.kind()) {
36022 Some(Self { syntax })
36023 } else {
36024 None
36025 }
36026 }
36027 #[inline]
36028 fn syntax(&self) -> &SyntaxNode {
36029 &self.syntax
36030 }
36031}
36032impl AstNode for AlterColumnOption {
36033 #[inline]
36034 fn can_cast(kind: SyntaxKind) -> bool {
36035 matches!(
36036 kind,
36037 SyntaxKind::ADD_GENERATED
36038 | SyntaxKind::DROP_DEFAULT
36039 | SyntaxKind::DROP_EXPRESSION
36040 | SyntaxKind::DROP_IDENTITY
36041 | SyntaxKind::DROP_NOT_NULL
36042 | SyntaxKind::INHERIT
36043 | SyntaxKind::NO_INHERIT
36044 | SyntaxKind::RESET_OPTIONS
36045 | SyntaxKind::RESTART
36046 | SyntaxKind::SET_COMPRESSION
36047 | SyntaxKind::SET_DEFAULT
36048 | SyntaxKind::SET_EXPRESSION
36049 | SyntaxKind::SET_GENERATED
36050 | SyntaxKind::SET_GENERATED_OPTIONS
36051 | SyntaxKind::SET_NOT_NULL
36052 | SyntaxKind::SET_OPTIONS
36053 | SyntaxKind::SET_OPTIONS_LIST
36054 | SyntaxKind::SET_SEQUENCE_OPTION
36055 | SyntaxKind::SET_STATISTICS
36056 | SyntaxKind::SET_STORAGE
36057 | SyntaxKind::SET_TYPE
36058 )
36059 }
36060 #[inline]
36061 fn cast(syntax: SyntaxNode) -> Option<Self> {
36062 let res = match syntax.kind() {
36063 SyntaxKind::ADD_GENERATED => AlterColumnOption::AddGenerated(AddGenerated { syntax }),
36064 SyntaxKind::DROP_DEFAULT => AlterColumnOption::DropDefault(DropDefault { syntax }),
36065 SyntaxKind::DROP_EXPRESSION => {
36066 AlterColumnOption::DropExpression(DropExpression { syntax })
36067 }
36068 SyntaxKind::DROP_IDENTITY => AlterColumnOption::DropIdentity(DropIdentity { syntax }),
36069 SyntaxKind::DROP_NOT_NULL => AlterColumnOption::DropNotNull(DropNotNull { syntax }),
36070 SyntaxKind::INHERIT => AlterColumnOption::Inherit(Inherit { syntax }),
36071 SyntaxKind::NO_INHERIT => AlterColumnOption::NoInherit(NoInherit { syntax }),
36072 SyntaxKind::RESET_OPTIONS => AlterColumnOption::ResetOptions(ResetOptions { syntax }),
36073 SyntaxKind::RESTART => AlterColumnOption::Restart(Restart { syntax }),
36074 SyntaxKind::SET_COMPRESSION => {
36075 AlterColumnOption::SetCompression(SetCompression { syntax })
36076 }
36077 SyntaxKind::SET_DEFAULT => AlterColumnOption::SetDefault(SetDefault { syntax }),
36078 SyntaxKind::SET_EXPRESSION => {
36079 AlterColumnOption::SetExpression(SetExpression { syntax })
36080 }
36081 SyntaxKind::SET_GENERATED => AlterColumnOption::SetGenerated(SetGenerated { syntax }),
36082 SyntaxKind::SET_GENERATED_OPTIONS => {
36083 AlterColumnOption::SetGeneratedOptions(SetGeneratedOptions { syntax })
36084 }
36085 SyntaxKind::SET_NOT_NULL => AlterColumnOption::SetNotNull(SetNotNull { syntax }),
36086 SyntaxKind::SET_OPTIONS => AlterColumnOption::SetOptions(SetOptions { syntax }),
36087 SyntaxKind::SET_OPTIONS_LIST => {
36088 AlterColumnOption::SetOptionsList(SetOptionsList { syntax })
36089 }
36090 SyntaxKind::SET_SEQUENCE_OPTION => {
36091 AlterColumnOption::SetSequenceOption(SetSequenceOption { syntax })
36092 }
36093 SyntaxKind::SET_STATISTICS => {
36094 AlterColumnOption::SetStatistics(SetStatistics { syntax })
36095 }
36096 SyntaxKind::SET_STORAGE => AlterColumnOption::SetStorage(SetStorage { syntax }),
36097 SyntaxKind::SET_TYPE => AlterColumnOption::SetType(SetType { syntax }),
36098 _ => {
36099 return None;
36100 }
36101 };
36102 Some(res)
36103 }
36104 #[inline]
36105 fn syntax(&self) -> &SyntaxNode {
36106 match self {
36107 AlterColumnOption::AddGenerated(it) => &it.syntax,
36108 AlterColumnOption::DropDefault(it) => &it.syntax,
36109 AlterColumnOption::DropExpression(it) => &it.syntax,
36110 AlterColumnOption::DropIdentity(it) => &it.syntax,
36111 AlterColumnOption::DropNotNull(it) => &it.syntax,
36112 AlterColumnOption::Inherit(it) => &it.syntax,
36113 AlterColumnOption::NoInherit(it) => &it.syntax,
36114 AlterColumnOption::ResetOptions(it) => &it.syntax,
36115 AlterColumnOption::Restart(it) => &it.syntax,
36116 AlterColumnOption::SetCompression(it) => &it.syntax,
36117 AlterColumnOption::SetDefault(it) => &it.syntax,
36118 AlterColumnOption::SetExpression(it) => &it.syntax,
36119 AlterColumnOption::SetGenerated(it) => &it.syntax,
36120 AlterColumnOption::SetGeneratedOptions(it) => &it.syntax,
36121 AlterColumnOption::SetNotNull(it) => &it.syntax,
36122 AlterColumnOption::SetOptions(it) => &it.syntax,
36123 AlterColumnOption::SetOptionsList(it) => &it.syntax,
36124 AlterColumnOption::SetSequenceOption(it) => &it.syntax,
36125 AlterColumnOption::SetStatistics(it) => &it.syntax,
36126 AlterColumnOption::SetStorage(it) => &it.syntax,
36127 AlterColumnOption::SetType(it) => &it.syntax,
36128 }
36129 }
36130}
36131impl From<AddGenerated> for AlterColumnOption {
36132 #[inline]
36133 fn from(node: AddGenerated) -> AlterColumnOption {
36134 AlterColumnOption::AddGenerated(node)
36135 }
36136}
36137impl From<DropDefault> for AlterColumnOption {
36138 #[inline]
36139 fn from(node: DropDefault) -> AlterColumnOption {
36140 AlterColumnOption::DropDefault(node)
36141 }
36142}
36143impl From<DropExpression> for AlterColumnOption {
36144 #[inline]
36145 fn from(node: DropExpression) -> AlterColumnOption {
36146 AlterColumnOption::DropExpression(node)
36147 }
36148}
36149impl From<DropIdentity> for AlterColumnOption {
36150 #[inline]
36151 fn from(node: DropIdentity) -> AlterColumnOption {
36152 AlterColumnOption::DropIdentity(node)
36153 }
36154}
36155impl From<DropNotNull> for AlterColumnOption {
36156 #[inline]
36157 fn from(node: DropNotNull) -> AlterColumnOption {
36158 AlterColumnOption::DropNotNull(node)
36159 }
36160}
36161impl From<Inherit> for AlterColumnOption {
36162 #[inline]
36163 fn from(node: Inherit) -> AlterColumnOption {
36164 AlterColumnOption::Inherit(node)
36165 }
36166}
36167impl From<NoInherit> for AlterColumnOption {
36168 #[inline]
36169 fn from(node: NoInherit) -> AlterColumnOption {
36170 AlterColumnOption::NoInherit(node)
36171 }
36172}
36173impl From<ResetOptions> for AlterColumnOption {
36174 #[inline]
36175 fn from(node: ResetOptions) -> AlterColumnOption {
36176 AlterColumnOption::ResetOptions(node)
36177 }
36178}
36179impl From<Restart> for AlterColumnOption {
36180 #[inline]
36181 fn from(node: Restart) -> AlterColumnOption {
36182 AlterColumnOption::Restart(node)
36183 }
36184}
36185impl From<SetCompression> for AlterColumnOption {
36186 #[inline]
36187 fn from(node: SetCompression) -> AlterColumnOption {
36188 AlterColumnOption::SetCompression(node)
36189 }
36190}
36191impl From<SetDefault> for AlterColumnOption {
36192 #[inline]
36193 fn from(node: SetDefault) -> AlterColumnOption {
36194 AlterColumnOption::SetDefault(node)
36195 }
36196}
36197impl From<SetExpression> for AlterColumnOption {
36198 #[inline]
36199 fn from(node: SetExpression) -> AlterColumnOption {
36200 AlterColumnOption::SetExpression(node)
36201 }
36202}
36203impl From<SetGenerated> for AlterColumnOption {
36204 #[inline]
36205 fn from(node: SetGenerated) -> AlterColumnOption {
36206 AlterColumnOption::SetGenerated(node)
36207 }
36208}
36209impl From<SetGeneratedOptions> for AlterColumnOption {
36210 #[inline]
36211 fn from(node: SetGeneratedOptions) -> AlterColumnOption {
36212 AlterColumnOption::SetGeneratedOptions(node)
36213 }
36214}
36215impl From<SetNotNull> for AlterColumnOption {
36216 #[inline]
36217 fn from(node: SetNotNull) -> AlterColumnOption {
36218 AlterColumnOption::SetNotNull(node)
36219 }
36220}
36221impl From<SetOptions> for AlterColumnOption {
36222 #[inline]
36223 fn from(node: SetOptions) -> AlterColumnOption {
36224 AlterColumnOption::SetOptions(node)
36225 }
36226}
36227impl From<SetOptionsList> for AlterColumnOption {
36228 #[inline]
36229 fn from(node: SetOptionsList) -> AlterColumnOption {
36230 AlterColumnOption::SetOptionsList(node)
36231 }
36232}
36233impl From<SetSequenceOption> for AlterColumnOption {
36234 #[inline]
36235 fn from(node: SetSequenceOption) -> AlterColumnOption {
36236 AlterColumnOption::SetSequenceOption(node)
36237 }
36238}
36239impl From<SetStatistics> for AlterColumnOption {
36240 #[inline]
36241 fn from(node: SetStatistics) -> AlterColumnOption {
36242 AlterColumnOption::SetStatistics(node)
36243 }
36244}
36245impl From<SetStorage> for AlterColumnOption {
36246 #[inline]
36247 fn from(node: SetStorage) -> AlterColumnOption {
36248 AlterColumnOption::SetStorage(node)
36249 }
36250}
36251impl From<SetType> for AlterColumnOption {
36252 #[inline]
36253 fn from(node: SetType) -> AlterColumnOption {
36254 AlterColumnOption::SetType(node)
36255 }
36256}
36257impl AstNode for AlterDomainAction {
36258 #[inline]
36259 fn can_cast(kind: SyntaxKind) -> bool {
36260 matches!(
36261 kind,
36262 SyntaxKind::ADD_CONSTRAINT
36263 | SyntaxKind::DROP_CONSTRAINT
36264 | SyntaxKind::DROP_DEFAULT
36265 | SyntaxKind::DROP_NOT_NULL
36266 | SyntaxKind::OWNER_TO
36267 | SyntaxKind::RENAME_CONSTRAINT
36268 | SyntaxKind::RENAME_TO
36269 | SyntaxKind::SET_DEFAULT
36270 | SyntaxKind::SET_NOT_NULL
36271 | SyntaxKind::SET_SCHEMA
36272 | SyntaxKind::VALIDATE_CONSTRAINT
36273 )
36274 }
36275 #[inline]
36276 fn cast(syntax: SyntaxNode) -> Option<Self> {
36277 let res = match syntax.kind() {
36278 SyntaxKind::ADD_CONSTRAINT => {
36279 AlterDomainAction::AddConstraint(AddConstraint { syntax })
36280 }
36281 SyntaxKind::DROP_CONSTRAINT => {
36282 AlterDomainAction::DropConstraint(DropConstraint { syntax })
36283 }
36284 SyntaxKind::DROP_DEFAULT => AlterDomainAction::DropDefault(DropDefault { syntax }),
36285 SyntaxKind::DROP_NOT_NULL => AlterDomainAction::DropNotNull(DropNotNull { syntax }),
36286 SyntaxKind::OWNER_TO => AlterDomainAction::OwnerTo(OwnerTo { syntax }),
36287 SyntaxKind::RENAME_CONSTRAINT => {
36288 AlterDomainAction::RenameConstraint(RenameConstraint { syntax })
36289 }
36290 SyntaxKind::RENAME_TO => AlterDomainAction::RenameTo(RenameTo { syntax }),
36291 SyntaxKind::SET_DEFAULT => AlterDomainAction::SetDefault(SetDefault { syntax }),
36292 SyntaxKind::SET_NOT_NULL => AlterDomainAction::SetNotNull(SetNotNull { syntax }),
36293 SyntaxKind::SET_SCHEMA => AlterDomainAction::SetSchema(SetSchema { syntax }),
36294 SyntaxKind::VALIDATE_CONSTRAINT => {
36295 AlterDomainAction::ValidateConstraint(ValidateConstraint { syntax })
36296 }
36297 _ => {
36298 return None;
36299 }
36300 };
36301 Some(res)
36302 }
36303 #[inline]
36304 fn syntax(&self) -> &SyntaxNode {
36305 match self {
36306 AlterDomainAction::AddConstraint(it) => &it.syntax,
36307 AlterDomainAction::DropConstraint(it) => &it.syntax,
36308 AlterDomainAction::DropDefault(it) => &it.syntax,
36309 AlterDomainAction::DropNotNull(it) => &it.syntax,
36310 AlterDomainAction::OwnerTo(it) => &it.syntax,
36311 AlterDomainAction::RenameConstraint(it) => &it.syntax,
36312 AlterDomainAction::RenameTo(it) => &it.syntax,
36313 AlterDomainAction::SetDefault(it) => &it.syntax,
36314 AlterDomainAction::SetNotNull(it) => &it.syntax,
36315 AlterDomainAction::SetSchema(it) => &it.syntax,
36316 AlterDomainAction::ValidateConstraint(it) => &it.syntax,
36317 }
36318 }
36319}
36320impl From<AddConstraint> for AlterDomainAction {
36321 #[inline]
36322 fn from(node: AddConstraint) -> AlterDomainAction {
36323 AlterDomainAction::AddConstraint(node)
36324 }
36325}
36326impl From<DropConstraint> for AlterDomainAction {
36327 #[inline]
36328 fn from(node: DropConstraint) -> AlterDomainAction {
36329 AlterDomainAction::DropConstraint(node)
36330 }
36331}
36332impl From<DropDefault> for AlterDomainAction {
36333 #[inline]
36334 fn from(node: DropDefault) -> AlterDomainAction {
36335 AlterDomainAction::DropDefault(node)
36336 }
36337}
36338impl From<DropNotNull> for AlterDomainAction {
36339 #[inline]
36340 fn from(node: DropNotNull) -> AlterDomainAction {
36341 AlterDomainAction::DropNotNull(node)
36342 }
36343}
36344impl From<OwnerTo> for AlterDomainAction {
36345 #[inline]
36346 fn from(node: OwnerTo) -> AlterDomainAction {
36347 AlterDomainAction::OwnerTo(node)
36348 }
36349}
36350impl From<RenameConstraint> for AlterDomainAction {
36351 #[inline]
36352 fn from(node: RenameConstraint) -> AlterDomainAction {
36353 AlterDomainAction::RenameConstraint(node)
36354 }
36355}
36356impl From<RenameTo> for AlterDomainAction {
36357 #[inline]
36358 fn from(node: RenameTo) -> AlterDomainAction {
36359 AlterDomainAction::RenameTo(node)
36360 }
36361}
36362impl From<SetDefault> for AlterDomainAction {
36363 #[inline]
36364 fn from(node: SetDefault) -> AlterDomainAction {
36365 AlterDomainAction::SetDefault(node)
36366 }
36367}
36368impl From<SetNotNull> for AlterDomainAction {
36369 #[inline]
36370 fn from(node: SetNotNull) -> AlterDomainAction {
36371 AlterDomainAction::SetNotNull(node)
36372 }
36373}
36374impl From<SetSchema> for AlterDomainAction {
36375 #[inline]
36376 fn from(node: SetSchema) -> AlterDomainAction {
36377 AlterDomainAction::SetSchema(node)
36378 }
36379}
36380impl From<ValidateConstraint> for AlterDomainAction {
36381 #[inline]
36382 fn from(node: ValidateConstraint) -> AlterDomainAction {
36383 AlterDomainAction::ValidateConstraint(node)
36384 }
36385}
36386impl AstNode for AlterIndexAction {
36387 #[inline]
36388 fn can_cast(kind: SyntaxKind) -> bool {
36389 matches!(
36390 kind,
36391 SyntaxKind::ALTER_SET_STATISTICS
36392 | SyntaxKind::ATTACH_PARTITION
36393 | SyntaxKind::DEPENDS_ON_EXTENSION
36394 | SyntaxKind::NO_DEPENDS_ON_EXTENSION
36395 | SyntaxKind::RENAME_TO
36396 | SyntaxKind::RESET_OPTIONS
36397 | SyntaxKind::SET_OPTIONS
36398 | SyntaxKind::SET_TABLESPACE
36399 )
36400 }
36401 #[inline]
36402 fn cast(syntax: SyntaxNode) -> Option<Self> {
36403 let res = match syntax.kind() {
36404 SyntaxKind::ALTER_SET_STATISTICS => {
36405 AlterIndexAction::AlterSetStatistics(AlterSetStatistics { syntax })
36406 }
36407 SyntaxKind::ATTACH_PARTITION => {
36408 AlterIndexAction::AttachPartition(AttachPartition { syntax })
36409 }
36410 SyntaxKind::DEPENDS_ON_EXTENSION => {
36411 AlterIndexAction::DependsOnExtension(DependsOnExtension { syntax })
36412 }
36413 SyntaxKind::NO_DEPENDS_ON_EXTENSION => {
36414 AlterIndexAction::NoDependsOnExtension(NoDependsOnExtension { syntax })
36415 }
36416 SyntaxKind::RENAME_TO => AlterIndexAction::RenameTo(RenameTo { syntax }),
36417 SyntaxKind::RESET_OPTIONS => AlterIndexAction::ResetOptions(ResetOptions { syntax }),
36418 SyntaxKind::SET_OPTIONS => AlterIndexAction::SetOptions(SetOptions { syntax }),
36419 SyntaxKind::SET_TABLESPACE => AlterIndexAction::SetTablespace(SetTablespace { syntax }),
36420 _ => {
36421 return None;
36422 }
36423 };
36424 Some(res)
36425 }
36426 #[inline]
36427 fn syntax(&self) -> &SyntaxNode {
36428 match self {
36429 AlterIndexAction::AlterSetStatistics(it) => &it.syntax,
36430 AlterIndexAction::AttachPartition(it) => &it.syntax,
36431 AlterIndexAction::DependsOnExtension(it) => &it.syntax,
36432 AlterIndexAction::NoDependsOnExtension(it) => &it.syntax,
36433 AlterIndexAction::RenameTo(it) => &it.syntax,
36434 AlterIndexAction::ResetOptions(it) => &it.syntax,
36435 AlterIndexAction::SetOptions(it) => &it.syntax,
36436 AlterIndexAction::SetTablespace(it) => &it.syntax,
36437 }
36438 }
36439}
36440impl From<AlterSetStatistics> for AlterIndexAction {
36441 #[inline]
36442 fn from(node: AlterSetStatistics) -> AlterIndexAction {
36443 AlterIndexAction::AlterSetStatistics(node)
36444 }
36445}
36446impl From<AttachPartition> for AlterIndexAction {
36447 #[inline]
36448 fn from(node: AttachPartition) -> AlterIndexAction {
36449 AlterIndexAction::AttachPartition(node)
36450 }
36451}
36452impl From<DependsOnExtension> for AlterIndexAction {
36453 #[inline]
36454 fn from(node: DependsOnExtension) -> AlterIndexAction {
36455 AlterIndexAction::DependsOnExtension(node)
36456 }
36457}
36458impl From<NoDependsOnExtension> for AlterIndexAction {
36459 #[inline]
36460 fn from(node: NoDependsOnExtension) -> AlterIndexAction {
36461 AlterIndexAction::NoDependsOnExtension(node)
36462 }
36463}
36464impl From<RenameTo> for AlterIndexAction {
36465 #[inline]
36466 fn from(node: RenameTo) -> AlterIndexAction {
36467 AlterIndexAction::RenameTo(node)
36468 }
36469}
36470impl From<ResetOptions> for AlterIndexAction {
36471 #[inline]
36472 fn from(node: ResetOptions) -> AlterIndexAction {
36473 AlterIndexAction::ResetOptions(node)
36474 }
36475}
36476impl From<SetOptions> for AlterIndexAction {
36477 #[inline]
36478 fn from(node: SetOptions) -> AlterIndexAction {
36479 AlterIndexAction::SetOptions(node)
36480 }
36481}
36482impl From<SetTablespace> for AlterIndexAction {
36483 #[inline]
36484 fn from(node: SetTablespace) -> AlterIndexAction {
36485 AlterIndexAction::SetTablespace(node)
36486 }
36487}
36488impl AstNode for AlterMaterializedViewAction {
36489 #[inline]
36490 fn can_cast(kind: SyntaxKind) -> bool {
36491 matches!(
36492 kind,
36493 SyntaxKind::DEPENDS_ON_EXTENSION
36494 | SyntaxKind::NO_DEPENDS_ON_EXTENSION
36495 | SyntaxKind::RENAME_COLUMN
36496 | SyntaxKind::RENAME_TO
36497 | SyntaxKind::SET_SCHEMA
36498 )
36499 }
36500 #[inline]
36501 fn cast(syntax: SyntaxNode) -> Option<Self> {
36502 let res = match syntax.kind() {
36503 SyntaxKind::DEPENDS_ON_EXTENSION => {
36504 AlterMaterializedViewAction::DependsOnExtension(DependsOnExtension { syntax })
36505 }
36506 SyntaxKind::NO_DEPENDS_ON_EXTENSION => {
36507 AlterMaterializedViewAction::NoDependsOnExtension(NoDependsOnExtension { syntax })
36508 }
36509 SyntaxKind::RENAME_COLUMN => {
36510 AlterMaterializedViewAction::RenameColumn(RenameColumn { syntax })
36511 }
36512 SyntaxKind::RENAME_TO => AlterMaterializedViewAction::RenameTo(RenameTo { syntax }),
36513 SyntaxKind::SET_SCHEMA => AlterMaterializedViewAction::SetSchema(SetSchema { syntax }),
36514 _ => {
36515 if let Some(result) = AlterTableAction::cast(syntax) {
36516 return Some(AlterMaterializedViewAction::AlterTableAction(result));
36517 }
36518 return None;
36519 }
36520 };
36521 Some(res)
36522 }
36523 #[inline]
36524 fn syntax(&self) -> &SyntaxNode {
36525 match self {
36526 AlterMaterializedViewAction::DependsOnExtension(it) => &it.syntax,
36527 AlterMaterializedViewAction::NoDependsOnExtension(it) => &it.syntax,
36528 AlterMaterializedViewAction::RenameColumn(it) => &it.syntax,
36529 AlterMaterializedViewAction::RenameTo(it) => &it.syntax,
36530 AlterMaterializedViewAction::SetSchema(it) => &it.syntax,
36531 AlterMaterializedViewAction::AlterTableAction(it) => it.syntax(),
36532 }
36533 }
36534}
36535impl From<DependsOnExtension> for AlterMaterializedViewAction {
36536 #[inline]
36537 fn from(node: DependsOnExtension) -> AlterMaterializedViewAction {
36538 AlterMaterializedViewAction::DependsOnExtension(node)
36539 }
36540}
36541impl From<NoDependsOnExtension> for AlterMaterializedViewAction {
36542 #[inline]
36543 fn from(node: NoDependsOnExtension) -> AlterMaterializedViewAction {
36544 AlterMaterializedViewAction::NoDependsOnExtension(node)
36545 }
36546}
36547impl From<RenameColumn> for AlterMaterializedViewAction {
36548 #[inline]
36549 fn from(node: RenameColumn) -> AlterMaterializedViewAction {
36550 AlterMaterializedViewAction::RenameColumn(node)
36551 }
36552}
36553impl From<RenameTo> for AlterMaterializedViewAction {
36554 #[inline]
36555 fn from(node: RenameTo) -> AlterMaterializedViewAction {
36556 AlterMaterializedViewAction::RenameTo(node)
36557 }
36558}
36559impl From<SetSchema> for AlterMaterializedViewAction {
36560 #[inline]
36561 fn from(node: SetSchema) -> AlterMaterializedViewAction {
36562 AlterMaterializedViewAction::SetSchema(node)
36563 }
36564}
36565impl AstNode for AlterPropertyGraphAction {
36566 #[inline]
36567 fn can_cast(kind: SyntaxKind) -> bool {
36568 matches!(
36569 kind,
36570 SyntaxKind::ADD_VERTEX_EDGE_LABEL_PROPERTIES
36571 | SyntaxKind::ADD_VERTEX_EDGE_TABLES
36572 | SyntaxKind::ALTER_VERTEX_EDGE_LABELS
36573 | SyntaxKind::DROP_EDGE_TABLES
36574 | SyntaxKind::DROP_VERTEX_EDGE_LABEL
36575 | SyntaxKind::DROP_VERTEX_EDGE_LABEL_PROPERTIES
36576 | SyntaxKind::DROP_VERTEX_TABLES
36577 | SyntaxKind::OWNER_TO
36578 | SyntaxKind::RENAME_TO
36579 | SyntaxKind::SET_SCHEMA
36580 )
36581 }
36582 #[inline]
36583 fn cast(syntax: SyntaxNode) -> Option<Self> {
36584 let res = match syntax.kind() {
36585 SyntaxKind::ADD_VERTEX_EDGE_LABEL_PROPERTIES => {
36586 AlterPropertyGraphAction::AddVertexEdgeLabelProperties(
36587 AddVertexEdgeLabelProperties { syntax },
36588 )
36589 }
36590 SyntaxKind::ADD_VERTEX_EDGE_TABLES => {
36591 AlterPropertyGraphAction::AddVertexEdgeTables(AddVertexEdgeTables { syntax })
36592 }
36593 SyntaxKind::ALTER_VERTEX_EDGE_LABELS => {
36594 AlterPropertyGraphAction::AlterVertexEdgeLabels(AlterVertexEdgeLabels { syntax })
36595 }
36596 SyntaxKind::DROP_EDGE_TABLES => {
36597 AlterPropertyGraphAction::DropEdgeTables(DropEdgeTables { syntax })
36598 }
36599 SyntaxKind::DROP_VERTEX_EDGE_LABEL => {
36600 AlterPropertyGraphAction::DropVertexEdgeLabel(DropVertexEdgeLabel { syntax })
36601 }
36602 SyntaxKind::DROP_VERTEX_EDGE_LABEL_PROPERTIES => {
36603 AlterPropertyGraphAction::DropVertexEdgeLabelProperties(
36604 DropVertexEdgeLabelProperties { syntax },
36605 )
36606 }
36607 SyntaxKind::DROP_VERTEX_TABLES => {
36608 AlterPropertyGraphAction::DropVertexTables(DropVertexTables { syntax })
36609 }
36610 SyntaxKind::OWNER_TO => AlterPropertyGraphAction::OwnerTo(OwnerTo { syntax }),
36611 SyntaxKind::RENAME_TO => AlterPropertyGraphAction::RenameTo(RenameTo { syntax }),
36612 SyntaxKind::SET_SCHEMA => AlterPropertyGraphAction::SetSchema(SetSchema { syntax }),
36613 _ => {
36614 return None;
36615 }
36616 };
36617 Some(res)
36618 }
36619 #[inline]
36620 fn syntax(&self) -> &SyntaxNode {
36621 match self {
36622 AlterPropertyGraphAction::AddVertexEdgeLabelProperties(it) => &it.syntax,
36623 AlterPropertyGraphAction::AddVertexEdgeTables(it) => &it.syntax,
36624 AlterPropertyGraphAction::AlterVertexEdgeLabels(it) => &it.syntax,
36625 AlterPropertyGraphAction::DropEdgeTables(it) => &it.syntax,
36626 AlterPropertyGraphAction::DropVertexEdgeLabel(it) => &it.syntax,
36627 AlterPropertyGraphAction::DropVertexEdgeLabelProperties(it) => &it.syntax,
36628 AlterPropertyGraphAction::DropVertexTables(it) => &it.syntax,
36629 AlterPropertyGraphAction::OwnerTo(it) => &it.syntax,
36630 AlterPropertyGraphAction::RenameTo(it) => &it.syntax,
36631 AlterPropertyGraphAction::SetSchema(it) => &it.syntax,
36632 }
36633 }
36634}
36635impl From<AddVertexEdgeLabelProperties> for AlterPropertyGraphAction {
36636 #[inline]
36637 fn from(node: AddVertexEdgeLabelProperties) -> AlterPropertyGraphAction {
36638 AlterPropertyGraphAction::AddVertexEdgeLabelProperties(node)
36639 }
36640}
36641impl From<AddVertexEdgeTables> for AlterPropertyGraphAction {
36642 #[inline]
36643 fn from(node: AddVertexEdgeTables) -> AlterPropertyGraphAction {
36644 AlterPropertyGraphAction::AddVertexEdgeTables(node)
36645 }
36646}
36647impl From<AlterVertexEdgeLabels> for AlterPropertyGraphAction {
36648 #[inline]
36649 fn from(node: AlterVertexEdgeLabels) -> AlterPropertyGraphAction {
36650 AlterPropertyGraphAction::AlterVertexEdgeLabels(node)
36651 }
36652}
36653impl From<DropEdgeTables> for AlterPropertyGraphAction {
36654 #[inline]
36655 fn from(node: DropEdgeTables) -> AlterPropertyGraphAction {
36656 AlterPropertyGraphAction::DropEdgeTables(node)
36657 }
36658}
36659impl From<DropVertexEdgeLabel> for AlterPropertyGraphAction {
36660 #[inline]
36661 fn from(node: DropVertexEdgeLabel) -> AlterPropertyGraphAction {
36662 AlterPropertyGraphAction::DropVertexEdgeLabel(node)
36663 }
36664}
36665impl From<DropVertexEdgeLabelProperties> for AlterPropertyGraphAction {
36666 #[inline]
36667 fn from(node: DropVertexEdgeLabelProperties) -> AlterPropertyGraphAction {
36668 AlterPropertyGraphAction::DropVertexEdgeLabelProperties(node)
36669 }
36670}
36671impl From<DropVertexTables> for AlterPropertyGraphAction {
36672 #[inline]
36673 fn from(node: DropVertexTables) -> AlterPropertyGraphAction {
36674 AlterPropertyGraphAction::DropVertexTables(node)
36675 }
36676}
36677impl From<OwnerTo> for AlterPropertyGraphAction {
36678 #[inline]
36679 fn from(node: OwnerTo) -> AlterPropertyGraphAction {
36680 AlterPropertyGraphAction::OwnerTo(node)
36681 }
36682}
36683impl From<RenameTo> for AlterPropertyGraphAction {
36684 #[inline]
36685 fn from(node: RenameTo) -> AlterPropertyGraphAction {
36686 AlterPropertyGraphAction::RenameTo(node)
36687 }
36688}
36689impl From<SetSchema> for AlterPropertyGraphAction {
36690 #[inline]
36691 fn from(node: SetSchema) -> AlterPropertyGraphAction {
36692 AlterPropertyGraphAction::SetSchema(node)
36693 }
36694}
36695impl AstNode for AlterTableAction {
36696 #[inline]
36697 fn can_cast(kind: SyntaxKind) -> bool {
36698 matches!(
36699 kind,
36700 SyntaxKind::ADD_COLUMN
36701 | SyntaxKind::ADD_CONSTRAINT
36702 | SyntaxKind::ALTER_COLUMN
36703 | SyntaxKind::ALTER_CONSTRAINT
36704 | SyntaxKind::ATTACH_PARTITION
36705 | SyntaxKind::CLUSTER_ON
36706 | SyntaxKind::DETACH_PARTITION
36707 | SyntaxKind::DISABLE_RLS
36708 | SyntaxKind::DISABLE_RULE
36709 | SyntaxKind::DISABLE_TRIGGER
36710 | SyntaxKind::DROP_COLUMN
36711 | SyntaxKind::DROP_CONSTRAINT
36712 | SyntaxKind::ENABLE_ALWAYS_RULE
36713 | SyntaxKind::ENABLE_ALWAYS_TRIGGER
36714 | SyntaxKind::ENABLE_REPLICA_RULE
36715 | SyntaxKind::ENABLE_REPLICA_TRIGGER
36716 | SyntaxKind::ENABLE_RLS
36717 | SyntaxKind::ENABLE_RULE
36718 | SyntaxKind::ENABLE_TRIGGER
36719 | SyntaxKind::FORCE_RLS
36720 | SyntaxKind::INHERIT_TABLE
36721 | SyntaxKind::MERGE_PARTITIONS
36722 | SyntaxKind::NO_FORCE_RLS
36723 | SyntaxKind::NO_INHERIT_TABLE
36724 | SyntaxKind::NOT_OF
36725 | SyntaxKind::OF_TYPE
36726 | SyntaxKind::OPTION_ITEM_LIST
36727 | SyntaxKind::OWNER_TO
36728 | SyntaxKind::RENAME_COLUMN
36729 | SyntaxKind::RENAME_CONSTRAINT
36730 | SyntaxKind::RENAME_TO
36731 | SyntaxKind::REPLICA_IDENTITY
36732 | SyntaxKind::RESET_OPTIONS
36733 | SyntaxKind::SET_ACCESS_METHOD
36734 | SyntaxKind::SET_LOGGED
36735 | SyntaxKind::SET_OPTIONS
36736 | SyntaxKind::SET_SCHEMA
36737 | SyntaxKind::SET_TABLESPACE
36738 | SyntaxKind::SET_UNLOGGED
36739 | SyntaxKind::SET_WITHOUT_CLUSTER
36740 | SyntaxKind::SET_WITHOUT_OIDS
36741 | SyntaxKind::SPLIT_PARTITION
36742 | SyntaxKind::VALIDATE_CONSTRAINT
36743 )
36744 }
36745 #[inline]
36746 fn cast(syntax: SyntaxNode) -> Option<Self> {
36747 let res = match syntax.kind() {
36748 SyntaxKind::ADD_COLUMN => AlterTableAction::AddColumn(AddColumn { syntax }),
36749 SyntaxKind::ADD_CONSTRAINT => AlterTableAction::AddConstraint(AddConstraint { syntax }),
36750 SyntaxKind::ALTER_COLUMN => AlterTableAction::AlterColumn(AlterColumn { syntax }),
36751 SyntaxKind::ALTER_CONSTRAINT => {
36752 AlterTableAction::AlterConstraint(AlterConstraint { syntax })
36753 }
36754 SyntaxKind::ATTACH_PARTITION => {
36755 AlterTableAction::AttachPartition(AttachPartition { syntax })
36756 }
36757 SyntaxKind::CLUSTER_ON => AlterTableAction::ClusterOn(ClusterOn { syntax }),
36758 SyntaxKind::DETACH_PARTITION => {
36759 AlterTableAction::DetachPartition(DetachPartition { syntax })
36760 }
36761 SyntaxKind::DISABLE_RLS => AlterTableAction::DisableRls(DisableRls { syntax }),
36762 SyntaxKind::DISABLE_RULE => AlterTableAction::DisableRule(DisableRule { syntax }),
36763 SyntaxKind::DISABLE_TRIGGER => {
36764 AlterTableAction::DisableTrigger(DisableTrigger { syntax })
36765 }
36766 SyntaxKind::DROP_COLUMN => AlterTableAction::DropColumn(DropColumn { syntax }),
36767 SyntaxKind::DROP_CONSTRAINT => {
36768 AlterTableAction::DropConstraint(DropConstraint { syntax })
36769 }
36770 SyntaxKind::ENABLE_ALWAYS_RULE => {
36771 AlterTableAction::EnableAlwaysRule(EnableAlwaysRule { syntax })
36772 }
36773 SyntaxKind::ENABLE_ALWAYS_TRIGGER => {
36774 AlterTableAction::EnableAlwaysTrigger(EnableAlwaysTrigger { syntax })
36775 }
36776 SyntaxKind::ENABLE_REPLICA_RULE => {
36777 AlterTableAction::EnableReplicaRule(EnableReplicaRule { syntax })
36778 }
36779 SyntaxKind::ENABLE_REPLICA_TRIGGER => {
36780 AlterTableAction::EnableReplicaTrigger(EnableReplicaTrigger { syntax })
36781 }
36782 SyntaxKind::ENABLE_RLS => AlterTableAction::EnableRls(EnableRls { syntax }),
36783 SyntaxKind::ENABLE_RULE => AlterTableAction::EnableRule(EnableRule { syntax }),
36784 SyntaxKind::ENABLE_TRIGGER => AlterTableAction::EnableTrigger(EnableTrigger { syntax }),
36785 SyntaxKind::FORCE_RLS => AlterTableAction::ForceRls(ForceRls { syntax }),
36786 SyntaxKind::INHERIT_TABLE => AlterTableAction::InheritTable(InheritTable { syntax }),
36787 SyntaxKind::MERGE_PARTITIONS => {
36788 AlterTableAction::MergePartitions(MergePartitions { syntax })
36789 }
36790 SyntaxKind::NO_FORCE_RLS => AlterTableAction::NoForceRls(NoForceRls { syntax }),
36791 SyntaxKind::NO_INHERIT_TABLE => {
36792 AlterTableAction::NoInheritTable(NoInheritTable { syntax })
36793 }
36794 SyntaxKind::NOT_OF => AlterTableAction::NotOf(NotOf { syntax }),
36795 SyntaxKind::OF_TYPE => AlterTableAction::OfType(OfType { syntax }),
36796 SyntaxKind::OPTION_ITEM_LIST => {
36797 AlterTableAction::OptionItemList(OptionItemList { syntax })
36798 }
36799 SyntaxKind::OWNER_TO => AlterTableAction::OwnerTo(OwnerTo { syntax }),
36800 SyntaxKind::RENAME_COLUMN => AlterTableAction::RenameColumn(RenameColumn { syntax }),
36801 SyntaxKind::RENAME_CONSTRAINT => {
36802 AlterTableAction::RenameConstraint(RenameConstraint { syntax })
36803 }
36804 SyntaxKind::RENAME_TO => AlterTableAction::RenameTo(RenameTo { syntax }),
36805 SyntaxKind::REPLICA_IDENTITY => {
36806 AlterTableAction::ReplicaIdentity(ReplicaIdentity { syntax })
36807 }
36808 SyntaxKind::RESET_OPTIONS => AlterTableAction::ResetOptions(ResetOptions { syntax }),
36809 SyntaxKind::SET_ACCESS_METHOD => {
36810 AlterTableAction::SetAccessMethod(SetAccessMethod { syntax })
36811 }
36812 SyntaxKind::SET_LOGGED => AlterTableAction::SetLogged(SetLogged { syntax }),
36813 SyntaxKind::SET_OPTIONS => AlterTableAction::SetOptions(SetOptions { syntax }),
36814 SyntaxKind::SET_SCHEMA => AlterTableAction::SetSchema(SetSchema { syntax }),
36815 SyntaxKind::SET_TABLESPACE => AlterTableAction::SetTablespace(SetTablespace { syntax }),
36816 SyntaxKind::SET_UNLOGGED => AlterTableAction::SetUnlogged(SetUnlogged { syntax }),
36817 SyntaxKind::SET_WITHOUT_CLUSTER => {
36818 AlterTableAction::SetWithoutCluster(SetWithoutCluster { syntax })
36819 }
36820 SyntaxKind::SET_WITHOUT_OIDS => {
36821 AlterTableAction::SetWithoutOids(SetWithoutOids { syntax })
36822 }
36823 SyntaxKind::SPLIT_PARTITION => {
36824 AlterTableAction::SplitPartition(SplitPartition { syntax })
36825 }
36826 SyntaxKind::VALIDATE_CONSTRAINT => {
36827 AlterTableAction::ValidateConstraint(ValidateConstraint { syntax })
36828 }
36829 _ => {
36830 return None;
36831 }
36832 };
36833 Some(res)
36834 }
36835 #[inline]
36836 fn syntax(&self) -> &SyntaxNode {
36837 match self {
36838 AlterTableAction::AddColumn(it) => &it.syntax,
36839 AlterTableAction::AddConstraint(it) => &it.syntax,
36840 AlterTableAction::AlterColumn(it) => &it.syntax,
36841 AlterTableAction::AlterConstraint(it) => &it.syntax,
36842 AlterTableAction::AttachPartition(it) => &it.syntax,
36843 AlterTableAction::ClusterOn(it) => &it.syntax,
36844 AlterTableAction::DetachPartition(it) => &it.syntax,
36845 AlterTableAction::DisableRls(it) => &it.syntax,
36846 AlterTableAction::DisableRule(it) => &it.syntax,
36847 AlterTableAction::DisableTrigger(it) => &it.syntax,
36848 AlterTableAction::DropColumn(it) => &it.syntax,
36849 AlterTableAction::DropConstraint(it) => &it.syntax,
36850 AlterTableAction::EnableAlwaysRule(it) => &it.syntax,
36851 AlterTableAction::EnableAlwaysTrigger(it) => &it.syntax,
36852 AlterTableAction::EnableReplicaRule(it) => &it.syntax,
36853 AlterTableAction::EnableReplicaTrigger(it) => &it.syntax,
36854 AlterTableAction::EnableRls(it) => &it.syntax,
36855 AlterTableAction::EnableRule(it) => &it.syntax,
36856 AlterTableAction::EnableTrigger(it) => &it.syntax,
36857 AlterTableAction::ForceRls(it) => &it.syntax,
36858 AlterTableAction::InheritTable(it) => &it.syntax,
36859 AlterTableAction::MergePartitions(it) => &it.syntax,
36860 AlterTableAction::NoForceRls(it) => &it.syntax,
36861 AlterTableAction::NoInheritTable(it) => &it.syntax,
36862 AlterTableAction::NotOf(it) => &it.syntax,
36863 AlterTableAction::OfType(it) => &it.syntax,
36864 AlterTableAction::OptionItemList(it) => &it.syntax,
36865 AlterTableAction::OwnerTo(it) => &it.syntax,
36866 AlterTableAction::RenameColumn(it) => &it.syntax,
36867 AlterTableAction::RenameConstraint(it) => &it.syntax,
36868 AlterTableAction::RenameTo(it) => &it.syntax,
36869 AlterTableAction::ReplicaIdentity(it) => &it.syntax,
36870 AlterTableAction::ResetOptions(it) => &it.syntax,
36871 AlterTableAction::SetAccessMethod(it) => &it.syntax,
36872 AlterTableAction::SetLogged(it) => &it.syntax,
36873 AlterTableAction::SetOptions(it) => &it.syntax,
36874 AlterTableAction::SetSchema(it) => &it.syntax,
36875 AlterTableAction::SetTablespace(it) => &it.syntax,
36876 AlterTableAction::SetUnlogged(it) => &it.syntax,
36877 AlterTableAction::SetWithoutCluster(it) => &it.syntax,
36878 AlterTableAction::SetWithoutOids(it) => &it.syntax,
36879 AlterTableAction::SplitPartition(it) => &it.syntax,
36880 AlterTableAction::ValidateConstraint(it) => &it.syntax,
36881 }
36882 }
36883}
36884impl From<AddColumn> for AlterTableAction {
36885 #[inline]
36886 fn from(node: AddColumn) -> AlterTableAction {
36887 AlterTableAction::AddColumn(node)
36888 }
36889}
36890impl From<AddConstraint> for AlterTableAction {
36891 #[inline]
36892 fn from(node: AddConstraint) -> AlterTableAction {
36893 AlterTableAction::AddConstraint(node)
36894 }
36895}
36896impl From<AlterColumn> for AlterTableAction {
36897 #[inline]
36898 fn from(node: AlterColumn) -> AlterTableAction {
36899 AlterTableAction::AlterColumn(node)
36900 }
36901}
36902impl From<AlterConstraint> for AlterTableAction {
36903 #[inline]
36904 fn from(node: AlterConstraint) -> AlterTableAction {
36905 AlterTableAction::AlterConstraint(node)
36906 }
36907}
36908impl From<AttachPartition> for AlterTableAction {
36909 #[inline]
36910 fn from(node: AttachPartition) -> AlterTableAction {
36911 AlterTableAction::AttachPartition(node)
36912 }
36913}
36914impl From<ClusterOn> for AlterTableAction {
36915 #[inline]
36916 fn from(node: ClusterOn) -> AlterTableAction {
36917 AlterTableAction::ClusterOn(node)
36918 }
36919}
36920impl From<DetachPartition> for AlterTableAction {
36921 #[inline]
36922 fn from(node: DetachPartition) -> AlterTableAction {
36923 AlterTableAction::DetachPartition(node)
36924 }
36925}
36926impl From<DisableRls> for AlterTableAction {
36927 #[inline]
36928 fn from(node: DisableRls) -> AlterTableAction {
36929 AlterTableAction::DisableRls(node)
36930 }
36931}
36932impl From<DisableRule> for AlterTableAction {
36933 #[inline]
36934 fn from(node: DisableRule) -> AlterTableAction {
36935 AlterTableAction::DisableRule(node)
36936 }
36937}
36938impl From<DisableTrigger> for AlterTableAction {
36939 #[inline]
36940 fn from(node: DisableTrigger) -> AlterTableAction {
36941 AlterTableAction::DisableTrigger(node)
36942 }
36943}
36944impl From<DropColumn> for AlterTableAction {
36945 #[inline]
36946 fn from(node: DropColumn) -> AlterTableAction {
36947 AlterTableAction::DropColumn(node)
36948 }
36949}
36950impl From<DropConstraint> for AlterTableAction {
36951 #[inline]
36952 fn from(node: DropConstraint) -> AlterTableAction {
36953 AlterTableAction::DropConstraint(node)
36954 }
36955}
36956impl From<EnableAlwaysRule> for AlterTableAction {
36957 #[inline]
36958 fn from(node: EnableAlwaysRule) -> AlterTableAction {
36959 AlterTableAction::EnableAlwaysRule(node)
36960 }
36961}
36962impl From<EnableAlwaysTrigger> for AlterTableAction {
36963 #[inline]
36964 fn from(node: EnableAlwaysTrigger) -> AlterTableAction {
36965 AlterTableAction::EnableAlwaysTrigger(node)
36966 }
36967}
36968impl From<EnableReplicaRule> for AlterTableAction {
36969 #[inline]
36970 fn from(node: EnableReplicaRule) -> AlterTableAction {
36971 AlterTableAction::EnableReplicaRule(node)
36972 }
36973}
36974impl From<EnableReplicaTrigger> for AlterTableAction {
36975 #[inline]
36976 fn from(node: EnableReplicaTrigger) -> AlterTableAction {
36977 AlterTableAction::EnableReplicaTrigger(node)
36978 }
36979}
36980impl From<EnableRls> for AlterTableAction {
36981 #[inline]
36982 fn from(node: EnableRls) -> AlterTableAction {
36983 AlterTableAction::EnableRls(node)
36984 }
36985}
36986impl From<EnableRule> for AlterTableAction {
36987 #[inline]
36988 fn from(node: EnableRule) -> AlterTableAction {
36989 AlterTableAction::EnableRule(node)
36990 }
36991}
36992impl From<EnableTrigger> for AlterTableAction {
36993 #[inline]
36994 fn from(node: EnableTrigger) -> AlterTableAction {
36995 AlterTableAction::EnableTrigger(node)
36996 }
36997}
36998impl From<ForceRls> for AlterTableAction {
36999 #[inline]
37000 fn from(node: ForceRls) -> AlterTableAction {
37001 AlterTableAction::ForceRls(node)
37002 }
37003}
37004impl From<InheritTable> for AlterTableAction {
37005 #[inline]
37006 fn from(node: InheritTable) -> AlterTableAction {
37007 AlterTableAction::InheritTable(node)
37008 }
37009}
37010impl From<MergePartitions> for AlterTableAction {
37011 #[inline]
37012 fn from(node: MergePartitions) -> AlterTableAction {
37013 AlterTableAction::MergePartitions(node)
37014 }
37015}
37016impl From<NoForceRls> for AlterTableAction {
37017 #[inline]
37018 fn from(node: NoForceRls) -> AlterTableAction {
37019 AlterTableAction::NoForceRls(node)
37020 }
37021}
37022impl From<NoInheritTable> for AlterTableAction {
37023 #[inline]
37024 fn from(node: NoInheritTable) -> AlterTableAction {
37025 AlterTableAction::NoInheritTable(node)
37026 }
37027}
37028impl From<NotOf> for AlterTableAction {
37029 #[inline]
37030 fn from(node: NotOf) -> AlterTableAction {
37031 AlterTableAction::NotOf(node)
37032 }
37033}
37034impl From<OfType> for AlterTableAction {
37035 #[inline]
37036 fn from(node: OfType) -> AlterTableAction {
37037 AlterTableAction::OfType(node)
37038 }
37039}
37040impl From<OptionItemList> for AlterTableAction {
37041 #[inline]
37042 fn from(node: OptionItemList) -> AlterTableAction {
37043 AlterTableAction::OptionItemList(node)
37044 }
37045}
37046impl From<OwnerTo> for AlterTableAction {
37047 #[inline]
37048 fn from(node: OwnerTo) -> AlterTableAction {
37049 AlterTableAction::OwnerTo(node)
37050 }
37051}
37052impl From<RenameColumn> for AlterTableAction {
37053 #[inline]
37054 fn from(node: RenameColumn) -> AlterTableAction {
37055 AlterTableAction::RenameColumn(node)
37056 }
37057}
37058impl From<RenameConstraint> for AlterTableAction {
37059 #[inline]
37060 fn from(node: RenameConstraint) -> AlterTableAction {
37061 AlterTableAction::RenameConstraint(node)
37062 }
37063}
37064impl From<RenameTo> for AlterTableAction {
37065 #[inline]
37066 fn from(node: RenameTo) -> AlterTableAction {
37067 AlterTableAction::RenameTo(node)
37068 }
37069}
37070impl From<ReplicaIdentity> for AlterTableAction {
37071 #[inline]
37072 fn from(node: ReplicaIdentity) -> AlterTableAction {
37073 AlterTableAction::ReplicaIdentity(node)
37074 }
37075}
37076impl From<ResetOptions> for AlterTableAction {
37077 #[inline]
37078 fn from(node: ResetOptions) -> AlterTableAction {
37079 AlterTableAction::ResetOptions(node)
37080 }
37081}
37082impl From<SetAccessMethod> for AlterTableAction {
37083 #[inline]
37084 fn from(node: SetAccessMethod) -> AlterTableAction {
37085 AlterTableAction::SetAccessMethod(node)
37086 }
37087}
37088impl From<SetLogged> for AlterTableAction {
37089 #[inline]
37090 fn from(node: SetLogged) -> AlterTableAction {
37091 AlterTableAction::SetLogged(node)
37092 }
37093}
37094impl From<SetOptions> for AlterTableAction {
37095 #[inline]
37096 fn from(node: SetOptions) -> AlterTableAction {
37097 AlterTableAction::SetOptions(node)
37098 }
37099}
37100impl From<SetSchema> for AlterTableAction {
37101 #[inline]
37102 fn from(node: SetSchema) -> AlterTableAction {
37103 AlterTableAction::SetSchema(node)
37104 }
37105}
37106impl From<SetTablespace> for AlterTableAction {
37107 #[inline]
37108 fn from(node: SetTablespace) -> AlterTableAction {
37109 AlterTableAction::SetTablespace(node)
37110 }
37111}
37112impl From<SetUnlogged> for AlterTableAction {
37113 #[inline]
37114 fn from(node: SetUnlogged) -> AlterTableAction {
37115 AlterTableAction::SetUnlogged(node)
37116 }
37117}
37118impl From<SetWithoutCluster> for AlterTableAction {
37119 #[inline]
37120 fn from(node: SetWithoutCluster) -> AlterTableAction {
37121 AlterTableAction::SetWithoutCluster(node)
37122 }
37123}
37124impl From<SetWithoutOids> for AlterTableAction {
37125 #[inline]
37126 fn from(node: SetWithoutOids) -> AlterTableAction {
37127 AlterTableAction::SetWithoutOids(node)
37128 }
37129}
37130impl From<SplitPartition> for AlterTableAction {
37131 #[inline]
37132 fn from(node: SplitPartition) -> AlterTableAction {
37133 AlterTableAction::SplitPartition(node)
37134 }
37135}
37136impl From<ValidateConstraint> for AlterTableAction {
37137 #[inline]
37138 fn from(node: ValidateConstraint) -> AlterTableAction {
37139 AlterTableAction::ValidateConstraint(node)
37140 }
37141}
37142impl AstNode for AlterTypeAction {
37143 #[inline]
37144 fn can_cast(kind: SyntaxKind) -> bool {
37145 matches!(
37146 kind,
37147 SyntaxKind::ADD_ATTRIBUTE | SyntaxKind::ALTER_ATTRIBUTE | SyntaxKind::DROP_ATTRIBUTE
37148 )
37149 }
37150 #[inline]
37151 fn cast(syntax: SyntaxNode) -> Option<Self> {
37152 let res = match syntax.kind() {
37153 SyntaxKind::ADD_ATTRIBUTE => AlterTypeAction::AddAttribute(AddAttribute { syntax }),
37154 SyntaxKind::ALTER_ATTRIBUTE => {
37155 AlterTypeAction::AlterAttribute(AlterAttribute { syntax })
37156 }
37157 SyntaxKind::DROP_ATTRIBUTE => AlterTypeAction::DropAttribute(DropAttribute { syntax }),
37158 _ => {
37159 return None;
37160 }
37161 };
37162 Some(res)
37163 }
37164 #[inline]
37165 fn syntax(&self) -> &SyntaxNode {
37166 match self {
37167 AlterTypeAction::AddAttribute(it) => &it.syntax,
37168 AlterTypeAction::AlterAttribute(it) => &it.syntax,
37169 AlterTypeAction::DropAttribute(it) => &it.syntax,
37170 }
37171 }
37172}
37173impl From<AddAttribute> for AlterTypeAction {
37174 #[inline]
37175 fn from(node: AddAttribute) -> AlterTypeAction {
37176 AlterTypeAction::AddAttribute(node)
37177 }
37178}
37179impl From<AlterAttribute> for AlterTypeAction {
37180 #[inline]
37181 fn from(node: AlterAttribute) -> AlterTypeAction {
37182 AlterTypeAction::AlterAttribute(node)
37183 }
37184}
37185impl From<DropAttribute> for AlterTypeAction {
37186 #[inline]
37187 fn from(node: DropAttribute) -> AlterTypeAction {
37188 AlterTypeAction::DropAttribute(node)
37189 }
37190}
37191impl AstNode for BeginFuncOption {
37192 #[inline]
37193 fn can_cast(kind: SyntaxKind) -> bool {
37194 matches!(kind, SyntaxKind::RETURN_FUNC_OPTION)
37195 }
37196 #[inline]
37197 fn cast(syntax: SyntaxNode) -> Option<Self> {
37198 let res = match syntax.kind() {
37199 SyntaxKind::RETURN_FUNC_OPTION => {
37200 BeginFuncOption::ReturnFuncOption(ReturnFuncOption { syntax })
37201 }
37202 _ => {
37203 if let Some(result) = Stmt::cast(syntax) {
37204 return Some(BeginFuncOption::Stmt(result));
37205 }
37206 return None;
37207 }
37208 };
37209 Some(res)
37210 }
37211 #[inline]
37212 fn syntax(&self) -> &SyntaxNode {
37213 match self {
37214 BeginFuncOption::ReturnFuncOption(it) => &it.syntax,
37215 BeginFuncOption::Stmt(it) => it.syntax(),
37216 }
37217 }
37218}
37219impl From<ReturnFuncOption> for BeginFuncOption {
37220 #[inline]
37221 fn from(node: ReturnFuncOption) -> BeginFuncOption {
37222 BeginFuncOption::ReturnFuncOption(node)
37223 }
37224}
37225impl AstNode for ColumnConstraint {
37226 #[inline]
37227 fn can_cast(kind: SyntaxKind) -> bool {
37228 matches!(
37229 kind,
37230 SyntaxKind::CHECK_CONSTRAINT
37231 | SyntaxKind::DEFAULT_CONSTRAINT
37232 | SyntaxKind::EXCLUDE_CONSTRAINT
37233 | SyntaxKind::GENERATED_CONSTRAINT
37234 | SyntaxKind::NOT_NULL_CONSTRAINT
37235 | SyntaxKind::NULL_CONSTRAINT
37236 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
37237 | SyntaxKind::REFERENCES_CONSTRAINT
37238 | SyntaxKind::UNIQUE_CONSTRAINT
37239 )
37240 }
37241 #[inline]
37242 fn cast(syntax: SyntaxNode) -> Option<Self> {
37243 let res = match syntax.kind() {
37244 SyntaxKind::CHECK_CONSTRAINT => {
37245 ColumnConstraint::CheckConstraint(CheckConstraint { syntax })
37246 }
37247 SyntaxKind::DEFAULT_CONSTRAINT => {
37248 ColumnConstraint::DefaultConstraint(DefaultConstraint { syntax })
37249 }
37250 SyntaxKind::EXCLUDE_CONSTRAINT => {
37251 ColumnConstraint::ExcludeConstraint(ExcludeConstraint { syntax })
37252 }
37253 SyntaxKind::GENERATED_CONSTRAINT => {
37254 ColumnConstraint::GeneratedConstraint(GeneratedConstraint { syntax })
37255 }
37256 SyntaxKind::NOT_NULL_CONSTRAINT => {
37257 ColumnConstraint::NotNullConstraint(NotNullConstraint { syntax })
37258 }
37259 SyntaxKind::NULL_CONSTRAINT => {
37260 ColumnConstraint::NullConstraint(NullConstraint { syntax })
37261 }
37262 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
37263 ColumnConstraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
37264 }
37265 SyntaxKind::REFERENCES_CONSTRAINT => {
37266 ColumnConstraint::ReferencesConstraint(ReferencesConstraint { syntax })
37267 }
37268 SyntaxKind::UNIQUE_CONSTRAINT => {
37269 ColumnConstraint::UniqueConstraint(UniqueConstraint { syntax })
37270 }
37271 _ => {
37272 return None;
37273 }
37274 };
37275 Some(res)
37276 }
37277 #[inline]
37278 fn syntax(&self) -> &SyntaxNode {
37279 match self {
37280 ColumnConstraint::CheckConstraint(it) => &it.syntax,
37281 ColumnConstraint::DefaultConstraint(it) => &it.syntax,
37282 ColumnConstraint::ExcludeConstraint(it) => &it.syntax,
37283 ColumnConstraint::GeneratedConstraint(it) => &it.syntax,
37284 ColumnConstraint::NotNullConstraint(it) => &it.syntax,
37285 ColumnConstraint::NullConstraint(it) => &it.syntax,
37286 ColumnConstraint::PrimaryKeyConstraint(it) => &it.syntax,
37287 ColumnConstraint::ReferencesConstraint(it) => &it.syntax,
37288 ColumnConstraint::UniqueConstraint(it) => &it.syntax,
37289 }
37290 }
37291}
37292impl From<CheckConstraint> for ColumnConstraint {
37293 #[inline]
37294 fn from(node: CheckConstraint) -> ColumnConstraint {
37295 ColumnConstraint::CheckConstraint(node)
37296 }
37297}
37298impl From<DefaultConstraint> for ColumnConstraint {
37299 #[inline]
37300 fn from(node: DefaultConstraint) -> ColumnConstraint {
37301 ColumnConstraint::DefaultConstraint(node)
37302 }
37303}
37304impl From<ExcludeConstraint> for ColumnConstraint {
37305 #[inline]
37306 fn from(node: ExcludeConstraint) -> ColumnConstraint {
37307 ColumnConstraint::ExcludeConstraint(node)
37308 }
37309}
37310impl From<GeneratedConstraint> for ColumnConstraint {
37311 #[inline]
37312 fn from(node: GeneratedConstraint) -> ColumnConstraint {
37313 ColumnConstraint::GeneratedConstraint(node)
37314 }
37315}
37316impl From<NotNullConstraint> for ColumnConstraint {
37317 #[inline]
37318 fn from(node: NotNullConstraint) -> ColumnConstraint {
37319 ColumnConstraint::NotNullConstraint(node)
37320 }
37321}
37322impl From<NullConstraint> for ColumnConstraint {
37323 #[inline]
37324 fn from(node: NullConstraint) -> ColumnConstraint {
37325 ColumnConstraint::NullConstraint(node)
37326 }
37327}
37328impl From<PrimaryKeyConstraint> for ColumnConstraint {
37329 #[inline]
37330 fn from(node: PrimaryKeyConstraint) -> ColumnConstraint {
37331 ColumnConstraint::PrimaryKeyConstraint(node)
37332 }
37333}
37334impl From<ReferencesConstraint> for ColumnConstraint {
37335 #[inline]
37336 fn from(node: ReferencesConstraint) -> ColumnConstraint {
37337 ColumnConstraint::ReferencesConstraint(node)
37338 }
37339}
37340impl From<UniqueConstraint> for ColumnConstraint {
37341 #[inline]
37342 fn from(node: UniqueConstraint) -> ColumnConstraint {
37343 ColumnConstraint::UniqueConstraint(node)
37344 }
37345}
37346impl AstNode for ConfigValue {
37347 #[inline]
37348 fn can_cast(kind: SyntaxKind) -> bool {
37349 matches!(kind, SyntaxKind::LITERAL | SyntaxKind::NAME_REF)
37350 }
37351 #[inline]
37352 fn cast(syntax: SyntaxNode) -> Option<Self> {
37353 let res = match syntax.kind() {
37354 SyntaxKind::LITERAL => ConfigValue::Literal(Literal { syntax }),
37355 SyntaxKind::NAME_REF => ConfigValue::NameRef(NameRef { syntax }),
37356 _ => {
37357 return None;
37358 }
37359 };
37360 Some(res)
37361 }
37362 #[inline]
37363 fn syntax(&self) -> &SyntaxNode {
37364 match self {
37365 ConfigValue::Literal(it) => &it.syntax,
37366 ConfigValue::NameRef(it) => &it.syntax,
37367 }
37368 }
37369}
37370impl From<Literal> for ConfigValue {
37371 #[inline]
37372 fn from(node: Literal) -> ConfigValue {
37373 ConfigValue::Literal(node)
37374 }
37375}
37376impl From<NameRef> for ConfigValue {
37377 #[inline]
37378 fn from(node: NameRef) -> ConfigValue {
37379 ConfigValue::NameRef(node)
37380 }
37381}
37382impl AstNode for ConflictAction {
37383 #[inline]
37384 fn can_cast(kind: SyntaxKind) -> bool {
37385 matches!(
37386 kind,
37387 SyntaxKind::CONFLICT_DO_NOTHING
37388 | SyntaxKind::CONFLICT_DO_SELECT
37389 | SyntaxKind::CONFLICT_DO_UPDATE_SET
37390 )
37391 }
37392 #[inline]
37393 fn cast(syntax: SyntaxNode) -> Option<Self> {
37394 let res = match syntax.kind() {
37395 SyntaxKind::CONFLICT_DO_NOTHING => {
37396 ConflictAction::ConflictDoNothing(ConflictDoNothing { syntax })
37397 }
37398 SyntaxKind::CONFLICT_DO_SELECT => {
37399 ConflictAction::ConflictDoSelect(ConflictDoSelect { syntax })
37400 }
37401 SyntaxKind::CONFLICT_DO_UPDATE_SET => {
37402 ConflictAction::ConflictDoUpdateSet(ConflictDoUpdateSet { syntax })
37403 }
37404 _ => {
37405 return None;
37406 }
37407 };
37408 Some(res)
37409 }
37410 #[inline]
37411 fn syntax(&self) -> &SyntaxNode {
37412 match self {
37413 ConflictAction::ConflictDoNothing(it) => &it.syntax,
37414 ConflictAction::ConflictDoSelect(it) => &it.syntax,
37415 ConflictAction::ConflictDoUpdateSet(it) => &it.syntax,
37416 }
37417 }
37418}
37419impl From<ConflictDoNothing> for ConflictAction {
37420 #[inline]
37421 fn from(node: ConflictDoNothing) -> ConflictAction {
37422 ConflictAction::ConflictDoNothing(node)
37423 }
37424}
37425impl From<ConflictDoSelect> for ConflictAction {
37426 #[inline]
37427 fn from(node: ConflictDoSelect) -> ConflictAction {
37428 ConflictAction::ConflictDoSelect(node)
37429 }
37430}
37431impl From<ConflictDoUpdateSet> for ConflictAction {
37432 #[inline]
37433 fn from(node: ConflictDoUpdateSet) -> ConflictAction {
37434 ConflictAction::ConflictDoUpdateSet(node)
37435 }
37436}
37437impl AstNode for ConflictTarget {
37438 #[inline]
37439 fn can_cast(kind: SyntaxKind) -> bool {
37440 matches!(
37441 kind,
37442 SyntaxKind::CONFLICT_ON_CONSTRAINT | SyntaxKind::CONFLICT_ON_INDEX
37443 )
37444 }
37445 #[inline]
37446 fn cast(syntax: SyntaxNode) -> Option<Self> {
37447 let res = match syntax.kind() {
37448 SyntaxKind::CONFLICT_ON_CONSTRAINT => {
37449 ConflictTarget::ConflictOnConstraint(ConflictOnConstraint { syntax })
37450 }
37451 SyntaxKind::CONFLICT_ON_INDEX => {
37452 ConflictTarget::ConflictOnIndex(ConflictOnIndex { syntax })
37453 }
37454 _ => {
37455 return None;
37456 }
37457 };
37458 Some(res)
37459 }
37460 #[inline]
37461 fn syntax(&self) -> &SyntaxNode {
37462 match self {
37463 ConflictTarget::ConflictOnConstraint(it) => &it.syntax,
37464 ConflictTarget::ConflictOnIndex(it) => &it.syntax,
37465 }
37466 }
37467}
37468impl From<ConflictOnConstraint> for ConflictTarget {
37469 #[inline]
37470 fn from(node: ConflictOnConstraint) -> ConflictTarget {
37471 ConflictTarget::ConflictOnConstraint(node)
37472 }
37473}
37474impl From<ConflictOnIndex> for ConflictTarget {
37475 #[inline]
37476 fn from(node: ConflictOnIndex) -> ConflictTarget {
37477 ConflictTarget::ConflictOnIndex(node)
37478 }
37479}
37480impl AstNode for Constraint {
37481 #[inline]
37482 fn can_cast(kind: SyntaxKind) -> bool {
37483 matches!(
37484 kind,
37485 SyntaxKind::CHECK_CONSTRAINT
37486 | SyntaxKind::DEFAULT_CONSTRAINT
37487 | SyntaxKind::FOREIGN_KEY_CONSTRAINT
37488 | SyntaxKind::GENERATED_CONSTRAINT
37489 | SyntaxKind::NOT_NULL_CONSTRAINT
37490 | SyntaxKind::NULL_CONSTRAINT
37491 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
37492 | SyntaxKind::REFERENCES_CONSTRAINT
37493 | SyntaxKind::UNIQUE_CONSTRAINT
37494 )
37495 }
37496 #[inline]
37497 fn cast(syntax: SyntaxNode) -> Option<Self> {
37498 let res = match syntax.kind() {
37499 SyntaxKind::CHECK_CONSTRAINT => Constraint::CheckConstraint(CheckConstraint { syntax }),
37500 SyntaxKind::DEFAULT_CONSTRAINT => {
37501 Constraint::DefaultConstraint(DefaultConstraint { syntax })
37502 }
37503 SyntaxKind::FOREIGN_KEY_CONSTRAINT => {
37504 Constraint::ForeignKeyConstraint(ForeignKeyConstraint { syntax })
37505 }
37506 SyntaxKind::GENERATED_CONSTRAINT => {
37507 Constraint::GeneratedConstraint(GeneratedConstraint { syntax })
37508 }
37509 SyntaxKind::NOT_NULL_CONSTRAINT => {
37510 Constraint::NotNullConstraint(NotNullConstraint { syntax })
37511 }
37512 SyntaxKind::NULL_CONSTRAINT => Constraint::NullConstraint(NullConstraint { syntax }),
37513 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
37514 Constraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
37515 }
37516 SyntaxKind::REFERENCES_CONSTRAINT => {
37517 Constraint::ReferencesConstraint(ReferencesConstraint { syntax })
37518 }
37519 SyntaxKind::UNIQUE_CONSTRAINT => {
37520 Constraint::UniqueConstraint(UniqueConstraint { syntax })
37521 }
37522 _ => {
37523 return None;
37524 }
37525 };
37526 Some(res)
37527 }
37528 #[inline]
37529 fn syntax(&self) -> &SyntaxNode {
37530 match self {
37531 Constraint::CheckConstraint(it) => &it.syntax,
37532 Constraint::DefaultConstraint(it) => &it.syntax,
37533 Constraint::ForeignKeyConstraint(it) => &it.syntax,
37534 Constraint::GeneratedConstraint(it) => &it.syntax,
37535 Constraint::NotNullConstraint(it) => &it.syntax,
37536 Constraint::NullConstraint(it) => &it.syntax,
37537 Constraint::PrimaryKeyConstraint(it) => &it.syntax,
37538 Constraint::ReferencesConstraint(it) => &it.syntax,
37539 Constraint::UniqueConstraint(it) => &it.syntax,
37540 }
37541 }
37542}
37543impl From<CheckConstraint> for Constraint {
37544 #[inline]
37545 fn from(node: CheckConstraint) -> Constraint {
37546 Constraint::CheckConstraint(node)
37547 }
37548}
37549impl From<DefaultConstraint> for Constraint {
37550 #[inline]
37551 fn from(node: DefaultConstraint) -> Constraint {
37552 Constraint::DefaultConstraint(node)
37553 }
37554}
37555impl From<ForeignKeyConstraint> for Constraint {
37556 #[inline]
37557 fn from(node: ForeignKeyConstraint) -> Constraint {
37558 Constraint::ForeignKeyConstraint(node)
37559 }
37560}
37561impl From<GeneratedConstraint> for Constraint {
37562 #[inline]
37563 fn from(node: GeneratedConstraint) -> Constraint {
37564 Constraint::GeneratedConstraint(node)
37565 }
37566}
37567impl From<NotNullConstraint> for Constraint {
37568 #[inline]
37569 fn from(node: NotNullConstraint) -> Constraint {
37570 Constraint::NotNullConstraint(node)
37571 }
37572}
37573impl From<NullConstraint> for Constraint {
37574 #[inline]
37575 fn from(node: NullConstraint) -> Constraint {
37576 Constraint::NullConstraint(node)
37577 }
37578}
37579impl From<PrimaryKeyConstraint> for Constraint {
37580 #[inline]
37581 fn from(node: PrimaryKeyConstraint) -> Constraint {
37582 Constraint::PrimaryKeyConstraint(node)
37583 }
37584}
37585impl From<ReferencesConstraint> for Constraint {
37586 #[inline]
37587 fn from(node: ReferencesConstraint) -> Constraint {
37588 Constraint::ReferencesConstraint(node)
37589 }
37590}
37591impl From<UniqueConstraint> for Constraint {
37592 #[inline]
37593 fn from(node: UniqueConstraint) -> Constraint {
37594 Constraint::UniqueConstraint(node)
37595 }
37596}
37597impl AstNode for CreateTableAsQuery {
37598 #[inline]
37599 fn can_cast(kind: SyntaxKind) -> bool {
37600 matches!(kind, SyntaxKind::EXECUTE)
37601 }
37602 #[inline]
37603 fn cast(syntax: SyntaxNode) -> Option<Self> {
37604 let res = match syntax.kind() {
37605 SyntaxKind::EXECUTE => CreateTableAsQuery::Execute(Execute { syntax }),
37606 _ => {
37607 if let Some(result) = SelectVariant::cast(syntax) {
37608 return Some(CreateTableAsQuery::SelectVariant(result));
37609 }
37610 return None;
37611 }
37612 };
37613 Some(res)
37614 }
37615 #[inline]
37616 fn syntax(&self) -> &SyntaxNode {
37617 match self {
37618 CreateTableAsQuery::Execute(it) => &it.syntax,
37619 CreateTableAsQuery::SelectVariant(it) => it.syntax(),
37620 }
37621 }
37622}
37623impl From<Execute> for CreateTableAsQuery {
37624 #[inline]
37625 fn from(node: Execute) -> CreateTableAsQuery {
37626 CreateTableAsQuery::Execute(node)
37627 }
37628}
37629impl AstNode for ElementTableLabelAndProperties {
37630 #[inline]
37631 fn can_cast(kind: SyntaxKind) -> bool {
37632 matches!(kind, SyntaxKind::LABEL_AND_PROPERTIES_LIST)
37633 }
37634 #[inline]
37635 fn cast(syntax: SyntaxNode) -> Option<Self> {
37636 let res = match syntax.kind() {
37637 SyntaxKind::LABEL_AND_PROPERTIES_LIST => {
37638 ElementTableLabelAndProperties::LabelAndPropertiesList(LabelAndPropertiesList {
37639 syntax,
37640 })
37641 }
37642 _ => {
37643 if let Some(result) = ElementTableProperties::cast(syntax) {
37644 return Some(ElementTableLabelAndProperties::ElementTableProperties(
37645 result,
37646 ));
37647 }
37648 return None;
37649 }
37650 };
37651 Some(res)
37652 }
37653 #[inline]
37654 fn syntax(&self) -> &SyntaxNode {
37655 match self {
37656 ElementTableLabelAndProperties::LabelAndPropertiesList(it) => &it.syntax,
37657 ElementTableLabelAndProperties::ElementTableProperties(it) => it.syntax(),
37658 }
37659 }
37660}
37661impl From<LabelAndPropertiesList> for ElementTableLabelAndProperties {
37662 #[inline]
37663 fn from(node: LabelAndPropertiesList) -> ElementTableLabelAndProperties {
37664 ElementTableLabelAndProperties::LabelAndPropertiesList(node)
37665 }
37666}
37667impl AstNode for ElementTableProperties {
37668 #[inline]
37669 fn can_cast(kind: SyntaxKind) -> bool {
37670 matches!(
37671 kind,
37672 SyntaxKind::ALL_PROPERTIES | SyntaxKind::NO_PROPERTIES | SyntaxKind::PROPERTIES
37673 )
37674 }
37675 #[inline]
37676 fn cast(syntax: SyntaxNode) -> Option<Self> {
37677 let res = match syntax.kind() {
37678 SyntaxKind::ALL_PROPERTIES => {
37679 ElementTableProperties::AllProperties(AllProperties { syntax })
37680 }
37681 SyntaxKind::NO_PROPERTIES => {
37682 ElementTableProperties::NoProperties(NoProperties { syntax })
37683 }
37684 SyntaxKind::PROPERTIES => ElementTableProperties::Properties(Properties { syntax }),
37685 _ => {
37686 return None;
37687 }
37688 };
37689 Some(res)
37690 }
37691 #[inline]
37692 fn syntax(&self) -> &SyntaxNode {
37693 match self {
37694 ElementTableProperties::AllProperties(it) => &it.syntax,
37695 ElementTableProperties::NoProperties(it) => &it.syntax,
37696 ElementTableProperties::Properties(it) => &it.syntax,
37697 }
37698 }
37699}
37700impl From<AllProperties> for ElementTableProperties {
37701 #[inline]
37702 fn from(node: AllProperties) -> ElementTableProperties {
37703 ElementTableProperties::AllProperties(node)
37704 }
37705}
37706impl From<NoProperties> for ElementTableProperties {
37707 #[inline]
37708 fn from(node: NoProperties) -> ElementTableProperties {
37709 ElementTableProperties::NoProperties(node)
37710 }
37711}
37712impl From<Properties> for ElementTableProperties {
37713 #[inline]
37714 fn from(node: Properties) -> ElementTableProperties {
37715 ElementTableProperties::Properties(node)
37716 }
37717}
37718impl AstNode for ExplainStmt {
37719 #[inline]
37720 fn can_cast(kind: SyntaxKind) -> bool {
37721 matches!(
37722 kind,
37723 SyntaxKind::COMPOUND_SELECT
37724 | SyntaxKind::CREATE_MATERIALIZED_VIEW
37725 | SyntaxKind::CREATE_TABLE_AS
37726 | SyntaxKind::DECLARE
37727 | SyntaxKind::DELETE
37728 | SyntaxKind::EXECUTE
37729 | SyntaxKind::INSERT
37730 | SyntaxKind::MERGE
37731 | SyntaxKind::PAREN_SELECT
37732 | SyntaxKind::SELECT
37733 | SyntaxKind::SELECT_INTO
37734 | SyntaxKind::TABLE
37735 | SyntaxKind::UPDATE
37736 | SyntaxKind::VALUES
37737 )
37738 }
37739 #[inline]
37740 fn cast(syntax: SyntaxNode) -> Option<Self> {
37741 let res = match syntax.kind() {
37742 SyntaxKind::COMPOUND_SELECT => ExplainStmt::CompoundSelect(CompoundSelect { syntax }),
37743 SyntaxKind::CREATE_MATERIALIZED_VIEW => {
37744 ExplainStmt::CreateMaterializedView(CreateMaterializedView { syntax })
37745 }
37746 SyntaxKind::CREATE_TABLE_AS => ExplainStmt::CreateTableAs(CreateTableAs { syntax }),
37747 SyntaxKind::DECLARE => ExplainStmt::Declare(Declare { syntax }),
37748 SyntaxKind::DELETE => ExplainStmt::Delete(Delete { syntax }),
37749 SyntaxKind::EXECUTE => ExplainStmt::Execute(Execute { syntax }),
37750 SyntaxKind::INSERT => ExplainStmt::Insert(Insert { syntax }),
37751 SyntaxKind::MERGE => ExplainStmt::Merge(Merge { syntax }),
37752 SyntaxKind::PAREN_SELECT => ExplainStmt::ParenSelect(ParenSelect { syntax }),
37753 SyntaxKind::SELECT => ExplainStmt::Select(Select { syntax }),
37754 SyntaxKind::SELECT_INTO => ExplainStmt::SelectInto(SelectInto { syntax }),
37755 SyntaxKind::TABLE => ExplainStmt::Table(Table { syntax }),
37756 SyntaxKind::UPDATE => ExplainStmt::Update(Update { syntax }),
37757 SyntaxKind::VALUES => ExplainStmt::Values(Values { syntax }),
37758 _ => {
37759 return None;
37760 }
37761 };
37762 Some(res)
37763 }
37764 #[inline]
37765 fn syntax(&self) -> &SyntaxNode {
37766 match self {
37767 ExplainStmt::CompoundSelect(it) => &it.syntax,
37768 ExplainStmt::CreateMaterializedView(it) => &it.syntax,
37769 ExplainStmt::CreateTableAs(it) => &it.syntax,
37770 ExplainStmt::Declare(it) => &it.syntax,
37771 ExplainStmt::Delete(it) => &it.syntax,
37772 ExplainStmt::Execute(it) => &it.syntax,
37773 ExplainStmt::Insert(it) => &it.syntax,
37774 ExplainStmt::Merge(it) => &it.syntax,
37775 ExplainStmt::ParenSelect(it) => &it.syntax,
37776 ExplainStmt::Select(it) => &it.syntax,
37777 ExplainStmt::SelectInto(it) => &it.syntax,
37778 ExplainStmt::Table(it) => &it.syntax,
37779 ExplainStmt::Update(it) => &it.syntax,
37780 ExplainStmt::Values(it) => &it.syntax,
37781 }
37782 }
37783}
37784impl From<CompoundSelect> for ExplainStmt {
37785 #[inline]
37786 fn from(node: CompoundSelect) -> ExplainStmt {
37787 ExplainStmt::CompoundSelect(node)
37788 }
37789}
37790impl From<CreateMaterializedView> for ExplainStmt {
37791 #[inline]
37792 fn from(node: CreateMaterializedView) -> ExplainStmt {
37793 ExplainStmt::CreateMaterializedView(node)
37794 }
37795}
37796impl From<CreateTableAs> for ExplainStmt {
37797 #[inline]
37798 fn from(node: CreateTableAs) -> ExplainStmt {
37799 ExplainStmt::CreateTableAs(node)
37800 }
37801}
37802impl From<Declare> for ExplainStmt {
37803 #[inline]
37804 fn from(node: Declare) -> ExplainStmt {
37805 ExplainStmt::Declare(node)
37806 }
37807}
37808impl From<Delete> for ExplainStmt {
37809 #[inline]
37810 fn from(node: Delete) -> ExplainStmt {
37811 ExplainStmt::Delete(node)
37812 }
37813}
37814impl From<Execute> for ExplainStmt {
37815 #[inline]
37816 fn from(node: Execute) -> ExplainStmt {
37817 ExplainStmt::Execute(node)
37818 }
37819}
37820impl From<Insert> for ExplainStmt {
37821 #[inline]
37822 fn from(node: Insert) -> ExplainStmt {
37823 ExplainStmt::Insert(node)
37824 }
37825}
37826impl From<Merge> for ExplainStmt {
37827 #[inline]
37828 fn from(node: Merge) -> ExplainStmt {
37829 ExplainStmt::Merge(node)
37830 }
37831}
37832impl From<ParenSelect> for ExplainStmt {
37833 #[inline]
37834 fn from(node: ParenSelect) -> ExplainStmt {
37835 ExplainStmt::ParenSelect(node)
37836 }
37837}
37838impl From<Select> for ExplainStmt {
37839 #[inline]
37840 fn from(node: Select) -> ExplainStmt {
37841 ExplainStmt::Select(node)
37842 }
37843}
37844impl From<SelectInto> for ExplainStmt {
37845 #[inline]
37846 fn from(node: SelectInto) -> ExplainStmt {
37847 ExplainStmt::SelectInto(node)
37848 }
37849}
37850impl From<Table> for ExplainStmt {
37851 #[inline]
37852 fn from(node: Table) -> ExplainStmt {
37853 ExplainStmt::Table(node)
37854 }
37855}
37856impl From<Update> for ExplainStmt {
37857 #[inline]
37858 fn from(node: Update) -> ExplainStmt {
37859 ExplainStmt::Update(node)
37860 }
37861}
37862impl From<Values> for ExplainStmt {
37863 #[inline]
37864 fn from(node: Values) -> ExplainStmt {
37865 ExplainStmt::Values(node)
37866 }
37867}
37868impl AstNode for Expr {
37869 #[inline]
37870 fn can_cast(kind: SyntaxKind) -> bool {
37871 matches!(
37872 kind,
37873 SyntaxKind::ARRAY_EXPR
37874 | SyntaxKind::BETWEEN_EXPR
37875 | SyntaxKind::BIN_EXPR
37876 | SyntaxKind::CALL_EXPR
37877 | SyntaxKind::CASE_EXPR
37878 | SyntaxKind::CAST_EXPR
37879 | SyntaxKind::FIELD_EXPR
37880 | SyntaxKind::INDEX_EXPR
37881 | SyntaxKind::LITERAL
37882 | SyntaxKind::NAME_REF
37883 | SyntaxKind::PAREN_EXPR
37884 | SyntaxKind::POSTFIX_EXPR
37885 | SyntaxKind::PREFIX_EXPR
37886 | SyntaxKind::SLICE_EXPR
37887 | SyntaxKind::TUPLE_EXPR
37888 )
37889 }
37890 #[inline]
37891 fn cast(syntax: SyntaxNode) -> Option<Self> {
37892 let res = match syntax.kind() {
37893 SyntaxKind::ARRAY_EXPR => Expr::ArrayExpr(ArrayExpr { syntax }),
37894 SyntaxKind::BETWEEN_EXPR => Expr::BetweenExpr(BetweenExpr { syntax }),
37895 SyntaxKind::BIN_EXPR => Expr::BinExpr(BinExpr { syntax }),
37896 SyntaxKind::CALL_EXPR => Expr::CallExpr(CallExpr { syntax }),
37897 SyntaxKind::CASE_EXPR => Expr::CaseExpr(CaseExpr { syntax }),
37898 SyntaxKind::CAST_EXPR => Expr::CastExpr(CastExpr { syntax }),
37899 SyntaxKind::FIELD_EXPR => Expr::FieldExpr(FieldExpr { syntax }),
37900 SyntaxKind::INDEX_EXPR => Expr::IndexExpr(IndexExpr { syntax }),
37901 SyntaxKind::LITERAL => Expr::Literal(Literal { syntax }),
37902 SyntaxKind::NAME_REF => Expr::NameRef(NameRef { syntax }),
37903 SyntaxKind::PAREN_EXPR => Expr::ParenExpr(ParenExpr { syntax }),
37904 SyntaxKind::POSTFIX_EXPR => Expr::PostfixExpr(PostfixExpr { syntax }),
37905 SyntaxKind::PREFIX_EXPR => Expr::PrefixExpr(PrefixExpr { syntax }),
37906 SyntaxKind::SLICE_EXPR => Expr::SliceExpr(SliceExpr { syntax }),
37907 SyntaxKind::TUPLE_EXPR => Expr::TupleExpr(TupleExpr { syntax }),
37908 _ => {
37909 return None;
37910 }
37911 };
37912 Some(res)
37913 }
37914 #[inline]
37915 fn syntax(&self) -> &SyntaxNode {
37916 match self {
37917 Expr::ArrayExpr(it) => &it.syntax,
37918 Expr::BetweenExpr(it) => &it.syntax,
37919 Expr::BinExpr(it) => &it.syntax,
37920 Expr::CallExpr(it) => &it.syntax,
37921 Expr::CaseExpr(it) => &it.syntax,
37922 Expr::CastExpr(it) => &it.syntax,
37923 Expr::FieldExpr(it) => &it.syntax,
37924 Expr::IndexExpr(it) => &it.syntax,
37925 Expr::Literal(it) => &it.syntax,
37926 Expr::NameRef(it) => &it.syntax,
37927 Expr::ParenExpr(it) => &it.syntax,
37928 Expr::PostfixExpr(it) => &it.syntax,
37929 Expr::PrefixExpr(it) => &it.syntax,
37930 Expr::SliceExpr(it) => &it.syntax,
37931 Expr::TupleExpr(it) => &it.syntax,
37932 }
37933 }
37934}
37935impl From<ArrayExpr> for Expr {
37936 #[inline]
37937 fn from(node: ArrayExpr) -> Expr {
37938 Expr::ArrayExpr(node)
37939 }
37940}
37941impl From<BetweenExpr> for Expr {
37942 #[inline]
37943 fn from(node: BetweenExpr) -> Expr {
37944 Expr::BetweenExpr(node)
37945 }
37946}
37947impl From<BinExpr> for Expr {
37948 #[inline]
37949 fn from(node: BinExpr) -> Expr {
37950 Expr::BinExpr(node)
37951 }
37952}
37953impl From<CallExpr> for Expr {
37954 #[inline]
37955 fn from(node: CallExpr) -> Expr {
37956 Expr::CallExpr(node)
37957 }
37958}
37959impl From<CaseExpr> for Expr {
37960 #[inline]
37961 fn from(node: CaseExpr) -> Expr {
37962 Expr::CaseExpr(node)
37963 }
37964}
37965impl From<CastExpr> for Expr {
37966 #[inline]
37967 fn from(node: CastExpr) -> Expr {
37968 Expr::CastExpr(node)
37969 }
37970}
37971impl From<FieldExpr> for Expr {
37972 #[inline]
37973 fn from(node: FieldExpr) -> Expr {
37974 Expr::FieldExpr(node)
37975 }
37976}
37977impl From<IndexExpr> for Expr {
37978 #[inline]
37979 fn from(node: IndexExpr) -> Expr {
37980 Expr::IndexExpr(node)
37981 }
37982}
37983impl From<Literal> for Expr {
37984 #[inline]
37985 fn from(node: Literal) -> Expr {
37986 Expr::Literal(node)
37987 }
37988}
37989impl From<NameRef> for Expr {
37990 #[inline]
37991 fn from(node: NameRef) -> Expr {
37992 Expr::NameRef(node)
37993 }
37994}
37995impl From<ParenExpr> for Expr {
37996 #[inline]
37997 fn from(node: ParenExpr) -> Expr {
37998 Expr::ParenExpr(node)
37999 }
38000}
38001impl From<PostfixExpr> for Expr {
38002 #[inline]
38003 fn from(node: PostfixExpr) -> Expr {
38004 Expr::PostfixExpr(node)
38005 }
38006}
38007impl From<PrefixExpr> for Expr {
38008 #[inline]
38009 fn from(node: PrefixExpr) -> Expr {
38010 Expr::PrefixExpr(node)
38011 }
38012}
38013impl From<SliceExpr> for Expr {
38014 #[inline]
38015 fn from(node: SliceExpr) -> Expr {
38016 Expr::SliceExpr(node)
38017 }
38018}
38019impl From<TupleExpr> for Expr {
38020 #[inline]
38021 fn from(node: TupleExpr) -> Expr {
38022 Expr::TupleExpr(node)
38023 }
38024}
38025impl AstNode for FrameBound {
38026 #[inline]
38027 fn can_cast(kind: SyntaxKind) -> bool {
38028 matches!(
38029 kind,
38030 SyntaxKind::CURRENT_ROW
38031 | SyntaxKind::EXPR_FOLLOWING
38032 | SyntaxKind::EXPR_PRECEDING
38033 | SyntaxKind::UNBOUNDED_FOLLOWING
38034 | SyntaxKind::UNBOUNDED_PRECEDING
38035 )
38036 }
38037 #[inline]
38038 fn cast(syntax: SyntaxNode) -> Option<Self> {
38039 let res = match syntax.kind() {
38040 SyntaxKind::CURRENT_ROW => FrameBound::CurrentRow(CurrentRow { syntax }),
38041 SyntaxKind::EXPR_FOLLOWING => FrameBound::ExprFollowing(ExprFollowing { syntax }),
38042 SyntaxKind::EXPR_PRECEDING => FrameBound::ExprPreceding(ExprPreceding { syntax }),
38043 SyntaxKind::UNBOUNDED_FOLLOWING => {
38044 FrameBound::UnboundedFollowing(UnboundedFollowing { syntax })
38045 }
38046 SyntaxKind::UNBOUNDED_PRECEDING => {
38047 FrameBound::UnboundedPreceding(UnboundedPreceding { syntax })
38048 }
38049 _ => {
38050 return None;
38051 }
38052 };
38053 Some(res)
38054 }
38055 #[inline]
38056 fn syntax(&self) -> &SyntaxNode {
38057 match self {
38058 FrameBound::CurrentRow(it) => &it.syntax,
38059 FrameBound::ExprFollowing(it) => &it.syntax,
38060 FrameBound::ExprPreceding(it) => &it.syntax,
38061 FrameBound::UnboundedFollowing(it) => &it.syntax,
38062 FrameBound::UnboundedPreceding(it) => &it.syntax,
38063 }
38064 }
38065}
38066impl From<CurrentRow> for FrameBound {
38067 #[inline]
38068 fn from(node: CurrentRow) -> FrameBound {
38069 FrameBound::CurrentRow(node)
38070 }
38071}
38072impl From<ExprFollowing> for FrameBound {
38073 #[inline]
38074 fn from(node: ExprFollowing) -> FrameBound {
38075 FrameBound::ExprFollowing(node)
38076 }
38077}
38078impl From<ExprPreceding> for FrameBound {
38079 #[inline]
38080 fn from(node: ExprPreceding) -> FrameBound {
38081 FrameBound::ExprPreceding(node)
38082 }
38083}
38084impl From<UnboundedFollowing> for FrameBound {
38085 #[inline]
38086 fn from(node: UnboundedFollowing) -> FrameBound {
38087 FrameBound::UnboundedFollowing(node)
38088 }
38089}
38090impl From<UnboundedPreceding> for FrameBound {
38091 #[inline]
38092 fn from(node: UnboundedPreceding) -> FrameBound {
38093 FrameBound::UnboundedPreceding(node)
38094 }
38095}
38096impl AstNode for FuncOption {
38097 #[inline]
38098 fn can_cast(kind: SyntaxKind) -> bool {
38099 matches!(
38100 kind,
38101 SyntaxKind::AS_FUNC_OPTION
38102 | SyntaxKind::BEGIN_FUNC_OPTION_LIST
38103 | SyntaxKind::COST_FUNC_OPTION
38104 | SyntaxKind::LANGUAGE_FUNC_OPTION
38105 | SyntaxKind::LEAKPROOF_FUNC_OPTION
38106 | SyntaxKind::PARALLEL_FUNC_OPTION
38107 | SyntaxKind::RESET_FUNC_OPTION
38108 | SyntaxKind::RETURN_FUNC_OPTION
38109 | SyntaxKind::ROWS_FUNC_OPTION
38110 | SyntaxKind::SECURITY_FUNC_OPTION
38111 | SyntaxKind::SET_FUNC_OPTION
38112 | SyntaxKind::STRICT_FUNC_OPTION
38113 | SyntaxKind::SUPPORT_FUNC_OPTION
38114 | SyntaxKind::TRANSFORM_FUNC_OPTION
38115 | SyntaxKind::VOLATILITY_FUNC_OPTION
38116 | SyntaxKind::WINDOW_FUNC_OPTION
38117 )
38118 }
38119 #[inline]
38120 fn cast(syntax: SyntaxNode) -> Option<Self> {
38121 let res = match syntax.kind() {
38122 SyntaxKind::AS_FUNC_OPTION => FuncOption::AsFuncOption(AsFuncOption { syntax }),
38123 SyntaxKind::BEGIN_FUNC_OPTION_LIST => {
38124 FuncOption::BeginFuncOptionList(BeginFuncOptionList { syntax })
38125 }
38126 SyntaxKind::COST_FUNC_OPTION => FuncOption::CostFuncOption(CostFuncOption { syntax }),
38127 SyntaxKind::LANGUAGE_FUNC_OPTION => {
38128 FuncOption::LanguageFuncOption(LanguageFuncOption { syntax })
38129 }
38130 SyntaxKind::LEAKPROOF_FUNC_OPTION => {
38131 FuncOption::LeakproofFuncOption(LeakproofFuncOption { syntax })
38132 }
38133 SyntaxKind::PARALLEL_FUNC_OPTION => {
38134 FuncOption::ParallelFuncOption(ParallelFuncOption { syntax })
38135 }
38136 SyntaxKind::RESET_FUNC_OPTION => {
38137 FuncOption::ResetFuncOption(ResetFuncOption { syntax })
38138 }
38139 SyntaxKind::RETURN_FUNC_OPTION => {
38140 FuncOption::ReturnFuncOption(ReturnFuncOption { syntax })
38141 }
38142 SyntaxKind::ROWS_FUNC_OPTION => FuncOption::RowsFuncOption(RowsFuncOption { syntax }),
38143 SyntaxKind::SECURITY_FUNC_OPTION => {
38144 FuncOption::SecurityFuncOption(SecurityFuncOption { syntax })
38145 }
38146 SyntaxKind::SET_FUNC_OPTION => FuncOption::SetFuncOption(SetFuncOption { syntax }),
38147 SyntaxKind::STRICT_FUNC_OPTION => {
38148 FuncOption::StrictFuncOption(StrictFuncOption { syntax })
38149 }
38150 SyntaxKind::SUPPORT_FUNC_OPTION => {
38151 FuncOption::SupportFuncOption(SupportFuncOption { syntax })
38152 }
38153 SyntaxKind::TRANSFORM_FUNC_OPTION => {
38154 FuncOption::TransformFuncOption(TransformFuncOption { syntax })
38155 }
38156 SyntaxKind::VOLATILITY_FUNC_OPTION => {
38157 FuncOption::VolatilityFuncOption(VolatilityFuncOption { syntax })
38158 }
38159 SyntaxKind::WINDOW_FUNC_OPTION => {
38160 FuncOption::WindowFuncOption(WindowFuncOption { syntax })
38161 }
38162 _ => {
38163 return None;
38164 }
38165 };
38166 Some(res)
38167 }
38168 #[inline]
38169 fn syntax(&self) -> &SyntaxNode {
38170 match self {
38171 FuncOption::AsFuncOption(it) => &it.syntax,
38172 FuncOption::BeginFuncOptionList(it) => &it.syntax,
38173 FuncOption::CostFuncOption(it) => &it.syntax,
38174 FuncOption::LanguageFuncOption(it) => &it.syntax,
38175 FuncOption::LeakproofFuncOption(it) => &it.syntax,
38176 FuncOption::ParallelFuncOption(it) => &it.syntax,
38177 FuncOption::ResetFuncOption(it) => &it.syntax,
38178 FuncOption::ReturnFuncOption(it) => &it.syntax,
38179 FuncOption::RowsFuncOption(it) => &it.syntax,
38180 FuncOption::SecurityFuncOption(it) => &it.syntax,
38181 FuncOption::SetFuncOption(it) => &it.syntax,
38182 FuncOption::StrictFuncOption(it) => &it.syntax,
38183 FuncOption::SupportFuncOption(it) => &it.syntax,
38184 FuncOption::TransformFuncOption(it) => &it.syntax,
38185 FuncOption::VolatilityFuncOption(it) => &it.syntax,
38186 FuncOption::WindowFuncOption(it) => &it.syntax,
38187 }
38188 }
38189}
38190impl From<AsFuncOption> for FuncOption {
38191 #[inline]
38192 fn from(node: AsFuncOption) -> FuncOption {
38193 FuncOption::AsFuncOption(node)
38194 }
38195}
38196impl From<BeginFuncOptionList> for FuncOption {
38197 #[inline]
38198 fn from(node: BeginFuncOptionList) -> FuncOption {
38199 FuncOption::BeginFuncOptionList(node)
38200 }
38201}
38202impl From<CostFuncOption> for FuncOption {
38203 #[inline]
38204 fn from(node: CostFuncOption) -> FuncOption {
38205 FuncOption::CostFuncOption(node)
38206 }
38207}
38208impl From<LanguageFuncOption> for FuncOption {
38209 #[inline]
38210 fn from(node: LanguageFuncOption) -> FuncOption {
38211 FuncOption::LanguageFuncOption(node)
38212 }
38213}
38214impl From<LeakproofFuncOption> for FuncOption {
38215 #[inline]
38216 fn from(node: LeakproofFuncOption) -> FuncOption {
38217 FuncOption::LeakproofFuncOption(node)
38218 }
38219}
38220impl From<ParallelFuncOption> for FuncOption {
38221 #[inline]
38222 fn from(node: ParallelFuncOption) -> FuncOption {
38223 FuncOption::ParallelFuncOption(node)
38224 }
38225}
38226impl From<ResetFuncOption> for FuncOption {
38227 #[inline]
38228 fn from(node: ResetFuncOption) -> FuncOption {
38229 FuncOption::ResetFuncOption(node)
38230 }
38231}
38232impl From<ReturnFuncOption> for FuncOption {
38233 #[inline]
38234 fn from(node: ReturnFuncOption) -> FuncOption {
38235 FuncOption::ReturnFuncOption(node)
38236 }
38237}
38238impl From<RowsFuncOption> for FuncOption {
38239 #[inline]
38240 fn from(node: RowsFuncOption) -> FuncOption {
38241 FuncOption::RowsFuncOption(node)
38242 }
38243}
38244impl From<SecurityFuncOption> for FuncOption {
38245 #[inline]
38246 fn from(node: SecurityFuncOption) -> FuncOption {
38247 FuncOption::SecurityFuncOption(node)
38248 }
38249}
38250impl From<SetFuncOption> for FuncOption {
38251 #[inline]
38252 fn from(node: SetFuncOption) -> FuncOption {
38253 FuncOption::SetFuncOption(node)
38254 }
38255}
38256impl From<StrictFuncOption> for FuncOption {
38257 #[inline]
38258 fn from(node: StrictFuncOption) -> FuncOption {
38259 FuncOption::StrictFuncOption(node)
38260 }
38261}
38262impl From<SupportFuncOption> for FuncOption {
38263 #[inline]
38264 fn from(node: SupportFuncOption) -> FuncOption {
38265 FuncOption::SupportFuncOption(node)
38266 }
38267}
38268impl From<TransformFuncOption> for FuncOption {
38269 #[inline]
38270 fn from(node: TransformFuncOption) -> FuncOption {
38271 FuncOption::TransformFuncOption(node)
38272 }
38273}
38274impl From<VolatilityFuncOption> for FuncOption {
38275 #[inline]
38276 fn from(node: VolatilityFuncOption) -> FuncOption {
38277 FuncOption::VolatilityFuncOption(node)
38278 }
38279}
38280impl From<WindowFuncOption> for FuncOption {
38281 #[inline]
38282 fn from(node: WindowFuncOption) -> FuncOption {
38283 FuncOption::WindowFuncOption(node)
38284 }
38285}
38286impl AstNode for GroupBy {
38287 #[inline]
38288 fn can_cast(kind: SyntaxKind) -> bool {
38289 matches!(
38290 kind,
38291 SyntaxKind::GROUPING_CUBE
38292 | SyntaxKind::GROUPING_EXPR
38293 | SyntaxKind::GROUPING_ROLLUP
38294 | SyntaxKind::GROUPING_SETS
38295 )
38296 }
38297 #[inline]
38298 fn cast(syntax: SyntaxNode) -> Option<Self> {
38299 let res = match syntax.kind() {
38300 SyntaxKind::GROUPING_CUBE => GroupBy::GroupingCube(GroupingCube { syntax }),
38301 SyntaxKind::GROUPING_EXPR => GroupBy::GroupingExpr(GroupingExpr { syntax }),
38302 SyntaxKind::GROUPING_ROLLUP => GroupBy::GroupingRollup(GroupingRollup { syntax }),
38303 SyntaxKind::GROUPING_SETS => GroupBy::GroupingSets(GroupingSets { syntax }),
38304 _ => {
38305 return None;
38306 }
38307 };
38308 Some(res)
38309 }
38310 #[inline]
38311 fn syntax(&self) -> &SyntaxNode {
38312 match self {
38313 GroupBy::GroupingCube(it) => &it.syntax,
38314 GroupBy::GroupingExpr(it) => &it.syntax,
38315 GroupBy::GroupingRollup(it) => &it.syntax,
38316 GroupBy::GroupingSets(it) => &it.syntax,
38317 }
38318 }
38319}
38320impl From<GroupingCube> for GroupBy {
38321 #[inline]
38322 fn from(node: GroupingCube) -> GroupBy {
38323 GroupBy::GroupingCube(node)
38324 }
38325}
38326impl From<GroupingExpr> for GroupBy {
38327 #[inline]
38328 fn from(node: GroupingExpr) -> GroupBy {
38329 GroupBy::GroupingExpr(node)
38330 }
38331}
38332impl From<GroupingRollup> for GroupBy {
38333 #[inline]
38334 fn from(node: GroupingRollup) -> GroupBy {
38335 GroupBy::GroupingRollup(node)
38336 }
38337}
38338impl From<GroupingSets> for GroupBy {
38339 #[inline]
38340 fn from(node: GroupingSets) -> GroupBy {
38341 GroupBy::GroupingSets(node)
38342 }
38343}
38344impl AstNode for JoinType {
38345 #[inline]
38346 fn can_cast(kind: SyntaxKind) -> bool {
38347 matches!(
38348 kind,
38349 SyntaxKind::JOIN_CROSS
38350 | SyntaxKind::JOIN_FULL
38351 | SyntaxKind::JOIN_INNER
38352 | SyntaxKind::JOIN_LEFT
38353 | SyntaxKind::JOIN_RIGHT
38354 )
38355 }
38356 #[inline]
38357 fn cast(syntax: SyntaxNode) -> Option<Self> {
38358 let res = match syntax.kind() {
38359 SyntaxKind::JOIN_CROSS => JoinType::JoinCross(JoinCross { syntax }),
38360 SyntaxKind::JOIN_FULL => JoinType::JoinFull(JoinFull { syntax }),
38361 SyntaxKind::JOIN_INNER => JoinType::JoinInner(JoinInner { syntax }),
38362 SyntaxKind::JOIN_LEFT => JoinType::JoinLeft(JoinLeft { syntax }),
38363 SyntaxKind::JOIN_RIGHT => JoinType::JoinRight(JoinRight { syntax }),
38364 _ => {
38365 return None;
38366 }
38367 };
38368 Some(res)
38369 }
38370 #[inline]
38371 fn syntax(&self) -> &SyntaxNode {
38372 match self {
38373 JoinType::JoinCross(it) => &it.syntax,
38374 JoinType::JoinFull(it) => &it.syntax,
38375 JoinType::JoinInner(it) => &it.syntax,
38376 JoinType::JoinLeft(it) => &it.syntax,
38377 JoinType::JoinRight(it) => &it.syntax,
38378 }
38379 }
38380}
38381impl From<JoinCross> for JoinType {
38382 #[inline]
38383 fn from(node: JoinCross) -> JoinType {
38384 JoinType::JoinCross(node)
38385 }
38386}
38387impl From<JoinFull> for JoinType {
38388 #[inline]
38389 fn from(node: JoinFull) -> JoinType {
38390 JoinType::JoinFull(node)
38391 }
38392}
38393impl From<JoinInner> for JoinType {
38394 #[inline]
38395 fn from(node: JoinInner) -> JoinType {
38396 JoinType::JoinInner(node)
38397 }
38398}
38399impl From<JoinLeft> for JoinType {
38400 #[inline]
38401 fn from(node: JoinLeft) -> JoinType {
38402 JoinType::JoinLeft(node)
38403 }
38404}
38405impl From<JoinRight> for JoinType {
38406 #[inline]
38407 fn from(node: JoinRight) -> JoinType {
38408 JoinType::JoinRight(node)
38409 }
38410}
38411impl AstNode for JsonBehavior {
38412 #[inline]
38413 fn can_cast(kind: SyntaxKind) -> bool {
38414 matches!(
38415 kind,
38416 SyntaxKind::JSON_BEHAVIOR_DEFAULT
38417 | SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY
38418 | SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT
38419 | SyntaxKind::JSON_BEHAVIOR_ERROR
38420 | SyntaxKind::JSON_BEHAVIOR_FALSE
38421 | SyntaxKind::JSON_BEHAVIOR_NULL
38422 | SyntaxKind::JSON_BEHAVIOR_TRUE
38423 | SyntaxKind::JSON_BEHAVIOR_UNKNOWN
38424 )
38425 }
38426 #[inline]
38427 fn cast(syntax: SyntaxNode) -> Option<Self> {
38428 let res = match syntax.kind() {
38429 SyntaxKind::JSON_BEHAVIOR_DEFAULT => {
38430 JsonBehavior::JsonBehaviorDefault(JsonBehaviorDefault { syntax })
38431 }
38432 SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY => {
38433 JsonBehavior::JsonBehaviorEmptyArray(JsonBehaviorEmptyArray { syntax })
38434 }
38435 SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT => {
38436 JsonBehavior::JsonBehaviorEmptyObject(JsonBehaviorEmptyObject { syntax })
38437 }
38438 SyntaxKind::JSON_BEHAVIOR_ERROR => {
38439 JsonBehavior::JsonBehaviorError(JsonBehaviorError { syntax })
38440 }
38441 SyntaxKind::JSON_BEHAVIOR_FALSE => {
38442 JsonBehavior::JsonBehaviorFalse(JsonBehaviorFalse { syntax })
38443 }
38444 SyntaxKind::JSON_BEHAVIOR_NULL => {
38445 JsonBehavior::JsonBehaviorNull(JsonBehaviorNull { syntax })
38446 }
38447 SyntaxKind::JSON_BEHAVIOR_TRUE => {
38448 JsonBehavior::JsonBehaviorTrue(JsonBehaviorTrue { syntax })
38449 }
38450 SyntaxKind::JSON_BEHAVIOR_UNKNOWN => {
38451 JsonBehavior::JsonBehaviorUnknown(JsonBehaviorUnknown { syntax })
38452 }
38453 _ => {
38454 return None;
38455 }
38456 };
38457 Some(res)
38458 }
38459 #[inline]
38460 fn syntax(&self) -> &SyntaxNode {
38461 match self {
38462 JsonBehavior::JsonBehaviorDefault(it) => &it.syntax,
38463 JsonBehavior::JsonBehaviorEmptyArray(it) => &it.syntax,
38464 JsonBehavior::JsonBehaviorEmptyObject(it) => &it.syntax,
38465 JsonBehavior::JsonBehaviorError(it) => &it.syntax,
38466 JsonBehavior::JsonBehaviorFalse(it) => &it.syntax,
38467 JsonBehavior::JsonBehaviorNull(it) => &it.syntax,
38468 JsonBehavior::JsonBehaviorTrue(it) => &it.syntax,
38469 JsonBehavior::JsonBehaviorUnknown(it) => &it.syntax,
38470 }
38471 }
38472}
38473impl From<JsonBehaviorDefault> for JsonBehavior {
38474 #[inline]
38475 fn from(node: JsonBehaviorDefault) -> JsonBehavior {
38476 JsonBehavior::JsonBehaviorDefault(node)
38477 }
38478}
38479impl From<JsonBehaviorEmptyArray> for JsonBehavior {
38480 #[inline]
38481 fn from(node: JsonBehaviorEmptyArray) -> JsonBehavior {
38482 JsonBehavior::JsonBehaviorEmptyArray(node)
38483 }
38484}
38485impl From<JsonBehaviorEmptyObject> for JsonBehavior {
38486 #[inline]
38487 fn from(node: JsonBehaviorEmptyObject) -> JsonBehavior {
38488 JsonBehavior::JsonBehaviorEmptyObject(node)
38489 }
38490}
38491impl From<JsonBehaviorError> for JsonBehavior {
38492 #[inline]
38493 fn from(node: JsonBehaviorError) -> JsonBehavior {
38494 JsonBehavior::JsonBehaviorError(node)
38495 }
38496}
38497impl From<JsonBehaviorFalse> for JsonBehavior {
38498 #[inline]
38499 fn from(node: JsonBehaviorFalse) -> JsonBehavior {
38500 JsonBehavior::JsonBehaviorFalse(node)
38501 }
38502}
38503impl From<JsonBehaviorNull> for JsonBehavior {
38504 #[inline]
38505 fn from(node: JsonBehaviorNull) -> JsonBehavior {
38506 JsonBehavior::JsonBehaviorNull(node)
38507 }
38508}
38509impl From<JsonBehaviorTrue> for JsonBehavior {
38510 #[inline]
38511 fn from(node: JsonBehaviorTrue) -> JsonBehavior {
38512 JsonBehavior::JsonBehaviorTrue(node)
38513 }
38514}
38515impl From<JsonBehaviorUnknown> for JsonBehavior {
38516 #[inline]
38517 fn from(node: JsonBehaviorUnknown) -> JsonBehavior {
38518 JsonBehavior::JsonBehaviorUnknown(node)
38519 }
38520}
38521impl AstNode for LockMode {
38522 #[inline]
38523 fn can_cast(kind: SyntaxKind) -> bool {
38524 matches!(
38525 kind,
38526 SyntaxKind::ACCESS_EXCLUSIVE
38527 | SyntaxKind::ACCESS_SHARE
38528 | SyntaxKind::EXCLUSIVE
38529 | SyntaxKind::ROW_EXCLUSIVE
38530 | SyntaxKind::ROW_SHARE
38531 | SyntaxKind::SHARE
38532 | SyntaxKind::SHARE_ROW_EXCLUSIVE
38533 | SyntaxKind::SHARE_UPDATE_EXCLUSIVE
38534 )
38535 }
38536 #[inline]
38537 fn cast(syntax: SyntaxNode) -> Option<Self> {
38538 let res = match syntax.kind() {
38539 SyntaxKind::ACCESS_EXCLUSIVE => LockMode::AccessExclusive(AccessExclusive { syntax }),
38540 SyntaxKind::ACCESS_SHARE => LockMode::AccessShare(AccessShare { syntax }),
38541 SyntaxKind::EXCLUSIVE => LockMode::Exclusive(Exclusive { syntax }),
38542 SyntaxKind::ROW_EXCLUSIVE => LockMode::RowExclusive(RowExclusive { syntax }),
38543 SyntaxKind::ROW_SHARE => LockMode::RowShare(RowShare { syntax }),
38544 SyntaxKind::SHARE => LockMode::Share(Share { syntax }),
38545 SyntaxKind::SHARE_ROW_EXCLUSIVE => {
38546 LockMode::ShareRowExclusive(ShareRowExclusive { syntax })
38547 }
38548 SyntaxKind::SHARE_UPDATE_EXCLUSIVE => {
38549 LockMode::ShareUpdateExclusive(ShareUpdateExclusive { syntax })
38550 }
38551 _ => {
38552 return None;
38553 }
38554 };
38555 Some(res)
38556 }
38557 #[inline]
38558 fn syntax(&self) -> &SyntaxNode {
38559 match self {
38560 LockMode::AccessExclusive(it) => &it.syntax,
38561 LockMode::AccessShare(it) => &it.syntax,
38562 LockMode::Exclusive(it) => &it.syntax,
38563 LockMode::RowExclusive(it) => &it.syntax,
38564 LockMode::RowShare(it) => &it.syntax,
38565 LockMode::Share(it) => &it.syntax,
38566 LockMode::ShareRowExclusive(it) => &it.syntax,
38567 LockMode::ShareUpdateExclusive(it) => &it.syntax,
38568 }
38569 }
38570}
38571impl From<AccessExclusive> for LockMode {
38572 #[inline]
38573 fn from(node: AccessExclusive) -> LockMode {
38574 LockMode::AccessExclusive(node)
38575 }
38576}
38577impl From<AccessShare> for LockMode {
38578 #[inline]
38579 fn from(node: AccessShare) -> LockMode {
38580 LockMode::AccessShare(node)
38581 }
38582}
38583impl From<Exclusive> for LockMode {
38584 #[inline]
38585 fn from(node: Exclusive) -> LockMode {
38586 LockMode::Exclusive(node)
38587 }
38588}
38589impl From<RowExclusive> for LockMode {
38590 #[inline]
38591 fn from(node: RowExclusive) -> LockMode {
38592 LockMode::RowExclusive(node)
38593 }
38594}
38595impl From<RowShare> for LockMode {
38596 #[inline]
38597 fn from(node: RowShare) -> LockMode {
38598 LockMode::RowShare(node)
38599 }
38600}
38601impl From<Share> for LockMode {
38602 #[inline]
38603 fn from(node: Share) -> LockMode {
38604 LockMode::Share(node)
38605 }
38606}
38607impl From<ShareRowExclusive> for LockMode {
38608 #[inline]
38609 fn from(node: ShareRowExclusive) -> LockMode {
38610 LockMode::ShareRowExclusive(node)
38611 }
38612}
38613impl From<ShareUpdateExclusive> for LockMode {
38614 #[inline]
38615 fn from(node: ShareUpdateExclusive) -> LockMode {
38616 LockMode::ShareUpdateExclusive(node)
38617 }
38618}
38619impl AstNode for MatchType {
38620 #[inline]
38621 fn can_cast(kind: SyntaxKind) -> bool {
38622 matches!(
38623 kind,
38624 SyntaxKind::MATCH_FULL | SyntaxKind::MATCH_PARTIAL | SyntaxKind::MATCH_SIMPLE
38625 )
38626 }
38627 #[inline]
38628 fn cast(syntax: SyntaxNode) -> Option<Self> {
38629 let res = match syntax.kind() {
38630 SyntaxKind::MATCH_FULL => MatchType::MatchFull(MatchFull { syntax }),
38631 SyntaxKind::MATCH_PARTIAL => MatchType::MatchPartial(MatchPartial { syntax }),
38632 SyntaxKind::MATCH_SIMPLE => MatchType::MatchSimple(MatchSimple { syntax }),
38633 _ => {
38634 return None;
38635 }
38636 };
38637 Some(res)
38638 }
38639 #[inline]
38640 fn syntax(&self) -> &SyntaxNode {
38641 match self {
38642 MatchType::MatchFull(it) => &it.syntax,
38643 MatchType::MatchPartial(it) => &it.syntax,
38644 MatchType::MatchSimple(it) => &it.syntax,
38645 }
38646 }
38647}
38648impl From<MatchFull> for MatchType {
38649 #[inline]
38650 fn from(node: MatchFull) -> MatchType {
38651 MatchType::MatchFull(node)
38652 }
38653}
38654impl From<MatchPartial> for MatchType {
38655 #[inline]
38656 fn from(node: MatchPartial) -> MatchType {
38657 MatchType::MatchPartial(node)
38658 }
38659}
38660impl From<MatchSimple> for MatchType {
38661 #[inline]
38662 fn from(node: MatchSimple) -> MatchType {
38663 MatchType::MatchSimple(node)
38664 }
38665}
38666impl AstNode for MergeAction {
38667 #[inline]
38668 fn can_cast(kind: SyntaxKind) -> bool {
38669 matches!(
38670 kind,
38671 SyntaxKind::MERGE_DELETE
38672 | SyntaxKind::MERGE_DO_NOTHING
38673 | SyntaxKind::MERGE_INSERT
38674 | SyntaxKind::MERGE_UPDATE
38675 )
38676 }
38677 #[inline]
38678 fn cast(syntax: SyntaxNode) -> Option<Self> {
38679 let res = match syntax.kind() {
38680 SyntaxKind::MERGE_DELETE => MergeAction::MergeDelete(MergeDelete { syntax }),
38681 SyntaxKind::MERGE_DO_NOTHING => MergeAction::MergeDoNothing(MergeDoNothing { syntax }),
38682 SyntaxKind::MERGE_INSERT => MergeAction::MergeInsert(MergeInsert { syntax }),
38683 SyntaxKind::MERGE_UPDATE => MergeAction::MergeUpdate(MergeUpdate { syntax }),
38684 _ => {
38685 return None;
38686 }
38687 };
38688 Some(res)
38689 }
38690 #[inline]
38691 fn syntax(&self) -> &SyntaxNode {
38692 match self {
38693 MergeAction::MergeDelete(it) => &it.syntax,
38694 MergeAction::MergeDoNothing(it) => &it.syntax,
38695 MergeAction::MergeInsert(it) => &it.syntax,
38696 MergeAction::MergeUpdate(it) => &it.syntax,
38697 }
38698 }
38699}
38700impl From<MergeDelete> for MergeAction {
38701 #[inline]
38702 fn from(node: MergeDelete) -> MergeAction {
38703 MergeAction::MergeDelete(node)
38704 }
38705}
38706impl From<MergeDoNothing> for MergeAction {
38707 #[inline]
38708 fn from(node: MergeDoNothing) -> MergeAction {
38709 MergeAction::MergeDoNothing(node)
38710 }
38711}
38712impl From<MergeInsert> for MergeAction {
38713 #[inline]
38714 fn from(node: MergeInsert) -> MergeAction {
38715 MergeAction::MergeInsert(node)
38716 }
38717}
38718impl From<MergeUpdate> for MergeAction {
38719 #[inline]
38720 fn from(node: MergeUpdate) -> MergeAction {
38721 MergeAction::MergeUpdate(node)
38722 }
38723}
38724impl AstNode for MergeWhenClause {
38725 #[inline]
38726 fn can_cast(kind: SyntaxKind) -> bool {
38727 matches!(
38728 kind,
38729 SyntaxKind::MERGE_WHEN_MATCHED
38730 | SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE
38731 | SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET
38732 )
38733 }
38734 #[inline]
38735 fn cast(syntax: SyntaxNode) -> Option<Self> {
38736 let res = match syntax.kind() {
38737 SyntaxKind::MERGE_WHEN_MATCHED => {
38738 MergeWhenClause::MergeWhenMatched(MergeWhenMatched { syntax })
38739 }
38740 SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE => {
38741 MergeWhenClause::MergeWhenNotMatchedSource(MergeWhenNotMatchedSource { syntax })
38742 }
38743 SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET => {
38744 MergeWhenClause::MergeWhenNotMatchedTarget(MergeWhenNotMatchedTarget { syntax })
38745 }
38746 _ => {
38747 return None;
38748 }
38749 };
38750 Some(res)
38751 }
38752 #[inline]
38753 fn syntax(&self) -> &SyntaxNode {
38754 match self {
38755 MergeWhenClause::MergeWhenMatched(it) => &it.syntax,
38756 MergeWhenClause::MergeWhenNotMatchedSource(it) => &it.syntax,
38757 MergeWhenClause::MergeWhenNotMatchedTarget(it) => &it.syntax,
38758 }
38759 }
38760}
38761impl From<MergeWhenMatched> for MergeWhenClause {
38762 #[inline]
38763 fn from(node: MergeWhenMatched) -> MergeWhenClause {
38764 MergeWhenClause::MergeWhenMatched(node)
38765 }
38766}
38767impl From<MergeWhenNotMatchedSource> for MergeWhenClause {
38768 #[inline]
38769 fn from(node: MergeWhenNotMatchedSource) -> MergeWhenClause {
38770 MergeWhenClause::MergeWhenNotMatchedSource(node)
38771 }
38772}
38773impl From<MergeWhenNotMatchedTarget> for MergeWhenClause {
38774 #[inline]
38775 fn from(node: MergeWhenNotMatchedTarget) -> MergeWhenClause {
38776 MergeWhenClause::MergeWhenNotMatchedTarget(node)
38777 }
38778}
38779impl AstNode for OnCommitAction {
38780 #[inline]
38781 fn can_cast(kind: SyntaxKind) -> bool {
38782 matches!(
38783 kind,
38784 SyntaxKind::DELETE_ROWS | SyntaxKind::DROP | SyntaxKind::PRESERVE_ROWS
38785 )
38786 }
38787 #[inline]
38788 fn cast(syntax: SyntaxNode) -> Option<Self> {
38789 let res = match syntax.kind() {
38790 SyntaxKind::DELETE_ROWS => OnCommitAction::DeleteRows(DeleteRows { syntax }),
38791 SyntaxKind::DROP => OnCommitAction::Drop(Drop { syntax }),
38792 SyntaxKind::PRESERVE_ROWS => OnCommitAction::PreserveRows(PreserveRows { syntax }),
38793 _ => {
38794 return None;
38795 }
38796 };
38797 Some(res)
38798 }
38799 #[inline]
38800 fn syntax(&self) -> &SyntaxNode {
38801 match self {
38802 OnCommitAction::DeleteRows(it) => &it.syntax,
38803 OnCommitAction::Drop(it) => &it.syntax,
38804 OnCommitAction::PreserveRows(it) => &it.syntax,
38805 }
38806 }
38807}
38808impl From<DeleteRows> for OnCommitAction {
38809 #[inline]
38810 fn from(node: DeleteRows) -> OnCommitAction {
38811 OnCommitAction::DeleteRows(node)
38812 }
38813}
38814impl From<Drop> for OnCommitAction {
38815 #[inline]
38816 fn from(node: Drop) -> OnCommitAction {
38817 OnCommitAction::Drop(node)
38818 }
38819}
38820impl From<PreserveRows> for OnCommitAction {
38821 #[inline]
38822 fn from(node: PreserveRows) -> OnCommitAction {
38823 OnCommitAction::PreserveRows(node)
38824 }
38825}
38826impl AstNode for ParamMode {
38827 #[inline]
38828 fn can_cast(kind: SyntaxKind) -> bool {
38829 matches!(
38830 kind,
38831 SyntaxKind::PARAM_IN
38832 | SyntaxKind::PARAM_IN_OUT
38833 | SyntaxKind::PARAM_OUT
38834 | SyntaxKind::PARAM_VARIADIC
38835 )
38836 }
38837 #[inline]
38838 fn cast(syntax: SyntaxNode) -> Option<Self> {
38839 let res = match syntax.kind() {
38840 SyntaxKind::PARAM_IN => ParamMode::ParamIn(ParamIn { syntax }),
38841 SyntaxKind::PARAM_IN_OUT => ParamMode::ParamInOut(ParamInOut { syntax }),
38842 SyntaxKind::PARAM_OUT => ParamMode::ParamOut(ParamOut { syntax }),
38843 SyntaxKind::PARAM_VARIADIC => ParamMode::ParamVariadic(ParamVariadic { syntax }),
38844 _ => {
38845 return None;
38846 }
38847 };
38848 Some(res)
38849 }
38850 #[inline]
38851 fn syntax(&self) -> &SyntaxNode {
38852 match self {
38853 ParamMode::ParamIn(it) => &it.syntax,
38854 ParamMode::ParamInOut(it) => &it.syntax,
38855 ParamMode::ParamOut(it) => &it.syntax,
38856 ParamMode::ParamVariadic(it) => &it.syntax,
38857 }
38858 }
38859}
38860impl From<ParamIn> for ParamMode {
38861 #[inline]
38862 fn from(node: ParamIn) -> ParamMode {
38863 ParamMode::ParamIn(node)
38864 }
38865}
38866impl From<ParamInOut> for ParamMode {
38867 #[inline]
38868 fn from(node: ParamInOut) -> ParamMode {
38869 ParamMode::ParamInOut(node)
38870 }
38871}
38872impl From<ParamOut> for ParamMode {
38873 #[inline]
38874 fn from(node: ParamOut) -> ParamMode {
38875 ParamMode::ParamOut(node)
38876 }
38877}
38878impl From<ParamVariadic> for ParamMode {
38879 #[inline]
38880 fn from(node: ParamVariadic) -> ParamMode {
38881 ParamMode::ParamVariadic(node)
38882 }
38883}
38884impl AstNode for PartitionType {
38885 #[inline]
38886 fn can_cast(kind: SyntaxKind) -> bool {
38887 matches!(
38888 kind,
38889 SyntaxKind::PARTITION_DEFAULT
38890 | SyntaxKind::PARTITION_FOR_VALUES_FROM
38891 | SyntaxKind::PARTITION_FOR_VALUES_IN
38892 | SyntaxKind::PARTITION_FOR_VALUES_WITH
38893 )
38894 }
38895 #[inline]
38896 fn cast(syntax: SyntaxNode) -> Option<Self> {
38897 let res = match syntax.kind() {
38898 SyntaxKind::PARTITION_DEFAULT => {
38899 PartitionType::PartitionDefault(PartitionDefault { syntax })
38900 }
38901 SyntaxKind::PARTITION_FOR_VALUES_FROM => {
38902 PartitionType::PartitionForValuesFrom(PartitionForValuesFrom { syntax })
38903 }
38904 SyntaxKind::PARTITION_FOR_VALUES_IN => {
38905 PartitionType::PartitionForValuesIn(PartitionForValuesIn { syntax })
38906 }
38907 SyntaxKind::PARTITION_FOR_VALUES_WITH => {
38908 PartitionType::PartitionForValuesWith(PartitionForValuesWith { syntax })
38909 }
38910 _ => {
38911 return None;
38912 }
38913 };
38914 Some(res)
38915 }
38916 #[inline]
38917 fn syntax(&self) -> &SyntaxNode {
38918 match self {
38919 PartitionType::PartitionDefault(it) => &it.syntax,
38920 PartitionType::PartitionForValuesFrom(it) => &it.syntax,
38921 PartitionType::PartitionForValuesIn(it) => &it.syntax,
38922 PartitionType::PartitionForValuesWith(it) => &it.syntax,
38923 }
38924 }
38925}
38926impl From<PartitionDefault> for PartitionType {
38927 #[inline]
38928 fn from(node: PartitionDefault) -> PartitionType {
38929 PartitionType::PartitionDefault(node)
38930 }
38931}
38932impl From<PartitionForValuesFrom> for PartitionType {
38933 #[inline]
38934 fn from(node: PartitionForValuesFrom) -> PartitionType {
38935 PartitionType::PartitionForValuesFrom(node)
38936 }
38937}
38938impl From<PartitionForValuesIn> for PartitionType {
38939 #[inline]
38940 fn from(node: PartitionForValuesIn) -> PartitionType {
38941 PartitionType::PartitionForValuesIn(node)
38942 }
38943}
38944impl From<PartitionForValuesWith> for PartitionType {
38945 #[inline]
38946 fn from(node: PartitionForValuesWith) -> PartitionType {
38947 PartitionType::PartitionForValuesWith(node)
38948 }
38949}
38950impl AstNode for PathPrimary {
38951 #[inline]
38952 fn can_cast(kind: SyntaxKind) -> bool {
38953 matches!(
38954 kind,
38955 SyntaxKind::EDGE_ANY
38956 | SyntaxKind::EDGE_LEFT
38957 | SyntaxKind::EDGE_RIGHT
38958 | SyntaxKind::PAREN_GRAPH_PATTERN
38959 | SyntaxKind::VERTEX_PATTERN
38960 )
38961 }
38962 #[inline]
38963 fn cast(syntax: SyntaxNode) -> Option<Self> {
38964 let res = match syntax.kind() {
38965 SyntaxKind::EDGE_ANY => PathPrimary::EdgeAny(EdgeAny { syntax }),
38966 SyntaxKind::EDGE_LEFT => PathPrimary::EdgeLeft(EdgeLeft { syntax }),
38967 SyntaxKind::EDGE_RIGHT => PathPrimary::EdgeRight(EdgeRight { syntax }),
38968 SyntaxKind::PAREN_GRAPH_PATTERN => {
38969 PathPrimary::ParenGraphPattern(ParenGraphPattern { syntax })
38970 }
38971 SyntaxKind::VERTEX_PATTERN => PathPrimary::VertexPattern(VertexPattern { syntax }),
38972 _ => {
38973 return None;
38974 }
38975 };
38976 Some(res)
38977 }
38978 #[inline]
38979 fn syntax(&self) -> &SyntaxNode {
38980 match self {
38981 PathPrimary::EdgeAny(it) => &it.syntax,
38982 PathPrimary::EdgeLeft(it) => &it.syntax,
38983 PathPrimary::EdgeRight(it) => &it.syntax,
38984 PathPrimary::ParenGraphPattern(it) => &it.syntax,
38985 PathPrimary::VertexPattern(it) => &it.syntax,
38986 }
38987 }
38988}
38989impl From<EdgeAny> for PathPrimary {
38990 #[inline]
38991 fn from(node: EdgeAny) -> PathPrimary {
38992 PathPrimary::EdgeAny(node)
38993 }
38994}
38995impl From<EdgeLeft> for PathPrimary {
38996 #[inline]
38997 fn from(node: EdgeLeft) -> PathPrimary {
38998 PathPrimary::EdgeLeft(node)
38999 }
39000}
39001impl From<EdgeRight> for PathPrimary {
39002 #[inline]
39003 fn from(node: EdgeRight) -> PathPrimary {
39004 PathPrimary::EdgeRight(node)
39005 }
39006}
39007impl From<ParenGraphPattern> for PathPrimary {
39008 #[inline]
39009 fn from(node: ParenGraphPattern) -> PathPrimary {
39010 PathPrimary::ParenGraphPattern(node)
39011 }
39012}
39013impl From<VertexPattern> for PathPrimary {
39014 #[inline]
39015 fn from(node: VertexPattern) -> PathPrimary {
39016 PathPrimary::VertexPattern(node)
39017 }
39018}
39019impl AstNode for Persistence {
39020 #[inline]
39021 fn can_cast(kind: SyntaxKind) -> bool {
39022 matches!(kind, SyntaxKind::TEMP | SyntaxKind::UNLOGGED)
39023 }
39024 #[inline]
39025 fn cast(syntax: SyntaxNode) -> Option<Self> {
39026 let res = match syntax.kind() {
39027 SyntaxKind::TEMP => Persistence::Temp(Temp { syntax }),
39028 SyntaxKind::UNLOGGED => Persistence::Unlogged(Unlogged { syntax }),
39029 _ => {
39030 return None;
39031 }
39032 };
39033 Some(res)
39034 }
39035 #[inline]
39036 fn syntax(&self) -> &SyntaxNode {
39037 match self {
39038 Persistence::Temp(it) => &it.syntax,
39039 Persistence::Unlogged(it) => &it.syntax,
39040 }
39041 }
39042}
39043impl From<Temp> for Persistence {
39044 #[inline]
39045 fn from(node: Temp) -> Persistence {
39046 Persistence::Temp(node)
39047 }
39048}
39049impl From<Unlogged> for Persistence {
39050 #[inline]
39051 fn from(node: Unlogged) -> Persistence {
39052 Persistence::Unlogged(node)
39053 }
39054}
39055impl AstNode for PreparableStmt {
39056 #[inline]
39057 fn can_cast(kind: SyntaxKind) -> bool {
39058 matches!(
39059 kind,
39060 SyntaxKind::COMPOUND_SELECT
39061 | SyntaxKind::DELETE
39062 | SyntaxKind::INSERT
39063 | SyntaxKind::MERGE
39064 | SyntaxKind::SELECT
39065 | SyntaxKind::SELECT_INTO
39066 | SyntaxKind::TABLE
39067 | SyntaxKind::UPDATE
39068 | SyntaxKind::VALUES
39069 )
39070 }
39071 #[inline]
39072 fn cast(syntax: SyntaxNode) -> Option<Self> {
39073 let res = match syntax.kind() {
39074 SyntaxKind::COMPOUND_SELECT => {
39075 PreparableStmt::CompoundSelect(CompoundSelect { syntax })
39076 }
39077 SyntaxKind::DELETE => PreparableStmt::Delete(Delete { syntax }),
39078 SyntaxKind::INSERT => PreparableStmt::Insert(Insert { syntax }),
39079 SyntaxKind::MERGE => PreparableStmt::Merge(Merge { syntax }),
39080 SyntaxKind::SELECT => PreparableStmt::Select(Select { syntax }),
39081 SyntaxKind::SELECT_INTO => PreparableStmt::SelectInto(SelectInto { syntax }),
39082 SyntaxKind::TABLE => PreparableStmt::Table(Table { syntax }),
39083 SyntaxKind::UPDATE => PreparableStmt::Update(Update { syntax }),
39084 SyntaxKind::VALUES => PreparableStmt::Values(Values { syntax }),
39085 _ => {
39086 return None;
39087 }
39088 };
39089 Some(res)
39090 }
39091 #[inline]
39092 fn syntax(&self) -> &SyntaxNode {
39093 match self {
39094 PreparableStmt::CompoundSelect(it) => &it.syntax,
39095 PreparableStmt::Delete(it) => &it.syntax,
39096 PreparableStmt::Insert(it) => &it.syntax,
39097 PreparableStmt::Merge(it) => &it.syntax,
39098 PreparableStmt::Select(it) => &it.syntax,
39099 PreparableStmt::SelectInto(it) => &it.syntax,
39100 PreparableStmt::Table(it) => &it.syntax,
39101 PreparableStmt::Update(it) => &it.syntax,
39102 PreparableStmt::Values(it) => &it.syntax,
39103 }
39104 }
39105}
39106impl From<CompoundSelect> for PreparableStmt {
39107 #[inline]
39108 fn from(node: CompoundSelect) -> PreparableStmt {
39109 PreparableStmt::CompoundSelect(node)
39110 }
39111}
39112impl From<Delete> for PreparableStmt {
39113 #[inline]
39114 fn from(node: Delete) -> PreparableStmt {
39115 PreparableStmt::Delete(node)
39116 }
39117}
39118impl From<Insert> for PreparableStmt {
39119 #[inline]
39120 fn from(node: Insert) -> PreparableStmt {
39121 PreparableStmt::Insert(node)
39122 }
39123}
39124impl From<Merge> for PreparableStmt {
39125 #[inline]
39126 fn from(node: Merge) -> PreparableStmt {
39127 PreparableStmt::Merge(node)
39128 }
39129}
39130impl From<Select> for PreparableStmt {
39131 #[inline]
39132 fn from(node: Select) -> PreparableStmt {
39133 PreparableStmt::Select(node)
39134 }
39135}
39136impl From<SelectInto> for PreparableStmt {
39137 #[inline]
39138 fn from(node: SelectInto) -> PreparableStmt {
39139 PreparableStmt::SelectInto(node)
39140 }
39141}
39142impl From<Table> for PreparableStmt {
39143 #[inline]
39144 fn from(node: Table) -> PreparableStmt {
39145 PreparableStmt::Table(node)
39146 }
39147}
39148impl From<Update> for PreparableStmt {
39149 #[inline]
39150 fn from(node: Update) -> PreparableStmt {
39151 PreparableStmt::Update(node)
39152 }
39153}
39154impl From<Values> for PreparableStmt {
39155 #[inline]
39156 fn from(node: Values) -> PreparableStmt {
39157 PreparableStmt::Values(node)
39158 }
39159}
39160impl AstNode for RefAction {
39161 #[inline]
39162 fn can_cast(kind: SyntaxKind) -> bool {
39163 matches!(
39164 kind,
39165 SyntaxKind::CASCADE
39166 | SyntaxKind::NO_ACTION
39167 | SyntaxKind::RESTRICT
39168 | SyntaxKind::SET_DEFAULT_COLUMNS
39169 | SyntaxKind::SET_NULL_COLUMNS
39170 )
39171 }
39172 #[inline]
39173 fn cast(syntax: SyntaxNode) -> Option<Self> {
39174 let res = match syntax.kind() {
39175 SyntaxKind::CASCADE => RefAction::Cascade(Cascade { syntax }),
39176 SyntaxKind::NO_ACTION => RefAction::NoAction(NoAction { syntax }),
39177 SyntaxKind::RESTRICT => RefAction::Restrict(Restrict { syntax }),
39178 SyntaxKind::SET_DEFAULT_COLUMNS => {
39179 RefAction::SetDefaultColumns(SetDefaultColumns { syntax })
39180 }
39181 SyntaxKind::SET_NULL_COLUMNS => RefAction::SetNullColumns(SetNullColumns { syntax }),
39182 _ => {
39183 return None;
39184 }
39185 };
39186 Some(res)
39187 }
39188 #[inline]
39189 fn syntax(&self) -> &SyntaxNode {
39190 match self {
39191 RefAction::Cascade(it) => &it.syntax,
39192 RefAction::NoAction(it) => &it.syntax,
39193 RefAction::Restrict(it) => &it.syntax,
39194 RefAction::SetDefaultColumns(it) => &it.syntax,
39195 RefAction::SetNullColumns(it) => &it.syntax,
39196 }
39197 }
39198}
39199impl From<Cascade> for RefAction {
39200 #[inline]
39201 fn from(node: Cascade) -> RefAction {
39202 RefAction::Cascade(node)
39203 }
39204}
39205impl From<NoAction> for RefAction {
39206 #[inline]
39207 fn from(node: NoAction) -> RefAction {
39208 RefAction::NoAction(node)
39209 }
39210}
39211impl From<Restrict> for RefAction {
39212 #[inline]
39213 fn from(node: Restrict) -> RefAction {
39214 RefAction::Restrict(node)
39215 }
39216}
39217impl From<SetDefaultColumns> for RefAction {
39218 #[inline]
39219 fn from(node: SetDefaultColumns) -> RefAction {
39220 RefAction::SetDefaultColumns(node)
39221 }
39222}
39223impl From<SetNullColumns> for RefAction {
39224 #[inline]
39225 fn from(node: SetNullColumns) -> RefAction {
39226 RefAction::SetNullColumns(node)
39227 }
39228}
39229impl AstNode for RuleAction {
39230 #[inline]
39231 fn can_cast(kind: SyntaxKind) -> bool {
39232 matches!(kind, SyntaxKind::NOTHING | SyntaxKind::RULE_STMT_LIST)
39233 }
39234 #[inline]
39235 fn cast(syntax: SyntaxNode) -> Option<Self> {
39236 let res = match syntax.kind() {
39237 SyntaxKind::NOTHING => RuleAction::Nothing(Nothing { syntax }),
39238 SyntaxKind::RULE_STMT_LIST => RuleAction::RuleStmtList(RuleStmtList { syntax }),
39239 _ => {
39240 if let Some(result) = RuleStmt::cast(syntax) {
39241 return Some(RuleAction::RuleStmt(result));
39242 }
39243 return None;
39244 }
39245 };
39246 Some(res)
39247 }
39248 #[inline]
39249 fn syntax(&self) -> &SyntaxNode {
39250 match self {
39251 RuleAction::Nothing(it) => &it.syntax,
39252 RuleAction::RuleStmtList(it) => &it.syntax,
39253 RuleAction::RuleStmt(it) => it.syntax(),
39254 }
39255 }
39256}
39257impl From<Nothing> for RuleAction {
39258 #[inline]
39259 fn from(node: Nothing) -> RuleAction {
39260 RuleAction::Nothing(node)
39261 }
39262}
39263impl From<RuleStmtList> for RuleAction {
39264 #[inline]
39265 fn from(node: RuleStmtList) -> RuleAction {
39266 RuleAction::RuleStmtList(node)
39267 }
39268}
39269impl AstNode for RuleStmt {
39270 #[inline]
39271 fn can_cast(kind: SyntaxKind) -> bool {
39272 matches!(
39273 kind,
39274 SyntaxKind::DELETE | SyntaxKind::INSERT | SyntaxKind::NOTIFY | SyntaxKind::UPDATE
39275 )
39276 }
39277 #[inline]
39278 fn cast(syntax: SyntaxNode) -> Option<Self> {
39279 let res = match syntax.kind() {
39280 SyntaxKind::DELETE => RuleStmt::Delete(Delete { syntax }),
39281 SyntaxKind::INSERT => RuleStmt::Insert(Insert { syntax }),
39282 SyntaxKind::NOTIFY => RuleStmt::Notify(Notify { syntax }),
39283 SyntaxKind::UPDATE => RuleStmt::Update(Update { syntax }),
39284 _ => {
39285 if let Some(result) = SelectVariant::cast(syntax) {
39286 return Some(RuleStmt::SelectVariant(result));
39287 }
39288 return None;
39289 }
39290 };
39291 Some(res)
39292 }
39293 #[inline]
39294 fn syntax(&self) -> &SyntaxNode {
39295 match self {
39296 RuleStmt::Delete(it) => &it.syntax,
39297 RuleStmt::Insert(it) => &it.syntax,
39298 RuleStmt::Notify(it) => &it.syntax,
39299 RuleStmt::Update(it) => &it.syntax,
39300 RuleStmt::SelectVariant(it) => it.syntax(),
39301 }
39302 }
39303}
39304impl From<Delete> for RuleStmt {
39305 #[inline]
39306 fn from(node: Delete) -> RuleStmt {
39307 RuleStmt::Delete(node)
39308 }
39309}
39310impl From<Insert> for RuleStmt {
39311 #[inline]
39312 fn from(node: Insert) -> RuleStmt {
39313 RuleStmt::Insert(node)
39314 }
39315}
39316impl From<Notify> for RuleStmt {
39317 #[inline]
39318 fn from(node: Notify) -> RuleStmt {
39319 RuleStmt::Notify(node)
39320 }
39321}
39322impl From<Update> for RuleStmt {
39323 #[inline]
39324 fn from(node: Update) -> RuleStmt {
39325 RuleStmt::Update(node)
39326 }
39327}
39328impl AstNode for SchemaElement {
39329 #[inline]
39330 fn can_cast(kind: SyntaxKind) -> bool {
39331 matches!(
39332 kind,
39333 SyntaxKind::CREATE_INDEX
39334 | SyntaxKind::CREATE_SEQUENCE
39335 | SyntaxKind::CREATE_TABLE
39336 | SyntaxKind::CREATE_TRIGGER
39337 | SyntaxKind::CREATE_VIEW
39338 | SyntaxKind::GRANT
39339 )
39340 }
39341 #[inline]
39342 fn cast(syntax: SyntaxNode) -> Option<Self> {
39343 let res = match syntax.kind() {
39344 SyntaxKind::CREATE_INDEX => SchemaElement::CreateIndex(CreateIndex { syntax }),
39345 SyntaxKind::CREATE_SEQUENCE => SchemaElement::CreateSequence(CreateSequence { syntax }),
39346 SyntaxKind::CREATE_TABLE => SchemaElement::CreateTable(CreateTable { syntax }),
39347 SyntaxKind::CREATE_TRIGGER => SchemaElement::CreateTrigger(CreateTrigger { syntax }),
39348 SyntaxKind::CREATE_VIEW => SchemaElement::CreateView(CreateView { syntax }),
39349 SyntaxKind::GRANT => SchemaElement::Grant(Grant { syntax }),
39350 _ => {
39351 return None;
39352 }
39353 };
39354 Some(res)
39355 }
39356 #[inline]
39357 fn syntax(&self) -> &SyntaxNode {
39358 match self {
39359 SchemaElement::CreateIndex(it) => &it.syntax,
39360 SchemaElement::CreateSequence(it) => &it.syntax,
39361 SchemaElement::CreateTable(it) => &it.syntax,
39362 SchemaElement::CreateTrigger(it) => &it.syntax,
39363 SchemaElement::CreateView(it) => &it.syntax,
39364 SchemaElement::Grant(it) => &it.syntax,
39365 }
39366 }
39367}
39368impl From<CreateIndex> for SchemaElement {
39369 #[inline]
39370 fn from(node: CreateIndex) -> SchemaElement {
39371 SchemaElement::CreateIndex(node)
39372 }
39373}
39374impl From<CreateSequence> for SchemaElement {
39375 #[inline]
39376 fn from(node: CreateSequence) -> SchemaElement {
39377 SchemaElement::CreateSequence(node)
39378 }
39379}
39380impl From<CreateTable> for SchemaElement {
39381 #[inline]
39382 fn from(node: CreateTable) -> SchemaElement {
39383 SchemaElement::CreateTable(node)
39384 }
39385}
39386impl From<CreateTrigger> for SchemaElement {
39387 #[inline]
39388 fn from(node: CreateTrigger) -> SchemaElement {
39389 SchemaElement::CreateTrigger(node)
39390 }
39391}
39392impl From<CreateView> for SchemaElement {
39393 #[inline]
39394 fn from(node: CreateView) -> SchemaElement {
39395 SchemaElement::CreateView(node)
39396 }
39397}
39398impl From<Grant> for SchemaElement {
39399 #[inline]
39400 fn from(node: Grant) -> SchemaElement {
39401 SchemaElement::Grant(node)
39402 }
39403}
39404impl AstNode for SelectVariant {
39405 #[inline]
39406 fn can_cast(kind: SyntaxKind) -> bool {
39407 matches!(
39408 kind,
39409 SyntaxKind::COMPOUND_SELECT
39410 | SyntaxKind::PAREN_SELECT
39411 | SyntaxKind::SELECT
39412 | SyntaxKind::SELECT_INTO
39413 | SyntaxKind::TABLE
39414 | SyntaxKind::VALUES
39415 )
39416 }
39417 #[inline]
39418 fn cast(syntax: SyntaxNode) -> Option<Self> {
39419 let res = match syntax.kind() {
39420 SyntaxKind::COMPOUND_SELECT => SelectVariant::CompoundSelect(CompoundSelect { syntax }),
39421 SyntaxKind::PAREN_SELECT => SelectVariant::ParenSelect(ParenSelect { syntax }),
39422 SyntaxKind::SELECT => SelectVariant::Select(Select { syntax }),
39423 SyntaxKind::SELECT_INTO => SelectVariant::SelectInto(SelectInto { syntax }),
39424 SyntaxKind::TABLE => SelectVariant::Table(Table { syntax }),
39425 SyntaxKind::VALUES => SelectVariant::Values(Values { syntax }),
39426 _ => {
39427 return None;
39428 }
39429 };
39430 Some(res)
39431 }
39432 #[inline]
39433 fn syntax(&self) -> &SyntaxNode {
39434 match self {
39435 SelectVariant::CompoundSelect(it) => &it.syntax,
39436 SelectVariant::ParenSelect(it) => &it.syntax,
39437 SelectVariant::Select(it) => &it.syntax,
39438 SelectVariant::SelectInto(it) => &it.syntax,
39439 SelectVariant::Table(it) => &it.syntax,
39440 SelectVariant::Values(it) => &it.syntax,
39441 }
39442 }
39443}
39444impl From<CompoundSelect> for SelectVariant {
39445 #[inline]
39446 fn from(node: CompoundSelect) -> SelectVariant {
39447 SelectVariant::CompoundSelect(node)
39448 }
39449}
39450impl From<ParenSelect> for SelectVariant {
39451 #[inline]
39452 fn from(node: ParenSelect) -> SelectVariant {
39453 SelectVariant::ParenSelect(node)
39454 }
39455}
39456impl From<Select> for SelectVariant {
39457 #[inline]
39458 fn from(node: Select) -> SelectVariant {
39459 SelectVariant::Select(node)
39460 }
39461}
39462impl From<SelectInto> for SelectVariant {
39463 #[inline]
39464 fn from(node: SelectInto) -> SelectVariant {
39465 SelectVariant::SelectInto(node)
39466 }
39467}
39468impl From<Table> for SelectVariant {
39469 #[inline]
39470 fn from(node: Table) -> SelectVariant {
39471 SelectVariant::Table(node)
39472 }
39473}
39474impl From<Values> for SelectVariant {
39475 #[inline]
39476 fn from(node: Values) -> SelectVariant {
39477 SelectVariant::Values(node)
39478 }
39479}
39480impl AstNode for SetColumn {
39481 #[inline]
39482 fn can_cast(kind: SyntaxKind) -> bool {
39483 matches!(
39484 kind,
39485 SyntaxKind::SET_MULTIPLE_COLUMNS | SyntaxKind::SET_SINGLE_COLUMN
39486 )
39487 }
39488 #[inline]
39489 fn cast(syntax: SyntaxNode) -> Option<Self> {
39490 let res = match syntax.kind() {
39491 SyntaxKind::SET_MULTIPLE_COLUMNS => {
39492 SetColumn::SetMultipleColumns(SetMultipleColumns { syntax })
39493 }
39494 SyntaxKind::SET_SINGLE_COLUMN => SetColumn::SetSingleColumn(SetSingleColumn { syntax }),
39495 _ => {
39496 return None;
39497 }
39498 };
39499 Some(res)
39500 }
39501 #[inline]
39502 fn syntax(&self) -> &SyntaxNode {
39503 match self {
39504 SetColumn::SetMultipleColumns(it) => &it.syntax,
39505 SetColumn::SetSingleColumn(it) => &it.syntax,
39506 }
39507 }
39508}
39509impl From<SetMultipleColumns> for SetColumn {
39510 #[inline]
39511 fn from(node: SetMultipleColumns) -> SetColumn {
39512 SetColumn::SetMultipleColumns(node)
39513 }
39514}
39515impl From<SetSingleColumn> for SetColumn {
39516 #[inline]
39517 fn from(node: SetSingleColumn) -> SetColumn {
39518 SetColumn::SetSingleColumn(node)
39519 }
39520}
39521impl AstNode for Stmt {
39522 #[inline]
39523 fn can_cast(kind: SyntaxKind) -> bool {
39524 matches!(
39525 kind,
39526 SyntaxKind::ALTER_AGGREGATE
39527 | SyntaxKind::ALTER_COLLATION
39528 | SyntaxKind::ALTER_CONVERSION
39529 | SyntaxKind::ALTER_DATABASE
39530 | SyntaxKind::ALTER_DEFAULT_PRIVILEGES
39531 | SyntaxKind::ALTER_DOMAIN
39532 | SyntaxKind::ALTER_EVENT_TRIGGER
39533 | SyntaxKind::ALTER_EXTENSION
39534 | SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER
39535 | SyntaxKind::ALTER_FOREIGN_TABLE
39536 | SyntaxKind::ALTER_FUNCTION
39537 | SyntaxKind::ALTER_GROUP
39538 | SyntaxKind::ALTER_INDEX
39539 | SyntaxKind::ALTER_LANGUAGE
39540 | SyntaxKind::ALTER_LARGE_OBJECT
39541 | SyntaxKind::ALTER_MATERIALIZED_VIEW
39542 | SyntaxKind::ALTER_OPERATOR
39543 | SyntaxKind::ALTER_OPERATOR_CLASS
39544 | SyntaxKind::ALTER_OPERATOR_FAMILY
39545 | SyntaxKind::ALTER_POLICY
39546 | SyntaxKind::ALTER_PROCEDURE
39547 | SyntaxKind::ALTER_PROPERTY_GRAPH
39548 | SyntaxKind::ALTER_PUBLICATION
39549 | SyntaxKind::ALTER_ROLE
39550 | SyntaxKind::ALTER_ROUTINE
39551 | SyntaxKind::ALTER_RULE
39552 | SyntaxKind::ALTER_SCHEMA
39553 | SyntaxKind::ALTER_SEQUENCE
39554 | SyntaxKind::ALTER_SERVER
39555 | SyntaxKind::ALTER_STATISTICS
39556 | SyntaxKind::ALTER_SUBSCRIPTION
39557 | SyntaxKind::ALTER_SYSTEM
39558 | SyntaxKind::ALTER_TABLE
39559 | SyntaxKind::ALTER_TABLESPACE
39560 | SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION
39561 | SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY
39562 | SyntaxKind::ALTER_TEXT_SEARCH_PARSER
39563 | SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE
39564 | SyntaxKind::ALTER_TRIGGER
39565 | SyntaxKind::ALTER_TYPE
39566 | SyntaxKind::ALTER_USER
39567 | SyntaxKind::ALTER_USER_MAPPING
39568 | SyntaxKind::ALTER_VIEW
39569 | SyntaxKind::ANALYZE
39570 | SyntaxKind::BEGIN
39571 | SyntaxKind::CALL
39572 | SyntaxKind::CHECKPOINT
39573 | SyntaxKind::CLOSE
39574 | SyntaxKind::CLUSTER
39575 | SyntaxKind::COMMENT_ON
39576 | SyntaxKind::COMMIT
39577 | SyntaxKind::COPY
39578 | SyntaxKind::CREATE_ACCESS_METHOD
39579 | SyntaxKind::CREATE_AGGREGATE
39580 | SyntaxKind::CREATE_CAST
39581 | SyntaxKind::CREATE_COLLATION
39582 | SyntaxKind::CREATE_CONVERSION
39583 | SyntaxKind::CREATE_DATABASE
39584 | SyntaxKind::CREATE_DOMAIN
39585 | SyntaxKind::CREATE_EVENT_TRIGGER
39586 | SyntaxKind::CREATE_EXTENSION
39587 | SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER
39588 | SyntaxKind::CREATE_FOREIGN_TABLE
39589 | SyntaxKind::CREATE_FUNCTION
39590 | SyntaxKind::CREATE_GROUP
39591 | SyntaxKind::CREATE_INDEX
39592 | SyntaxKind::CREATE_LANGUAGE
39593 | SyntaxKind::CREATE_MATERIALIZED_VIEW
39594 | SyntaxKind::CREATE_OPERATOR
39595 | SyntaxKind::CREATE_OPERATOR_CLASS
39596 | SyntaxKind::CREATE_OPERATOR_FAMILY
39597 | SyntaxKind::CREATE_POLICY
39598 | SyntaxKind::CREATE_PROCEDURE
39599 | SyntaxKind::CREATE_PROPERTY_GRAPH
39600 | SyntaxKind::CREATE_PUBLICATION
39601 | SyntaxKind::CREATE_ROLE
39602 | SyntaxKind::CREATE_RULE
39603 | SyntaxKind::CREATE_SCHEMA
39604 | SyntaxKind::CREATE_SEQUENCE
39605 | SyntaxKind::CREATE_SERVER
39606 | SyntaxKind::CREATE_STATISTICS
39607 | SyntaxKind::CREATE_SUBSCRIPTION
39608 | SyntaxKind::CREATE_TABLE
39609 | SyntaxKind::CREATE_TABLE_AS
39610 | SyntaxKind::CREATE_TABLESPACE
39611 | SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION
39612 | SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY
39613 | SyntaxKind::CREATE_TEXT_SEARCH_PARSER
39614 | SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE
39615 | SyntaxKind::CREATE_TRANSFORM
39616 | SyntaxKind::CREATE_TRIGGER
39617 | SyntaxKind::CREATE_TYPE
39618 | SyntaxKind::CREATE_USER
39619 | SyntaxKind::CREATE_USER_MAPPING
39620 | SyntaxKind::CREATE_VIEW
39621 | SyntaxKind::DEALLOCATE
39622 | SyntaxKind::DECLARE
39623 | SyntaxKind::DELETE
39624 | SyntaxKind::DISCARD
39625 | SyntaxKind::DO
39626 | SyntaxKind::DROP_ACCESS_METHOD
39627 | SyntaxKind::DROP_AGGREGATE
39628 | SyntaxKind::DROP_CAST
39629 | SyntaxKind::DROP_COLLATION
39630 | SyntaxKind::DROP_CONVERSION
39631 | SyntaxKind::DROP_DATABASE
39632 | SyntaxKind::DROP_DOMAIN
39633 | SyntaxKind::DROP_EVENT_TRIGGER
39634 | SyntaxKind::DROP_EXTENSION
39635 | SyntaxKind::DROP_FOREIGN_DATA_WRAPPER
39636 | SyntaxKind::DROP_FOREIGN_TABLE
39637 | SyntaxKind::DROP_FUNCTION
39638 | SyntaxKind::DROP_GROUP
39639 | SyntaxKind::DROP_INDEX
39640 | SyntaxKind::DROP_LANGUAGE
39641 | SyntaxKind::DROP_MATERIALIZED_VIEW
39642 | SyntaxKind::DROP_OPERATOR
39643 | SyntaxKind::DROP_OPERATOR_CLASS
39644 | SyntaxKind::DROP_OPERATOR_FAMILY
39645 | SyntaxKind::DROP_OWNED
39646 | SyntaxKind::DROP_POLICY
39647 | SyntaxKind::DROP_PROCEDURE
39648 | SyntaxKind::DROP_PROPERTY_GRAPH
39649 | SyntaxKind::DROP_PUBLICATION
39650 | SyntaxKind::DROP_ROLE
39651 | SyntaxKind::DROP_ROUTINE
39652 | SyntaxKind::DROP_RULE
39653 | SyntaxKind::DROP_SCHEMA
39654 | SyntaxKind::DROP_SEQUENCE
39655 | SyntaxKind::DROP_SERVER
39656 | SyntaxKind::DROP_STATISTICS
39657 | SyntaxKind::DROP_SUBSCRIPTION
39658 | SyntaxKind::DROP_TABLE
39659 | SyntaxKind::DROP_TABLESPACE
39660 | SyntaxKind::DROP_TEXT_SEARCH_CONFIG
39661 | SyntaxKind::DROP_TEXT_SEARCH_DICT
39662 | SyntaxKind::DROP_TEXT_SEARCH_PARSER
39663 | SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE
39664 | SyntaxKind::DROP_TRANSFORM
39665 | SyntaxKind::DROP_TRIGGER
39666 | SyntaxKind::DROP_TYPE
39667 | SyntaxKind::DROP_USER
39668 | SyntaxKind::DROP_USER_MAPPING
39669 | SyntaxKind::DROP_VIEW
39670 | SyntaxKind::EMPTY_STMT
39671 | SyntaxKind::EXECUTE
39672 | SyntaxKind::EXPLAIN
39673 | SyntaxKind::FETCH
39674 | SyntaxKind::GRANT
39675 | SyntaxKind::IMPORT_FOREIGN_SCHEMA
39676 | SyntaxKind::INSERT
39677 | SyntaxKind::LISTEN
39678 | SyntaxKind::LOAD
39679 | SyntaxKind::LOCK
39680 | SyntaxKind::MERGE
39681 | SyntaxKind::MOVE
39682 | SyntaxKind::NOTIFY
39683 | SyntaxKind::PAREN_SELECT
39684 | SyntaxKind::PREPARE
39685 | SyntaxKind::PREPARE_TRANSACTION
39686 | SyntaxKind::REASSIGN
39687 | SyntaxKind::REFRESH
39688 | SyntaxKind::REINDEX
39689 | SyntaxKind::RELEASE_SAVEPOINT
39690 | SyntaxKind::REPACK
39691 | SyntaxKind::RESET
39692 | SyntaxKind::RESET_SESSION_AUTH
39693 | SyntaxKind::REVOKE
39694 | SyntaxKind::ROLLBACK
39695 | SyntaxKind::SAVEPOINT
39696 | SyntaxKind::SECURITY_LABEL
39697 | SyntaxKind::SELECT
39698 | SyntaxKind::SELECT_INTO
39699 | SyntaxKind::SET
39700 | SyntaxKind::SET_CONSTRAINTS
39701 | SyntaxKind::SET_ROLE
39702 | SyntaxKind::SET_SESSION_AUTH
39703 | SyntaxKind::SET_TRANSACTION
39704 | SyntaxKind::SHOW
39705 | SyntaxKind::TABLE
39706 | SyntaxKind::TRUNCATE
39707 | SyntaxKind::UNLISTEN
39708 | SyntaxKind::UPDATE
39709 | SyntaxKind::VACUUM
39710 | SyntaxKind::VALUES
39711 )
39712 }
39713 #[inline]
39714 fn cast(syntax: SyntaxNode) -> Option<Self> {
39715 let res = match syntax.kind() {
39716 SyntaxKind::ALTER_AGGREGATE => Stmt::AlterAggregate(AlterAggregate { syntax }),
39717 SyntaxKind::ALTER_COLLATION => Stmt::AlterCollation(AlterCollation { syntax }),
39718 SyntaxKind::ALTER_CONVERSION => Stmt::AlterConversion(AlterConversion { syntax }),
39719 SyntaxKind::ALTER_DATABASE => Stmt::AlterDatabase(AlterDatabase { syntax }),
39720 SyntaxKind::ALTER_DEFAULT_PRIVILEGES => {
39721 Stmt::AlterDefaultPrivileges(AlterDefaultPrivileges { syntax })
39722 }
39723 SyntaxKind::ALTER_DOMAIN => Stmt::AlterDomain(AlterDomain { syntax }),
39724 SyntaxKind::ALTER_EVENT_TRIGGER => {
39725 Stmt::AlterEventTrigger(AlterEventTrigger { syntax })
39726 }
39727 SyntaxKind::ALTER_EXTENSION => Stmt::AlterExtension(AlterExtension { syntax }),
39728 SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER => {
39729 Stmt::AlterForeignDataWrapper(AlterForeignDataWrapper { syntax })
39730 }
39731 SyntaxKind::ALTER_FOREIGN_TABLE => {
39732 Stmt::AlterForeignTable(AlterForeignTable { syntax })
39733 }
39734 SyntaxKind::ALTER_FUNCTION => Stmt::AlterFunction(AlterFunction { syntax }),
39735 SyntaxKind::ALTER_GROUP => Stmt::AlterGroup(AlterGroup { syntax }),
39736 SyntaxKind::ALTER_INDEX => Stmt::AlterIndex(AlterIndex { syntax }),
39737 SyntaxKind::ALTER_LANGUAGE => Stmt::AlterLanguage(AlterLanguage { syntax }),
39738 SyntaxKind::ALTER_LARGE_OBJECT => Stmt::AlterLargeObject(AlterLargeObject { syntax }),
39739 SyntaxKind::ALTER_MATERIALIZED_VIEW => {
39740 Stmt::AlterMaterializedView(AlterMaterializedView { syntax })
39741 }
39742 SyntaxKind::ALTER_OPERATOR => Stmt::AlterOperator(AlterOperator { syntax }),
39743 SyntaxKind::ALTER_OPERATOR_CLASS => {
39744 Stmt::AlterOperatorClass(AlterOperatorClass { syntax })
39745 }
39746 SyntaxKind::ALTER_OPERATOR_FAMILY => {
39747 Stmt::AlterOperatorFamily(AlterOperatorFamily { syntax })
39748 }
39749 SyntaxKind::ALTER_POLICY => Stmt::AlterPolicy(AlterPolicy { syntax }),
39750 SyntaxKind::ALTER_PROCEDURE => Stmt::AlterProcedure(AlterProcedure { syntax }),
39751 SyntaxKind::ALTER_PROPERTY_GRAPH => {
39752 Stmt::AlterPropertyGraph(AlterPropertyGraph { syntax })
39753 }
39754 SyntaxKind::ALTER_PUBLICATION => Stmt::AlterPublication(AlterPublication { syntax }),
39755 SyntaxKind::ALTER_ROLE => Stmt::AlterRole(AlterRole { syntax }),
39756 SyntaxKind::ALTER_ROUTINE => Stmt::AlterRoutine(AlterRoutine { syntax }),
39757 SyntaxKind::ALTER_RULE => Stmt::AlterRule(AlterRule { syntax }),
39758 SyntaxKind::ALTER_SCHEMA => Stmt::AlterSchema(AlterSchema { syntax }),
39759 SyntaxKind::ALTER_SEQUENCE => Stmt::AlterSequence(AlterSequence { syntax }),
39760 SyntaxKind::ALTER_SERVER => Stmt::AlterServer(AlterServer { syntax }),
39761 SyntaxKind::ALTER_STATISTICS => Stmt::AlterStatistics(AlterStatistics { syntax }),
39762 SyntaxKind::ALTER_SUBSCRIPTION => Stmt::AlterSubscription(AlterSubscription { syntax }),
39763 SyntaxKind::ALTER_SYSTEM => Stmt::AlterSystem(AlterSystem { syntax }),
39764 SyntaxKind::ALTER_TABLE => Stmt::AlterTable(AlterTable { syntax }),
39765 SyntaxKind::ALTER_TABLESPACE => Stmt::AlterTablespace(AlterTablespace { syntax }),
39766 SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION => {
39767 Stmt::AlterTextSearchConfiguration(AlterTextSearchConfiguration { syntax })
39768 }
39769 SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY => {
39770 Stmt::AlterTextSearchDictionary(AlterTextSearchDictionary { syntax })
39771 }
39772 SyntaxKind::ALTER_TEXT_SEARCH_PARSER => {
39773 Stmt::AlterTextSearchParser(AlterTextSearchParser { syntax })
39774 }
39775 SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE => {
39776 Stmt::AlterTextSearchTemplate(AlterTextSearchTemplate { syntax })
39777 }
39778 SyntaxKind::ALTER_TRIGGER => Stmt::AlterTrigger(AlterTrigger { syntax }),
39779 SyntaxKind::ALTER_TYPE => Stmt::AlterType(AlterType { syntax }),
39780 SyntaxKind::ALTER_USER => Stmt::AlterUser(AlterUser { syntax }),
39781 SyntaxKind::ALTER_USER_MAPPING => Stmt::AlterUserMapping(AlterUserMapping { syntax }),
39782 SyntaxKind::ALTER_VIEW => Stmt::AlterView(AlterView { syntax }),
39783 SyntaxKind::ANALYZE => Stmt::Analyze(Analyze { syntax }),
39784 SyntaxKind::BEGIN => Stmt::Begin(Begin { syntax }),
39785 SyntaxKind::CALL => Stmt::Call(Call { syntax }),
39786 SyntaxKind::CHECKPOINT => Stmt::Checkpoint(Checkpoint { syntax }),
39787 SyntaxKind::CLOSE => Stmt::Close(Close { syntax }),
39788 SyntaxKind::CLUSTER => Stmt::Cluster(Cluster { syntax }),
39789 SyntaxKind::COMMENT_ON => Stmt::CommentOn(CommentOn { syntax }),
39790 SyntaxKind::COMMIT => Stmt::Commit(Commit { syntax }),
39791 SyntaxKind::COPY => Stmt::Copy(Copy { syntax }),
39792 SyntaxKind::CREATE_ACCESS_METHOD => {
39793 Stmt::CreateAccessMethod(CreateAccessMethod { syntax })
39794 }
39795 SyntaxKind::CREATE_AGGREGATE => Stmt::CreateAggregate(CreateAggregate { syntax }),
39796 SyntaxKind::CREATE_CAST => Stmt::CreateCast(CreateCast { syntax }),
39797 SyntaxKind::CREATE_COLLATION => Stmt::CreateCollation(CreateCollation { syntax }),
39798 SyntaxKind::CREATE_CONVERSION => Stmt::CreateConversion(CreateConversion { syntax }),
39799 SyntaxKind::CREATE_DATABASE => Stmt::CreateDatabase(CreateDatabase { syntax }),
39800 SyntaxKind::CREATE_DOMAIN => Stmt::CreateDomain(CreateDomain { syntax }),
39801 SyntaxKind::CREATE_EVENT_TRIGGER => {
39802 Stmt::CreateEventTrigger(CreateEventTrigger { syntax })
39803 }
39804 SyntaxKind::CREATE_EXTENSION => Stmt::CreateExtension(CreateExtension { syntax }),
39805 SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER => {
39806 Stmt::CreateForeignDataWrapper(CreateForeignDataWrapper { syntax })
39807 }
39808 SyntaxKind::CREATE_FOREIGN_TABLE => {
39809 Stmt::CreateForeignTable(CreateForeignTable { syntax })
39810 }
39811 SyntaxKind::CREATE_FUNCTION => Stmt::CreateFunction(CreateFunction { syntax }),
39812 SyntaxKind::CREATE_GROUP => Stmt::CreateGroup(CreateGroup { syntax }),
39813 SyntaxKind::CREATE_INDEX => Stmt::CreateIndex(CreateIndex { syntax }),
39814 SyntaxKind::CREATE_LANGUAGE => Stmt::CreateLanguage(CreateLanguage { syntax }),
39815 SyntaxKind::CREATE_MATERIALIZED_VIEW => {
39816 Stmt::CreateMaterializedView(CreateMaterializedView { syntax })
39817 }
39818 SyntaxKind::CREATE_OPERATOR => Stmt::CreateOperator(CreateOperator { syntax }),
39819 SyntaxKind::CREATE_OPERATOR_CLASS => {
39820 Stmt::CreateOperatorClass(CreateOperatorClass { syntax })
39821 }
39822 SyntaxKind::CREATE_OPERATOR_FAMILY => {
39823 Stmt::CreateOperatorFamily(CreateOperatorFamily { syntax })
39824 }
39825 SyntaxKind::CREATE_POLICY => Stmt::CreatePolicy(CreatePolicy { syntax }),
39826 SyntaxKind::CREATE_PROCEDURE => Stmt::CreateProcedure(CreateProcedure { syntax }),
39827 SyntaxKind::CREATE_PROPERTY_GRAPH => {
39828 Stmt::CreatePropertyGraph(CreatePropertyGraph { syntax })
39829 }
39830 SyntaxKind::CREATE_PUBLICATION => Stmt::CreatePublication(CreatePublication { syntax }),
39831 SyntaxKind::CREATE_ROLE => Stmt::CreateRole(CreateRole { syntax }),
39832 SyntaxKind::CREATE_RULE => Stmt::CreateRule(CreateRule { syntax }),
39833 SyntaxKind::CREATE_SCHEMA => Stmt::CreateSchema(CreateSchema { syntax }),
39834 SyntaxKind::CREATE_SEQUENCE => Stmt::CreateSequence(CreateSequence { syntax }),
39835 SyntaxKind::CREATE_SERVER => Stmt::CreateServer(CreateServer { syntax }),
39836 SyntaxKind::CREATE_STATISTICS => Stmt::CreateStatistics(CreateStatistics { syntax }),
39837 SyntaxKind::CREATE_SUBSCRIPTION => {
39838 Stmt::CreateSubscription(CreateSubscription { syntax })
39839 }
39840 SyntaxKind::CREATE_TABLE => Stmt::CreateTable(CreateTable { syntax }),
39841 SyntaxKind::CREATE_TABLE_AS => Stmt::CreateTableAs(CreateTableAs { syntax }),
39842 SyntaxKind::CREATE_TABLESPACE => Stmt::CreateTablespace(CreateTablespace { syntax }),
39843 SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION => {
39844 Stmt::CreateTextSearchConfiguration(CreateTextSearchConfiguration { syntax })
39845 }
39846 SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY => {
39847 Stmt::CreateTextSearchDictionary(CreateTextSearchDictionary { syntax })
39848 }
39849 SyntaxKind::CREATE_TEXT_SEARCH_PARSER => {
39850 Stmt::CreateTextSearchParser(CreateTextSearchParser { syntax })
39851 }
39852 SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE => {
39853 Stmt::CreateTextSearchTemplate(CreateTextSearchTemplate { syntax })
39854 }
39855 SyntaxKind::CREATE_TRANSFORM => Stmt::CreateTransform(CreateTransform { syntax }),
39856 SyntaxKind::CREATE_TRIGGER => Stmt::CreateTrigger(CreateTrigger { syntax }),
39857 SyntaxKind::CREATE_TYPE => Stmt::CreateType(CreateType { syntax }),
39858 SyntaxKind::CREATE_USER => Stmt::CreateUser(CreateUser { syntax }),
39859 SyntaxKind::CREATE_USER_MAPPING => {
39860 Stmt::CreateUserMapping(CreateUserMapping { syntax })
39861 }
39862 SyntaxKind::CREATE_VIEW => Stmt::CreateView(CreateView { syntax }),
39863 SyntaxKind::DEALLOCATE => Stmt::Deallocate(Deallocate { syntax }),
39864 SyntaxKind::DECLARE => Stmt::Declare(Declare { syntax }),
39865 SyntaxKind::DELETE => Stmt::Delete(Delete { syntax }),
39866 SyntaxKind::DISCARD => Stmt::Discard(Discard { syntax }),
39867 SyntaxKind::DO => Stmt::Do(Do { syntax }),
39868 SyntaxKind::DROP_ACCESS_METHOD => Stmt::DropAccessMethod(DropAccessMethod { syntax }),
39869 SyntaxKind::DROP_AGGREGATE => Stmt::DropAggregate(DropAggregate { syntax }),
39870 SyntaxKind::DROP_CAST => Stmt::DropCast(DropCast { syntax }),
39871 SyntaxKind::DROP_COLLATION => Stmt::DropCollation(DropCollation { syntax }),
39872 SyntaxKind::DROP_CONVERSION => Stmt::DropConversion(DropConversion { syntax }),
39873 SyntaxKind::DROP_DATABASE => Stmt::DropDatabase(DropDatabase { syntax }),
39874 SyntaxKind::DROP_DOMAIN => Stmt::DropDomain(DropDomain { syntax }),
39875 SyntaxKind::DROP_EVENT_TRIGGER => Stmt::DropEventTrigger(DropEventTrigger { syntax }),
39876 SyntaxKind::DROP_EXTENSION => Stmt::DropExtension(DropExtension { syntax }),
39877 SyntaxKind::DROP_FOREIGN_DATA_WRAPPER => {
39878 Stmt::DropForeignDataWrapper(DropForeignDataWrapper { syntax })
39879 }
39880 SyntaxKind::DROP_FOREIGN_TABLE => Stmt::DropForeignTable(DropForeignTable { syntax }),
39881 SyntaxKind::DROP_FUNCTION => Stmt::DropFunction(DropFunction { syntax }),
39882 SyntaxKind::DROP_GROUP => Stmt::DropGroup(DropGroup { syntax }),
39883 SyntaxKind::DROP_INDEX => Stmt::DropIndex(DropIndex { syntax }),
39884 SyntaxKind::DROP_LANGUAGE => Stmt::DropLanguage(DropLanguage { syntax }),
39885 SyntaxKind::DROP_MATERIALIZED_VIEW => {
39886 Stmt::DropMaterializedView(DropMaterializedView { syntax })
39887 }
39888 SyntaxKind::DROP_OPERATOR => Stmt::DropOperator(DropOperator { syntax }),
39889 SyntaxKind::DROP_OPERATOR_CLASS => {
39890 Stmt::DropOperatorClass(DropOperatorClass { syntax })
39891 }
39892 SyntaxKind::DROP_OPERATOR_FAMILY => {
39893 Stmt::DropOperatorFamily(DropOperatorFamily { syntax })
39894 }
39895 SyntaxKind::DROP_OWNED => Stmt::DropOwned(DropOwned { syntax }),
39896 SyntaxKind::DROP_POLICY => Stmt::DropPolicy(DropPolicy { syntax }),
39897 SyntaxKind::DROP_PROCEDURE => Stmt::DropProcedure(DropProcedure { syntax }),
39898 SyntaxKind::DROP_PROPERTY_GRAPH => {
39899 Stmt::DropPropertyGraph(DropPropertyGraph { syntax })
39900 }
39901 SyntaxKind::DROP_PUBLICATION => Stmt::DropPublication(DropPublication { syntax }),
39902 SyntaxKind::DROP_ROLE => Stmt::DropRole(DropRole { syntax }),
39903 SyntaxKind::DROP_ROUTINE => Stmt::DropRoutine(DropRoutine { syntax }),
39904 SyntaxKind::DROP_RULE => Stmt::DropRule(DropRule { syntax }),
39905 SyntaxKind::DROP_SCHEMA => Stmt::DropSchema(DropSchema { syntax }),
39906 SyntaxKind::DROP_SEQUENCE => Stmt::DropSequence(DropSequence { syntax }),
39907 SyntaxKind::DROP_SERVER => Stmt::DropServer(DropServer { syntax }),
39908 SyntaxKind::DROP_STATISTICS => Stmt::DropStatistics(DropStatistics { syntax }),
39909 SyntaxKind::DROP_SUBSCRIPTION => Stmt::DropSubscription(DropSubscription { syntax }),
39910 SyntaxKind::DROP_TABLE => Stmt::DropTable(DropTable { syntax }),
39911 SyntaxKind::DROP_TABLESPACE => Stmt::DropTablespace(DropTablespace { syntax }),
39912 SyntaxKind::DROP_TEXT_SEARCH_CONFIG => {
39913 Stmt::DropTextSearchConfig(DropTextSearchConfig { syntax })
39914 }
39915 SyntaxKind::DROP_TEXT_SEARCH_DICT => {
39916 Stmt::DropTextSearchDict(DropTextSearchDict { syntax })
39917 }
39918 SyntaxKind::DROP_TEXT_SEARCH_PARSER => {
39919 Stmt::DropTextSearchParser(DropTextSearchParser { syntax })
39920 }
39921 SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE => {
39922 Stmt::DropTextSearchTemplate(DropTextSearchTemplate { syntax })
39923 }
39924 SyntaxKind::DROP_TRANSFORM => Stmt::DropTransform(DropTransform { syntax }),
39925 SyntaxKind::DROP_TRIGGER => Stmt::DropTrigger(DropTrigger { syntax }),
39926 SyntaxKind::DROP_TYPE => Stmt::DropType(DropType { syntax }),
39927 SyntaxKind::DROP_USER => Stmt::DropUser(DropUser { syntax }),
39928 SyntaxKind::DROP_USER_MAPPING => Stmt::DropUserMapping(DropUserMapping { syntax }),
39929 SyntaxKind::DROP_VIEW => Stmt::DropView(DropView { syntax }),
39930 SyntaxKind::EMPTY_STMT => Stmt::EmptyStmt(EmptyStmt { syntax }),
39931 SyntaxKind::EXECUTE => Stmt::Execute(Execute { syntax }),
39932 SyntaxKind::EXPLAIN => Stmt::Explain(Explain { syntax }),
39933 SyntaxKind::FETCH => Stmt::Fetch(Fetch { syntax }),
39934 SyntaxKind::GRANT => Stmt::Grant(Grant { syntax }),
39935 SyntaxKind::IMPORT_FOREIGN_SCHEMA => {
39936 Stmt::ImportForeignSchema(ImportForeignSchema { syntax })
39937 }
39938 SyntaxKind::INSERT => Stmt::Insert(Insert { syntax }),
39939 SyntaxKind::LISTEN => Stmt::Listen(Listen { syntax }),
39940 SyntaxKind::LOAD => Stmt::Load(Load { syntax }),
39941 SyntaxKind::LOCK => Stmt::Lock(Lock { syntax }),
39942 SyntaxKind::MERGE => Stmt::Merge(Merge { syntax }),
39943 SyntaxKind::MOVE => Stmt::Move(Move { syntax }),
39944 SyntaxKind::NOTIFY => Stmt::Notify(Notify { syntax }),
39945 SyntaxKind::PAREN_SELECT => Stmt::ParenSelect(ParenSelect { syntax }),
39946 SyntaxKind::PREPARE => Stmt::Prepare(Prepare { syntax }),
39947 SyntaxKind::PREPARE_TRANSACTION => {
39948 Stmt::PrepareTransaction(PrepareTransaction { syntax })
39949 }
39950 SyntaxKind::REASSIGN => Stmt::Reassign(Reassign { syntax }),
39951 SyntaxKind::REFRESH => Stmt::Refresh(Refresh { syntax }),
39952 SyntaxKind::REINDEX => Stmt::Reindex(Reindex { syntax }),
39953 SyntaxKind::RELEASE_SAVEPOINT => Stmt::ReleaseSavepoint(ReleaseSavepoint { syntax }),
39954 SyntaxKind::REPACK => Stmt::Repack(Repack { syntax }),
39955 SyntaxKind::RESET => Stmt::Reset(Reset { syntax }),
39956 SyntaxKind::RESET_SESSION_AUTH => Stmt::ResetSessionAuth(ResetSessionAuth { syntax }),
39957 SyntaxKind::REVOKE => Stmt::Revoke(Revoke { syntax }),
39958 SyntaxKind::ROLLBACK => Stmt::Rollback(Rollback { syntax }),
39959 SyntaxKind::SAVEPOINT => Stmt::Savepoint(Savepoint { syntax }),
39960 SyntaxKind::SECURITY_LABEL => Stmt::SecurityLabel(SecurityLabel { syntax }),
39961 SyntaxKind::SELECT => Stmt::Select(Select { syntax }),
39962 SyntaxKind::SELECT_INTO => Stmt::SelectInto(SelectInto { syntax }),
39963 SyntaxKind::SET => Stmt::Set(Set { syntax }),
39964 SyntaxKind::SET_CONSTRAINTS => Stmt::SetConstraints(SetConstraints { syntax }),
39965 SyntaxKind::SET_ROLE => Stmt::SetRole(SetRole { syntax }),
39966 SyntaxKind::SET_SESSION_AUTH => Stmt::SetSessionAuth(SetSessionAuth { syntax }),
39967 SyntaxKind::SET_TRANSACTION => Stmt::SetTransaction(SetTransaction { syntax }),
39968 SyntaxKind::SHOW => Stmt::Show(Show { syntax }),
39969 SyntaxKind::TABLE => Stmt::Table(Table { syntax }),
39970 SyntaxKind::TRUNCATE => Stmt::Truncate(Truncate { syntax }),
39971 SyntaxKind::UNLISTEN => Stmt::Unlisten(Unlisten { syntax }),
39972 SyntaxKind::UPDATE => Stmt::Update(Update { syntax }),
39973 SyntaxKind::VACUUM => Stmt::Vacuum(Vacuum { syntax }),
39974 SyntaxKind::VALUES => Stmt::Values(Values { syntax }),
39975 _ => {
39976 return None;
39977 }
39978 };
39979 Some(res)
39980 }
39981 #[inline]
39982 fn syntax(&self) -> &SyntaxNode {
39983 match self {
39984 Stmt::AlterAggregate(it) => &it.syntax,
39985 Stmt::AlterCollation(it) => &it.syntax,
39986 Stmt::AlterConversion(it) => &it.syntax,
39987 Stmt::AlterDatabase(it) => &it.syntax,
39988 Stmt::AlterDefaultPrivileges(it) => &it.syntax,
39989 Stmt::AlterDomain(it) => &it.syntax,
39990 Stmt::AlterEventTrigger(it) => &it.syntax,
39991 Stmt::AlterExtension(it) => &it.syntax,
39992 Stmt::AlterForeignDataWrapper(it) => &it.syntax,
39993 Stmt::AlterForeignTable(it) => &it.syntax,
39994 Stmt::AlterFunction(it) => &it.syntax,
39995 Stmt::AlterGroup(it) => &it.syntax,
39996 Stmt::AlterIndex(it) => &it.syntax,
39997 Stmt::AlterLanguage(it) => &it.syntax,
39998 Stmt::AlterLargeObject(it) => &it.syntax,
39999 Stmt::AlterMaterializedView(it) => &it.syntax,
40000 Stmt::AlterOperator(it) => &it.syntax,
40001 Stmt::AlterOperatorClass(it) => &it.syntax,
40002 Stmt::AlterOperatorFamily(it) => &it.syntax,
40003 Stmt::AlterPolicy(it) => &it.syntax,
40004 Stmt::AlterProcedure(it) => &it.syntax,
40005 Stmt::AlterPropertyGraph(it) => &it.syntax,
40006 Stmt::AlterPublication(it) => &it.syntax,
40007 Stmt::AlterRole(it) => &it.syntax,
40008 Stmt::AlterRoutine(it) => &it.syntax,
40009 Stmt::AlterRule(it) => &it.syntax,
40010 Stmt::AlterSchema(it) => &it.syntax,
40011 Stmt::AlterSequence(it) => &it.syntax,
40012 Stmt::AlterServer(it) => &it.syntax,
40013 Stmt::AlterStatistics(it) => &it.syntax,
40014 Stmt::AlterSubscription(it) => &it.syntax,
40015 Stmt::AlterSystem(it) => &it.syntax,
40016 Stmt::AlterTable(it) => &it.syntax,
40017 Stmt::AlterTablespace(it) => &it.syntax,
40018 Stmt::AlterTextSearchConfiguration(it) => &it.syntax,
40019 Stmt::AlterTextSearchDictionary(it) => &it.syntax,
40020 Stmt::AlterTextSearchParser(it) => &it.syntax,
40021 Stmt::AlterTextSearchTemplate(it) => &it.syntax,
40022 Stmt::AlterTrigger(it) => &it.syntax,
40023 Stmt::AlterType(it) => &it.syntax,
40024 Stmt::AlterUser(it) => &it.syntax,
40025 Stmt::AlterUserMapping(it) => &it.syntax,
40026 Stmt::AlterView(it) => &it.syntax,
40027 Stmt::Analyze(it) => &it.syntax,
40028 Stmt::Begin(it) => &it.syntax,
40029 Stmt::Call(it) => &it.syntax,
40030 Stmt::Checkpoint(it) => &it.syntax,
40031 Stmt::Close(it) => &it.syntax,
40032 Stmt::Cluster(it) => &it.syntax,
40033 Stmt::CommentOn(it) => &it.syntax,
40034 Stmt::Commit(it) => &it.syntax,
40035 Stmt::Copy(it) => &it.syntax,
40036 Stmt::CreateAccessMethod(it) => &it.syntax,
40037 Stmt::CreateAggregate(it) => &it.syntax,
40038 Stmt::CreateCast(it) => &it.syntax,
40039 Stmt::CreateCollation(it) => &it.syntax,
40040 Stmt::CreateConversion(it) => &it.syntax,
40041 Stmt::CreateDatabase(it) => &it.syntax,
40042 Stmt::CreateDomain(it) => &it.syntax,
40043 Stmt::CreateEventTrigger(it) => &it.syntax,
40044 Stmt::CreateExtension(it) => &it.syntax,
40045 Stmt::CreateForeignDataWrapper(it) => &it.syntax,
40046 Stmt::CreateForeignTable(it) => &it.syntax,
40047 Stmt::CreateFunction(it) => &it.syntax,
40048 Stmt::CreateGroup(it) => &it.syntax,
40049 Stmt::CreateIndex(it) => &it.syntax,
40050 Stmt::CreateLanguage(it) => &it.syntax,
40051 Stmt::CreateMaterializedView(it) => &it.syntax,
40052 Stmt::CreateOperator(it) => &it.syntax,
40053 Stmt::CreateOperatorClass(it) => &it.syntax,
40054 Stmt::CreateOperatorFamily(it) => &it.syntax,
40055 Stmt::CreatePolicy(it) => &it.syntax,
40056 Stmt::CreateProcedure(it) => &it.syntax,
40057 Stmt::CreatePropertyGraph(it) => &it.syntax,
40058 Stmt::CreatePublication(it) => &it.syntax,
40059 Stmt::CreateRole(it) => &it.syntax,
40060 Stmt::CreateRule(it) => &it.syntax,
40061 Stmt::CreateSchema(it) => &it.syntax,
40062 Stmt::CreateSequence(it) => &it.syntax,
40063 Stmt::CreateServer(it) => &it.syntax,
40064 Stmt::CreateStatistics(it) => &it.syntax,
40065 Stmt::CreateSubscription(it) => &it.syntax,
40066 Stmt::CreateTable(it) => &it.syntax,
40067 Stmt::CreateTableAs(it) => &it.syntax,
40068 Stmt::CreateTablespace(it) => &it.syntax,
40069 Stmt::CreateTextSearchConfiguration(it) => &it.syntax,
40070 Stmt::CreateTextSearchDictionary(it) => &it.syntax,
40071 Stmt::CreateTextSearchParser(it) => &it.syntax,
40072 Stmt::CreateTextSearchTemplate(it) => &it.syntax,
40073 Stmt::CreateTransform(it) => &it.syntax,
40074 Stmt::CreateTrigger(it) => &it.syntax,
40075 Stmt::CreateType(it) => &it.syntax,
40076 Stmt::CreateUser(it) => &it.syntax,
40077 Stmt::CreateUserMapping(it) => &it.syntax,
40078 Stmt::CreateView(it) => &it.syntax,
40079 Stmt::Deallocate(it) => &it.syntax,
40080 Stmt::Declare(it) => &it.syntax,
40081 Stmt::Delete(it) => &it.syntax,
40082 Stmt::Discard(it) => &it.syntax,
40083 Stmt::Do(it) => &it.syntax,
40084 Stmt::DropAccessMethod(it) => &it.syntax,
40085 Stmt::DropAggregate(it) => &it.syntax,
40086 Stmt::DropCast(it) => &it.syntax,
40087 Stmt::DropCollation(it) => &it.syntax,
40088 Stmt::DropConversion(it) => &it.syntax,
40089 Stmt::DropDatabase(it) => &it.syntax,
40090 Stmt::DropDomain(it) => &it.syntax,
40091 Stmt::DropEventTrigger(it) => &it.syntax,
40092 Stmt::DropExtension(it) => &it.syntax,
40093 Stmt::DropForeignDataWrapper(it) => &it.syntax,
40094 Stmt::DropForeignTable(it) => &it.syntax,
40095 Stmt::DropFunction(it) => &it.syntax,
40096 Stmt::DropGroup(it) => &it.syntax,
40097 Stmt::DropIndex(it) => &it.syntax,
40098 Stmt::DropLanguage(it) => &it.syntax,
40099 Stmt::DropMaterializedView(it) => &it.syntax,
40100 Stmt::DropOperator(it) => &it.syntax,
40101 Stmt::DropOperatorClass(it) => &it.syntax,
40102 Stmt::DropOperatorFamily(it) => &it.syntax,
40103 Stmt::DropOwned(it) => &it.syntax,
40104 Stmt::DropPolicy(it) => &it.syntax,
40105 Stmt::DropProcedure(it) => &it.syntax,
40106 Stmt::DropPropertyGraph(it) => &it.syntax,
40107 Stmt::DropPublication(it) => &it.syntax,
40108 Stmt::DropRole(it) => &it.syntax,
40109 Stmt::DropRoutine(it) => &it.syntax,
40110 Stmt::DropRule(it) => &it.syntax,
40111 Stmt::DropSchema(it) => &it.syntax,
40112 Stmt::DropSequence(it) => &it.syntax,
40113 Stmt::DropServer(it) => &it.syntax,
40114 Stmt::DropStatistics(it) => &it.syntax,
40115 Stmt::DropSubscription(it) => &it.syntax,
40116 Stmt::DropTable(it) => &it.syntax,
40117 Stmt::DropTablespace(it) => &it.syntax,
40118 Stmt::DropTextSearchConfig(it) => &it.syntax,
40119 Stmt::DropTextSearchDict(it) => &it.syntax,
40120 Stmt::DropTextSearchParser(it) => &it.syntax,
40121 Stmt::DropTextSearchTemplate(it) => &it.syntax,
40122 Stmt::DropTransform(it) => &it.syntax,
40123 Stmt::DropTrigger(it) => &it.syntax,
40124 Stmt::DropType(it) => &it.syntax,
40125 Stmt::DropUser(it) => &it.syntax,
40126 Stmt::DropUserMapping(it) => &it.syntax,
40127 Stmt::DropView(it) => &it.syntax,
40128 Stmt::EmptyStmt(it) => &it.syntax,
40129 Stmt::Execute(it) => &it.syntax,
40130 Stmt::Explain(it) => &it.syntax,
40131 Stmt::Fetch(it) => &it.syntax,
40132 Stmt::Grant(it) => &it.syntax,
40133 Stmt::ImportForeignSchema(it) => &it.syntax,
40134 Stmt::Insert(it) => &it.syntax,
40135 Stmt::Listen(it) => &it.syntax,
40136 Stmt::Load(it) => &it.syntax,
40137 Stmt::Lock(it) => &it.syntax,
40138 Stmt::Merge(it) => &it.syntax,
40139 Stmt::Move(it) => &it.syntax,
40140 Stmt::Notify(it) => &it.syntax,
40141 Stmt::ParenSelect(it) => &it.syntax,
40142 Stmt::Prepare(it) => &it.syntax,
40143 Stmt::PrepareTransaction(it) => &it.syntax,
40144 Stmt::Reassign(it) => &it.syntax,
40145 Stmt::Refresh(it) => &it.syntax,
40146 Stmt::Reindex(it) => &it.syntax,
40147 Stmt::ReleaseSavepoint(it) => &it.syntax,
40148 Stmt::Repack(it) => &it.syntax,
40149 Stmt::Reset(it) => &it.syntax,
40150 Stmt::ResetSessionAuth(it) => &it.syntax,
40151 Stmt::Revoke(it) => &it.syntax,
40152 Stmt::Rollback(it) => &it.syntax,
40153 Stmt::Savepoint(it) => &it.syntax,
40154 Stmt::SecurityLabel(it) => &it.syntax,
40155 Stmt::Select(it) => &it.syntax,
40156 Stmt::SelectInto(it) => &it.syntax,
40157 Stmt::Set(it) => &it.syntax,
40158 Stmt::SetConstraints(it) => &it.syntax,
40159 Stmt::SetRole(it) => &it.syntax,
40160 Stmt::SetSessionAuth(it) => &it.syntax,
40161 Stmt::SetTransaction(it) => &it.syntax,
40162 Stmt::Show(it) => &it.syntax,
40163 Stmt::Table(it) => &it.syntax,
40164 Stmt::Truncate(it) => &it.syntax,
40165 Stmt::Unlisten(it) => &it.syntax,
40166 Stmt::Update(it) => &it.syntax,
40167 Stmt::Vacuum(it) => &it.syntax,
40168 Stmt::Values(it) => &it.syntax,
40169 }
40170 }
40171}
40172impl From<AlterAggregate> for Stmt {
40173 #[inline]
40174 fn from(node: AlterAggregate) -> Stmt {
40175 Stmt::AlterAggregate(node)
40176 }
40177}
40178impl From<AlterCollation> for Stmt {
40179 #[inline]
40180 fn from(node: AlterCollation) -> Stmt {
40181 Stmt::AlterCollation(node)
40182 }
40183}
40184impl From<AlterConversion> for Stmt {
40185 #[inline]
40186 fn from(node: AlterConversion) -> Stmt {
40187 Stmt::AlterConversion(node)
40188 }
40189}
40190impl From<AlterDatabase> for Stmt {
40191 #[inline]
40192 fn from(node: AlterDatabase) -> Stmt {
40193 Stmt::AlterDatabase(node)
40194 }
40195}
40196impl From<AlterDefaultPrivileges> for Stmt {
40197 #[inline]
40198 fn from(node: AlterDefaultPrivileges) -> Stmt {
40199 Stmt::AlterDefaultPrivileges(node)
40200 }
40201}
40202impl From<AlterDomain> for Stmt {
40203 #[inline]
40204 fn from(node: AlterDomain) -> Stmt {
40205 Stmt::AlterDomain(node)
40206 }
40207}
40208impl From<AlterEventTrigger> for Stmt {
40209 #[inline]
40210 fn from(node: AlterEventTrigger) -> Stmt {
40211 Stmt::AlterEventTrigger(node)
40212 }
40213}
40214impl From<AlterExtension> for Stmt {
40215 #[inline]
40216 fn from(node: AlterExtension) -> Stmt {
40217 Stmt::AlterExtension(node)
40218 }
40219}
40220impl From<AlterForeignDataWrapper> for Stmt {
40221 #[inline]
40222 fn from(node: AlterForeignDataWrapper) -> Stmt {
40223 Stmt::AlterForeignDataWrapper(node)
40224 }
40225}
40226impl From<AlterForeignTable> for Stmt {
40227 #[inline]
40228 fn from(node: AlterForeignTable) -> Stmt {
40229 Stmt::AlterForeignTable(node)
40230 }
40231}
40232impl From<AlterFunction> for Stmt {
40233 #[inline]
40234 fn from(node: AlterFunction) -> Stmt {
40235 Stmt::AlterFunction(node)
40236 }
40237}
40238impl From<AlterGroup> for Stmt {
40239 #[inline]
40240 fn from(node: AlterGroup) -> Stmt {
40241 Stmt::AlterGroup(node)
40242 }
40243}
40244impl From<AlterIndex> for Stmt {
40245 #[inline]
40246 fn from(node: AlterIndex) -> Stmt {
40247 Stmt::AlterIndex(node)
40248 }
40249}
40250impl From<AlterLanguage> for Stmt {
40251 #[inline]
40252 fn from(node: AlterLanguage) -> Stmt {
40253 Stmt::AlterLanguage(node)
40254 }
40255}
40256impl From<AlterLargeObject> for Stmt {
40257 #[inline]
40258 fn from(node: AlterLargeObject) -> Stmt {
40259 Stmt::AlterLargeObject(node)
40260 }
40261}
40262impl From<AlterMaterializedView> for Stmt {
40263 #[inline]
40264 fn from(node: AlterMaterializedView) -> Stmt {
40265 Stmt::AlterMaterializedView(node)
40266 }
40267}
40268impl From<AlterOperator> for Stmt {
40269 #[inline]
40270 fn from(node: AlterOperator) -> Stmt {
40271 Stmt::AlterOperator(node)
40272 }
40273}
40274impl From<AlterOperatorClass> for Stmt {
40275 #[inline]
40276 fn from(node: AlterOperatorClass) -> Stmt {
40277 Stmt::AlterOperatorClass(node)
40278 }
40279}
40280impl From<AlterOperatorFamily> for Stmt {
40281 #[inline]
40282 fn from(node: AlterOperatorFamily) -> Stmt {
40283 Stmt::AlterOperatorFamily(node)
40284 }
40285}
40286impl From<AlterPolicy> for Stmt {
40287 #[inline]
40288 fn from(node: AlterPolicy) -> Stmt {
40289 Stmt::AlterPolicy(node)
40290 }
40291}
40292impl From<AlterProcedure> for Stmt {
40293 #[inline]
40294 fn from(node: AlterProcedure) -> Stmt {
40295 Stmt::AlterProcedure(node)
40296 }
40297}
40298impl From<AlterPropertyGraph> for Stmt {
40299 #[inline]
40300 fn from(node: AlterPropertyGraph) -> Stmt {
40301 Stmt::AlterPropertyGraph(node)
40302 }
40303}
40304impl From<AlterPublication> for Stmt {
40305 #[inline]
40306 fn from(node: AlterPublication) -> Stmt {
40307 Stmt::AlterPublication(node)
40308 }
40309}
40310impl From<AlterRole> for Stmt {
40311 #[inline]
40312 fn from(node: AlterRole) -> Stmt {
40313 Stmt::AlterRole(node)
40314 }
40315}
40316impl From<AlterRoutine> for Stmt {
40317 #[inline]
40318 fn from(node: AlterRoutine) -> Stmt {
40319 Stmt::AlterRoutine(node)
40320 }
40321}
40322impl From<AlterRule> for Stmt {
40323 #[inline]
40324 fn from(node: AlterRule) -> Stmt {
40325 Stmt::AlterRule(node)
40326 }
40327}
40328impl From<AlterSchema> for Stmt {
40329 #[inline]
40330 fn from(node: AlterSchema) -> Stmt {
40331 Stmt::AlterSchema(node)
40332 }
40333}
40334impl From<AlterSequence> for Stmt {
40335 #[inline]
40336 fn from(node: AlterSequence) -> Stmt {
40337 Stmt::AlterSequence(node)
40338 }
40339}
40340impl From<AlterServer> for Stmt {
40341 #[inline]
40342 fn from(node: AlterServer) -> Stmt {
40343 Stmt::AlterServer(node)
40344 }
40345}
40346impl From<AlterStatistics> for Stmt {
40347 #[inline]
40348 fn from(node: AlterStatistics) -> Stmt {
40349 Stmt::AlterStatistics(node)
40350 }
40351}
40352impl From<AlterSubscription> for Stmt {
40353 #[inline]
40354 fn from(node: AlterSubscription) -> Stmt {
40355 Stmt::AlterSubscription(node)
40356 }
40357}
40358impl From<AlterSystem> for Stmt {
40359 #[inline]
40360 fn from(node: AlterSystem) -> Stmt {
40361 Stmt::AlterSystem(node)
40362 }
40363}
40364impl From<AlterTable> for Stmt {
40365 #[inline]
40366 fn from(node: AlterTable) -> Stmt {
40367 Stmt::AlterTable(node)
40368 }
40369}
40370impl From<AlterTablespace> for Stmt {
40371 #[inline]
40372 fn from(node: AlterTablespace) -> Stmt {
40373 Stmt::AlterTablespace(node)
40374 }
40375}
40376impl From<AlterTextSearchConfiguration> for Stmt {
40377 #[inline]
40378 fn from(node: AlterTextSearchConfiguration) -> Stmt {
40379 Stmt::AlterTextSearchConfiguration(node)
40380 }
40381}
40382impl From<AlterTextSearchDictionary> for Stmt {
40383 #[inline]
40384 fn from(node: AlterTextSearchDictionary) -> Stmt {
40385 Stmt::AlterTextSearchDictionary(node)
40386 }
40387}
40388impl From<AlterTextSearchParser> for Stmt {
40389 #[inline]
40390 fn from(node: AlterTextSearchParser) -> Stmt {
40391 Stmt::AlterTextSearchParser(node)
40392 }
40393}
40394impl From<AlterTextSearchTemplate> for Stmt {
40395 #[inline]
40396 fn from(node: AlterTextSearchTemplate) -> Stmt {
40397 Stmt::AlterTextSearchTemplate(node)
40398 }
40399}
40400impl From<AlterTrigger> for Stmt {
40401 #[inline]
40402 fn from(node: AlterTrigger) -> Stmt {
40403 Stmt::AlterTrigger(node)
40404 }
40405}
40406impl From<AlterType> for Stmt {
40407 #[inline]
40408 fn from(node: AlterType) -> Stmt {
40409 Stmt::AlterType(node)
40410 }
40411}
40412impl From<AlterUser> for Stmt {
40413 #[inline]
40414 fn from(node: AlterUser) -> Stmt {
40415 Stmt::AlterUser(node)
40416 }
40417}
40418impl From<AlterUserMapping> for Stmt {
40419 #[inline]
40420 fn from(node: AlterUserMapping) -> Stmt {
40421 Stmt::AlterUserMapping(node)
40422 }
40423}
40424impl From<AlterView> for Stmt {
40425 #[inline]
40426 fn from(node: AlterView) -> Stmt {
40427 Stmt::AlterView(node)
40428 }
40429}
40430impl From<Analyze> for Stmt {
40431 #[inline]
40432 fn from(node: Analyze) -> Stmt {
40433 Stmt::Analyze(node)
40434 }
40435}
40436impl From<Begin> for Stmt {
40437 #[inline]
40438 fn from(node: Begin) -> Stmt {
40439 Stmt::Begin(node)
40440 }
40441}
40442impl From<Call> for Stmt {
40443 #[inline]
40444 fn from(node: Call) -> Stmt {
40445 Stmt::Call(node)
40446 }
40447}
40448impl From<Checkpoint> for Stmt {
40449 #[inline]
40450 fn from(node: Checkpoint) -> Stmt {
40451 Stmt::Checkpoint(node)
40452 }
40453}
40454impl From<Close> for Stmt {
40455 #[inline]
40456 fn from(node: Close) -> Stmt {
40457 Stmt::Close(node)
40458 }
40459}
40460impl From<Cluster> for Stmt {
40461 #[inline]
40462 fn from(node: Cluster) -> Stmt {
40463 Stmt::Cluster(node)
40464 }
40465}
40466impl From<CommentOn> for Stmt {
40467 #[inline]
40468 fn from(node: CommentOn) -> Stmt {
40469 Stmt::CommentOn(node)
40470 }
40471}
40472impl From<Commit> for Stmt {
40473 #[inline]
40474 fn from(node: Commit) -> Stmt {
40475 Stmt::Commit(node)
40476 }
40477}
40478impl From<Copy> for Stmt {
40479 #[inline]
40480 fn from(node: Copy) -> Stmt {
40481 Stmt::Copy(node)
40482 }
40483}
40484impl From<CreateAccessMethod> for Stmt {
40485 #[inline]
40486 fn from(node: CreateAccessMethod) -> Stmt {
40487 Stmt::CreateAccessMethod(node)
40488 }
40489}
40490impl From<CreateAggregate> for Stmt {
40491 #[inline]
40492 fn from(node: CreateAggregate) -> Stmt {
40493 Stmt::CreateAggregate(node)
40494 }
40495}
40496impl From<CreateCast> for Stmt {
40497 #[inline]
40498 fn from(node: CreateCast) -> Stmt {
40499 Stmt::CreateCast(node)
40500 }
40501}
40502impl From<CreateCollation> for Stmt {
40503 #[inline]
40504 fn from(node: CreateCollation) -> Stmt {
40505 Stmt::CreateCollation(node)
40506 }
40507}
40508impl From<CreateConversion> for Stmt {
40509 #[inline]
40510 fn from(node: CreateConversion) -> Stmt {
40511 Stmt::CreateConversion(node)
40512 }
40513}
40514impl From<CreateDatabase> for Stmt {
40515 #[inline]
40516 fn from(node: CreateDatabase) -> Stmt {
40517 Stmt::CreateDatabase(node)
40518 }
40519}
40520impl From<CreateDomain> for Stmt {
40521 #[inline]
40522 fn from(node: CreateDomain) -> Stmt {
40523 Stmt::CreateDomain(node)
40524 }
40525}
40526impl From<CreateEventTrigger> for Stmt {
40527 #[inline]
40528 fn from(node: CreateEventTrigger) -> Stmt {
40529 Stmt::CreateEventTrigger(node)
40530 }
40531}
40532impl From<CreateExtension> for Stmt {
40533 #[inline]
40534 fn from(node: CreateExtension) -> Stmt {
40535 Stmt::CreateExtension(node)
40536 }
40537}
40538impl From<CreateForeignDataWrapper> for Stmt {
40539 #[inline]
40540 fn from(node: CreateForeignDataWrapper) -> Stmt {
40541 Stmt::CreateForeignDataWrapper(node)
40542 }
40543}
40544impl From<CreateForeignTable> for Stmt {
40545 #[inline]
40546 fn from(node: CreateForeignTable) -> Stmt {
40547 Stmt::CreateForeignTable(node)
40548 }
40549}
40550impl From<CreateFunction> for Stmt {
40551 #[inline]
40552 fn from(node: CreateFunction) -> Stmt {
40553 Stmt::CreateFunction(node)
40554 }
40555}
40556impl From<CreateGroup> for Stmt {
40557 #[inline]
40558 fn from(node: CreateGroup) -> Stmt {
40559 Stmt::CreateGroup(node)
40560 }
40561}
40562impl From<CreateIndex> for Stmt {
40563 #[inline]
40564 fn from(node: CreateIndex) -> Stmt {
40565 Stmt::CreateIndex(node)
40566 }
40567}
40568impl From<CreateLanguage> for Stmt {
40569 #[inline]
40570 fn from(node: CreateLanguage) -> Stmt {
40571 Stmt::CreateLanguage(node)
40572 }
40573}
40574impl From<CreateMaterializedView> for Stmt {
40575 #[inline]
40576 fn from(node: CreateMaterializedView) -> Stmt {
40577 Stmt::CreateMaterializedView(node)
40578 }
40579}
40580impl From<CreateOperator> for Stmt {
40581 #[inline]
40582 fn from(node: CreateOperator) -> Stmt {
40583 Stmt::CreateOperator(node)
40584 }
40585}
40586impl From<CreateOperatorClass> for Stmt {
40587 #[inline]
40588 fn from(node: CreateOperatorClass) -> Stmt {
40589 Stmt::CreateOperatorClass(node)
40590 }
40591}
40592impl From<CreateOperatorFamily> for Stmt {
40593 #[inline]
40594 fn from(node: CreateOperatorFamily) -> Stmt {
40595 Stmt::CreateOperatorFamily(node)
40596 }
40597}
40598impl From<CreatePolicy> for Stmt {
40599 #[inline]
40600 fn from(node: CreatePolicy) -> Stmt {
40601 Stmt::CreatePolicy(node)
40602 }
40603}
40604impl From<CreateProcedure> for Stmt {
40605 #[inline]
40606 fn from(node: CreateProcedure) -> Stmt {
40607 Stmt::CreateProcedure(node)
40608 }
40609}
40610impl From<CreatePropertyGraph> for Stmt {
40611 #[inline]
40612 fn from(node: CreatePropertyGraph) -> Stmt {
40613 Stmt::CreatePropertyGraph(node)
40614 }
40615}
40616impl From<CreatePublication> for Stmt {
40617 #[inline]
40618 fn from(node: CreatePublication) -> Stmt {
40619 Stmt::CreatePublication(node)
40620 }
40621}
40622impl From<CreateRole> for Stmt {
40623 #[inline]
40624 fn from(node: CreateRole) -> Stmt {
40625 Stmt::CreateRole(node)
40626 }
40627}
40628impl From<CreateRule> for Stmt {
40629 #[inline]
40630 fn from(node: CreateRule) -> Stmt {
40631 Stmt::CreateRule(node)
40632 }
40633}
40634impl From<CreateSchema> for Stmt {
40635 #[inline]
40636 fn from(node: CreateSchema) -> Stmt {
40637 Stmt::CreateSchema(node)
40638 }
40639}
40640impl From<CreateSequence> for Stmt {
40641 #[inline]
40642 fn from(node: CreateSequence) -> Stmt {
40643 Stmt::CreateSequence(node)
40644 }
40645}
40646impl From<CreateServer> for Stmt {
40647 #[inline]
40648 fn from(node: CreateServer) -> Stmt {
40649 Stmt::CreateServer(node)
40650 }
40651}
40652impl From<CreateStatistics> for Stmt {
40653 #[inline]
40654 fn from(node: CreateStatistics) -> Stmt {
40655 Stmt::CreateStatistics(node)
40656 }
40657}
40658impl From<CreateSubscription> for Stmt {
40659 #[inline]
40660 fn from(node: CreateSubscription) -> Stmt {
40661 Stmt::CreateSubscription(node)
40662 }
40663}
40664impl From<CreateTable> for Stmt {
40665 #[inline]
40666 fn from(node: CreateTable) -> Stmt {
40667 Stmt::CreateTable(node)
40668 }
40669}
40670impl From<CreateTableAs> for Stmt {
40671 #[inline]
40672 fn from(node: CreateTableAs) -> Stmt {
40673 Stmt::CreateTableAs(node)
40674 }
40675}
40676impl From<CreateTablespace> for Stmt {
40677 #[inline]
40678 fn from(node: CreateTablespace) -> Stmt {
40679 Stmt::CreateTablespace(node)
40680 }
40681}
40682impl From<CreateTextSearchConfiguration> for Stmt {
40683 #[inline]
40684 fn from(node: CreateTextSearchConfiguration) -> Stmt {
40685 Stmt::CreateTextSearchConfiguration(node)
40686 }
40687}
40688impl From<CreateTextSearchDictionary> for Stmt {
40689 #[inline]
40690 fn from(node: CreateTextSearchDictionary) -> Stmt {
40691 Stmt::CreateTextSearchDictionary(node)
40692 }
40693}
40694impl From<CreateTextSearchParser> for Stmt {
40695 #[inline]
40696 fn from(node: CreateTextSearchParser) -> Stmt {
40697 Stmt::CreateTextSearchParser(node)
40698 }
40699}
40700impl From<CreateTextSearchTemplate> for Stmt {
40701 #[inline]
40702 fn from(node: CreateTextSearchTemplate) -> Stmt {
40703 Stmt::CreateTextSearchTemplate(node)
40704 }
40705}
40706impl From<CreateTransform> for Stmt {
40707 #[inline]
40708 fn from(node: CreateTransform) -> Stmt {
40709 Stmt::CreateTransform(node)
40710 }
40711}
40712impl From<CreateTrigger> for Stmt {
40713 #[inline]
40714 fn from(node: CreateTrigger) -> Stmt {
40715 Stmt::CreateTrigger(node)
40716 }
40717}
40718impl From<CreateType> for Stmt {
40719 #[inline]
40720 fn from(node: CreateType) -> Stmt {
40721 Stmt::CreateType(node)
40722 }
40723}
40724impl From<CreateUser> for Stmt {
40725 #[inline]
40726 fn from(node: CreateUser) -> Stmt {
40727 Stmt::CreateUser(node)
40728 }
40729}
40730impl From<CreateUserMapping> for Stmt {
40731 #[inline]
40732 fn from(node: CreateUserMapping) -> Stmt {
40733 Stmt::CreateUserMapping(node)
40734 }
40735}
40736impl From<CreateView> for Stmt {
40737 #[inline]
40738 fn from(node: CreateView) -> Stmt {
40739 Stmt::CreateView(node)
40740 }
40741}
40742impl From<Deallocate> for Stmt {
40743 #[inline]
40744 fn from(node: Deallocate) -> Stmt {
40745 Stmt::Deallocate(node)
40746 }
40747}
40748impl From<Declare> for Stmt {
40749 #[inline]
40750 fn from(node: Declare) -> Stmt {
40751 Stmt::Declare(node)
40752 }
40753}
40754impl From<Delete> for Stmt {
40755 #[inline]
40756 fn from(node: Delete) -> Stmt {
40757 Stmt::Delete(node)
40758 }
40759}
40760impl From<Discard> for Stmt {
40761 #[inline]
40762 fn from(node: Discard) -> Stmt {
40763 Stmt::Discard(node)
40764 }
40765}
40766impl From<Do> for Stmt {
40767 #[inline]
40768 fn from(node: Do) -> Stmt {
40769 Stmt::Do(node)
40770 }
40771}
40772impl From<DropAccessMethod> for Stmt {
40773 #[inline]
40774 fn from(node: DropAccessMethod) -> Stmt {
40775 Stmt::DropAccessMethod(node)
40776 }
40777}
40778impl From<DropAggregate> for Stmt {
40779 #[inline]
40780 fn from(node: DropAggregate) -> Stmt {
40781 Stmt::DropAggregate(node)
40782 }
40783}
40784impl From<DropCast> for Stmt {
40785 #[inline]
40786 fn from(node: DropCast) -> Stmt {
40787 Stmt::DropCast(node)
40788 }
40789}
40790impl From<DropCollation> for Stmt {
40791 #[inline]
40792 fn from(node: DropCollation) -> Stmt {
40793 Stmt::DropCollation(node)
40794 }
40795}
40796impl From<DropConversion> for Stmt {
40797 #[inline]
40798 fn from(node: DropConversion) -> Stmt {
40799 Stmt::DropConversion(node)
40800 }
40801}
40802impl From<DropDatabase> for Stmt {
40803 #[inline]
40804 fn from(node: DropDatabase) -> Stmt {
40805 Stmt::DropDatabase(node)
40806 }
40807}
40808impl From<DropDomain> for Stmt {
40809 #[inline]
40810 fn from(node: DropDomain) -> Stmt {
40811 Stmt::DropDomain(node)
40812 }
40813}
40814impl From<DropEventTrigger> for Stmt {
40815 #[inline]
40816 fn from(node: DropEventTrigger) -> Stmt {
40817 Stmt::DropEventTrigger(node)
40818 }
40819}
40820impl From<DropExtension> for Stmt {
40821 #[inline]
40822 fn from(node: DropExtension) -> Stmt {
40823 Stmt::DropExtension(node)
40824 }
40825}
40826impl From<DropForeignDataWrapper> for Stmt {
40827 #[inline]
40828 fn from(node: DropForeignDataWrapper) -> Stmt {
40829 Stmt::DropForeignDataWrapper(node)
40830 }
40831}
40832impl From<DropForeignTable> for Stmt {
40833 #[inline]
40834 fn from(node: DropForeignTable) -> Stmt {
40835 Stmt::DropForeignTable(node)
40836 }
40837}
40838impl From<DropFunction> for Stmt {
40839 #[inline]
40840 fn from(node: DropFunction) -> Stmt {
40841 Stmt::DropFunction(node)
40842 }
40843}
40844impl From<DropGroup> for Stmt {
40845 #[inline]
40846 fn from(node: DropGroup) -> Stmt {
40847 Stmt::DropGroup(node)
40848 }
40849}
40850impl From<DropIndex> for Stmt {
40851 #[inline]
40852 fn from(node: DropIndex) -> Stmt {
40853 Stmt::DropIndex(node)
40854 }
40855}
40856impl From<DropLanguage> for Stmt {
40857 #[inline]
40858 fn from(node: DropLanguage) -> Stmt {
40859 Stmt::DropLanguage(node)
40860 }
40861}
40862impl From<DropMaterializedView> for Stmt {
40863 #[inline]
40864 fn from(node: DropMaterializedView) -> Stmt {
40865 Stmt::DropMaterializedView(node)
40866 }
40867}
40868impl From<DropOperator> for Stmt {
40869 #[inline]
40870 fn from(node: DropOperator) -> Stmt {
40871 Stmt::DropOperator(node)
40872 }
40873}
40874impl From<DropOperatorClass> for Stmt {
40875 #[inline]
40876 fn from(node: DropOperatorClass) -> Stmt {
40877 Stmt::DropOperatorClass(node)
40878 }
40879}
40880impl From<DropOperatorFamily> for Stmt {
40881 #[inline]
40882 fn from(node: DropOperatorFamily) -> Stmt {
40883 Stmt::DropOperatorFamily(node)
40884 }
40885}
40886impl From<DropOwned> for Stmt {
40887 #[inline]
40888 fn from(node: DropOwned) -> Stmt {
40889 Stmt::DropOwned(node)
40890 }
40891}
40892impl From<DropPolicy> for Stmt {
40893 #[inline]
40894 fn from(node: DropPolicy) -> Stmt {
40895 Stmt::DropPolicy(node)
40896 }
40897}
40898impl From<DropProcedure> for Stmt {
40899 #[inline]
40900 fn from(node: DropProcedure) -> Stmt {
40901 Stmt::DropProcedure(node)
40902 }
40903}
40904impl From<DropPropertyGraph> for Stmt {
40905 #[inline]
40906 fn from(node: DropPropertyGraph) -> Stmt {
40907 Stmt::DropPropertyGraph(node)
40908 }
40909}
40910impl From<DropPublication> for Stmt {
40911 #[inline]
40912 fn from(node: DropPublication) -> Stmt {
40913 Stmt::DropPublication(node)
40914 }
40915}
40916impl From<DropRole> for Stmt {
40917 #[inline]
40918 fn from(node: DropRole) -> Stmt {
40919 Stmt::DropRole(node)
40920 }
40921}
40922impl From<DropRoutine> for Stmt {
40923 #[inline]
40924 fn from(node: DropRoutine) -> Stmt {
40925 Stmt::DropRoutine(node)
40926 }
40927}
40928impl From<DropRule> for Stmt {
40929 #[inline]
40930 fn from(node: DropRule) -> Stmt {
40931 Stmt::DropRule(node)
40932 }
40933}
40934impl From<DropSchema> for Stmt {
40935 #[inline]
40936 fn from(node: DropSchema) -> Stmt {
40937 Stmt::DropSchema(node)
40938 }
40939}
40940impl From<DropSequence> for Stmt {
40941 #[inline]
40942 fn from(node: DropSequence) -> Stmt {
40943 Stmt::DropSequence(node)
40944 }
40945}
40946impl From<DropServer> for Stmt {
40947 #[inline]
40948 fn from(node: DropServer) -> Stmt {
40949 Stmt::DropServer(node)
40950 }
40951}
40952impl From<DropStatistics> for Stmt {
40953 #[inline]
40954 fn from(node: DropStatistics) -> Stmt {
40955 Stmt::DropStatistics(node)
40956 }
40957}
40958impl From<DropSubscription> for Stmt {
40959 #[inline]
40960 fn from(node: DropSubscription) -> Stmt {
40961 Stmt::DropSubscription(node)
40962 }
40963}
40964impl From<DropTable> for Stmt {
40965 #[inline]
40966 fn from(node: DropTable) -> Stmt {
40967 Stmt::DropTable(node)
40968 }
40969}
40970impl From<DropTablespace> for Stmt {
40971 #[inline]
40972 fn from(node: DropTablespace) -> Stmt {
40973 Stmt::DropTablespace(node)
40974 }
40975}
40976impl From<DropTextSearchConfig> for Stmt {
40977 #[inline]
40978 fn from(node: DropTextSearchConfig) -> Stmt {
40979 Stmt::DropTextSearchConfig(node)
40980 }
40981}
40982impl From<DropTextSearchDict> for Stmt {
40983 #[inline]
40984 fn from(node: DropTextSearchDict) -> Stmt {
40985 Stmt::DropTextSearchDict(node)
40986 }
40987}
40988impl From<DropTextSearchParser> for Stmt {
40989 #[inline]
40990 fn from(node: DropTextSearchParser) -> Stmt {
40991 Stmt::DropTextSearchParser(node)
40992 }
40993}
40994impl From<DropTextSearchTemplate> for Stmt {
40995 #[inline]
40996 fn from(node: DropTextSearchTemplate) -> Stmt {
40997 Stmt::DropTextSearchTemplate(node)
40998 }
40999}
41000impl From<DropTransform> for Stmt {
41001 #[inline]
41002 fn from(node: DropTransform) -> Stmt {
41003 Stmt::DropTransform(node)
41004 }
41005}
41006impl From<DropTrigger> for Stmt {
41007 #[inline]
41008 fn from(node: DropTrigger) -> Stmt {
41009 Stmt::DropTrigger(node)
41010 }
41011}
41012impl From<DropType> for Stmt {
41013 #[inline]
41014 fn from(node: DropType) -> Stmt {
41015 Stmt::DropType(node)
41016 }
41017}
41018impl From<DropUser> for Stmt {
41019 #[inline]
41020 fn from(node: DropUser) -> Stmt {
41021 Stmt::DropUser(node)
41022 }
41023}
41024impl From<DropUserMapping> for Stmt {
41025 #[inline]
41026 fn from(node: DropUserMapping) -> Stmt {
41027 Stmt::DropUserMapping(node)
41028 }
41029}
41030impl From<DropView> for Stmt {
41031 #[inline]
41032 fn from(node: DropView) -> Stmt {
41033 Stmt::DropView(node)
41034 }
41035}
41036impl From<EmptyStmt> for Stmt {
41037 #[inline]
41038 fn from(node: EmptyStmt) -> Stmt {
41039 Stmt::EmptyStmt(node)
41040 }
41041}
41042impl From<Execute> for Stmt {
41043 #[inline]
41044 fn from(node: Execute) -> Stmt {
41045 Stmt::Execute(node)
41046 }
41047}
41048impl From<Explain> for Stmt {
41049 #[inline]
41050 fn from(node: Explain) -> Stmt {
41051 Stmt::Explain(node)
41052 }
41053}
41054impl From<Fetch> for Stmt {
41055 #[inline]
41056 fn from(node: Fetch) -> Stmt {
41057 Stmt::Fetch(node)
41058 }
41059}
41060impl From<Grant> for Stmt {
41061 #[inline]
41062 fn from(node: Grant) -> Stmt {
41063 Stmt::Grant(node)
41064 }
41065}
41066impl From<ImportForeignSchema> for Stmt {
41067 #[inline]
41068 fn from(node: ImportForeignSchema) -> Stmt {
41069 Stmt::ImportForeignSchema(node)
41070 }
41071}
41072impl From<Insert> for Stmt {
41073 #[inline]
41074 fn from(node: Insert) -> Stmt {
41075 Stmt::Insert(node)
41076 }
41077}
41078impl From<Listen> for Stmt {
41079 #[inline]
41080 fn from(node: Listen) -> Stmt {
41081 Stmt::Listen(node)
41082 }
41083}
41084impl From<Load> for Stmt {
41085 #[inline]
41086 fn from(node: Load) -> Stmt {
41087 Stmt::Load(node)
41088 }
41089}
41090impl From<Lock> for Stmt {
41091 #[inline]
41092 fn from(node: Lock) -> Stmt {
41093 Stmt::Lock(node)
41094 }
41095}
41096impl From<Merge> for Stmt {
41097 #[inline]
41098 fn from(node: Merge) -> Stmt {
41099 Stmt::Merge(node)
41100 }
41101}
41102impl From<Move> for Stmt {
41103 #[inline]
41104 fn from(node: Move) -> Stmt {
41105 Stmt::Move(node)
41106 }
41107}
41108impl From<Notify> for Stmt {
41109 #[inline]
41110 fn from(node: Notify) -> Stmt {
41111 Stmt::Notify(node)
41112 }
41113}
41114impl From<ParenSelect> for Stmt {
41115 #[inline]
41116 fn from(node: ParenSelect) -> Stmt {
41117 Stmt::ParenSelect(node)
41118 }
41119}
41120impl From<Prepare> for Stmt {
41121 #[inline]
41122 fn from(node: Prepare) -> Stmt {
41123 Stmt::Prepare(node)
41124 }
41125}
41126impl From<PrepareTransaction> for Stmt {
41127 #[inline]
41128 fn from(node: PrepareTransaction) -> Stmt {
41129 Stmt::PrepareTransaction(node)
41130 }
41131}
41132impl From<Reassign> for Stmt {
41133 #[inline]
41134 fn from(node: Reassign) -> Stmt {
41135 Stmt::Reassign(node)
41136 }
41137}
41138impl From<Refresh> for Stmt {
41139 #[inline]
41140 fn from(node: Refresh) -> Stmt {
41141 Stmt::Refresh(node)
41142 }
41143}
41144impl From<Reindex> for Stmt {
41145 #[inline]
41146 fn from(node: Reindex) -> Stmt {
41147 Stmt::Reindex(node)
41148 }
41149}
41150impl From<ReleaseSavepoint> for Stmt {
41151 #[inline]
41152 fn from(node: ReleaseSavepoint) -> Stmt {
41153 Stmt::ReleaseSavepoint(node)
41154 }
41155}
41156impl From<Repack> for Stmt {
41157 #[inline]
41158 fn from(node: Repack) -> Stmt {
41159 Stmt::Repack(node)
41160 }
41161}
41162impl From<Reset> for Stmt {
41163 #[inline]
41164 fn from(node: Reset) -> Stmt {
41165 Stmt::Reset(node)
41166 }
41167}
41168impl From<ResetSessionAuth> for Stmt {
41169 #[inline]
41170 fn from(node: ResetSessionAuth) -> Stmt {
41171 Stmt::ResetSessionAuth(node)
41172 }
41173}
41174impl From<Revoke> for Stmt {
41175 #[inline]
41176 fn from(node: Revoke) -> Stmt {
41177 Stmt::Revoke(node)
41178 }
41179}
41180impl From<Rollback> for Stmt {
41181 #[inline]
41182 fn from(node: Rollback) -> Stmt {
41183 Stmt::Rollback(node)
41184 }
41185}
41186impl From<Savepoint> for Stmt {
41187 #[inline]
41188 fn from(node: Savepoint) -> Stmt {
41189 Stmt::Savepoint(node)
41190 }
41191}
41192impl From<SecurityLabel> for Stmt {
41193 #[inline]
41194 fn from(node: SecurityLabel) -> Stmt {
41195 Stmt::SecurityLabel(node)
41196 }
41197}
41198impl From<Select> for Stmt {
41199 #[inline]
41200 fn from(node: Select) -> Stmt {
41201 Stmt::Select(node)
41202 }
41203}
41204impl From<SelectInto> for Stmt {
41205 #[inline]
41206 fn from(node: SelectInto) -> Stmt {
41207 Stmt::SelectInto(node)
41208 }
41209}
41210impl From<Set> for Stmt {
41211 #[inline]
41212 fn from(node: Set) -> Stmt {
41213 Stmt::Set(node)
41214 }
41215}
41216impl From<SetConstraints> for Stmt {
41217 #[inline]
41218 fn from(node: SetConstraints) -> Stmt {
41219 Stmt::SetConstraints(node)
41220 }
41221}
41222impl From<SetRole> for Stmt {
41223 #[inline]
41224 fn from(node: SetRole) -> Stmt {
41225 Stmt::SetRole(node)
41226 }
41227}
41228impl From<SetSessionAuth> for Stmt {
41229 #[inline]
41230 fn from(node: SetSessionAuth) -> Stmt {
41231 Stmt::SetSessionAuth(node)
41232 }
41233}
41234impl From<SetTransaction> for Stmt {
41235 #[inline]
41236 fn from(node: SetTransaction) -> Stmt {
41237 Stmt::SetTransaction(node)
41238 }
41239}
41240impl From<Show> for Stmt {
41241 #[inline]
41242 fn from(node: Show) -> Stmt {
41243 Stmt::Show(node)
41244 }
41245}
41246impl From<Table> for Stmt {
41247 #[inline]
41248 fn from(node: Table) -> Stmt {
41249 Stmt::Table(node)
41250 }
41251}
41252impl From<Truncate> for Stmt {
41253 #[inline]
41254 fn from(node: Truncate) -> Stmt {
41255 Stmt::Truncate(node)
41256 }
41257}
41258impl From<Unlisten> for Stmt {
41259 #[inline]
41260 fn from(node: Unlisten) -> Stmt {
41261 Stmt::Unlisten(node)
41262 }
41263}
41264impl From<Update> for Stmt {
41265 #[inline]
41266 fn from(node: Update) -> Stmt {
41267 Stmt::Update(node)
41268 }
41269}
41270impl From<Vacuum> for Stmt {
41271 #[inline]
41272 fn from(node: Vacuum) -> Stmt {
41273 Stmt::Vacuum(node)
41274 }
41275}
41276impl From<Values> for Stmt {
41277 #[inline]
41278 fn from(node: Values) -> Stmt {
41279 Stmt::Values(node)
41280 }
41281}
41282impl AstNode for TableArg {
41283 #[inline]
41284 fn can_cast(kind: SyntaxKind) -> bool {
41285 matches!(kind, SyntaxKind::COLUMN | SyntaxKind::LIKE_CLAUSE)
41286 }
41287 #[inline]
41288 fn cast(syntax: SyntaxNode) -> Option<Self> {
41289 let res = match syntax.kind() {
41290 SyntaxKind::COLUMN => TableArg::Column(Column { syntax }),
41291 SyntaxKind::LIKE_CLAUSE => TableArg::LikeClause(LikeClause { syntax }),
41292 _ => {
41293 if let Some(result) = TableConstraint::cast(syntax) {
41294 return Some(TableArg::TableConstraint(result));
41295 }
41296 return None;
41297 }
41298 };
41299 Some(res)
41300 }
41301 #[inline]
41302 fn syntax(&self) -> &SyntaxNode {
41303 match self {
41304 TableArg::Column(it) => &it.syntax,
41305 TableArg::LikeClause(it) => &it.syntax,
41306 TableArg::TableConstraint(it) => it.syntax(),
41307 }
41308 }
41309}
41310impl From<Column> for TableArg {
41311 #[inline]
41312 fn from(node: Column) -> TableArg {
41313 TableArg::Column(node)
41314 }
41315}
41316impl From<LikeClause> for TableArg {
41317 #[inline]
41318 fn from(node: LikeClause) -> TableArg {
41319 TableArg::LikeClause(node)
41320 }
41321}
41322impl AstNode for TableConstraint {
41323 #[inline]
41324 fn can_cast(kind: SyntaxKind) -> bool {
41325 matches!(
41326 kind,
41327 SyntaxKind::CHECK_CONSTRAINT
41328 | SyntaxKind::EXCLUDE_CONSTRAINT
41329 | SyntaxKind::FOREIGN_KEY_CONSTRAINT
41330 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
41331 | SyntaxKind::UNIQUE_CONSTRAINT
41332 )
41333 }
41334 #[inline]
41335 fn cast(syntax: SyntaxNode) -> Option<Self> {
41336 let res = match syntax.kind() {
41337 SyntaxKind::CHECK_CONSTRAINT => {
41338 TableConstraint::CheckConstraint(CheckConstraint { syntax })
41339 }
41340 SyntaxKind::EXCLUDE_CONSTRAINT => {
41341 TableConstraint::ExcludeConstraint(ExcludeConstraint { syntax })
41342 }
41343 SyntaxKind::FOREIGN_KEY_CONSTRAINT => {
41344 TableConstraint::ForeignKeyConstraint(ForeignKeyConstraint { syntax })
41345 }
41346 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
41347 TableConstraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
41348 }
41349 SyntaxKind::UNIQUE_CONSTRAINT => {
41350 TableConstraint::UniqueConstraint(UniqueConstraint { syntax })
41351 }
41352 _ => {
41353 return None;
41354 }
41355 };
41356 Some(res)
41357 }
41358 #[inline]
41359 fn syntax(&self) -> &SyntaxNode {
41360 match self {
41361 TableConstraint::CheckConstraint(it) => &it.syntax,
41362 TableConstraint::ExcludeConstraint(it) => &it.syntax,
41363 TableConstraint::ForeignKeyConstraint(it) => &it.syntax,
41364 TableConstraint::PrimaryKeyConstraint(it) => &it.syntax,
41365 TableConstraint::UniqueConstraint(it) => &it.syntax,
41366 }
41367 }
41368}
41369impl From<CheckConstraint> for TableConstraint {
41370 #[inline]
41371 fn from(node: CheckConstraint) -> TableConstraint {
41372 TableConstraint::CheckConstraint(node)
41373 }
41374}
41375impl From<ExcludeConstraint> for TableConstraint {
41376 #[inline]
41377 fn from(node: ExcludeConstraint) -> TableConstraint {
41378 TableConstraint::ExcludeConstraint(node)
41379 }
41380}
41381impl From<ForeignKeyConstraint> for TableConstraint {
41382 #[inline]
41383 fn from(node: ForeignKeyConstraint) -> TableConstraint {
41384 TableConstraint::ForeignKeyConstraint(node)
41385 }
41386}
41387impl From<PrimaryKeyConstraint> for TableConstraint {
41388 #[inline]
41389 fn from(node: PrimaryKeyConstraint) -> TableConstraint {
41390 TableConstraint::PrimaryKeyConstraint(node)
41391 }
41392}
41393impl From<UniqueConstraint> for TableConstraint {
41394 #[inline]
41395 fn from(node: UniqueConstraint) -> TableConstraint {
41396 TableConstraint::UniqueConstraint(node)
41397 }
41398}
41399impl AstNode for Timezone {
41400 #[inline]
41401 fn can_cast(kind: SyntaxKind) -> bool {
41402 matches!(
41403 kind,
41404 SyntaxKind::WITH_TIMEZONE | SyntaxKind::WITHOUT_TIMEZONE
41405 )
41406 }
41407 #[inline]
41408 fn cast(syntax: SyntaxNode) -> Option<Self> {
41409 let res = match syntax.kind() {
41410 SyntaxKind::WITH_TIMEZONE => Timezone::WithTimezone(WithTimezone { syntax }),
41411 SyntaxKind::WITHOUT_TIMEZONE => Timezone::WithoutTimezone(WithoutTimezone { syntax }),
41412 _ => {
41413 return None;
41414 }
41415 };
41416 Some(res)
41417 }
41418 #[inline]
41419 fn syntax(&self) -> &SyntaxNode {
41420 match self {
41421 Timezone::WithTimezone(it) => &it.syntax,
41422 Timezone::WithoutTimezone(it) => &it.syntax,
41423 }
41424 }
41425}
41426impl From<WithTimezone> for Timezone {
41427 #[inline]
41428 fn from(node: WithTimezone) -> Timezone {
41429 Timezone::WithTimezone(node)
41430 }
41431}
41432impl From<WithoutTimezone> for Timezone {
41433 #[inline]
41434 fn from(node: WithoutTimezone) -> Timezone {
41435 Timezone::WithoutTimezone(node)
41436 }
41437}
41438impl AstNode for TransactionMode {
41439 #[inline]
41440 fn can_cast(kind: SyntaxKind) -> bool {
41441 matches!(
41442 kind,
41443 SyntaxKind::DEFERRABLE
41444 | SyntaxKind::NOT_DEFERRABLE
41445 | SyntaxKind::READ_COMMITTED
41446 | SyntaxKind::READ_ONLY
41447 | SyntaxKind::READ_UNCOMMITTED
41448 | SyntaxKind::READ_WRITE
41449 | SyntaxKind::REPEATABLE_READ
41450 | SyntaxKind::SERIALIZABLE
41451 )
41452 }
41453 #[inline]
41454 fn cast(syntax: SyntaxNode) -> Option<Self> {
41455 let res = match syntax.kind() {
41456 SyntaxKind::DEFERRABLE => TransactionMode::Deferrable(Deferrable { syntax }),
41457 SyntaxKind::NOT_DEFERRABLE => TransactionMode::NotDeferrable(NotDeferrable { syntax }),
41458 SyntaxKind::READ_COMMITTED => TransactionMode::ReadCommitted(ReadCommitted { syntax }),
41459 SyntaxKind::READ_ONLY => TransactionMode::ReadOnly(ReadOnly { syntax }),
41460 SyntaxKind::READ_UNCOMMITTED => {
41461 TransactionMode::ReadUncommitted(ReadUncommitted { syntax })
41462 }
41463 SyntaxKind::READ_WRITE => TransactionMode::ReadWrite(ReadWrite { syntax }),
41464 SyntaxKind::REPEATABLE_READ => {
41465 TransactionMode::RepeatableRead(RepeatableRead { syntax })
41466 }
41467 SyntaxKind::SERIALIZABLE => TransactionMode::Serializable(Serializable { syntax }),
41468 _ => {
41469 return None;
41470 }
41471 };
41472 Some(res)
41473 }
41474 #[inline]
41475 fn syntax(&self) -> &SyntaxNode {
41476 match self {
41477 TransactionMode::Deferrable(it) => &it.syntax,
41478 TransactionMode::NotDeferrable(it) => &it.syntax,
41479 TransactionMode::ReadCommitted(it) => &it.syntax,
41480 TransactionMode::ReadOnly(it) => &it.syntax,
41481 TransactionMode::ReadUncommitted(it) => &it.syntax,
41482 TransactionMode::ReadWrite(it) => &it.syntax,
41483 TransactionMode::RepeatableRead(it) => &it.syntax,
41484 TransactionMode::Serializable(it) => &it.syntax,
41485 }
41486 }
41487}
41488impl From<Deferrable> for TransactionMode {
41489 #[inline]
41490 fn from(node: Deferrable) -> TransactionMode {
41491 TransactionMode::Deferrable(node)
41492 }
41493}
41494impl From<NotDeferrable> for TransactionMode {
41495 #[inline]
41496 fn from(node: NotDeferrable) -> TransactionMode {
41497 TransactionMode::NotDeferrable(node)
41498 }
41499}
41500impl From<ReadCommitted> for TransactionMode {
41501 #[inline]
41502 fn from(node: ReadCommitted) -> TransactionMode {
41503 TransactionMode::ReadCommitted(node)
41504 }
41505}
41506impl From<ReadOnly> for TransactionMode {
41507 #[inline]
41508 fn from(node: ReadOnly) -> TransactionMode {
41509 TransactionMode::ReadOnly(node)
41510 }
41511}
41512impl From<ReadUncommitted> for TransactionMode {
41513 #[inline]
41514 fn from(node: ReadUncommitted) -> TransactionMode {
41515 TransactionMode::ReadUncommitted(node)
41516 }
41517}
41518impl From<ReadWrite> for TransactionMode {
41519 #[inline]
41520 fn from(node: ReadWrite) -> TransactionMode {
41521 TransactionMode::ReadWrite(node)
41522 }
41523}
41524impl From<RepeatableRead> for TransactionMode {
41525 #[inline]
41526 fn from(node: RepeatableRead) -> TransactionMode {
41527 TransactionMode::RepeatableRead(node)
41528 }
41529}
41530impl From<Serializable> for TransactionMode {
41531 #[inline]
41532 fn from(node: Serializable) -> TransactionMode {
41533 TransactionMode::Serializable(node)
41534 }
41535}
41536impl AstNode for Type {
41537 #[inline]
41538 fn can_cast(kind: SyntaxKind) -> bool {
41539 matches!(
41540 kind,
41541 SyntaxKind::ARRAY_TYPE
41542 | SyntaxKind::BIT_TYPE
41543 | SyntaxKind::CHAR_TYPE
41544 | SyntaxKind::DOUBLE_TYPE
41545 | SyntaxKind::EXPR_TYPE
41546 | SyntaxKind::INTERVAL_TYPE
41547 | SyntaxKind::PATH_TYPE
41548 | SyntaxKind::PERCENT_TYPE
41549 | SyntaxKind::TIME_TYPE
41550 )
41551 }
41552 #[inline]
41553 fn cast(syntax: SyntaxNode) -> Option<Self> {
41554 let res = match syntax.kind() {
41555 SyntaxKind::ARRAY_TYPE => Type::ArrayType(ArrayType { syntax }),
41556 SyntaxKind::BIT_TYPE => Type::BitType(BitType { syntax }),
41557 SyntaxKind::CHAR_TYPE => Type::CharType(CharType { syntax }),
41558 SyntaxKind::DOUBLE_TYPE => Type::DoubleType(DoubleType { syntax }),
41559 SyntaxKind::EXPR_TYPE => Type::ExprType(ExprType { syntax }),
41560 SyntaxKind::INTERVAL_TYPE => Type::IntervalType(IntervalType { syntax }),
41561 SyntaxKind::PATH_TYPE => Type::PathType(PathType { syntax }),
41562 SyntaxKind::PERCENT_TYPE => Type::PercentType(PercentType { syntax }),
41563 SyntaxKind::TIME_TYPE => Type::TimeType(TimeType { syntax }),
41564 _ => {
41565 return None;
41566 }
41567 };
41568 Some(res)
41569 }
41570 #[inline]
41571 fn syntax(&self) -> &SyntaxNode {
41572 match self {
41573 Type::ArrayType(it) => &it.syntax,
41574 Type::BitType(it) => &it.syntax,
41575 Type::CharType(it) => &it.syntax,
41576 Type::DoubleType(it) => &it.syntax,
41577 Type::ExprType(it) => &it.syntax,
41578 Type::IntervalType(it) => &it.syntax,
41579 Type::PathType(it) => &it.syntax,
41580 Type::PercentType(it) => &it.syntax,
41581 Type::TimeType(it) => &it.syntax,
41582 }
41583 }
41584}
41585impl From<ArrayType> for Type {
41586 #[inline]
41587 fn from(node: ArrayType) -> Type {
41588 Type::ArrayType(node)
41589 }
41590}
41591impl From<BitType> for Type {
41592 #[inline]
41593 fn from(node: BitType) -> Type {
41594 Type::BitType(node)
41595 }
41596}
41597impl From<CharType> for Type {
41598 #[inline]
41599 fn from(node: CharType) -> Type {
41600 Type::CharType(node)
41601 }
41602}
41603impl From<DoubleType> for Type {
41604 #[inline]
41605 fn from(node: DoubleType) -> Type {
41606 Type::DoubleType(node)
41607 }
41608}
41609impl From<ExprType> for Type {
41610 #[inline]
41611 fn from(node: ExprType) -> Type {
41612 Type::ExprType(node)
41613 }
41614}
41615impl From<IntervalType> for Type {
41616 #[inline]
41617 fn from(node: IntervalType) -> Type {
41618 Type::IntervalType(node)
41619 }
41620}
41621impl From<PathType> for Type {
41622 #[inline]
41623 fn from(node: PathType) -> Type {
41624 Type::PathType(node)
41625 }
41626}
41627impl From<PercentType> for Type {
41628 #[inline]
41629 fn from(node: PercentType) -> Type {
41630 Type::PercentType(node)
41631 }
41632}
41633impl From<TimeType> for Type {
41634 #[inline]
41635 fn from(node: TimeType) -> Type {
41636 Type::TimeType(node)
41637 }
41638}
41639impl AstNode for ValuePosition {
41640 #[inline]
41641 fn can_cast(kind: SyntaxKind) -> bool {
41642 matches!(kind, SyntaxKind::AFTER_VALUE | SyntaxKind::BEFORE_VALUE)
41643 }
41644 #[inline]
41645 fn cast(syntax: SyntaxNode) -> Option<Self> {
41646 let res = match syntax.kind() {
41647 SyntaxKind::AFTER_VALUE => ValuePosition::AfterValue(AfterValue { syntax }),
41648 SyntaxKind::BEFORE_VALUE => ValuePosition::BeforeValue(BeforeValue { syntax }),
41649 _ => {
41650 return None;
41651 }
41652 };
41653 Some(res)
41654 }
41655 #[inline]
41656 fn syntax(&self) -> &SyntaxNode {
41657 match self {
41658 ValuePosition::AfterValue(it) => &it.syntax,
41659 ValuePosition::BeforeValue(it) => &it.syntax,
41660 }
41661 }
41662}
41663impl From<AfterValue> for ValuePosition {
41664 #[inline]
41665 fn from(node: AfterValue) -> ValuePosition {
41666 ValuePosition::AfterValue(node)
41667 }
41668}
41669impl From<BeforeValue> for ValuePosition {
41670 #[inline]
41671 fn from(node: BeforeValue) -> ValuePosition {
41672 ValuePosition::BeforeValue(node)
41673 }
41674}
41675impl AstNode for WithQuery {
41676 #[inline]
41677 fn can_cast(kind: SyntaxKind) -> bool {
41678 matches!(
41679 kind,
41680 SyntaxKind::COMPOUND_SELECT
41681 | SyntaxKind::DELETE
41682 | SyntaxKind::INSERT
41683 | SyntaxKind::MERGE
41684 | SyntaxKind::PAREN_SELECT
41685 | SyntaxKind::SELECT
41686 | SyntaxKind::TABLE
41687 | SyntaxKind::UPDATE
41688 | SyntaxKind::VALUES
41689 )
41690 }
41691 #[inline]
41692 fn cast(syntax: SyntaxNode) -> Option<Self> {
41693 let res = match syntax.kind() {
41694 SyntaxKind::COMPOUND_SELECT => WithQuery::CompoundSelect(CompoundSelect { syntax }),
41695 SyntaxKind::DELETE => WithQuery::Delete(Delete { syntax }),
41696 SyntaxKind::INSERT => WithQuery::Insert(Insert { syntax }),
41697 SyntaxKind::MERGE => WithQuery::Merge(Merge { syntax }),
41698 SyntaxKind::PAREN_SELECT => WithQuery::ParenSelect(ParenSelect { syntax }),
41699 SyntaxKind::SELECT => WithQuery::Select(Select { syntax }),
41700 SyntaxKind::TABLE => WithQuery::Table(Table { syntax }),
41701 SyntaxKind::UPDATE => WithQuery::Update(Update { syntax }),
41702 SyntaxKind::VALUES => WithQuery::Values(Values { syntax }),
41703 _ => {
41704 return None;
41705 }
41706 };
41707 Some(res)
41708 }
41709 #[inline]
41710 fn syntax(&self) -> &SyntaxNode {
41711 match self {
41712 WithQuery::CompoundSelect(it) => &it.syntax,
41713 WithQuery::Delete(it) => &it.syntax,
41714 WithQuery::Insert(it) => &it.syntax,
41715 WithQuery::Merge(it) => &it.syntax,
41716 WithQuery::ParenSelect(it) => &it.syntax,
41717 WithQuery::Select(it) => &it.syntax,
41718 WithQuery::Table(it) => &it.syntax,
41719 WithQuery::Update(it) => &it.syntax,
41720 WithQuery::Values(it) => &it.syntax,
41721 }
41722 }
41723}
41724impl From<CompoundSelect> for WithQuery {
41725 #[inline]
41726 fn from(node: CompoundSelect) -> WithQuery {
41727 WithQuery::CompoundSelect(node)
41728 }
41729}
41730impl From<Delete> for WithQuery {
41731 #[inline]
41732 fn from(node: Delete) -> WithQuery {
41733 WithQuery::Delete(node)
41734 }
41735}
41736impl From<Insert> for WithQuery {
41737 #[inline]
41738 fn from(node: Insert) -> WithQuery {
41739 WithQuery::Insert(node)
41740 }
41741}
41742impl From<Merge> for WithQuery {
41743 #[inline]
41744 fn from(node: Merge) -> WithQuery {
41745 WithQuery::Merge(node)
41746 }
41747}
41748impl From<ParenSelect> for WithQuery {
41749 #[inline]
41750 fn from(node: ParenSelect) -> WithQuery {
41751 WithQuery::ParenSelect(node)
41752 }
41753}
41754impl From<Select> for WithQuery {
41755 #[inline]
41756 fn from(node: Select) -> WithQuery {
41757 WithQuery::Select(node)
41758 }
41759}
41760impl From<Table> for WithQuery {
41761 #[inline]
41762 fn from(node: Table) -> WithQuery {
41763 WithQuery::Table(node)
41764 }
41765}
41766impl From<Update> for WithQuery {
41767 #[inline]
41768 fn from(node: Update) -> WithQuery {
41769 WithQuery::Update(node)
41770 }
41771}
41772impl From<Values> for WithQuery {
41773 #[inline]
41774 fn from(node: Values) -> WithQuery {
41775 WithQuery::Values(node)
41776 }
41777}